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
21 lines
1.1 KiB
Plaintext
21 lines
1.1 KiB
Plaintext
* mock_muta_borderou.prg - controlul negativ al probei S11: inlocuieste FUNCTION
|
|
* MutaBorderouReemitere (din ofacturare_rutare_scriere.prg) cu un no-op care intoarce .T.,
|
|
* adica exact starea codului DINAINTE de reparatia S11. Nu se atinge fisierul comis.
|
|
* Se incarca PRIMA in lista SET PROCEDURE - in VFP, la nume duplicat de procedura castiga primul
|
|
* fisier din lista, nu cel deschis cel mai recent:
|
|
* lcProcExistent = SET("PROCEDURE")
|
|
* SET PROCEDURE TO "<cale>\mock_muta_borderou.prg", &lcProcExistent
|
|
* Dovada ca mock-ul a preluat NU se ia chemand functia din test (ar demonstra doar rezolutia din
|
|
* test), ci din gnMockMutaApeluri, incrementat aici si citit dupa apelul facut de .vc2.
|
|
FUNCTION MutaBorderouReemitere
|
|
LPARAMETERS tnIdVanzareVechi, tnIdVanzareNou
|
|
IF TYPE('gnMockMutaApeluri') = 'N'
|
|
gnMockMutaApeluri = gnMockMutaApeluri + 1
|
|
ENDIF
|
|
IF TYPE('gcErrLog') = 'C'
|
|
STRTOFILE('MOCK MutaBorderouReemitere(' + TRANSFORM(tnIdVanzareVechi) + ', ' + ;
|
|
TRANSFORM(tnIdVanzareNou) + ') -> .T. fara nicio scriere' + CHR(13) + CHR(10), gcErrLog, 1)
|
|
ENDIF
|
|
RETURN .T.
|
|
ENDFUNC
|