diff --git a/clase/omodificari.vc2 b/clase/omodificari.vc2
index 46728aa..750e398 100644
--- a/clase/omodificari.vc2
+++ b/clase/omodificari.vc2
@@ -13090,7 +13090,7 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
USE IN crsTotExtrase
SELECT (m.lnSelect)
This.lblExtraseTotaluri.Visible = .T.
- This.lblExtraseTotaluri.Caption = 'NOTE: Inc ' + ALLTRIM(TRANSFORM(m.lnIncasari,'999,999,999.99')) + ' Pla ' + ALLTRIM(TRANSFORM(m.lnPlati,'999,999,999.99'))
+ This.lblExtraseTotaluri.Caption = 'NOTE: Inc ' + ALLTRIM(TRANSFORM(m.lnIncasari,get_mask(12,gnPa))) + ' Pla ' + ALLTRIM(TRANSFORM(m.lnPlati,get_mask(12,gnPa)))
This.lblExtraseTotaluri.ForeColor = RGB(0,0,0)
This.lblExtraseTotaluri.ToolTipText = ''
IF USED('cSolduriExtrase')
@@ -13124,10 +13124,10 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
lnSoldNote = m.lnSoldNote + m.lnCalculat
lnSoldExtras = m.lnSoldExtras + sold_f
lcTooltip = m.lcTooltip + IIF(EMPTY(m.lcTooltip),'',CHR(13)) + m.lcIban + ' ' + ALLTRIM(NVL(valuta,'RON')) + ;
- ' SI ' + TRANSFORM(NVL(sold_i,0),'999,999,999.99') + ' +' + TRANSFORM(inc,'999,999,999.99') + ;
- ' -' + TRANSFORM(pla,'999,999,999.99') + ' +' + TRANSFORM(NVL(sold_dubl,0),'999,999,999.99') + ;
- ' = ' + TRANSFORM(m.lnCalculat,'999,999,999.99') + ' / SF ' + TRANSFORM(sold_f,'999,999,999.99') + ;
- ' dif ' + TRANSFORM(m.lnCalculat - sold_f,'999,999,999.99')
+ ' SI ' + TRANSFORM(NVL(sold_i,0),get_mask(12,gnPa)) + ' +' + TRANSFORM(inc,get_mask(12,gnPa)) + ;
+ ' -' + TRANSFORM(pla,get_mask(12,gnPa)) + ' +' + TRANSFORM(NVL(sold_dubl,0),get_mask(12,gnPa)) + ;
+ ' = ' + TRANSFORM(m.lnCalculat,get_mask(12,gnPa)) + ' / SF ' + TRANSFORM(sold_f,get_mask(12,gnPa)) + ;
+ ' dif ' + TRANSFORM(m.lnCalculat - sold_f,get_mask(12,gnPa))
IF !m.llBate
lcNuBate = m.lcNuBate + IIF(EMPTY(m.lcNuBate),'',', ') + '...' + RIGHT(m.lcIban,4)
ENDIF
@@ -13137,11 +13137,11 @@ DEFINE CLASS frm_modific2024 AS _frmbase OF "_frm_base.vcx"
This.lblExtraseTotaluri.ToolTipText = m.lcTooltip
IF m.lnVerificate > 0
IF EMPTY(m.lcNuBate)
- This.lblExtraseTotaluri.Caption = This.lblExtraseTotaluri.Caption + ' Sold ' + ALLTRIM(TRANSFORM(m.lnSoldNote,'999,999,999.99')) + ' | EXTRAS: Sold ' + ALLTRIM(TRANSFORM(m.lnSoldExtras,'999,999,999.99'))
+ This.lblExtraseTotaluri.Caption = This.lblExtraseTotaluri.Caption + ' Sold ' + ALLTRIM(TRANSFORM(m.lnSoldNote,get_mask(12,gnPa))) + ' | EXTRAS: Sold ' + ALLTRIM(TRANSFORM(m.lnSoldExtras,get_mask(12,gnPa)))
This.lblExtraseTotaluri.ForeColor = RGB(0,128,0)
ELSE
- This.lblExtraseTotaluri.Caption = This.lblExtraseTotaluri.Caption + ' Sold ' + ALLTRIM(TRANSFORM(m.lnSoldNote,'999,999,999.99')) + ' | EXTRAS: Sold ' + ALLTRIM(TRANSFORM(m.lnSoldExtras,'999,999,999.99')) + ;
- ' Dif ' + ALLTRIM(TRANSFORM(m.lnSoldNote - m.lnSoldExtras,'999,999,999.99')) + IIF(m.lnVerificate > 1, ' (' + m.lcNuBate + ')', '')
+ This.lblExtraseTotaluri.Caption = This.lblExtraseTotaluri.Caption + ' Sold ' + ALLTRIM(TRANSFORM(m.lnSoldNote,get_mask(12,gnPa))) + ' | EXTRAS: Sold ' + ALLTRIM(TRANSFORM(m.lnSoldExtras,get_mask(12,gnPa))) + ;
+ ' Dif ' + ALLTRIM(TRANSFORM(m.lnSoldNote - m.lnSoldExtras,get_mask(12,gnPa))) + IIF(m.lnVerificate > 1, ' (' + m.lcNuBate + ')', '')
This.lblExtraseTotaluri.ForeColor = RGB(255,0,0)
ENDIF
ENDIF
@@ -17552,3 +17552,275 @@ DEFINE CLASS frm_sincronizare_articole AS frm_termin_renunt OF "_frm_child.vcx"
ENDPROC
ENDDEFINE
+
+DEFINE CLASS frmdefalcarebuget AS frm_termin_renunt OF "_frm_child.vcx"
+ *< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
+
+ *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
+ *< OBJECTDATA: ObjPath="lblInfo" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cCont.Header1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cCont.Text1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cAcont.Header1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cAcont.Text1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cDenumire.Header1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cDenumire.Text1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cSold.Header1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cSold.Text1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cSuma.Header1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="grdDefalcare.cSuma.Text1" UniqueID="" Timestamp="" />
+ *< OBJECTDATA: ObjPath="lblNerepartizat" UniqueID="" Timestamp="" />
+
+ *
+ *m: actualizeazanerepartizat
+ *p: cexplicatie
+ *p: cgrupa
+ *p: ddata
+ *p: nnerepartizat
+ *p: nsuma
+ *
+
+ *
+ BorderStyle = 1
+ cexplicatie =
+ cgrupa =
+ ddata = {}
+ DoCreate = .T.
+ Height = 330
+ Name = "frmdefalcarebuget"
+ nnerepartizat = 0
+ nsuma = 0
+ Width = 620
+ _shape1.Height = 29
+ _shape1.Left = 0
+ _shape1.Name = "_shape1"
+ _shape1.Top = 0
+ _shape1.Width = 628
+ _shape1.ZOrderSet = 1
+ _shape2.Height = 29
+ _shape2.Left = 556
+ _shape2.Name = "_shape2"
+ _shape2.Top = 0
+ _shape2.Width = 64
+ _shape2.ZOrderSet = 2
+ Lb_titlu_alb_b121.Caption = "Defalcare plata la buget"
+ Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121"
+ Lb_titlu_alb_b121.TabIndex = 5
+ Lb_titlu_alb_b121.ZOrderSet = 3
+ BUT_TERMIN1.Left = 588
+ BUT_TERMIN1.Name = "BUT_TERMIN1"
+ BUT_TERMIN1.TabIndex = 3
+ BUT_TERMIN1.ToolTipText = "Aplica defalcarea"
+ BUT_TERMIN1.Top = 1
+ BUT_TERMIN1.ZOrderSet = 4
+ Gridsort1.Name = "Gridsort1"
+ But_renunt1.Left = 559
+ But_renunt1.Name = "But_renunt1"
+ But_renunt1.TabIndex = 4
+ But_renunt1.ToolTipText = "Inchide fara sa aplicati"
+ But_renunt1.Top = 1
+ But_renunt1.ZOrderSet = 6
+ *
+
+ ADD OBJECT 'grdDefalcare' AS _grid WITH ;
+ ColumnCount = 5, ;
+ DeleteMark = .F., ;
+ FontSize = 10, ;
+ Height = 210, ;
+ lcamptextneeditabil = .F., ;
+ Left = 10, ;
+ Name = "grdDefalcare", ;
+ RecordSource = "cDefalcare", ;
+ RowHeight = 19, ;
+ Top = 72, ;
+ Width = 610, ;
+ ZOrderSet = 1, ;
+ Column1.ControlSource = "cDefalcare.cont", ;
+ Column1.FontSize = 10, ;
+ Column1.Name = "cCont", ;
+ Column1.ReadOnly = .T., ;
+ Column1.Width = 50, ;
+ Column2.ControlSource = "cDefalcare.acont", ;
+ Column2.FontSize = 10, ;
+ Column2.Name = "cAcont", ;
+ Column2.ReadOnly = .T., ;
+ Column2.Width = 60, ;
+ Column3.ColumnOrder = 3, ;
+ Column3.ControlSource = "cDefalcare.denumire", ;
+ Column3.FontSize = 10, ;
+ Column3.Name = "cDenumire", ;
+ Column3.ReadOnly = .T., ;
+ Column3.Width = 190, ;
+ Column4.ColumnOrder = 4, ;
+ Column4.ControlSource = "cDefalcare.sold", ;
+ Column4.FontSize = 10, ;
+ Column4.InputMask = (get_mask(12,gnPa)), ;
+ Column4.Name = "cSold", ;
+ Column4.ReadOnly = .T., ;
+ Column4.Width = 95, ;
+ Column5.ColumnOrder = 5, ;
+ Column5.ControlSource = "cDefalcare.suma", ;
+ Column5.FontSize = 10, ;
+ Column5.InputMask = (get_mask(12,gnPa)), ;
+ Column5.Name = "cSuma", ;
+ Column5.ReadOnly = .F., ;
+ Column5.Width = 95
+ *< END OBJECT: ClassLib="_baza.vcx" BaseClass="grid" />
+
+ ADD OBJECT 'grdDefalcare.cAcont.Header1' AS header WITH ;
+ Caption = "Analitic", ;
+ FontSize = 10, ;
+ Name = "Header1"
+ *< END OBJECT: BaseClass="header" />
+
+ ADD OBJECT 'grdDefalcare.cAcont.Text1' AS textbox WITH ;
+ BackColor = 255,255,255, ;
+ BorderStyle = 0, ;
+ FontSize = 10, ;
+ ForeColor = 0,0,0, ;
+ Margin = 0, ;
+ Name = "Text1", ;
+ ReadOnly = .T.
+ *< END OBJECT: BaseClass="textbox" />
+
+ ADD OBJECT 'grdDefalcare.cCont.Header1' AS header WITH ;
+ Caption = "Cont", ;
+ FontSize = 10, ;
+ Name = "Header1"
+ *< END OBJECT: BaseClass="header" />
+
+ ADD OBJECT 'grdDefalcare.cCont.Text1' AS textbox WITH ;
+ BackColor = 255,255,255, ;
+ BorderStyle = 0, ;
+ FontSize = 10, ;
+ ForeColor = 0,0,0, ;
+ Margin = 0, ;
+ Name = "Text1", ;
+ ReadOnly = .T.
+ *< END OBJECT: BaseClass="textbox" />
+
+ ADD OBJECT 'grdDefalcare.cDenumire.Header1' AS header WITH ;
+ Caption = "Denumire", ;
+ FontSize = 10, ;
+ Name = "Header1"
+ *< END OBJECT: BaseClass="header" />
+
+ ADD OBJECT 'grdDefalcare.cDenumire.Text1' AS textbox WITH ;
+ BackColor = 255,255,255, ;
+ BorderStyle = 0, ;
+ FontSize = 10, ;
+ ForeColor = 0,0,0, ;
+ Margin = 0, ;
+ Name = "Text1", ;
+ ReadOnly = .T.
+ *< END OBJECT: BaseClass="textbox" />
+
+ ADD OBJECT 'grdDefalcare.cSold.Header1' AS header WITH ;
+ Alignment = 1, ;
+ Caption = "Sold precedent", ;
+ FontSize = 10, ;
+ Name = "Header1"
+ *< END OBJECT: BaseClass="header" />
+
+ ADD OBJECT 'grdDefalcare.cSold.Text1' AS textbox WITH ;
+ BackColor = 255,255,255, ;
+ BorderStyle = 0, ;
+ FontSize = 10, ;
+ ForeColor = 0,0,0, ;
+ Margin = 0, ;
+ Name = "Text1", ;
+ ReadOnly = .T.
+ *< END OBJECT: BaseClass="textbox" />
+
+ ADD OBJECT 'grdDefalcare.cSuma.Header1' AS header WITH ;
+ Alignment = 2, ;
+ Caption = "Suma", ;
+ FontSize = 10, ;
+ Name = "Header1"
+ *< END OBJECT: BaseClass="header" />
+
+ ADD OBJECT 'grdDefalcare.cSuma.Text1' AS textbox WITH ;
+ BackColor = 255,255,255, ;
+ BorderStyle = 0, ;
+ FontSize = 10, ;
+ ForeColor = 0,0,0, ;
+ Margin = 0, ;
+ Name = "Text1", ;
+ ReadOnly = .F.
+ *< END OBJECT: BaseClass="textbox" />
+
+ ADD OBJECT 'lblInfo' AS _label WITH ;
+ AutoSize = .F., ;
+ Height = 34, ;
+ Left = 10, ;
+ Name = "lblInfo", ;
+ Top = 35, ;
+ Width = 610, ;
+ WordWrap = .T., ;
+ ZOrderSet = 0
+ *< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
+
+ ADD OBJECT 'lblNerepartizat' AS _label WITH ;
+ AutoSize = .F., ;
+ FontBold = .T., ;
+ Height = 20, ;
+ Left = 10, ;
+ Name = "lblNerepartizat", ;
+ Top = 288, ;
+ Width = 610, ;
+ ZOrderSet = 2
+ *< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
+
+ PROCEDURE actualizeazanerepartizat
+ LOCAL lnRepartizat, lnRecno, lcSelect
+ IF !USED('cDefalcare')
+ RETURN
+ ENDIF
+ lcSelect = SELECT()
+ lnRecno = RECNO('cDefalcare')
+ SELECT cDefalcare
+ SUM suma TO lnRepartizat
+ IF BETWEEN(m.lnRecno, 1, RECCOUNT())
+ GO m.lnRecno
+ ENDIF
+ SELECT (m.lcSelect)
+ This.nNerepartizat = ROUND(This.nSuma - m.lnRepartizat, 2)
+ This.lblNerepartizat.Caption = 'Nerepartizat: ' + TRANSFORM(This.nNerepartizat, get_mask(12,gnPa))
+ This.lblNerepartizat.ForeColor = IIF(This.nNerepartizat <> 0, RGB(200, 0, 0), RGB(0, 130, 0))
+ ENDPROC
+
+ PROCEDURE inainte_de_do_termin
+ LOCAL llNegativ, lcSelect
+ This.ActualizeazaNerepartizat()
+ llNegativ = .F.
+ IF USED('cDefalcare')
+ lcSelect = SELECT()
+ SELECT cDefalcare
+ LOCATE FOR suma < 0
+ llNegativ = FOUND()
+ SELECT (m.lcSelect)
+ ENDIF
+ IF This.nNerepartizat <> 0 OR m.llNegativ
+ AMESSAGEBOX('Mai aveti de repartizat ' + TRANSFORM(This.nNerepartizat, get_mask(12,gnPa)) + ' lei.', 0 + 48, 'Defalcare plata la buget')
+ RETURN .F.
+ ENDIF
+ RETURN .T.
+ ENDPROC
+
+ PROCEDURE Init
+ LPARAMETERS tdData, tnSuma, tcGrupa, tcExplicatie
+ LOCAL lcTitluGrupa
+ DoDefault()
+ This.dData = m.tdData
+ This.nSuma = m.tnSuma
+ This.cGrupa = UPPER(ALLTRIM(NVL(m.tcGrupa, '')))
+ This.cExplicatie = ALLTRIM(NVL(m.tcExplicatie, ''))
+ lcTitluGrupa = ICASE(This.cGrupa = 'TVA', 'TVA', This.cGrupa = 'CAM', 'CAM', 'Cont unic (buget de stat)')
+ This.lblInfo.Caption = DTOC(This.dData) + ' Suma OP: ' + TRANSFORM(This.nSuma, get_mask(12,gnPa)) + ;
+ ' ' + m.lcTitluGrupa + ' ' + This.cExplicatie
+ BINDEVENT(This.grdDefalcare.Columns(5).Text1, 'Valid', This, 'ActualizeazaNerepartizat')
+ BINDEVENT(This.grdDefalcare.Columns(5).Text1, 'LostFocus', This, 'ActualizeazaNerepartizat')
+ This.ActualizeazaNerepartizat()
+ ENDPROC
+
+ENDDEFINE