o bizarro é que quando eu saldo para o proximo registo continua sendo o mesmo pedido e ele cai fora do while ...
sempre fiz assim :
Código: Selecionar todos
do while RECEBER->cc_codped = TMPFAT->cc_pedfat
......
skip
enddoCódigo: Selecionar todos
select RECEBER
IF RECEBER->(ordsetfocus("RECCX_03"),DBSEEK(TMPFAT->cc_pedfat))
do while .T. .and. !EOF()
BLOQ_REG()
replace cc_seqfact with IIF(RECEBER->cc_seqfact == space(10),c_seqfact,old_seqfact),;
cc_factura with c_notasped,;
cc_histor with "Factura n§ " + c_notasped
DBCOMMIT()
unlock
DBSKIP()
if RECEBER->cc_codped = TMPFAT->cc_pedfat
loop
else
exit
endif
enddo
ENDIF
select TMPFAT
DBSKIP()
c_pedfat := cc_pedfat
ENDDO
ENDIF

