no actualiza
Publicado por Sebastian (253 intervenciones) el 30/07/2008 18:30:54
hola programadores solucione el problema anterior solo faltaban mas 0 antes del as total0, bueno pero ahora tengo otro enconveniente, cuando coloco esta fecha en WINIAC para acumulados 01/01/08, en WINI la fecha para totales 15/07/08 y WFIN para finalizar acumulados y totales 19/07/08, no muestra algunos registros en acumulados solo funciona bien cuando registro del 01/01/08 al 31/01/08 asi en cada mes pero no por fecha especificas. gracias por la ayuda.
winiac = thisform.text13.value
wini = thisform.text1.value
wfin = thisform.text2.value
thisform.grid1.recordsource = ''
thisform.grid1.value = ''
thisform.grid1.REFRESH
************************************* totales *******************************************
SELECT Conlima.pf_afil, Programas.pro_nombre,Conlima.pf_hospi, COUNT(Conlima.pf_sexo)as total ;
FROM analisis!programas INNER JOIN analisis!conlima ;
ON Programas.pf_afil = Conlima.pf_afil ;
where betw(dtoc(conlima.pf_fecha,1),dtoc(wini,1),dtoc(wfin,1)) ;
GROUP BY Conlima.pf_afil;
ORDER BY Conlima.pf_afil;
into cursor compara
**brow
select distin(pf_afil) as pro_codi, 0000000000 as total0, 0000000000 as acumu0 ;
from compara into table tabla
**brow
sele tabla
go top
scan
xprograma = alltrim(pro_codi)
sele compara
do while alltrim(pf_afil) = xprograma
do case
case pf_hospi = ' 0'
xhospi = ' 0'
xtotal0 = total
endcase
sele tabla
do case
case xhospi = ' 0'
replace total0 with xtotal0
endcase
sele compara
skip
endd
sele tabla
ends
**brow
************************************* fin totales ********************************
************************************* acumulados ********************************
SELECT Conlima.pf_afil, Programas.pro_nombre,Conlima.pf_hospi, COUNT(Conlima.pf_sexo)as acumu ;
FROM analisis!programas INNER JOIN analisis!conlima ;
ON Programas.pf_afil = Conlima.pf_afil ;
where betw(dtoc(conlima.pf_fecha,1),dtoc(winiac,1),dtoc(wfin,1)) ;
GROUP BY Conlima.pf_afil;
ORDER BY Conlima.pf_afil;
into cursor compara
**brow
sele tabla
go top
scan
xprograma = alltrim(pro_codi)
sele compara
do while alltrim(pf_afil) = xprograma
do case
case pf_hospi = ' 0'
xhospi = ' 0'
xacumu0 = acumu
endcase
sele tabla
do case
case xhospi = ' 0'
repla acumu0 with xacumu0
endcase
sele compara
skip
endd
sele tabla
ends
**brow
*!* ******************************* fin de acumulados
select iif(seek(pro_codi,'programas','pf_afil'),programas.pro_nombre,' '),*;
from tabla order by 2 into cursor final
***export to c: odo.xls type xls
selec programas.pro_nombre,*;
from final order by 1 into cursor xx
**brow
selec exp_1_b, total0, acumu0 ;
from xx order by 1 into cursor xxx
thisform.grid1.recordsource = 'xxx'
thisform.grid1.REFRESH
winiac = thisform.text13.value
wini = thisform.text1.value
wfin = thisform.text2.value
thisform.grid1.recordsource = ''
thisform.grid1.value = ''
thisform.grid1.REFRESH
************************************* totales *******************************************
SELECT Conlima.pf_afil, Programas.pro_nombre,Conlima.pf_hospi, COUNT(Conlima.pf_sexo)as total ;
FROM analisis!programas INNER JOIN analisis!conlima ;
ON Programas.pf_afil = Conlima.pf_afil ;
where betw(dtoc(conlima.pf_fecha,1),dtoc(wini,1),dtoc(wfin,1)) ;
GROUP BY Conlima.pf_afil;
ORDER BY Conlima.pf_afil;
into cursor compara
**brow
select distin(pf_afil) as pro_codi, 0000000000 as total0, 0000000000 as acumu0 ;
from compara into table tabla
**brow
sele tabla
go top
scan
xprograma = alltrim(pro_codi)
sele compara
do while alltrim(pf_afil) = xprograma
do case
case pf_hospi = ' 0'
xhospi = ' 0'
xtotal0 = total
endcase
sele tabla
do case
case xhospi = ' 0'
replace total0 with xtotal0
endcase
sele compara
skip
endd
sele tabla
ends
**brow
************************************* fin totales ********************************
************************************* acumulados ********************************
SELECT Conlima.pf_afil, Programas.pro_nombre,Conlima.pf_hospi, COUNT(Conlima.pf_sexo)as acumu ;
FROM analisis!programas INNER JOIN analisis!conlima ;
ON Programas.pf_afil = Conlima.pf_afil ;
where betw(dtoc(conlima.pf_fecha,1),dtoc(winiac,1),dtoc(wfin,1)) ;
GROUP BY Conlima.pf_afil;
ORDER BY Conlima.pf_afil;
into cursor compara
**brow
sele tabla
go top
scan
xprograma = alltrim(pro_codi)
sele compara
do while alltrim(pf_afil) = xprograma
do case
case pf_hospi = ' 0'
xhospi = ' 0'
xacumu0 = acumu
endcase
sele tabla
do case
case xhospi = ' 0'
repla acumu0 with xacumu0
endcase
sele compara
skip
endd
sele tabla
ends
**brow
*!* ******************************* fin de acumulados
select iif(seek(pro_codi,'programas','pf_afil'),programas.pro_nombre,' '),*;
from tabla order by 2 into cursor final
***export to c: odo.xls type xls
selec programas.pro_nombre,*;
from final order by 1 into cursor xx
**brow
selec exp_1_b, total0, acumu0 ;
from xx order by 1 into cursor xxx
thisform.grid1.recordsource = 'xxx'
thisform.grid1.REFRESH
Valora esta pregunta


0