diff --git a/Clase/ferestre_registratura.vc2 b/Clase/ferestre_registratura.vc2 index 3c34fd1..de1963b 100644 --- a/Clase/ferestre_registratura.vc2 +++ b/Clase/ferestre_registratura.vc2 @@ -1226,7 +1226,9 @@ DEFINE CLASS ct_registratura AS _ctfrmbase OF "..\comun\clase\_ct_base.vcx" ENDPROC PROCEDURE do_initializeaza_cursor + save_grid_tag(This.grid_registratura) Do viz_registratura In oproceduri_roaregistratura.prg + restore_grid_tag(This.grid_registratura) Select cRegistratura Go Top Scatter Name goRegistratura Blank diff --git a/Teste/test_repro_grid_firma_goala.prg b/Teste/test_repro_grid_firma_goala.prg new file mode 100644 index 0000000..c72672c --- /dev/null +++ b/Teste/test_repro_grid_firma_goala.prg @@ -0,0 +1,79 @@ +* test_repro_grid_firma_goala.prg - repro headless: cursor cRegistratura pe firma goala +* Rulare: vfp9.exe -A -T "D:\ROA\ROAREGISTRATURA\Teste\test_repro_grid_firma_goala.prg" +LPARAMETERS tcParam +PUBLIC gcLog +gcLog = 'D:\ROA\ROAREGISTRATURA\Teste\log_repro_grid.txt' +STRTOFILE('=== repro grid firma goala ' + TTOC(DATETIME()) + CHR(13)+CHR(10), gcLog) + +ON ERROR DO tlog WITH '*** EROARE ' + TRANSFORM(ERROR()) + ': ' + MESSAGE() + ; + ' | prg=' + PROGRAM() + ' lin=' + TRANSFORM(LINENO()) + +DO D:\ROA\ROAREGISTRATURA\Teste\test_init_env_registratura.prg +IF TYPE('gnHandle') <> 'N' OR gnHandle <= 0 + DO tlog WITH 'FAIL conectare' + QUIT +ENDIF +DO tlog WITH 'Conectat, handle=' + TRANSFORM(gnHandle) + +* faza 1: exact filtrul initial din viz_registratura, dar fortat GOL (simulare firma fara inregistrari) +DO fa_cursor WITH [1=0], 'FAZA1(gol)' + +* faza 2: firma cu inregistrari (filtrul real initial) +DO fa_cursor WITH [sters=0 and id_reg=(select max(id_reg) from vregistratura where sters=0)], 'FAZA2(plin)' + +* faza 3: din nou gol, apoi iar plin - stabilitate +DO fa_cursor WITH [1=0], 'FAZA3(gol)' +DO fa_cursor WITH [sters=0], 'FAZA4(toate)' + +ON ERROR +QUIT + +PROCEDURE fa_cursor + LPARAMETERS tcFiltru, tcEticheta + DO tlog WITH '--- ' + tcEticheta + ' filtru: ' + tcFiltru + DO viz_registratura_test WITH tcFiltru + DO tlog WITH tcEticheta + ' USED=' + TRANSFORM(USED('cRegistratura')) + ; + ' RECC=' + TRANSFORM(IIF(USED('cRegistratura'), RECCOUNT('cRegistratura'), -1)) + ; + ' DBF=' + IIF(USED('cRegistratura'), DBF('cRegistratura'), '') + IF USED('cRegistratura') + * capcana USE DBF() AGAIN pe cursor gol (folosita in decabaza.afisare) + LOCAL lcTmp + lcTmp = SYS(2015) + USE DBF('cRegistratura') IN 0 AGAIN SHARED ALIAS (lcTmp) + DO tlog WITH tcEticheta + ' USE-AGAIN=' + TRANSFORM(USED(lcTmp)) + IF USED(lcTmp) + USE IN (lcTmp) + ENDIF + ENDIF + DO tlog WITH tcEticheta + ' poReg=' + TYPE('poReg') +ENDPROC + +PROCEDURE viz_registratura_test + * copia lui viz_registratura cu filtru parametrizat + LPARAMETERS tcFiltru + LOCAL lcSchema, lcSelect, lcOrder, lcFiltru, lcFiltruOriginal, llAfiseaza, lcgroup, llModParam + lcSchema = [id_reg n(8), id_part n(10), denumire c(70), id_pers n(10), pers_contact c(70), data d, numar c(20), numar_intern c(20), data_intern d, ]+; + [descriere c(100), ie N(1), observatii M, ]+; + [id_fdoc n(5), fel_document c(30), id_mediu n(5), mediu_transmisie c(30), avizat n(1), ]+; + [util c(30), dataora t , ]+; + [utils c(30), dataoras t , ]+; + [util_avizat c(30), dataora_avizat t, are_obs N(1), are_link n(1), ]+; + [id_responsabil n(10), nresp c(70), nr_pag N(4), sters n(1),id_proiect n(10),proiect v(200)] + lcSelect = [select id_reg, id_part, denumire, id_pers, pers_contact, data, numar, numar_intern, data_intern, ]+; + [ descriere, ie, observatii, id_fdoc, fel_document, id_mediu, mediu_transmisie, avizat, ]+; + [ util, dataora, utils, dataoras, util_avizat, dataora_avizat, are_obs, are_link, id_responsabil, nresp, nr_pag, sters,id_proiect,proiect ]+; + [from vregistratura] + lcOrder = [] + lcgroup = [] + lcFiltru = tcFiltru + lcFiltruOriginal = [] + llModParam = .T. + llAfiseaza = .F. + gencursor('poReg','cRegistratura', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal) + poReg.ca_baza1.afisare() +ENDPROC + +PROCEDURE tlog + LPARAMETERS tcMsg + STRTOFILE(TRANSFORM(tcMsg) + CHR(13)+CHR(10), gcLog, 1) +ENDPROC diff --git a/roaRegistratura.pj2 b/roaRegistratura.pj2 index 664dfd9..18839b5 100644 --- a/roaRegistratura.pj2 +++ b/roaRegistratura.pj2 @@ -25,7 +25,7 @@ _LegalTrademark = "" _ProductName = " ROA - Registratura" _MajorVer = "2" _MinorVer = "0" -_Revision = "4" +_Revision = "5" _LanguageID = "Romana" _AutoIncrement = "0" * @@ -125,6 +125,7 @@ WITH loProject.FILES .ADD('comun\clase\caut_ora.vcx') && *< FileMetadata: Type="V" Cpid="0" Timestamp="0" ID="0" ObjRev="544" User="" /> .ADD('comun\clase\cauta_alfa_forms.vcx') && *< FileMetadata: Type="V" Cpid="1252" Timestamp="0" ID="0" ObjRev="544" User="" /> .ADD('comun\clase\cautare.vcx') && *< FileMetadata: Type="V" Cpid="0" Timestamp="0" ID="0" ObjRev="544" User="" /> + .ADD('comun\clase\chatbot.bmp') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" /> .ADD('comun\clase\cmd_butoane.vcx') && *< FileMetadata: Type="V" Cpid="0" Timestamp="0" ID="0" ObjRev="544" User="" /> .ADD('comun\clase\crypto.vcx') && *< FileMetadata: Type="V" Cpid="0" Timestamp="0" ID="0" ObjRev="544" User="" /> .ADD('comun\clase\decabaza.vcx') && *< FileMetadata: Type="V" Cpid="0" Timestamp="0" ID="0" ObjRev="544" User="" />