* find_defect5_doc.prg * Cautare read-only: document real cu incasat<>0, tip 1-4, ne-proforma, in luna curenta, * care trece garzile din do_editare_unificata (nesters, fara referinte/urmasi/eFactura). * Nu scrie nimic. Scris pentru dovada defectului 5 (docs\raport_s8_defect5_incasat.md). SET SAFETY OFF SET TALK OFF PUBLIC gcErrLog gcErrLog = 'D:\ROA\ROAFACTURARE\COMUN\utile\Teste\editare_factura\find_defect5_doc_log.txt' STRTOFILE('start' + CHR(13) + CHR(10), gcErrLog) ON ERROR DO test_error_handler WITH ERROR(), MESSAGE(), PROGRAM(), LINENO() DO ('D:\ROA\ROAFACTURARE\COMUN\utile\Teste\test_init_env_auto_roafacturare.prg') WITH 'CENTRAL', 'MARIUSM_AUTO', 'ROMFASTSOFT' IF gnHandle <= 0 STRTOFILE('EROARE: conectare esuata' + CHR(13) + CHR(10), gcErrLog, 1) QUIT ENDIF LOCAL lcSelect, lnSucces lcSelect = [select id_vanzare, tip, eproforma, sters, incasat, data_act, nr_incasare, id_fact from fact_vfacturi ] + ; [where incasat <> 0 and tip between 1 and 4 and eproforma = 0 and sters = 0 ] + ; [and extract(year from data_act) = ] + TRANSFORM(gnAn) + [ and extract(month from data_act) = ] + TRANSFORM(gnLuna) + [ ] + ; [order by id_vanzare] lnSucces = goExecutor.oExecute(lcSelect, 'crsCandidati') STRTOFILE('oExecute: ' + TRANSFORM(lnSucces) + ' eroare: ' + goExecutor.cEroare + CHR(13) + CHR(10), gcErrLog, 1) goExecutor.oReset() IF lnSucces >= 0 AND USED('crsCandidati') STRTOFILE('candidati gasiti: ' + TRANSFORM(RECCOUNT('crsCandidati')) + CHR(13) + CHR(10), gcErrLog, 1) SELECT crsCandidati SCAN STRTOFILE('id_vanzare=' + TRANSFORM(id_vanzare) + ' tip=' + TRANSFORM(tip) + ' incasat=' + TRANSFORM(incasat) + ; ' data_act=' + TRANSFORM(data_act) + ' nr_incasare=' + TRANSFORM(nr_incasare) + ' id_fact=' + TRANSFORM(NVL(id_fact,0)) + CHR(13) + CHR(10), gcErrLog, 1) ENDSCAN ELSE STRTOFILE('interogare esuata' + CHR(13) + CHR(10), gcErrLog, 1) ENDIF STRTOFILE('done' + CHR(13) + CHR(10), gcErrLog, 1) QUIT PROCEDURE test_error_handler LPARAMETERS tnErr, tcMsg, tcProg, tnLine STRTOFILE('EROARE #' + TRANSFORM(tnErr) + ': ' + tcMsg + ' in ' + tcProg + ' linia ' + TRANSFORM(tnLine) + CHR(13) + CHR(10), gcErrLog, 1) QUIT ENDPROC