Plati la buget din importul de extrase: recunoastere dupa IBAN Trezorerie (TVA 4423, CAM 436, cont unic defalcat din frm_modific2024)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBKZQUq6vimKuAFsrS2D1s
This commit is contained in:
@@ -6811,14 +6811,19 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
*m: calculeaza_valori_rul
|
||||
*m: ccontrol_assign
|
||||
*m: creeaza_note_tva_incasare
|
||||
*m: defalcarebuget
|
||||
*m: do_adauga_rul
|
||||
*m: do_adauga_tva_exigibil
|
||||
*m: do_copie_rul
|
||||
*m: do_import
|
||||
*m: do_modifica_explicatie_tva
|
||||
*m: do_sterge_rul
|
||||
*m: esteplatanedefalcata
|
||||
*m: esterandbugetnedefalcat
|
||||
*m: gridrightclickbuget
|
||||
*m: grid_focus_prima_coloana
|
||||
*m: resize_grid1
|
||||
*m: saltplatabuget
|
||||
*m: salveazaxml
|
||||
*m: semnaturadivergentesincronizare
|
||||
*m: sincronizeaza_nnir
|
||||
@@ -6829,6 +6834,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
*m: verificaavertizareexigibilizaretva
|
||||
*p: cacont
|
||||
*p: ccont
|
||||
*p: ccontbugetanalitic
|
||||
*p: ccontrol
|
||||
*p: cpaymentcode
|
||||
*p: csemnaturasincronizare
|
||||
@@ -6871,6 +6877,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
BorderStyle = 3
|
||||
cacont =
|
||||
ccont =
|
||||
ccontbugetanalitic =
|
||||
cpaymentcode =
|
||||
csemnaturasincronizare =
|
||||
DoCreate = .T.
|
||||
@@ -13071,7 +13078,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
PROCEDURE ActualizeazaTotaluriExtrase
|
||||
*!* SQL, nu SUM/FOR: ignora SET FILTER, WHERE exclude randurile sterse
|
||||
LOCAL lnIncasari, lnPlati, lnSelect, lcNuBate, lcTooltip, lcIban, lnCalculat, llBate, lnVerificate, lnSoldNote, lnSoldExtras
|
||||
LOCAL lnIncasari, lnPlati, lnSelect, lcNuBate, lcTooltip, lcIban, lnCalculat, llBate, lnVerificate, lnSoldNote, lnSoldExtras, lnRecnoBuget, lnPlatiBuget
|
||||
IF !This.lActivExtrase OR !USED('tact')
|
||||
RETURN
|
||||
ENDIF
|
||||
@@ -13142,6 +13149,21 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
IF This.lblExtraseAutosalvare.Visible
|
||||
This.lblExtraseAutosalvare.Left = This.lblExtraseTotaluri.Left + This.lblExtraseTotaluri.Width + 12
|
||||
ENDIF
|
||||
IF Type('This.lblPlatiBuget') = 'O'
|
||||
lnSelect = SELECT()
|
||||
SELECT tact
|
||||
lnRecnoBuget = RECNO()
|
||||
COUNT FOR This.EsteRandBugetNedefalcat(.T.) TO lnPlatiBuget
|
||||
TRY
|
||||
GO m.lnRecnoBuget
|
||||
CATCH
|
||||
GO TOP
|
||||
ENDTRY
|
||||
SELECT (m.lnSelect)
|
||||
This.lblPlatiBuget.Visible = m.lnPlatiBuget > 0
|
||||
This.lblPlatiBuget.Caption = 'Plati la buget de defalcat: ' + ALLTRIM(TRANSFORM(m.lnPlatiBuget))
|
||||
This.lblPlatiBuget.Left = IIF(This.lblExtraseAutosalvare.Visible, This.lblExtraseAutosalvare.Left + This.lblExtraseAutosalvare.Width, This.lblExtraseTotaluri.Left + This.lblExtraseTotaluri.Width) + 12
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE ActualizeazaVerdictActRul
|
||||
@@ -13784,6 +13806,32 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE DefalcareBuget
|
||||
LOCAL lnRec, loFrm, lcGrupa, lnOptGrupa
|
||||
lnRec = RECNO('tact')
|
||||
lcGrupa = Alltrim(Nvl(tact.cbuget,''))
|
||||
IF EMPTY(m.lcGrupa)
|
||||
lnOptGrupa = xmenu('Cont unic;TVA;CAM')
|
||||
IF EMPTY(m.lnOptGrupa)
|
||||
RETURN
|
||||
ENDIF
|
||||
lcGrupa = Icase(m.lnOptGrupa = 1, 'CU', m.lnOptGrupa = 2, 'TVA', 'CAM')
|
||||
ENDIF
|
||||
IF !IncarcaDefalcareBuget(m.lcGrupa)
|
||||
RETURN
|
||||
ENDIF
|
||||
loFrm = CREATEOBJECT('frmDefalcareBuget', tact.dataact, tact.suma, m.lcGrupa, tact.explicatia)
|
||||
loFrm.Show(1)
|
||||
IF gnButon = 1
|
||||
AplicaDefalcareBuget(m.lnRec, m.lcGrupa)
|
||||
Thisform.CalculeazaTotal()
|
||||
Thisform.Grid1.Refresh()
|
||||
ENDIF
|
||||
IF USED('cDefalcare')
|
||||
USE IN cDefalcare
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE do_adauga
|
||||
*!* 27.07.2011
|
||||
*!* marius.mutu
|
||||
@@ -14482,6 +14530,41 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
*!* RETURN ll_l
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE EstePlataNedefalcata
|
||||
IF Type('tact.cbuget') <> 'C' OR Deleted('tact') OR Alltrim(Nvl(tact.csursa_f,'')) == 'B'
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
IF Left(Nvl(tact.scc,''),3) <> '512'
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
RETURN Nvl(tact.ngrupa,0) = 0 OR !Empty(Nvl(tact.cbuget,''))
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE EsteRandBugetNedefalcat
|
||||
LPARAMETERS tlSemnalStrict
|
||||
IF Type('tact.cbuget') <> 'C' OR Deleted('tact') OR Alltrim(Nvl(tact.csursa_f,'')) == 'B'
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
IF Alltrim(tact.cbuget) == 'CU'
|
||||
RETURN Alltrim(Nvl(tact.scd,'')) == '4481'
|
||||
ENDIF
|
||||
IF !Inlist(Alltrim(tact.cbuget), 'TVA', 'CAM')
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
IF !m.tlSemnalStrict
|
||||
RETURN .T.
|
||||
ENDIF
|
||||
RETURN Empty(Nvl(tact.ascd,'')) AND (',' + Alltrim(Nvl(tact.scd,'')) + ',') $ This.cContBugetAnalitic
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE GridRightClickBuget
|
||||
IF Thisform.lActivExtrase AND Type('Thisform.cmdDefalcareBuget') = 'O' AND Thisform.cmdDefalcareBuget.Enabled
|
||||
IF xmenu('Defalcare plata la buget') = 1
|
||||
Thisform.DefalcareBuget()
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE grid_focus_prima_coloana
|
||||
Local lnColumns, loColumn, loGrid, i
|
||||
Local lcColumn
|
||||
@@ -14913,6 +14996,11 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
IF This.lActivExtrase
|
||||
This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
IF Type('This.lblPlatiBuget') = 'O'
|
||||
This.lblPlatiBuget.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
This.cmdDefalcareBuget.Left = This.Command4.Left
|
||||
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
|
||||
ENDIF
|
||||
ENDIF
|
||||
This.aseaza_pagina_articole()
|
||||
|
||||
@@ -14929,6 +15017,31 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
IF This.lActivExtrase
|
||||
This.lblExtraseTotaluri.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
This.lblExtraseAutosalvare.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
IF Type('This.lblPlatiBuget') = 'O'
|
||||
This.lblPlatiBuget.Top = this.grid1.Top + this.grid1.Height + 4
|
||||
This.cmdDefalcareBuget.Left = This.Command4.Left
|
||||
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE SaltPlataBuget
|
||||
LOCAL lnRec
|
||||
lnRec = RECNO('tact')
|
||||
SELECT tact
|
||||
LOCATE FOR This.EsteRandBugetNedefalcat(.T.) AND RECNO() > m.lnRec
|
||||
IF !FOUND()
|
||||
LOCATE FOR This.EsteRandBugetNedefalcat(.T.)
|
||||
ENDIF
|
||||
IF FOUND()
|
||||
Thisform.Grid1.SetFocus()
|
||||
Thisform.Grid1.Refresh()
|
||||
ELSE
|
||||
TRY
|
||||
GO m.lnRec
|
||||
CATCH
|
||||
GO TOP
|
||||
ENDTRY
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
@@ -15060,6 +15173,45 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
this.grid1.Column1.ControlSource = "IIF(tact.npoz > 0, TRANSFORM(tact.npoz) + tact.csursa_f, NRCRT())"
|
||||
this.grid1.Column1.DynamicBackColor = "IIF(tact.npoz > 0, IIF(MOD(tact.ngrupa,2)=1, RGB(198,224,255), RGB(225,210,255)), IIF(ALES, RGB(255,255,225), RGB(255,255,255)))"
|
||||
ENDIF
|
||||
IF This.lActivExtrase AND Type('tact.cbuget') = 'C'
|
||||
LOCAL lcSqlBuget, lnSuccesBuget, lnColBuget, loColBuget, lcExprBuget, lcCtrlBuget
|
||||
This.cContBugetAnalitic = ','
|
||||
lcSqlBuget = [select distinct cont from ] + gcS + [.vplcont_analitic where cont in ('4423','436') and inactiv = 0 and an = ?gnAn]
|
||||
lnSuccesBuget = goExecutor.oExecute(lcSqlBuget, 'crsContBugetAn')
|
||||
IF m.lnSuccesBuget >= 0 AND USED('crsContBugetAn')
|
||||
SELECT crsContBugetAn
|
||||
SCAN
|
||||
This.cContBugetAnalitic = This.cContBugetAnalitic + ALLTRIM(cont) + ','
|
||||
ENDSCAN
|
||||
USE IN crsContBugetAn
|
||||
ENDIF
|
||||
This.NewObject('lblPlatiBuget', '_label', '_baza.vcx')
|
||||
This.lblPlatiBuget.ForeColor = RGB(255,0,0)
|
||||
This.lblPlatiBuget.FontBold = .T.
|
||||
This.lblPlatiBuget.Visible = .F.
|
||||
Bindevent(This.lblPlatiBuget, 'Click', This, 'SaltPlataBuget')
|
||||
This.NewObject('cmdDefalcareBuget', '_commandbutton', '_baza.vcx')
|
||||
This.cmdDefalcareBuget.Caption = 'Defalcare buget'
|
||||
This.cmdDefalcareBuget.Width = 110
|
||||
This.cmdDefalcareBuget.Enabled = .F.
|
||||
This.cmdDefalcareBuget.Visible = .T.
|
||||
Bindevent(This.cmdDefalcareBuget, 'Click', This, 'DefalcareBuget')
|
||||
This.lblPlatiBuget.Top = This.grid1.Top + This.grid1.Height + 4
|
||||
This.cmdDefalcareBuget.Left = This.Command4.Left
|
||||
This.cmdDefalcareBuget.Top = This.Command4.Top + This.Command4.Height
|
||||
FOR lnColBuget = 1 TO This.grid1.ColumnCount
|
||||
loColBuget = This.grid1.Columns(lnColBuget)
|
||||
lcExprBuget = ALLTRIM(loColBuget.DynamicBackColor)
|
||||
IF EMPTY(m.lcExprBuget)
|
||||
lcExprBuget = TRANSFORM(loColBuget.BackColor)
|
||||
ENDIF
|
||||
loColBuget.DynamicBackColor = "IIF(Thisform.EsteRandBugetNedefalcat(.T.), RGB(255,200,200), " + m.lcExprBuget + ")"
|
||||
lcCtrlBuget = loColBuget.CurrentControl
|
||||
IF !EMPTY(m.lcCtrlBuget)
|
||||
Bindevent(loColBuget.&lcCtrlBuget, 'RightClick', This, 'GridRightClickBuget')
|
||||
ENDIF
|
||||
ENDFOR
|
||||
ENDIF
|
||||
IF Type('tact.dublura') = 'L'
|
||||
* randurile deja contate intr-un import anterior (90023), pastrate la raspunsul Nu, apar gri peste orice alta culoare de coloana
|
||||
LOCAL lnColDup, loColDup, lcExprDup
|
||||
@@ -15781,6 +15933,9 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
|
||||
ENDIF && llReadOnly
|
||||
IF Type('Thisform.cmdDefalcareBuget') = 'O'
|
||||
Thisform.cmdDefalcareBuget.Enabled = !m.llReadOnly AND Thisform.EstePlataNedefalcata()
|
||||
ENDIF
|
||||
IF Thisform.lActivExtrase
|
||||
Thisform.nContorAutosalvare = Thisform.nContorAutosalvare + 1
|
||||
IF Thisform.nContorAutosalvare >= 10
|
||||
@@ -15814,8 +15969,13 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
|
||||
lcTip = 'Avans: rest peste facturi - verificati'
|
||||
CASE tact.csursa_f = 'M'
|
||||
lcTip = 'Document pereche ales de operator'
|
||||
CASE tact.csursa_f = 'B'
|
||||
lcTip = 'Plata la buget defalcata pe conturi'
|
||||
ENDCASE
|
||||
ENDIF
|
||||
IF Thisform.EsteRandBugetNedefalcat(.T.)
|
||||
lcTip = 'Plata la buget - apasati Defalcare buget'
|
||||
ENDIF
|
||||
This.ToolTipText = m.lcTip
|
||||
ENDPROC
|
||||
|
||||
|
||||
Reference in New Issue
Block a user