Files
comun/utile/Teste/facturare_unificat/probe_emitere_reala.prg
Marius Mutu 8e022d332e #13: formular de facturare unificat - etapa curenta
Squash al branch-ului de lucru plan13-s2.

Clase: ofacturare (nucleul formularului unificat), ofacturare_comun,
ferestre_cere_date, ocomenzi, caut_ora (lista de preturi in combo-urile de
cautare), omodificari.

Programe: ofacturare impartit - ofacturare_antet, ofacturare_rutare_scriere si
ogrid_latimi sunt fisiere noi; oproceduri_facturare primeste discountul pe linie
si cota standard de TVA cand articolul nu are cota pe politica.

Documentatie: capcana SQLExec no_data_found, conventia de encoding, depanarea
testelor VFP si regulile de lucru - conflictele cu modificarile venite din alte
proiecte sunt rezolvate pastrand ambele parti.

Loguri de rulare a testelor scoase din versionare; testele raman.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PkyjGyrV2S7932om4kfSiK
2026-09-09 21:38:25 +03:00

73 lines
2.8 KiB
Plaintext

* probe_emitere_reala.prg
* Proba READ-ONLY (fara scriere, fara alocare de numere): verifica daca cursor_preturi
* intoarce randuri pentru clientul RAJA (id_part=463) cu poDate.tip=5 (FACTURA), ca sa decida
* daca CreeazaDocument din test_s3b_emitere_reala.prg poate folosi tnTip=5 direct, sau daca
* trebuie sa refoloseasca tiparul tnTip=22 (deja dovedit in creeaza_documente_s8.prg) cu
* poDate.nIdTipDoc suprascris pe 5.
SET SAFETY OFF
SET TALK OFF
LOCAL lcLog
lcLog = "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out\probe_emitere_reala.log"
STRTOFILE("START " + TTOC(DATETIME()) + CHR(13)+CHR(10), lcLog)
ON ERROR DO ProbeErr WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()
PUBLIC gcS
gcS = 'MARIUSM_AUTO'
DO "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\test_init_env_auto_roafacturare.prg" WITH 'CENTRAL', 'MARIUSM_AUTO', 'ROMFASTSOFT'
IF TYPE('gnHandle') <> 'N' OR gnHandle <= 0
STRTOFILE("EROARE: conectare Oracle esuata" + CHR(13)+CHR(10), lcLog, 1)
QUIT
ENDIF
STRTOFILE("Oracle conectat, gnHandle=" + TRANSFORM(gnHandle) + CHR(13)+CHR(10), lcLog, 1)
LOCAL lcSql, lnOk
PRIVATE pdZiCurs, pnTip, pnIdValuta, pnIdGestiuneInit, pnLuna, pnAn, pnIdUtil, pnIdSucursala
pdZiCurs = {^2026-08-10}
pnIdValuta = NULL
pnIdGestiuneInit = NULL
pnLuna = 8
pnAn = 2026
pnIdUtil = -3
pnIdSucursala = NULL
LOCAL ARRAY laTipuri[5], laSucursale[5]
laTipuri[1] = 1
laTipuri[2] = 2
laTipuri[3] = 3
laTipuri[4] = 4
laTipuri[5] = 22
laSucursale[1] = 167
laSucursale[2] = 167
laSucursale[3] = 167
laSucursale[4] = 167
laSucursale[5] = 167
LOCAL lnIdx
FOR lnIdx = 1 TO 5
pnTip = laTipuri[lnIdx]
pnIdSucursala = laSucursale[lnIdx]
lcSql = [{call ] + gcS + [.pack_facturare.cursor_preturi(?pdZiCurs,?pnTip,?pnIdValuta,?pnIdGestiuneInit,?pnLuna,?pnAn,?pnIdUtil,?pnIdSucursala)}]
lnOk = goExecutor.oExecute(lcSql, 'crsprobe')
IF lnOk < 0
STRTOFILE("tip=" + TRANSFORM(pnTip) + " sucursala=" + TRANSFORM(NVL(pnIdSucursala,-1)) + " EROARE: " + goExecutor.oPrelucrareEroare() + CHR(13)+CHR(10), lcLog, 1)
ELSE
STRTOFILE("tip=" + TRANSFORM(pnTip) + " sucursala=" + TRANSFORM(NVL(pnIdSucursala,-1)) + " OK, Reccount=" + TRANSFORM(RECCOUNT('crsprobe')) + CHR(13)+CHR(10), lcLog, 1)
IF RECCOUNT('crsprobe') > 0
SELECT crsprobe
GO TOP
STRTOFILE(" prima linie: id_articol=" + TRANSFORM(NVL(id_articol,-1)) + " denumire=" + TRANSFORM(NVL(denumire,'')) + ;
" id_valuta=" + TRANSFORM(NVL(id_valuta,-1)) + " tip_valuta=" + TRANSFORM(NVL(tip_valuta,-1)) + CHR(13)+CHR(10), lcLog, 1)
ENDIF
IF USED('crsprobe')
USE IN crsprobe
ENDIF
ENDIF
ENDFOR
STRTOFILE("END " + TTOC(DATETIME()) + CHR(13)+CHR(10), lcLog, 1)
QUIT
PROCEDURE ProbeErr
LPARAMETERS tnErr, tcMsg, tcProg, tnLine
STRTOFILE("ON ERROR " + TRANSFORM(tnErr) + " [" + tcProg + ":" + TRANSFORM(tnLine) + "] " + tcMsg + CHR(13)+CHR(10), "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out\probe_emitere_reala.log", 1)
ENDPROC