sync SVN r18185

This commit is contained in:
2026-09-19 18:02:09 +03:00
parent b851051c44
commit 4eae0bd4a6
2 changed files with 466 additions and 131 deletions

View File

@@ -6798,6 +6798,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*<DefinedPropArrayMethod> *<DefinedPropArrayMethod>
*m: actualizeazabaratotaluri *m: actualizeazabaratotaluri
*m: actualizeazalabellipsuri
*m: actualizeazatotaluriextrase *m: actualizeazatotaluriextrase
*m: actualizeazaverdictactrul *m: actualizeazaverdictactrul
*m: adaugalinietvddinarticol *m: adaugalinietvddinarticol
@@ -6823,6 +6824,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*m: gridrightclickbuget *m: gridrightclickbuget
*m: grid_focus_prima_coloana *m: grid_focus_prima_coloana
*m: resize_grid1 *m: resize_grid1
*m: saltlipsaurmatoare
*m: saltplatabuget *m: saltplatabuget
*m: salveazaxml *m: salveazaxml
*m: semnaturadivergentesincronizare *m: semnaturadivergentesincronizare
@@ -6832,12 +6834,14 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*m: updateexplicatiesaftrul *m: updateexplicatiesaftrul
*m: valideaza_data *m: valideaza_data
*m: verificaavertizareexigibilizaretva *m: verificaavertizareexigibilizaretva
*m: verificalipsurisilentios
*p: cacont *p: cacont
*p: ccont *p: ccont
*p: ccontbugetanalitic *p: ccontbugetanalitic
*p: ccontrol *p: ccontrol
*p: cpaymentcode *p: cpaymentcode
*p: csemnaturasincronizare *p: csemnaturasincronizare
*p: csemnlipsuri
*p: fel_compensare *p: fel_compensare
*p: lactivextrase *p: lactivextrase
*p: larearticolevanzari *p: larearticolevanzari
@@ -6856,6 +6860,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*p: nnnirvechi *p: nnnirvechi
*p: noldsuma && Valoarea la intrarea in campul "Suma" *p: noldsuma && Valoarea la intrarea in campul "Suma"
*p: nprimadata *p: nprimadata
*p: nreclipsuri
*p: nsuma && Total suma inregistrari *p: nsuma && Total suma inregistrari
*p: ntaxcode *p: ntaxcode
*p: ntipvanzare *p: ntipvanzare
@@ -6881,6 +6886,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
ccontbugetanalitic = ccontbugetanalitic =
cpaymentcode = cpaymentcode =
csemnaturasincronizare = csemnaturasincronizare =
csemnlipsuri =
DoCreate = .T. DoCreate = .T.
FontCharSet = 238 FontCharSet = 238
Height = 530 Height = 530
@@ -6902,6 +6908,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
nnnirvechi = 0 nnnirvechi = 0
noldsuma = 0 noldsuma = 0
nprimadata = 0 nprimadata = 0
nreclipsuri = 0
nsuma = 0 nsuma = 0
ntaxcode = 0 ntaxcode = 0
ntipvanzare = 0 ntipvanzare = 0
@@ -13078,6 +13085,33 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
This.pgfArticole.PAGE3.Refresh() This.pgfArticole.PAGE3.Refresh()
ENDPROC ENDPROC
PROCEDURE ActualizeazaLabelLipsuri
*!* 18.09.2026
*!* marius.mutu
*!* recalculeaza eticheta cu randurile marcate clipsa nevida (verificare_note_contabile) si arata/ascunde eticheta
LOCAL lnLipsuri, lnArea, lnRecno
IF Type('This.lblLipsuri') <> 'O' OR !Used('tact') OR Type('tact.clipsa') <> 'C'
RETURN
ENDIF
lnArea = Select()
lnRecno = Recno('tact')
SELECT tact
COUNT FOR !Empty(clipsa) TO lnLipsuri
IF Between(m.lnRecno, 1, Reccount('tact'))
GO (m.lnRecno) IN tact
ENDIF
IF m.lnArea > 0
SELECT (m.lnArea)
ENDIF
This.lblLipsuri.Visible = (m.lnLipsuri > 0)
IF m.lnLipsuri > 0
This.lblLipsuri.Caption = 'Completeaza: ' + Transform(m.lnLipsuri)
This.lblLipsuri.ToolTipText = 'Celulele rosii trebuie completate. Click pentru urmatorul rand.'
This.lblLipsuri.Top = This.grid1.Top + This.grid1.Height + 4
This.lblLipsuri.Left = IIF(This.lblExtraseAutosalvare.Visible, This.lblExtraseAutosalvare.Left + This.lblExtraseAutosalvare.Width, IIF(This.lblExtraseTotaluri.Visible, This.lblExtraseTotaluri.Left + This.lblExtraseTotaluri.Width, This.cmdSelect.Left + This.cmdSelect.Width)) + 12
ENDIF
ENDPROC
PROCEDURE ActualizeazaTotaluriExtrase PROCEDURE ActualizeazaTotaluriExtrase
*!* SQL, nu SUM/FOR: ignora SET FILTER, WHERE exclude randurile sterse *!* SQL, nu SUM/FOR: ignora SET FILTER, WHERE exclude randurile sterse
LOCAL lnIncasari, lnPlati, lnSelect, lcNuBate, lcTooltip, lcIban, lnCalculat, llBate, lnVerificate, lnSoldNote, lnSoldExtras, lnRecnoBuget, lnPlatiBuget LOCAL lnIncasari, lnPlati, lnSelect, lcNuBate, lcTooltip, lcIban, lnCalculat, llBate, lnVerificate, lnSoldNote, lnSoldExtras, lnRecnoBuget, lnPlatiBuget
@@ -13163,9 +13197,12 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
ENDTRY ENDTRY
SELECT (m.lnSelect) SELECT (m.lnSelect)
This.lblPlatiBuget.Visible = m.lnPlatiBuget > 0 This.lblPlatiBuget.Visible = m.lnPlatiBuget > 0
This.lblPlatiBuget.Caption = 'Plati la buget de defalcat: ' + ALLTRIM(TRANSFORM(m.lnPlatiBuget)) This.lblPlatiBuget.Caption = 'Buget: ' + ALLTRIM(TRANSFORM(m.lnPlatiBuget))
This.lblPlatiBuget.Left = IIF(This.lblExtraseAutosalvare.Visible, This.lblExtraseAutosalvare.Left + This.lblExtraseAutosalvare.Width, This.lblExtraseTotaluri.Left + This.lblExtraseTotaluri.Width) + 12 This.lblPlatiBuget.ToolTipText = 'Plati la buget de defalcat - click pentru urmatoarea'
This.lblPlatiBuget.Left = This.Command4.Left
This.lblPlatiBuget.Top = This.cmdDefalcareBuget.Top + This.cmdDefalcareBuget.Height + 2
ENDIF ENDIF
This.ActualizeazaLabelLipsuri()
ENDPROC ENDPROC
PROCEDURE ActualizeazaVerdictActRul PROCEDURE ActualizeazaVerdictActRul
@@ -13826,6 +13863,10 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
loFrm.Show(1) loFrm.Show(1)
IF gnButon = 1 IF gnButon = 1
AplicaDefalcareBuget(m.lnRec, m.lcGrupa) AplicaDefalcareBuget(m.lnRec, m.lcGrupa)
TRY
GO m.lnRec IN tact && INDEX ON din ordonare muta pointerul pe primul rand - revin pe primul rand defalcat
CATCH
ENDTRY
Thisform.CalculeazaTotal() Thisform.CalculeazaTotal()
Thisform.Grid1.Refresh() Thisform.Grid1.Refresh()
ENDIF ENDIF
@@ -13834,6 +13875,19 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
ENDIF ENDIF
ENDPROC ENDPROC
PROCEDURE Destroy
*!* 19.09.2026
*!* marius.mutu
*!* inchide cache-ul local de configurare conturi/plan analitic al verificarii silentioase
IF Used('crsLipsuriCfg')
Use In crsLipsuriCfg
ENDIF
IF Used('crsLipsuriPlcont')
Use In crsLipsuriPlcont
ENDIF
DoDefault()
ENDPROC
PROCEDURE do_adauga PROCEDURE do_adauga
*!* 27.07.2011 *!* 27.07.2011
*!* marius.mutu *!* marius.mutu
@@ -14617,6 +14671,20 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
Else Else
llRet = .T. llRet = .T.
EndIf EndIf
*!* 18.09.2026
*!* marius.mutu
*!* pozitionare pe primul rand cu campuri lipsa (marcaj clipsa) cand verificarea a esuat
If Type('tact.clipsa') = 'C'
This.ActualizeazaLabelLipsuri()
If !m.llRet
Select tact
Locate For !Empty(clipsa)
If Found()
Thisform.Grid1.SetFocus()
Thisform.Grid1.Refresh()
Endif
Endif
Endif
*!* 14.03.2008 ^ *!* 14.03.2008 ^
*!* 13.03.2008 ^ *!* 13.03.2008 ^
*!* modificare v 2.4.4 *!* modificare v 2.4.4
@@ -14952,6 +15020,22 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
ENDPROC ENDPROC
PROCEDURE Load PROCEDURE Load
*!* coloane de grup (imperechere, defalcare) pe tact daca apelantul nu le-a creat - grid-ul se leaga la construire
IF Used('tact') AND Type('tact.ngrupa') <> 'N'
SELECT *, Cast(0 As I) As ngrupa, Cast(0 As I) As npoz, Space(1) As csursa_f FROM tact INTO CURSOR tact READWRITE
ENDIF
IF Used('tact') AND Type('tact.nordine') <> 'N'
SELECT *, Cast(0 As I) As nordine FROM tact INTO CURSOR tact READWRITE
REPLACE ALL nordine WITH RECNO() * 100
GO TOP
ENDIF
*!* 18.09.2026
*!* marius.mutu
*!* campul de marcaj optional pentru randurile cu campuri lipsa (verificare_note_contabile)
IF Used('tact') AND Type('tact.clipsa') <> 'C'
SELECT *, Space(10) As clipsa FROM tact INTO CURSOR tact READWRITE
ENDIF
If !Used('saft_taxtable') If !Used('saft_taxtable')
update_saft_taxtable() update_saft_taxtable()
ENDIF ENDIF
@@ -14999,12 +15083,14 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4 This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4
This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4 This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4
IF Type('This.lblPlatiBuget') = 'O' IF Type('This.lblPlatiBuget') = 'O'
This.lblPlatiBuget.Top = this.grid1.Top + this.grid1.Height + 4
This.cmdDefalcareBuget.Left = This.Command4.Left This.cmdDefalcareBuget.Left = This.Command4.Left
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
This.lblPlatiBuget.Left = This.Command4.Left
This.lblPlatiBuget.Top = This.cmdDefalcareBuget.Top + This.cmdDefalcareBuget.Height + 2
ENDIF ENDIF
ENDIF ENDIF
This.aseaza_pagina_articole() This.aseaza_pagina_articole()
This.ActualizeazaLabelLipsuri()
ENDPROC ENDPROC
@@ -15020,11 +15106,36 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4 This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4
This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4 This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4
IF Type('This.lblPlatiBuget') = 'O' IF Type('This.lblPlatiBuget') = 'O'
This.lblPlatiBuget.Top = this.grid1.Top + this.grid1.Height + 4
This.cmdDefalcareBuget.Left = This.Command4.Left This.cmdDefalcareBuget.Left = This.Command4.Left
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
This.lblPlatiBuget.Left = This.Command4.Left
This.lblPlatiBuget.Top = This.cmdDefalcareBuget.Top + This.cmdDefalcareBuget.Height + 2
ENDIF ENDIF
ENDIF ENDIF
This.ActualizeazaLabelLipsuri()
ENDPROC
PROCEDURE SaltLipsaUrmatoare
LOCAL lnRec
lnRec = RECNO('tact')
SELECT tact
IF !EOF()
SKIP
ENDIF
LOCATE REST FOR !EMPTY(clipsa)
IF !FOUND()
LOCATE FOR !EMPTY(clipsa)
ENDIF
IF FOUND()
Thisform.Grid1.SetFocus()
Thisform.Grid1.Refresh()
ELSE
TRY
GO m.lnRec
CATCH
GO TOP
ENDTRY
ENDIF
ENDPROC ENDPROC
PROCEDURE SaltPlataBuget PROCEDURE SaltPlataBuget
@@ -15177,6 +15288,56 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
ENDIF ENDIF
*!* 18.09.2026 *!* 18.09.2026
*!* marius.mutu *!* marius.mutu
*!* evidentiere rosie a celulelor cu campuri lipsa marcate de verificare_note_contabile (litera in tact.clipsa)
IF Type('tact.clipsa') = 'C'
LOCAL lnColLipsa, loColLipsa, lcExprLipsa, lcLitLipsa, lcCondLipsa
LOCAL ARRAY laColLipsa(11,3)
laColLipsa(1,1) = 7
laColLipsa(1,2) = 'S'
laColLipsa(1,3) = "EMPTY(tact.scd)"
laColLipsa(2,1) = 8
laColLipsa(2,2) = 'C'
laColLipsa(2,3) = "EMPTY(tact.scc)"
laColLipsa(3,1) = 5
laColLipsa(3,2) = 'N'
laColLipsa(3,3) = "EMPTY(tact.nract)"
laColLipsa(4,1) = 23
laColLipsa(4,2) = 'a'
laColLipsa(4,3) = ".T."
laColLipsa(5,1) = 24
laColLipsa(5,2) = 'b'
laColLipsa(5,3) = ".T."
laColLipsa(6,1) = 6
laColLipsa(6,2) = 'p'
laColLipsa(6,3) = "EMPTY(NVL(tact.id_partd,0))"
laColLipsa(7,1) = 10
laColLipsa(7,2) = 'q'
laColLipsa(7,3) = "EMPTY(NVL(tact.id_partc,0))"
laColLipsa(8,1) = 13
laColLipsa(8,2) = 'd'
laColLipsa(8,3) = "EMPTY(NVL(tact.pereched,0))"
laColLipsa(9,1) = 27
laColLipsa(9,2) = 'c'
laColLipsa(9,3) = "EMPTY(NVL(tact.perechec,0))"
laColLipsa(10,1) = 29
laColLipsa(10,2) = 'V'
laColLipsa(10,3) = "EMPTY(NVL(tact.id_valuta,0))"
laColLipsa(11,1) = 35
laColLipsa(11,2) = 'T'
laColLipsa(11,3) = "EMPTY(NVL(tact.id_jtva_coloana,0))"
FOR lnColLipsa = 1 TO 11
loColLipsa = This.grid1.Columns(laColLipsa(lnColLipsa,1))
lcExprLipsa = ALLTRIM(loColLipsa.DynamicBackColor)
IF EMPTY(m.lcExprLipsa)
lcExprLipsa = TRANSFORM(loColLipsa.BackColor)
ENDIF
lcLitLipsa = laColLipsa(lnColLipsa,2)
lcCondLipsa = laColLipsa(lnColLipsa,3)
loColLipsa.DynamicBackColor = "IIF('" + m.lcLitLipsa + "' $ tact.clipsa AND " + m.lcCondLipsa + ", RGB(255,205,205), " + m.lcExprLipsa + ")"
ENDFOR
ENDIF
*!* 18.09.2026
*!* marius.mutu
*!* culoare comuna label/buton cu randul de plata la buget nedefalcat din grid; cursor mana pe label *!* culoare comuna label/buton cu randul de plata la buget nedefalcat din grid; cursor mana pe label
IF This.lActivExtrase AND Type('tact.cbuget') = 'C' IF This.lActivExtrase AND Type('tact.cbuget') = 'C'
LOCAL lcSqlBuget, lnSuccesBuget, lnColBuget, loColBuget, lcExprBuget, lcCtrlBuget LOCAL lcSqlBuget, lnSuccesBuget, lnColBuget, loColBuget, lcExprBuget, lcCtrlBuget
@@ -15208,16 +15369,17 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
This.cmdDefalcareBuget.BackColor = This.nColorBuget This.cmdDefalcareBuget.BackColor = This.nColorBuget
This.cmdDefalcareBuget.Visible = .T. This.cmdDefalcareBuget.Visible = .T.
Bindevent(This.cmdDefalcareBuget, 'Click', This, 'DefalcareBuget') Bindevent(This.cmdDefalcareBuget, 'Click', This, 'DefalcareBuget')
This.lblPlatiBuget.Top = This.grid1.Top + This.grid1.Height + 4
This.cmdDefalcareBuget.Left = This.Command4.Left This.cmdDefalcareBuget.Left = This.Command4.Left
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
This.lblPlatiBuget.Left = This.Command4.Left
This.lblPlatiBuget.Top = This.cmdDefalcareBuget.Top + This.cmdDefalcareBuget.Height + 2
FOR lnColBuget = 1 TO This.grid1.ColumnCount FOR lnColBuget = 1 TO This.grid1.ColumnCount
loColBuget = This.grid1.Columns(lnColBuget) loColBuget = This.grid1.Columns(lnColBuget)
lcExprBuget = ALLTRIM(loColBuget.DynamicBackColor) lcExprBuget = ALLTRIM(loColBuget.DynamicBackColor)
IF EMPTY(m.lcExprBuget) IF EMPTY(m.lcExprBuget)
lcExprBuget = TRANSFORM(loColBuget.BackColor) lcExprBuget = TRANSFORM(loColBuget.BackColor)
ENDIF ENDIF
loColBuget.DynamicBackColor = "IIF(Thisform.EsteRandBugetNedefalcat(.T.), " + ALLTRIM(STR(Thisform.nColorBuget,8,0)) + ", " + m.lcExprBuget + ")" loColBuget.DynamicBackColor = "IIF(Thisform.EsteRandBugetNedefalcat(.T.) OR Type('tact.csursa_f') = 'C' AND tact.csursa_f == 'B', " + ALLTRIM(STR(Thisform.nColorBuget,8,0)) + ", " + m.lcExprBuget + ")"
lcCtrlBuget = loColBuget.CurrentControl lcCtrlBuget = loColBuget.CurrentControl
IF !EMPTY(m.lcCtrlBuget) IF !EMPTY(m.lcCtrlBuget)
Bindevent(loColBuget.&lcCtrlBuget, 'RightClick', This, 'GridRightClickBuget') Bindevent(loColBuget.&lcCtrlBuget, 'RightClick', This, 'GridRightClickBuget')
@@ -15239,6 +15401,22 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
loColDup.DynamicBackColor = "IIF(tact.dublura, RGB(211,211,211), " + m.lcExprDup + ")" loColDup.DynamicBackColor = "IIF(tact.dublura, RGB(211,211,211), " + m.lcExprDup + ")"
ENDFOR ENDFOR
ENDIF ENDIF
*!* 18.09.2026
*!* marius.mutu
*!* eticheta cu randurile marcate clipsa nevida, sub grid, cu salt la urmatorul rand
IF Type('tact.clipsa') = 'C'
This.NewObject('lblLipsuri', '_label', '_baza.vcx')
This.lblLipsuri.ForeColor = RGB(0,0,0)
This.lblLipsuri.BackStyle = 1
This.lblLipsuri.BackColor = RGB(255,205,205)
This.lblLipsuri.FontBold = .T.
This.lblLipsuri.MousePointer = 15
This.lblLipsuri.Visible = .F.
This.lblLipsuri.AutoSize = .T.
This.lblLipsuri.Anchor = 8
Bindevent(This.lblLipsuri, 'Click', This, 'SaltLipsaUrmatoare')
This.VerificaLipsuriSilentios()
ENDIF
This.CalculeazaTotal() This.CalculeazaTotal()
*!* 24.05.2011 ^ *!* 24.05.2011 ^
@@ -15653,6 +15831,40 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
Return (lnRasp = 7) Return (lnRasp = 7)
ENDPROC ENDPROC
PROCEDURE VerificaLipsuriSilentios
*!* 19.09.2026
*!* marius.mutu
*!* verificare silentioasa (fara mesaje, fara efecte pe date) a campurilor lipsa; la primul apel incarca local cache-ul conturi/analitic (crsLipsuriCfg/crsLipsuriPlcont), fara Oracle la fiecare schimbare de rand; repozitioneaza pe randul curent si reactualizeaza eticheta/grid-ul
LOCAL lnRecTact, lcSql, lnSucces
IF !Used('tact') OR Type('tact.clipsa') <> 'C' OR Inlist(This.nid_set, 99998, 90024)
RETURN
ENDIF
IF !Used('crsLipsuriCfg')
lcSql = 'select distinct c.cont as contpart, c.fel_cont, c.cu_inregistrari, c.explicatie as explic_cont,e.cont_c as exceptie, e.debit as pozitie, e.invers, 0 as gasit ' + ;
'from ' + gcS + '.vconfig_cont_ireg c left join ' + gcS + '.exceptii_ireg e on c.cont = e.cont and e.invers = 1'
lnSucces = goExecutor.oExecute(lcSql, 'crsLipsuriCfg')
IF lnSucces > 0
lcSql = 'select CONT, ACONT from ' + gcS + '.vplcont_ANALITIC where inactiv = 0 and an = ?gnAn'
lnSucces = goExecutor.oExecute(lcSql, 'crsLipsuriPlcont')
ENDIF
IF lnSucces < 1
IF Used('crsLipsuriCfg')
Use In crsLipsuriCfg
ENDIF
IF Used('crsLipsuriPlcont')
Use In crsLipsuriPlcont
ENDIF
ENDIF
ENDIF
lnRecTact = Recno('tact')
verificare_note_contabile('tact', .T., .F., .F., .T.)
IF Between(m.lnRecTact, 1, Reccount('tact'))
GO (m.lnRecTact) IN tact
ENDIF
This.ActualizeazaLabelLipsuri()
This.Grid1.Refresh()
ENDPROC
PROCEDURE But_modificaR.Click PROCEDURE But_modificaR.Click
Local lcRul, loEditor Local lcRul, loEditor
IF thisform.pgfArticole.ActivePage = 3 IF thisform.pgfArticole.ActivePage = 3
@@ -15788,14 +16000,6 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*thisform.aleg_document_pereche(tnFel,odoc) *thisform.aleg_document_pereche(tnFel,odoc)
DO aleg_document_pereche WITH tnFel,odoc,lcSel IN oOperatii_comune.prg DO aleg_document_pereche WITH tnFel,odoc,lcSel IN oOperatii_comune.prg
SELECT (m.lcSel) SELECT (m.lcSel)
*!* 18.09.2026 marius.mutu - M doar daca s-a ales document (aleg_document_pereche sterge atunci randul original)
IF Type('tact.ngrupa') = 'N' AND BETWEEN(m.lnRecno, 1, RECCOUNT())
GO m.lnRecno
IF DELETED()
* randurile grupei adaugate de aleg_document_pereche devin M
REPLACE csursa_f WITH 'M' FOR ngrupa = odoc.ngrupa AND npoz = odoc.npoz
ENDIF
ENDIF
TRY TRY
GOTO m.lnRecno GOTO m.lnRecno
CATCH CATCH
@@ -15832,14 +16036,6 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
*thisform.aleg_document_pereche(tnFel,odoc) *thisform.aleg_document_pereche(tnFel,odoc)
DO aleg_document_pereche WITH tnFel,odoc,lcSel IN oOperatii_comune.prg DO aleg_document_pereche WITH tnFel,odoc,lcSel IN oOperatii_comune.prg
SELECT (m.lcSel) SELECT (m.lcSel)
*!* 18.09.2026 marius.mutu - M doar daca s-a ales document (aleg_document_pereche sterge atunci randul original)
IF Type('tact.ngrupa') = 'N' AND BETWEEN(m.lnRecno, 1, RECCOUNT())
GO m.lnRecno
IF DELETED()
* randurile grupei adaugate de aleg_document_pereche devin M
REPLACE csursa_f WITH 'M' FOR ngrupa = odoc.ngrupa AND npoz = odoc.npoz
ENDIF
ENDIF
TRY TRY
GOTO m.lnRecno GOTO m.lnRecno
CATCH CATCH
@@ -15866,6 +16062,26 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
Lparameters nColIndex Lparameters nColIndex
IF Type('tact.clipsa') = 'C'
*!* 19.09.2026
*!* marius.mutu
*!* reverificare silentioasa a lipsurilor la schimbarea randului, doar daca randul parasit e nou sau a fost modificat
LOCAL lnRecNouLipsuri, lcSemnVeche
lnRecNouLipsuri = Recno('tact')
IF m.lnRecNouLipsuri <> Thisform.nRecLipsuri
IF Between(Thisform.nRecLipsuri, 1, Reccount('tact'))
GO (Thisform.nRecLipsuri) IN tact
lcSemnVeche = Transform(tact.scd) + '|' + Transform(tact.scc) + '|' + Transform(tact.ascd) + '|' + Transform(tact.ascc) + '|' + Transform(tact.id_partd) + '|' + Transform(tact.id_partc) + '|' + Transform(tact.pereched) + '|' + Transform(tact.perechec) + '|' + Transform(tact.nract) + '|' + Transform(tact.suma) + '|' + Transform(tact.id_valuta) + '|' + Transform(tact.id_jtva_coloana)
IF m.lcSemnVeche <> Thisform.cSemnLipsuri
Thisform.VerificaLipsuriSilentios()
ENDIF
GO (m.lnRecNouLipsuri) IN tact
ENDIF
Thisform.nRecLipsuri = m.lnRecNouLipsuri
Thisform.cSemnLipsuri = Transform(tact.scd) + '|' + Transform(tact.scc) + '|' + Transform(tact.ascd) + '|' + Transform(tact.ascc) + '|' + Transform(tact.id_partd) + '|' + Transform(tact.id_partc) + '|' + Transform(tact.pereched) + '|' + Transform(tact.perechec) + '|' + Transform(tact.nract) + '|' + Transform(tact.suma) + '|' + Transform(tact.id_valuta) + '|' + Transform(tact.id_jtva_coloana)
ENDIF
ENDIF
*** se pot modifica inregistrari pe firma mama sau daca inregistrarile apartin sucursalei curente sau daca editez un set de note definit de utilizator *** se pot modifica inregistrari pe firma mama sau daca inregistrarile apartin sucursalei curente sau daca editez un set de note definit de utilizator
llReadOnly = !(m.glEMama OR NVL(m.gnIdSucursala,0) = NVL(tAct.id_sucursala,0) OR Type('thisform.oSet') = 'O') llReadOnly = !(m.glEMama OR NVL(m.gnIdSucursala,0) = NVL(tAct.id_sucursala,0) OR Type('thisform.oSet') = 'O')
@@ -17606,19 +17822,21 @@ DEFINE CLASS frmdefalcarebuget AS frm_termin_renunt OF "_frm_child.vcx"
cgrupa = cgrupa =
ddata = {} ddata = {}
DoCreate = .T. DoCreate = .T.
Height = 330 Height = 440
Name = "frmdefalcarebuget" Name = "frmdefalcarebuget"
nnerepartizat = 0 nnerepartizat = 0
nsuma = 0 nsuma = 0
Width = 620 Width = 629
_shape1.Anchor = 10
_shape1.Height = 29 _shape1.Height = 29
_shape1.Left = 0 _shape1.Left = 0
_shape1.Name = "_shape1" _shape1.Name = "_shape1"
_shape1.Top = 0 _shape1.Top = 0
_shape1.Width = 628 _shape1.Width = 628
_shape1.ZOrderSet = 1 _shape1.ZOrderSet = 1
_shape2.Anchor = 8
_shape2.Height = 29 _shape2.Height = 29
_shape2.Left = 556 _shape2.Left = 566
_shape2.Name = "_shape2" _shape2.Name = "_shape2"
_shape2.Top = 0 _shape2.Top = 0
_shape2.Width = 64 _shape2.Width = 64
@@ -17627,14 +17845,16 @@ DEFINE CLASS frmdefalcarebuget AS frm_termin_renunt OF "_frm_child.vcx"
Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121" Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121"
Lb_titlu_alb_b121.TabIndex = 5 Lb_titlu_alb_b121.TabIndex = 5
Lb_titlu_alb_b121.ZOrderSet = 3 Lb_titlu_alb_b121.ZOrderSet = 3
BUT_TERMIN1.Left = 588 BUT_TERMIN1.Anchor = 8
BUT_TERMIN1.Left = 598
BUT_TERMIN1.Name = "BUT_TERMIN1" BUT_TERMIN1.Name = "BUT_TERMIN1"
BUT_TERMIN1.TabIndex = 3 BUT_TERMIN1.TabIndex = 3
BUT_TERMIN1.ToolTipText = "Aplica defalcarea" BUT_TERMIN1.ToolTipText = "Aplica defalcarea"
BUT_TERMIN1.Top = 1 BUT_TERMIN1.Top = 1
BUT_TERMIN1.ZOrderSet = 4 BUT_TERMIN1.ZOrderSet = 4
Gridsort1.Name = "Gridsort1" Gridsort1.Name = "Gridsort1"
But_renunt1.Left = 559 But_renunt1.Anchor = 8
But_renunt1.Left = 569
But_renunt1.Name = "But_renunt1" But_renunt1.Name = "But_renunt1"
But_renunt1.TabIndex = 4 But_renunt1.TabIndex = 4
But_renunt1.ToolTipText = "Inchide fara sa aplicati" But_renunt1.ToolTipText = "Inchide fara sa aplicati"
@@ -17643,10 +17863,11 @@ DEFINE CLASS frmdefalcarebuget AS frm_termin_renunt OF "_frm_child.vcx"
*</PropValue> *</PropValue>
ADD OBJECT 'grdDefalcare' AS _grid WITH ; ADD OBJECT 'grdDefalcare' AS _grid WITH ;
Anchor = 15, ;
ColumnCount = 5, ; ColumnCount = 5, ;
DeleteMark = .F., ; DeleteMark = .F., ;
FontSize = 10, ; FontSize = 10, ;
Height = 210, ; Height = 324, ;
lcamptextneeditabil = .F., ; lcamptextneeditabil = .F., ;
Left = 10, ; Left = 10, ;
Name = "grdDefalcare", ; Name = "grdDefalcare", ;
@@ -17781,12 +18002,13 @@ DEFINE CLASS frmdefalcarebuget AS frm_termin_renunt OF "_frm_child.vcx"
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" /> *< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
ADD OBJECT 'lblNerepartizat' AS _label WITH ; ADD OBJECT 'lblNerepartizat' AS _label WITH ;
Anchor = 14, ;
AutoSize = .F., ; AutoSize = .F., ;
FontBold = .T., ; FontBold = .T., ;
Height = 20, ; Height = 20, ;
Left = 10, ; Left = 10, ;
Name = "lblNerepartizat", ; Name = "lblNerepartizat", ;
Top = 288, ; Top = 402, ;
Width = 610, ; Width = 610, ;
ZOrderSet = 2 ZOrderSet = 2
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" /> *< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />

View File

@@ -320,6 +320,12 @@ Procedure aleg_document_pereche
If gnButon = 1 If gnButon = 1
Select (lcSelAct) Select (lcSelAct)
Delete Delete
lnSubPozAloc = 0
If Type('toAct.ngrupa') = 'N' && rand negrupat: grupa noua cu pozitii 1..n (1M, 2M...); rand deja grupat: pastreaza grupa/pozitia
Local lnGrupaPereche
Calculate Max(ngrupa) To lnGrupaPereche
lnGrupaPereche = Iif(toAct.npoz > 0, toAct.ngrupa, Nvl(m.lnGrupaPereche, 0) + 1)
Endif
Select (lcFis) Select (lcFis)
Scan For ales Scan For ales
Scatter Name oper Scatter Name oper
@@ -330,8 +336,20 @@ Procedure aleg_document_pereche
If Type('toAct.Suma_val')# 'U' If Type('toAct.Suma_val')# 'U'
Replace Suma_val With oper.sumaachi2 Replace Suma_val With oper.sumaachi2
Endif Endif
If Type('toAct.nordine') = 'N'
Replace nordine With toAct.nordine + m.lnSubPozAloc
Endif
If Type('toAct.ngrupa') = 'N'
Replace ngrupa With m.lnGrupaPereche, npoz With Iif(toAct.npoz > 0, toAct.npoz, m.lnSubPozAloc + 1), csursa_f With 'M'
Endif
lnSubPozAloc = m.lnSubPozAloc + 1
Select (lcFis) Select (lcFis)
Endscan Endscan
Select (lcSelAct)
If Type('toAct.nordine') = 'N' && ordine de afisare pe nordine, ca grupul sa ramana alaturat
Index On Iif(nordine = 0, 2147483647, nordine) Tag ordtact Additive && randurile noi fara nordine raman la sfarsit
Set Order To Tag ordtact
Endif
Else Else
lnSucces = -1 lnSucces = -1
Endif Endif
@@ -555,7 +573,7 @@ select p.acont || nvl2(p.cont_alt, ' - ' || p.cont_alt, '') || nvl2(p.cod, ' - '
************************** SFARSIT: verific_analitic ***************************** ************************** SFARSIT: verific_analitic *****************************
************************** INCEPUT: verificare_note_contabile ***************************** ************************** INCEPUT: verificare_note_contabile *****************************
Procedure verificare_note_contabile Procedure verificare_note_contabile
Parameters tcAct,tlVerificAnalitic,tlAlegPartener, tlNuVerificCont Parameters tcAct,tlVerificAnalitic,tlAlegPartener, tlNuVerificCont, tlFaraMesaj
*!* 03.05.2013 : am adaugat lcIdFact, lcMesajIdFact *!* 03.05.2013 : am adaugat lcIdFact, lcMesajIdFact
Local lcInMesaj, lcInMesajAcont, lcInMesajP, lcInMesajIreg, lcMesaj, lcInMesajPSters, lcAct, lnId_set, ll_return, lcIdFact, lcMesajIdFact Local lcInMesaj, lcInMesajAcont, lcInMesajP, lcInMesajIreg, lcMesaj, lcInMesajPSters, lcAct, lnId_set, ll_return, lcIdFact, lcMesajIdFact
@@ -568,6 +586,16 @@ Procedure verificare_note_contabile
lcAct = Alltrim(tcAct) lcAct = Alltrim(tcAct)
Endif Endif
*!* 18.09.2026
*!* marius.mutu
*!* marcaj opt-in al randurilor cu campuri lipsa, doar daca apelantul are campul clipsa pe cursor
Local llMarcajLipsuri, llMesajConstruit, lcClipsaRand
llMarcajLipsuri = (Type(lcAct + '.clipsa') = 'C')
llMesajConstruit = .F.
If llMarcajLipsuri
Replace All clipsa With '' In (lcAct)
Endif
Select (lcAct) Select (lcAct)
lnNrNota=1 lnNrNota=1
Scan For Suma <> 0 Scan For Suma <> 0
@@ -581,46 +609,73 @@ Procedure verificare_note_contabile
*!* 07.05.2013 ^ *!* 07.05.2013 ^
*!* 11.03.2008 *!* 11.03.2008
*!* tlNuVerificCont - nu se verifica conturile *!* tlNuVerificCont - nu se verifica conturile
lcClipsaRand = ''
If !tlNuVerificCont If !tlNuVerificCont
*!* la clasele 8 si 9 se poate sa nu fie contul corespondent completat *!* la clasele 8 si 9 se poate sa nu fie contul corespondent completat
If Empty(lcScd) And !Inlist(Left(lcScc,1),'8','9') If Empty(lcScd) And !Inlist(Left(lcScc,1),'8','9')
ll_return = .F. ll_return = .F.
lcMesaj = lcMesaj + ',' + 'contul debitor' If !llMesajConstruit
lcMesaj = lcMesaj + ',' + 'contul debitor'
Endif
lcClipsaRand = lcClipsaRand + 'S'
Endif Endif
If Empty(lcScc) And !Inlist(Left(lcScd,1),'8','9') If Empty(lcScc) And !Inlist(Left(lcScd,1),'8','9')
ll_return = .F. ll_return = .F.
lcMesaj = lcMesaj + ',' + 'contul creditor' If !llMesajConstruit
lcMesaj = lcMesaj + ',' + 'contul creditor'
Endif
lcClipsaRand = lcClipsaRand + 'C'
Endif Endif
Endif Endif
*!* 11.03.2008 ^ *!* 11.03.2008 ^
If Empty(nract) If Empty(nract)
ll_return = .F. ll_return = .F.
lcMesaj = lcMesaj + ',' + 'nr.document' If !llMesajConstruit
lcMesaj = lcMesaj + ',' + 'nr.document'
Endif
lcClipsaRand = lcClipsaRand + 'N'
Endif Endif
If (!Empty(Suma_val) Or !Empty(Curs)) And Empty(Id_Valuta) If (!Empty(Suma_val) Or !Empty(Curs)) And Empty(Id_Valuta)
ll_return = .F. ll_return = .F.
lcMesaj = lcMesaj + ',' + 'nume valuta' If !llMesajConstruit
lcMesaj = lcMesaj + ',' + 'nume valuta'
Endif
lcClipsaRand = lcClipsaRand + 'V'
Endif Endif
If Type('cu_tva')<>'U' If Type('cu_tva')<>'U'
If cu_tva = 1 And Empty(Nvl(id_jtva_coloana,0)) If cu_tva = 1 And Empty(Nvl(id_jtva_coloana,0))
ll_return = .F. ll_return = .F.
lcMesaj = lcMesaj + ',' + 'explicatie TVA' If !llMesajConstruit
lcMesaj = lcMesaj + ',' + 'explicatie TVA'
Endif
lcClipsaRand = lcClipsaRand + 'T'
Endif Endif
Endif Endif
If llMarcajLipsuri And !Empty(lcClipsaRand)
Replace clipsa With Alltrim(clipsa) + lcClipsaRand In (lcAct)
Endif
If !ll_return If !ll_return
*!* modificare ROAPRODUCTIE v 2.0.2 *!* modificare ROAPRODUCTIE v 2.0.2
*!* aMESSAGEBOX("La nota nr. "+Alltrim(Str(lnNrNota))+" nu ati completat campu"+ Iif(At([,],lcMesaj,2)>0,[rile],[l]) + ; *!* aMESSAGEBOX("La nota nr. "+Alltrim(Str(lnNrNota))+" nu ati completat campu"+ Iif(At([,],lcMesaj,2)>0,[rile],[l]) + ;
*!* ": "+Substr(lcMesaj,2,60)+"...",0+48,"Atentie") *!* ": "+Substr(lcMesaj,2,60)+"...",0+48,"Atentie")
lcMesaj = "La nota nr. "+Alltrim(Str(lnNrNota))+" nu ati completat campu"+ Iif(At([,],lcMesaj,2)>0,[rile],[l]) + ; If !llMesajConstruit
": "+Substr(lcMesaj,2,60)+"..." + Chr(13) + Chr(10) + Chr(13)+ Chr(10) lcMesaj = "La nota nr. "+Alltrim(Str(lnNrNota))+" nu ati completat campu"+ Iif(At([,],lcMesaj,2)>0,[rile],[l]) + ;
": "+Substr(lcMesaj,2,60)+"..." + Chr(13) + Chr(10) + Chr(13)+ Chr(10)
llMesajConstruit = .T.
Endif
*!* modificare ROAPRODUCTIE v 2.0.2 ^ *!* modificare ROAPRODUCTIE v 2.0.2 ^
Exit If !llMarcajLipsuri
Exit
Endif
Endif Endif
lnNrNota=lnNrNota+1 lnNrNota=lnNrNota+1
Endscan Endscan
If ll_return If ll_return Or llMarcajLipsuri
lcMesaj = [] *!* pastreaza mesajul trecerii 1 cand se intra doar datorita marcajului (ll_return deja .F.)
If ll_return
lcMesaj = []
Endif
Select (lcAct) Select (lcAct)
Go Top Go Top
@@ -657,14 +712,24 @@ Procedure verificare_note_contabile
lcLista = lcLista + ',' + Alltrim(Cont) lcLista = lcLista + ',' + Alltrim(Cont)
Endscan Endscan
lcSql = 'select distinct c.cont as contpart, c.fel_cont, c.cu_inregistrari, c.explicatie as explic_cont,e.cont_c as exceptie, e.debit as pozitie, e.invers, 0 as gasit ' + ; *!* 19.09.2026
'from ' + gcS + '.vconfig_cont_ireg c left join ' + gcS + '.exceptii_ireg e on c.cont = e.cont and e.invers = 1 ' + ; *!* marius.mutu
'where to_number(c.cont) in (' + lcLista + ')' *!* verificare silentioasa: verif_part local din cache-ul crsLipsuriCfg, fara Oracle
lcCursor = 'verif_part' If tlFaraMesaj And Used('crsLipsuriCfg')
Select crsLipsuriCfg.contpart, crsLipsuriCfg.fel_cont, crsLipsuriCfg.cu_inregistrari, crsLipsuriCfg.explic_cont, crsLipsuriCfg.exceptie, crsLipsuriCfg.pozitie, crsLipsuriCfg.invers, 0 As gasit ;
From crsLipsuriCfg Inner Join tcont On Alltrim(crsLipsuriCfg.contpart) = Alltrim(tcont.cont) ;
Into Cursor verif_part Readwrite
lnSucces = 1
Else
lcSql = 'select distinct c.cont as contpart, c.fel_cont, c.cu_inregistrari, c.explicatie as explic_cont,e.cont_c as exceptie, e.debit as pozitie, e.invers, 0 as gasit ' + ;
'from ' + gcS + '.vconfig_cont_ireg c left join ' + gcS + '.exceptii_ireg e on c.cont = e.cont and e.invers = 1 ' + ;
'where to_number(c.cont) in (' + lcLista + ')'
lcCursor = 'verif_part'
lnSucces = goExecutor.oExecute(lcSql,lcCursor) lnSucces = goExecutor.oExecute(lcSql,lcCursor)
If lnSucces < 0 If lnSucces < 0 And !tlFaraMesaj
aMESSAGEBOX('Modificare:Verific completare id_part ' +goExecutor.cEroare,0+16,"Eroare") aMESSAGEBOX('Modificare:Verific completare id_part ' +goExecutor.cEroare,0+16,"Eroare")
Endif
Endif Endif
If lnSucces > 0 If lnSucces > 0
@@ -673,72 +738,91 @@ Procedure verificare_note_contabile
Scan For !Empty(Suma) Scan For !Empty(Suma)
Scatter Name loCont Scatter Name loCont
Select verif_part *!* contul poate fi gol (clasa 8/9 sau tlNuVerificCont) - Locate cu criteriu gol ar gasi primul rand din verif_part (SET EXACT OFF)
Locate For contpart=loCont.scd If !Empty(loCont.scd)
If Found() Select verif_part
If Empty(loCont.Id_partd) And !(loCont.scd$lcInMesajP) Locate For contpart=loCont.scd
lcInMesajP=lcInMesajP+','+loCont.scd If Found()
Replace gasit With 1 If Empty(loCont.Id_partd) And !(loCont.scd$lcInMesajP)
Endif lcInMesajP=lcInMesajP+','+loCont.scd
If Empty(loCont.pereched) And cu_inregistrari = 1 And fel_cont = 1 And !(loCont.scd$lcInMesajIreg) Replace gasit With 1
Locate For contpart=loCont.scd And inlist(upper(exceptie), 'X', upper(loCont.scc)) And fel_cont = 1 And pozitie = 0 And invers = 1
If !Found()
lcInMesajIreg = lcInMesajIreg + ',' + loCont.scd
Endif Endif
If llMarcajLipsuri And Empty(loCont.Id_partd)
Replace clipsa With Alltrim(clipsa) + 'p' In (lcAct)
Endif
If Empty(loCont.pereched) And cu_inregistrari = 1 And fel_cont = 1 And !(loCont.scd$lcInMesajIreg)
Locate For contpart=loCont.scd And inlist(upper(exceptie), 'X', upper(loCont.scc)) And fel_cont = 1 And pozitie = 0 And invers = 1
If !Found()
lcInMesajIreg = lcInMesajIreg + ',' + loCont.scd
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'd' In (lcAct)
Endif
Endif
Endif
*!* modificare 06.11.2007
Else
If !Empty(loCont.Id_partd) And !tlFaraMesaj
Select (lcAct)
lcInMesajPSters = lcInMesajPSters + ',' + loCont.scd
Replace Id_partd With 0,partd With ''
Endif
*!* modificare 06.11.2007 ^
Endif Endif
*!* modificare 06.11.2007
Else
If !Empty(loCont.Id_partd)
Select (lcAct)
lcInMesajPSters = lcInMesajPSters + ',' + loCont.scd
Replace Id_partd With 0,partd With ''
Endif
*!* modificare 06.11.2007 ^
Endif Endif
Select verif_part If !Empty(loCont.scc)
Locate For contpart=loCont.scc Select verif_part
If Found() Locate For contpart=loCont.scc
If Empty(loCont.Id_partc) And !(loCont.scc$lcInMesajP) If Found()
lcInMesajP=lcInMesajP+','+loCont.scc If Empty(loCont.Id_partc) And !(loCont.scc$lcInMesajP)
Replace gasit With 1 lcInMesajP=lcInMesajP+','+loCont.scc
Endif Replace gasit With 1
If cu_inregistrari = 1 And fel_cont = 0 And Empty(loCont.perechec) And !(loCont.scc$lcInMesajIreg)
Locate For contpart=loCont.scc And inlist(upper(exceptie), 'X', upper(loCont.scd)) And fel_cont = 0 And pozitie = 1 And invers = 1
If !Found()
lcInMesajIreg = lcInMesajIreg + ',' + loCont.scc
Endif Endif
If llMarcajLipsuri And Empty(loCont.Id_partc)
Replace clipsa With Alltrim(clipsa) + 'q' In (lcAct)
Endif
If cu_inregistrari = 1 And fel_cont = 0 And Empty(loCont.perechec) And !(loCont.scc$lcInMesajIreg)
Locate For contpart=loCont.scc And inlist(upper(exceptie), 'X', upper(loCont.scd)) And fel_cont = 0 And pozitie = 1 And invers = 1
If !Found()
lcInMesajIreg = lcInMesajIreg + ',' + loCont.scc
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'c' In (lcAct)
Endif
Endif
Endif
*!* modificare 06.11.2007
Else
If !Empty(loCont.Id_partc) And !tlFaraMesaj
Select (lcAct)
lcInMesajPSters = lcInMesajPSters + ',' + loCont.scc
Replace Id_partc With 0,partc With ''
Endif
*!* modificare 06.11.2007 ^
Endif Endif
*!* modificare 06.11.2007
Else
If !Empty(loCont.Id_partc)
Select (lcAct)
lcInMesajPSters = lcInMesajPSters + ',' + loCont.scc
Replace Id_partc With 0,partc With ''
Endif
*!* modificare 06.11.2007 ^
Endif Endif
Select (lcAct) Select (lcAct)
Endscan Endscan
*!* modificare 06.11.2007 *!* modificare 06.11.2007
Else Else
Select (lcAct) If !tlFaraMesaj
Scan Select (lcAct)
If !Empty(Id_partd) Scan
lcInMesajPSters = lcInMesajPSters + ',' + Alltrim(scd) If !Empty(Id_partd)
Replace Id_partd With 0,partd With '' lcInMesajPSters = lcInMesajPSters + ',' + Alltrim(scd)
Endif Replace Id_partd With 0,partd With ''
If !Empty(Id_partc) Endif
lcInMesajPSters = lcInMesajPSters + ',' + Alltrim(scc) If !Empty(Id_partc)
Replace Id_partc With 0,partc With '' lcInMesajPSters = lcInMesajPSters + ',' + Alltrim(scc)
Endif Replace Id_partc With 0,partc With ''
Endscan Endif
Endscan
Endif
Endif Endif
*!* modificare 06.11.2007 ^ *!* modificare 06.11.2007 ^
Endif Endif
*!* modificare 07.05.2013 *!* modificare 07.05.2013
If lnSucces > 0 And !Empty(Nvl(lcIdFact,[])) If lnSucces > 0 And !Empty(Nvl(lcIdFact,[])) And !tlFaraMesaj
lcSql = [select pack_contafin.verifica_id_documente(']+lcIdFact+[') as rez from dual] lcSql = [select pack_contafin.verifica_id_documente(']+lcIdFact+[') as rez from dual]
lcCursor = 'crsverifdoc' lcCursor = 'crsverifdoc'
lnSucces = goExecutor.oExecute(lcSql,lcCursor) lnSucces = goExecutor.oExecute(lcSql,lcCursor)
@@ -766,49 +850,72 @@ Procedure verificare_note_contabile
*!* modificare 07.05.2013 ^ *!* modificare 07.05.2013 ^
If lnSucces > 0 And tlVerificAnalitic If lnSucces > 0 And tlVerificAnalitic
lcSql=[select CONT, ACONT FROM ] + gcS + [.vplcont_ANALITIC where inactiv = 0 and an = ?gnAn order by cont ] *!* verificare silentioasa: plcontana local din cache-ul crsLipsuriPlcont, fara Oracle
lcCursor = 'plcontana' If tlFaraMesaj And Used('crsLipsuriPlcont')
lnSucces = goExecutor.oExecute(lcSql,lcCursor) Select Cont, Acont From crsLipsuriPlcont Order By Cont Into Cursor plcontana
lnSucces = 1
Else
lcSql=[select CONT, ACONT FROM ] + gcS + [.vplcont_ANALITIC where inactiv = 0 and an = ?gnAn order by cont ]
lcCursor = 'plcontana'
lnSucces = goExecutor.oExecute(lcSql,lcCursor)
If lnSucces < 0 If lnSucces < 0 And !tlFaraMesaj
aMESSAGEBOX('Modificare:Verific completare analitic ' +goExecutor.cEroare,0+16,"Eroare") aMESSAGEBOX('Modificare:Verific completare analitic ' +goExecutor.cEroare,0+16,"Eroare")
Endif
Endif Endif
If lnSucces > 0 If lnSucces > 0
Select (lcAct) Select (lcAct)
Scan For !Empty(Suma) Scan For !Empty(Suma)
Scatter Name loCont Scatter Name loCont
If Empty(Nvl(loCont.ascd, '')) *!* contul poate fi gol (clasa 8/9 sau tlNuVerificCont) - Locate cu criteriu gol ar gasi primul rand din plcontana (SET EXACT OFF)
Select plcontana If !Empty(loCont.scd)
Locate For Alltrim(Cont)=Alltrim(loCont.scd) If Empty(Nvl(loCont.ascd, ''))
If Found() Select plcontana
If !(loCont.scd$lcInMesaj) Locate For Alltrim(Cont)=Alltrim(loCont.scd)
lcInMesaj=lcInMesaj+','+loCont.scd If Found()
If !(loCont.scd$lcInMesaj)
lcInMesaj=lcInMesaj+','+loCont.scd
Endif
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'a' In (lcAct)
Endif
Endif Endif
Endif Else
Else Select plcontana
Select plcontana Locate For Alltrim(Cont)=Alltrim(loCont.scd) And Alltrim(acont) = Alltrim(loCont.ascd)
Locate For Alltrim(Cont)=Alltrim(loCont.scd) And Alltrim(acont) = Alltrim(loCont.ascd) If !Found()
If !Found() If !(Alltrim(loCont.scd) + '.' + Alltrim(loCont.ascd)$lcInMesajAcont)
If !(Alltrim(loCont.scd) + '.' + Alltrim(loCont.ascd)$lcInMesajAcont) lcInMesajAcont = lcInMesajAcont + ',' + Alltrim(loCont.scd) + '.' + Alltrim(loCont.ascd)
lcInMesajAcont = lcInMesajAcont + ',' + Alltrim(loCont.scd) + '.' + Alltrim(loCont.ascd) Endif
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'a' In (lcAct)
Endif
Endif Endif
Endif Endif
Endif Endif
If Empty(Nvl(loCont.ascc,'')) If !Empty(loCont.scc)
Select plcontana If Empty(Nvl(loCont.ascc,''))
Locate For Cont=loCont.scc Select plcontana
If Found() Locate For Cont=loCont.scc
If !(loCont.scc$lcInMesaj) If Found()
lcInMesaj=lcInMesaj+','+loCont.scc If !(loCont.scc$lcInMesaj)
lcInMesaj=lcInMesaj+','+loCont.scc
Endif
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'b' In (lcAct)
Endif
Endif Endif
Endif Else
Else Select plcontana
Select plcontana Locate For Alltrim(Cont)=Alltrim(loCont.scc) And Alltrim(acont) = Alltrim(loCont.ascc)
Locate For Alltrim(Cont)=Alltrim(loCont.scc) And Alltrim(acont) = Alltrim(loCont.ascc) If !Found()
If !Found() If !(Alltrim(loCont.scc) + '.' + Alltrim(loCont.ascc)$lcInMesajAcont)
If !(Alltrim(loCont.scc) + '.' + Alltrim(loCont.ascc)$lcInMesajAcont) lcInMesajAcont = lcInMesajAcont + ',' + Alltrim(loCont.scc) + '.' + Alltrim(loCont.ascc)
lcInMesajAcont = lcInMesajAcont + ',' + Alltrim(loCont.scc) + '.' + Alltrim(loCont.ascc) Endif
If llMarcajLipsuri
Replace clipsa With Alltrim(clipsa) + 'b' In (lcAct)
Endif
Endif Endif
Endif Endif
Endif Endif
@@ -877,7 +984,7 @@ Procedure verificare_note_contabile
lcInMesajP = 'partenerul pentru contul ' + lcInMesajP lcInMesajP = 'partenerul pentru contul ' + lcInMesajP
Endif Endif
*!* modificare ROAPRODUCTIE v 2.0.2 ^ *!* modificare ROAPRODUCTIE v 2.0.2 ^
If tlAlegPartener && dc nu pot sa ma intorc sa completez partenerii If tlAlegPartener And !tlFaraMesaj && dc nu pot sa ma intorc sa completez partenerii
If Used('verif_part') If Used('verif_part')
*!* modificare ROAPRODUCTIE v 2.0.2 *!* modificare ROAPRODUCTIE v 2.0.2
aMESSAGEBOX('Nu ati completat '+ lcInMesajP+' !',48,"Atentie") aMESSAGEBOX('Nu ati completat '+ lcInMesajP+' !',48,"Atentie")
@@ -975,7 +1082,10 @@ Procedure verificare_note_contabile
Use In (Select("cduplicatetemp")) Use In (Select("cduplicatetemp"))
*!* modificare ROAPRODUCTIE v 2.0.2 *!* modificare ROAPRODUCTIE v 2.0.2
If !Empty(lcMesaj) If !Empty(lcMesaj) And !tlFaraMesaj
If llMarcajLipsuri
lcMesaj = lcMesaj + 'Celulele de completat sunt marcate cu rosu in lista.' + Chr(13) + Chr(10)
Endif
aMESSAGEBOX(Space(45) + "REZULTATE VERIFICARI" + Chr(13)+ Chr(10) + Replicate([=],60) + Chr(13)+ Chr(10) + lcMesaj,48,"Atentie") aMESSAGEBOX(Space(45) + "REZULTATE VERIFICARI" + Chr(13)+ Chr(10) + Replicate([=],60) + Chr(13)+ Chr(10) + lcMesaj,48,"Atentie")
Endif Endif
*!* modificare ROAPRODUCTIE v 2.0.2 ^ *!* modificare ROAPRODUCTIE v 2.0.2 ^
@@ -996,7 +1106,10 @@ Procedure verificare_note_contabile
Use In tcont Use In tcont
Endif Endif
Else Else
If !Empty(lcMesaj) If !Empty(lcMesaj) And !tlFaraMesaj
If llMarcajLipsuri
lcMesaj = lcMesaj + 'Celulele de completat sunt marcate cu rosu in lista.' + Chr(13) + Chr(10)
Endif
aMESSAGEBOX(Space(45) + "REZULTATE VERIFICARI" + Chr(13)+ Chr(10) + Replicate([=],60) + Chr(13)+ Chr(10) + lcMesaj,48,"Atentie") aMESSAGEBOX(Space(45) + "REZULTATE VERIFICARI" + Chr(13)+ Chr(10) + Replicate([=],60) + Chr(13)+ Chr(10) + lcMesaj,48,"Atentie")
Endif Endif
Endif Endif