- TVA-ul de pe DVI poate avea valuta si curs proprii, diferite de ale facturii (rand "protejat": rand_dvi/valuta_proprie pe introdc, sparge_tva_protejat). - Discount financiar pe factura: rand tip_rand='G' (401 = 767), TVA calculat pe baza diminuata, marfa si preturile articolelor pe valoarea integrala. - Factura multi-cota: randurile S, G si T se sparg pe cotele articolelor, cu explicatia TVA din familia coloanei si alinierea T -> S. - Teste noi in utile/Teste/achizitie_import (discount, DVI, cote, e2e). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01U9uDgDfUQXbh2Neib36CN8
51 lines
2.4 KiB
Plaintext
51 lines
2.4 KiB
Plaintext
* mock_cauta_alfa_tva11.prg - shadow PROCEDURE cauta_alfa (COMUN\programe\cauta_alfa.prg) DOAR
|
|
* pentru testul de reproducere TVA 11% pe explicatia TVA din grid (do_modifica_explicatie_tva,
|
|
* COMUN\clase\ointroduceri.vcx). Acelasi motiv ca mock_cauta_alfa_dialog.prg (cauta_alfa real
|
|
* populeaza cursorul din Oracle prin gencursor/CursorAdapter - nemock-uibil prin goExecutor) -
|
|
* vezi acel fisier pentru detalii complete despre flux. Aici simplificat la modul SINGLE-SELECT:
|
|
* do_modifica_explicatie_tva nu trimite tnTipReturn, deci cauta_alfa il impune 0 (obiect scatter
|
|
* pe randul curent, lAles=.F.) - submit-ul e echivalentul unui dublu-click pe randul dialogului
|
|
* (bind dblClick->do_termin activ doar in modul single-select, cauta_alfa_forms.vc2:652
|
|
* "If !Thisform.lales"), fara nevoie de marcaj (cAles).
|
|
*
|
|
* Control test (setat de testul principal INAINTE de fiecare apel):
|
|
* goDlgTva11 - formularul REAL cauta_alfa_form, pre-construit in main (capcana l:
|
|
* CREATEOBJECT dintr-o procedura da obiect stricat in acest runtime headless)
|
|
* gcTestTvaAlege - denumirea randului de ales (coloana "denumire" a cursorului dialogului)
|
|
|
|
Procedure cauta_alfa
|
|
Parameters tcselect,tcfiltru,tcschema,tcorder,tccoloana,tcTitlu,tcTitluColoane, ;
|
|
tcNume_Proc,tl_AllInList,tcFiltruOriginal,tcPrimaColoana, tnPornire, tnTipReturn, ;
|
|
tcIdColumn, tlDesktop, tcGroup, tcGridDynamicBackColor, tcGridToolTip, tlModParam, tcStringCriterii, ;
|
|
tcProceduraVerifica, tcProceduraCopiaza,tcLocate
|
|
|
|
LOCAL lcCursor, oReturnScattObj
|
|
|
|
lcCursor = goDlgTva11.crs_cursor
|
|
|
|
SELECT (lcCursor)
|
|
LOCATE FOR ALLTRIM(denumire) == ALLTRIM(gcTestTvaAlege)
|
|
IF !FOUND()
|
|
GO TOP
|
|
ENDIF
|
|
IF TYPE('gcUILog') = 'C'
|
|
DO HarnessLog WITH 'MOCK cauta_alfa(explicatie tva) pozitionat pe [' + ALLTRIM(denumire) + '] id_jtva_coloana=' + TRANSFORM(id_jtva_coloana) + ' cota_tva=' + TRANSFORM(cota_tva)
|
|
ENDIF
|
|
|
|
*-- echivalentul dublu-click pe randul dialogului (submit direct, mod single-select):
|
|
*-- butonul OK REAL (_frm_base.do_termin: gnButon=1, Release oForm_cautare)
|
|
goDlgTva11.do_termin()
|
|
DOEVENTS FORCE
|
|
|
|
*-- de aici incolo: cod IDENTIC cu cauta_alfa.prg real (tnTipReturn=0 implicit) - SCATTER
|
|
*-- pe randul curent al cursorului (NU se mai atinge oForm_cautare, Release-uit mai sus)
|
|
SELECT (lcCursor)
|
|
IF gnButon = 1
|
|
SCATTER NAME oReturnScattObj MEMO
|
|
ELSE
|
|
SCATTER NAME oReturnScattObj MEMO BLANK
|
|
ENDIF
|
|
RETURN oReturnScattObj
|
|
|
|
Endproc && cauta_alfa (shadow test tva11)
|