M1 modifica_reg_dg: garda id_part NULL/empty (mesaj + Return .F.), NVL pe id_part/nr_pag, functia intoarce succes. M2 validare partener in toate cele 3 puncte de salvare, INAINTE de blocarea campurilor (Command2.Click salveaza inainte sa blocheze; bara laterala si Page3.Deactivate nu mai salveaza/prompteaza cu partener NULL). M3 do_adauga: documentul nou intra direct in editare (llock=.F., focus cmdDenumire); eliminat mesajul fals "Toate modificarile au efect imediat!". M4 viz_registratura + do_cauta: filtru initial "doar ultimul document" (subquery max(id_reg)); fara criterii de cautare se pastreaza filtrul, nu se incarca toata baza. M5 fonturi: eliminate 154 suprascrieri "Arial Narrow" si rebazate 96 controale baseclass pe COMUN _baza.vcx (textbox/label/checkbox/commandbutton/optiongroup); Init de grid propaga fontul la coloane si headere (fara asta raman Arial 9 - verificat empiric). Teste: harness headless (init env dedicat, form, adaugare+editare cu verificare in baza) + test UI vizual cu screenshots pe fluxul real (19 PASS / 0 FAIL). Diff-uri de audit in docs/diff_runda1_*.patch. M6 (build EXE) BLOCAT headless: roaRegistratura.pjx refera 48 fisiere hardcodate pe "c:\program files\...\vfp 9" (masina 32-bit din 2021) + COMUN\utile\hpdf\ReportOutput\ctl32_progressbar.vcx redenumit _old; necesita repathing o data in VFP9 IDE. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018H9za5A9Tk6wcLFof6seds
51 lines
2.3 KiB
Diff
51 lines
2.3 KiB
Diff
diff --git "a/D:\\ROA\\ROAREGISTRATURA\\Programe\\oproceduri_roaregistratura.prg.pre_runda1.bak" "b/D:\\ROA\\ROAREGISTRATURA\\Programe\\oproceduri_roaregistratura.prg"
|
|
index a6462e9..e4b8274 100644
|
|
--- "a/D:\\ROA\\ROAREGISTRATURA\\Programe\\oproceduri_roaregistratura.prg.pre_runda1.bak"
|
|
+++ "b/D:\\ROA\\ROAREGISTRATURA\\Programe\\oproceduri_roaregistratura.prg"
|
|
@@ -16,7 +16,7 @@ lcSelect = [select id_reg, id_part, denumire, id_pers, pers_contact, data, numar
|
|
|
|
lcOrder = []
|
|
lcgroup = []
|
|
-lcFiltru = [sters=0]
|
|
+lcFiltru = [sters=0 and id_reg=(select max(id_reg) from vregistratura where sters=0)] && *!* 23.07.2026 MM - initial doar ultimul document (P4)
|
|
lcFiltruOriginal = []
|
|
llModParam = .T.
|
|
llAfiseaza = .F.
|
|
@@ -103,12 +103,18 @@ Parameters toRegistratura
|
|
Local loRegistratura
|
|
loRegistratura = toRegistratura
|
|
|
|
+*!* 23.07.2026 MM - garda partener NULL/empty (P2), functia intoarce .T./.F.
|
|
+If Isnull(loRegistratura.id_part) Or Empty(loRegistratura.id_part)
|
|
+ AMESSAGEBOX("Alegeti partenerul inainte de salvare!",0+48,"Atentie")
|
|
+ Return .F.
|
|
+Endif
|
|
+
|
|
Local lcId_reg, lcId_part, lcId_pers, lcData, lcNumar, lcData_intern, lcNumar_intern, lcDescriere, lcObservatii, lcIdUtil
|
|
Local lnSucces
|
|
lnSucces = -1
|
|
|
|
lcId_reg = Alltrim(Str(loRegistratura.id_reg))
|
|
-lcId_part = Alltrim(Str(loRegistratura.id_part))
|
|
+lcId_part = Nvl(Alltrim(Str(loRegistratura.id_part)),'NULL')
|
|
lcId_pers = Nvl(Alltrim(Str(loRegistratura.id_pers)),'NULL')
|
|
lcId_responsabil = Nvl(Alltrim(Str(loRegistratura.id_responsabil)),'NULL')
|
|
lcData = Dtos(loRegistratura.Data)
|
|
@@ -120,7 +126,7 @@ lcDescriere = Nvl(Alltrim(loRegistratura.descriere),"")
|
|
lcObservatii = Nvl(Alltrim(loRegistratura.observatii)," ")
|
|
lcId_fdoc = Nvl(Alltrim(Str(loRegistratura.id_fdoc)),'NULL')
|
|
lcId_mediu = Nvl(Alltrim(Str(loRegistratura.id_mediu)),'NULL')
|
|
-lcNr_pag = Alltrim(Str(loRegistratura.nr_pag))
|
|
+lcNr_pag = Nvl(Alltrim(Str(loRegistratura.nr_pag)),'NULL')
|
|
lcIdUtil = Alltrim(Str(gnIdUtil))
|
|
|
|
lcSql = [begin pack_registratura.modifica_registratura(] + lcId_reg + [,] + lcId_part + [,] + lcId_pers + [,] + lcId_responsabil + ;
|
|
@@ -134,6 +140,7 @@ If lnSucces < 0
|
|
AMESSAGEBOX(goExecutor.cEroare,0+16,"Eroare")
|
|
Endif
|
|
|
|
+Return (lnSucces >= 0)
|
|
Endproc && modifica_reg_dg
|
|
***-----------------------------------------------------------------------------------------------------------------------------
|
|
|