Import eFactura in lot: borderou cu ce lipseste, coada de contabilizare, alegerea contului

Borderoul tine per factura ce mai are de completat si daca are articole de gestiune
(camp gest, coloana si filtru), coada contabilizeaza in serie facturile bifate si
incheie cu un rezumat, iar contul de furnizor/client se alege din planul de conturi.
Cheia normalizata de articol, rezolvarea automata a partenerului si anularea in bloc
intra tot aici. Pozitia in lista se pastreaza peste reaplicarea filtrului.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Aroafxp4z8bmM5oVECZRXY
This commit is contained in:
2026-09-09 21:35:07 +03:00
parent 8e022d332e
commit 940bb39701
48 changed files with 10602 additions and 519 deletions

View File

@@ -0,0 +1,17 @@
* mock_facturi_duplicate.prg - inlocuieste FUNCTION facturi_duplicate (oproceduri_comune.prg) in
* testele eFactura, ca verificarea de facturi duplicate sa fie determinista, fara sa depinda de
* date reale din IREG_PARTENERI. Acelasi tipar ca mock_amessagebox.prg: SET PROCEDURE ADDITIVE
* PRIMA, inainte de fisierele aplicatiei. Raspunde cu gcMockDuplicat (PUBLIC, declarat de test)
* daca exista, altfel sir gol (nicio factura duplicata). Lasa in mod deliberat alta zona de lucru
* selectata la iesire (ca originalul, care nu isi salveaza/restaureaza SELECT()), ca apelantul sa
* fie testat pe acelasi comportament.
PROCEDURE facturi_duplicate
LPARAMETERS tcCont, tnIdPart, tcSerieAct, tnNract, tcMesajReturn
LOCAL lcRezultat
lcRezultat = IIF(TYPE('gcMockDuplicat') = 'C', gcMockDuplicat, '')
IF !USED('cMockFactDbl')
CREATE CURSOR cMockFactDbl (nr_ireg N(5))
ENDIF
SELECT cMockFactDbl
RETURN m.lcRezultat
ENDPROC