* 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)