Cele trei fisiere erau pe disc, netrackuite, iar ce se stia despre ele traia intr-un handoff intre sesiuni. Handoff-ul a fost desfiintat: ce era durabil a intrat in antetul harnessului - plaja de serii care chiar prinde (FACTURA cere gnIdUtil=8 cu gnIdSucursala=167, AVIZ merge si cu -3), faptul ca alocarea consuma numere ireversibil chiar cand documentul nu se scrie, ordinea gresita de incarcare a lui mock_amessagebox care e suspectul principal pentru agatari, si riscul de curs EUR ramas neconfirmat pe cursor_contract. Harnessul nu a scris inca niciun document cu succes - antetul spune asta explicit, ca sa nu fie luat drept unealta functionala. test_init_env_auto_roafacturare.prg e generic si folosit deja de alte suite: seteaza gcNumeProgram=[ROAFACTURARE], fara de care garzile proprii fluxului de facturare nu se declanseaza. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SN8snvkk94KuhWwoXUUey3
64 lines
2.2 KiB
Plaintext
64 lines
2.2 KiB
Plaintext
* diag01_env_serii.prg
|
|
* Diagnostic READ-ONLY: verifica mediul ROAFACTURARE real (test_init_env_auto_roafacturare.prg)
|
|
* si interogheaza configuratia de serii pentru FACTURA (nIdTipDoc=5) si AVIZ (nIdTipDoc=6) prin
|
|
* poGeneratorNumere.creeaza_cursor_serii - functie de SELECT (pack_serii_numere.verifica_cursor_serii),
|
|
* fara nicio alocare de numar. Zero INSERT/UPDATE/COMMIT.
|
|
|
|
SET SAFETY OFF
|
|
SET TALK OFF
|
|
|
|
PUBLIC gcDiagLog
|
|
gcDiagLog = 'D:\ROA\ROAFACTURARE\COMUN\utile\Teste\s8_creare_variante\diag01_log.txt'
|
|
STRTOFILE('start ' + TTOC(DATETIME()) + CHR(13) + CHR(10), gcDiagLog)
|
|
|
|
ON ERROR DO diag_err 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
|
|
DO Lg WITH 'EROARE: conectare esuata'
|
|
QUIT
|
|
ENDIF
|
|
DO Lg WITH 'conectat OK, gcNumeProgram=' + gcNumeProgram + ' gnAn/gnLuna=' + TRANSFORM(gnAn) + '/' + TRANSFORM(gnLuna)
|
|
|
|
PRIVATE poGeneratorNumere
|
|
poGeneratorNumere = CREATEOBJECT('oGeneratorNumere')
|
|
DO Lg WITH 'poGeneratorNumere creat OK'
|
|
|
|
LOCAL lnRezFact, lnRezAviz
|
|
lnRezFact = poGeneratorNumere.creeaza_cursor_serii(5)
|
|
DO Lg WITH 'creeaza_cursor_serii(5 FACTURA) => ' + TRANSFORM(lnRezFact)
|
|
IF USED('crsseriitemp5')
|
|
SELECT crsseriitemp5
|
|
SCAN
|
|
DO Lg WITH ' serie FACTURA candidata: id_serie=' + TRANSFORM(id_serie) + ' serie=[' + TRANSFORM(serie) + ']'
|
|
ENDSCAN
|
|
ELSE
|
|
DO Lg WITH ' (crsseriitemp5 nu exista - fara serie configurata)'
|
|
ENDIF
|
|
|
|
lnRezAviz = poGeneratorNumere.creeaza_cursor_serii(6)
|
|
DO Lg WITH 'creeaza_cursor_serii(6 AVIZ) => ' + TRANSFORM(lnRezAviz)
|
|
IF USED('crsseriitemp6')
|
|
SELECT crsseriitemp6
|
|
SCAN
|
|
DO Lg WITH ' serie AVIZ candidata: id_serie=' + TRANSFORM(id_serie) + ' serie=[' + TRANSFORM(serie) + ']'
|
|
ENDSCAN
|
|
ELSE
|
|
DO Lg WITH ' (crsseriitemp6 nu exista - fara serie configurata)'
|
|
ENDIF
|
|
|
|
DO Lg WITH 'gnIdSucursala=' + TRANSFORM(gnIdSucursala) + ' gnIdUtil=' + TRANSFORM(gnIdUtil)
|
|
|
|
DO Lg WITH 'done ' + TTOC(DATETIME())
|
|
QUIT
|
|
|
|
PROCEDURE Lg
|
|
LPARAMETERS tc
|
|
STRTOFILE(tc + CHR(13) + CHR(10), gcDiagLog, 1)
|
|
ENDPROC
|
|
|
|
PROCEDURE diag_err
|
|
LPARAMETERS tnErr, tcMsg, tcProg, tnLine
|
|
STRTOFILE('ON ERROR ' + TRANSFORM(tnErr) + ' [' + tcProg + ':' + TRANSFORM(tnLine) + '] ' + tcMsg + CHR(13) + CHR(10), gcDiagLog, 1)
|
|
ENDPROC
|