Pagina Articole din frm_modific2024: - DblClick pe cele cinci coloane cu nomenclator (articol, gestiune, taxcode, valuta, explicatie TVA). Explicatia TVA are ControlSource expresie, deci tastarea nu putea declansa niciodata InteractiveChange; DblClick se sprijina pe pccontrol si acopera uniform toate cele cinci. - Pret si Pret cu TVA folosesc gnPPretV (precizie pret vanzare) in loc de gnPPret (precizie achizitie). Coloana de pret achizitie ramane pe gnPPret. - Culori dupa conventia de pe pagina Rulaje: verde pe coloanele care se editeaza prin dialog, alb pe cele care se tasteaza direct. - Serie, lot si explicatie devin editabile in celula. Garda .When ramane si blocheaza in continuare liniile din seturi si facturile din e-Factura. frm_facturi: textul optiunii de editare factura din meniul contextual devine "Editare factura (note, rulaje, articole)". Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013gYCNE26G1G7UoGu2ju7aS
120 lines
4.0 KiB
Plaintext
120 lines
4.0 KiB
Plaintext
* test_ui_culoare_contrast.prg - dovada vizuala pe formular vizibil: linia stearsa (sters=1)
|
|
* apare gri (RGB 150,150,150), o linie normala (sters=0) ramane neagra, pe acelasi grid
|
|
* (pgfArticole.PAGE3.grdArticoleFactura). Foloseste un document cu minim 3 linii, ca linia
|
|
* curenta a gridului (fundal albastru) sa nu coincida nici cu linia stearsa, nici cu linia
|
|
* de control - selectia nu trebuie sa acopere culoarea testata. Nu scrie in Oracle. QUIT la final.
|
|
|
|
SET SAFETY OFF
|
|
SET TALK OFF
|
|
|
|
PUBLIC gcUILog, gcSyncDir
|
|
gcSyncDir = 'D:\ROA\ROAFACTURARE\COMUN\utile\Teste\editare_factura\uisync5\'
|
|
gcUILog = 'D:\ROA\ROAFACTURARE\COMUN\utile\Teste\editare_factura\test_ui_culoare_contrast_log.txt'
|
|
STRTOFILE('start' + CHR(13) + CHR(10), gcUILog)
|
|
|
|
ON ERROR DO test_error_handler WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()
|
|
|
|
PUBLIC gnPass, gnFail
|
|
gnPass = 0
|
|
gnFail = 0
|
|
|
|
SET PROCEDURE TO D:\ROA\ROAFACTURARE\COMUN\utile\Teste\ui_harness.prg ADDITIVE
|
|
DO HarnessInit
|
|
|
|
DO ('D:\ROA\ROAFACTURARE\COMUN\utile\Teste\test_init_env_auto.prg') WITH 'CENTRAL', 'MARIUSM_AUTO', 'ROMFASTSOFT'
|
|
IF gnHandle <= 0
|
|
STRTOFILE('EROARE: conectare esuata' + CHR(13) + CHR(10), gcUILog, 1)
|
|
DO HarnessDone WITH 'error'
|
|
QUIT
|
|
ENDIF
|
|
|
|
SET PROCEDURE TO D:\ROA\ROAFACTURARE\COMUN\programe\ofacturare_editare.prg ADDITIVE
|
|
SET PROCEDURE TO D:\ROA\ROAFACTURARE\COMUN\utile\Teste\editare_factura\descopera_caz_test.prg ADDITIVE
|
|
|
|
RELEASE CLASSLIB omodificari
|
|
SET CLASSLIB TO D:\ROA\ROAFACTURARE\COMUN\clase\omodificari.vcx ADDITIVE
|
|
|
|
LOCAL llCazA
|
|
llCazA = DescoperaCazTest('FACTURA_ARTICOLE', 'crscaz_a')
|
|
IF !llCazA OR crscaz_a.nlin < 3
|
|
STRTOFILE('EROARE: cazul FACTURA_ARTICOLE nu are minim 3 linii (nlin=' + TRANSFORM(IIF(llCazA,crscaz_a.nlin,-1)) + ')' + CHR(13) + CHR(10), gcUILog, 1)
|
|
DO HarnessDone WITH 'error'
|
|
QUIT
|
|
ENDIF
|
|
STRTOFILE('caz A: cod=' + TRANSFORM(crscaz_a.cod) + ' id_vanzare=' + TRANSFORM(crscaz_a.id_vanzare) + ' nlin=' + TRANSFORM(crscaz_a.nlin) + CHR(13) + CHR(10), gcUILog, 1)
|
|
|
|
LOCAL llOk, lnIdSet, loForm, loGrid, loBut
|
|
|
|
llOk = IncarcaCursoareModificareNota(crscaz_a.cod, crscaz_a.an, crscaz_a.luna, .F.)
|
|
IF !llOk OR !Used('tact') OR Reccount('tact') = 0
|
|
STRTOFILE('EROARE: IncarcaCursoareModificareNota a esuat' + CHR(13) + CHR(10), gcUILog, 1)
|
|
DO HarnessDone WITH 'error'
|
|
QUIT
|
|
ENDIF
|
|
|
|
Select a.*, Iif(Nvl(id_jtva_coloana,0)=0,0,1) As cu_Tva From tact a Into Cursor tact Readwrite
|
|
Go Top In tact
|
|
lnIdSet = tact.id_set
|
|
|
|
IF !Used('crsJtvaTemp')
|
|
update_jtva_coloane("", "crsJtvaTemp", 6)
|
|
ENDIF
|
|
|
|
IncarcaArticoleFactura(crscaz_a.id_vanzare, 'crsArticoleFactura')
|
|
|
|
Select tact
|
|
loForm = Createobject([frm_modific2024], lnIdSet)
|
|
loForm.WindowType = 0
|
|
loForm.Show()
|
|
loForm.pgfArticole.ActivePage = 3
|
|
DOEVENTS FORCE
|
|
|
|
loGrid = loForm.pgfArticole.Page3.grdArticoleFactura
|
|
loBut = loForm.but_stergeR
|
|
|
|
*!* marcheaza linia 2 ca stearsa
|
|
SELECT tvd
|
|
GO 2
|
|
loBut.Click()
|
|
DOEVENTS FORCE
|
|
DO asserteaza WITH 'linia 2: sters=1 dupa click', NVL(tvd.sters,0) = 1, TRANSFORM(NVL(tvd.sters,0))
|
|
|
|
*!* linia curenta a gridului ramane pe linia 3 (normala) - selectia (fundal albastru) nu trebuie
|
|
*!* sa acopere nici linia 2 (stearsa, de verificat gri) nici linia 1 (normala, de verificat neagra)
|
|
GO 3
|
|
loGrid.SetFocus()
|
|
DOEVENTS FORCE
|
|
|
|
STRTOFILE('REZULTAT: ' + TRANSFORM(gnPass) + ' PASS / ' + TRANSFORM(gnFail) + ' FAIL' + CHR(13) + CHR(10), gcUILog, 1)
|
|
|
|
DO HarnessStep WITH 0, 'pagina3 - linia 2 stearsa (gri), linia 1 normala (neagra)', 25
|
|
|
|
loForm.Release()
|
|
|
|
IF Used('crsArticoleFactura')
|
|
Use In crsArticoleFactura
|
|
ENDIF
|
|
|
|
DO HarnessDone WITH 'done'
|
|
QUIT
|
|
|
|
|
|
PROCEDURE asserteaza
|
|
LPARAMETERS tcNume, tlConditie, tcValoare
|
|
|
|
IF m.tlConditie
|
|
gnPass = gnPass + 1
|
|
STRTOFILE('PASS ' + m.tcNume + CHR(13) + CHR(10), gcUILog, 1)
|
|
ELSE
|
|
gnFail = gnFail + 1
|
|
STRTOFILE('FAIL ' + m.tcNume + ' (valoare: ' + m.tcValoare + ')' + CHR(13) + CHR(10), gcUILog, 1)
|
|
ENDIF
|
|
ENDPROC
|
|
|
|
|
|
PROCEDURE test_error_handler
|
|
LPARAMETERS tnError, tcMessage, tcProgram, tnLineNo
|
|
|
|
STRTOFILE('EROARE ' + TRANSFORM(tnError) + ' [' + tcProgram + ':' + TRANSFORM(tnLineNo) + '] ' + tcMessage + CHR(13) + CHR(10), gcUILog, 1)
|
|
ENDPROC
|