Hola a todos,
Les comento que tengo el programa SAE y trae un reporteador que maneja instruciones SQL, les comento que estoy haciendo un reporte de cobranza
Los clientes tienen un determinado numero de días de crédito, 8, 15, 30 etc.
Este reporte lo que hace es que pone en una columna los saldos a vencer (los que están en sus días de crédito), otra columna que es lo que es por cobrar (los que llegaron a sus días de crédito + 7 días de gracia), y los vencidos ( ya se pasaron sus días de crédito + 7 días de gracia).
Puse en saldos por vencer esto
IF(DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI, APPSTARTDATE) <= (dtsClie_EdoGeneral.DIAS_CRE), dtsClie_EdoGeneral.SALDOCUEN,' ')
en x cobrar
IF(((DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI,APPSTA RTDATE)) >(dtsClie_EdoGeneral.DIAS_CRE)) and ((DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI,APPSTARTD ATE)) <= (dtsClie_EdoGeneral.DIAS_CRE+7)), dtsClie_EdoGeneral.SALDOCUEN,'')
y vencido
IF(DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI, APPSTARTDATE) > (dtsClie_EdoGeneral.DIAS_CRE + 7), dtsClie_EdoGeneral.SALDOCUEN, ' ')
Después quiero los subtotales de cada partida lo que puse es esto
saldos por vencer
sum(IF(DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI, APPSTARTDATE) <= (dtsClie_EdoGeneral.DIAS_CRE), dtsClie_EdoGeneral.SALDOCUEN,0 ))
en x cobrar
sum(IF(((DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI,AP PSTARTDATE)) >(dtsClie_EdoGeneral.DIAS_CRE)) and ((DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI,APPSTARTD ATE)) <= (dtsClie_EdoGeneral.DIAS_CRE+7)), dtsClie_EdoGeneral.SALDOCUEN,0))
y vencido
sum(IF(DATEDIFF(dtsClie_EdoGeneral.FECHA_APLI, APPSTARTDATE) > (dtsClie_EdoGeneral.DIAS_CRE + 7), dtsClie_EdoGeneral.SALDOCUEN, 0))
solo le aumente el sum para que me sumara los saldos de cada cliente en cada columna, el problema es que en algunas sumas me suma los saldos anteriores de otros clientes. Como le hago para que cuando termine un cliente ponga su saldo y no le acumule otro saldo.
Gracias