storno eFactura: forma rearanjata (butoane jos, meniu Trimite, stare pe un rand, redimensionabila), sume vizibile in grid (V(250)), fara SET STEP ON in borderou; e2e adaptat (mock xmenu)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WsxyCHJYL6W9MZ6FPnH8ax
This commit is contained in:
@@ -6000,7 +6000,7 @@ DEFINE CLASS anaf_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
lcAvertizare = m.lcAvertizare + 'Documentul original e nota de credit / are total negativ - stornarea va produce valori pozitive.' + Chr(13) + Chr(10)
|
||||
ENDIF
|
||||
|
||||
CREATE CURSOR crsStornoDetalii (element C(60), original C(250), nou C(250), tip N(1))
|
||||
CREATE CURSOR crsStornoDetalii (element C(60), original V(250), nou V(250), tip N(1))
|
||||
|
||||
loForma = NEWOBJECT('frm_storno_efactura', 'anaf_efactura.vcx', '', ;
|
||||
Thisform.oAnaf.AnafeFacturaServer, m.lnId, m.lcXmlOriginal, m.lcNumarOriginal, m.ldIssueDate, ;
|
||||
@@ -6557,7 +6557,6 @@ DEFINE CLASS anaf_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
If !Empty(m.lnOptiune)
|
||||
plFaraValidareEFactura = (m.lnOptiune = 2)
|
||||
llNuTrimiteEFacturaANAF = (m.lnOptiune = 3)
|
||||
SET STEP ON
|
||||
llSucces = Thisform.oAnaf.TrimiteFacturi(m.llNuTrimiteEFacturaANAF)
|
||||
Thisform.pgfeFactura.page1.grdFacturiEmise.Refresh()
|
||||
Endif
|
||||
@@ -15509,7 +15508,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
|
||||
*< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="lblAntet" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="lblClient" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="lblNumar" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="txtNumar" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="lblMotiv" UniqueID="" Timestamp="" />
|
||||
@@ -15523,8 +15522,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
*< OBJECTDATA: ObjPath="grdModificari.cNou.Header1" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="grdModificari.cNou.Text1" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="lblStare" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="edtStatus" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="cmdValideaza" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="cmdGenereaza" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="cmdPdf" UniqueID="" Timestamp="" />
|
||||
*< OBJECTDATA: ObjPath="cmdTrimite" UniqueID="" Timestamp="" />
|
||||
|
||||
@@ -15533,6 +15531,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
*m: regenereazaxml
|
||||
*m: setstare
|
||||
*m: umplegrid
|
||||
*m: valideaza
|
||||
*p: pcciffirma
|
||||
*p: pcclient
|
||||
*p: pcfisierstorno
|
||||
@@ -15551,18 +15550,20 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
*</DefinedPropArrayMethod>
|
||||
|
||||
*<PropValue>
|
||||
BorderStyle = 1
|
||||
BorderStyle = 3
|
||||
DoCreate = .T.
|
||||
Height = 560
|
||||
Height = 480
|
||||
MinHeight = 480
|
||||
MinWidth = 760
|
||||
Name = "frm_storno_efactura"
|
||||
pcciffirma = ''
|
||||
pcclient = ''
|
||||
pcfisierstorno = ''
|
||||
pcmoneda = ''
|
||||
pcmotiv = ''
|
||||
pcnumarnou = ''
|
||||
pcnumaroriginal = ''
|
||||
pcxmloriginal = ''
|
||||
pcciffirma =
|
||||
pcclient =
|
||||
pcfisierstorno =
|
||||
pcmoneda =
|
||||
pcmotiv =
|
||||
pcnumarnou =
|
||||
pcnumaroriginal =
|
||||
pcxmloriginal =
|
||||
pddataoriginal = {}
|
||||
plb2c = .F.
|
||||
pltest = .F.
|
||||
@@ -15591,15 +15592,19 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
<memberdata name="regenereazaxml" display="RegenereazaXml"/>
|
||||
<memberdata name="setstare" display="SetStare"/>
|
||||
<memberdata name="umplegrid" display="UmpleGrid"/>
|
||||
<memberdata name="valideaza" display="Valideaza"/>
|
||||
</VFPData>
|
||||
_shape1.Anchor = 10
|
||||
_shape1.Height = 29
|
||||
_shape1.Left = 0
|
||||
_shape1.Name = "_shape1"
|
||||
_shape1.Top = 0
|
||||
_shape1.Width = 760
|
||||
_shape2.Anchor = 9
|
||||
_shape2.Left = 701
|
||||
_shape2.Name = "_shape2"
|
||||
_shape2.Top = 0
|
||||
Lb_titlu_alb_b121.Anchor = 3
|
||||
Lb_titlu_alb_b121.Caption = "Stornare eFactura"
|
||||
Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121"
|
||||
BUT_TERMIN1.Name = "BUT_TERMIN1"
|
||||
@@ -15614,78 +15619,73 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
Top = 2
|
||||
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
|
||||
|
||||
ADD OBJECT 'cmdGenereaza' AS cmd_executa WITH ;
|
||||
Anchor = 6, ;
|
||||
Caption = "\<Genereaza XML", ;
|
||||
Height = 30, ;
|
||||
Left = 12, ;
|
||||
Name = "cmdGenereaza", ;
|
||||
TabIndex = 4, ;
|
||||
Top = 438, ;
|
||||
Width = 140
|
||||
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
|
||||
|
||||
ADD OBJECT 'cmdPdf' AS cmd_executa WITH ;
|
||||
Anchor = 6, ;
|
||||
Caption = "\<PDF ANAF", ;
|
||||
Height = 30, ;
|
||||
Left = 160, ;
|
||||
Name = "cmdPdf", ;
|
||||
TabIndex = 4, ;
|
||||
Top = 512, ;
|
||||
TabIndex = 5, ;
|
||||
Top = 438, ;
|
||||
Width = 140
|
||||
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
|
||||
|
||||
ADD OBJECT 'cmdTrimite' AS cmd_executa WITH ;
|
||||
Anchor = 12, ;
|
||||
Caption = "\<Trimite la ANAF", ;
|
||||
FontBold = .T., ;
|
||||
ForeColor = 0,128,0, ;
|
||||
Height = 30, ;
|
||||
Left = 588, ;
|
||||
Left = 568, ;
|
||||
Name = "cmdTrimite", ;
|
||||
TabIndex = 5, ;
|
||||
Top = 512, ;
|
||||
Width = 160
|
||||
TabIndex = 6, ;
|
||||
Top = 438, ;
|
||||
Width = 180
|
||||
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
|
||||
|
||||
ADD OBJECT 'cmdValideaza' AS cmd_executa WITH ;
|
||||
Caption = "\<Valideaza", ;
|
||||
Height = 30, ;
|
||||
Left = 12, ;
|
||||
Name = "cmdValideaza", ;
|
||||
TabIndex = 3, ;
|
||||
Top = 512, ;
|
||||
Width = 140
|
||||
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
|
||||
|
||||
ADD OBJECT 'edtStatus' AS _editbox WITH ;
|
||||
Height = 50, ;
|
||||
Left = 220, ;
|
||||
Name = "edtStatus", ;
|
||||
ReadOnly = .T., ;
|
||||
Top = 448, ;
|
||||
Width = 528
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="editbox" />
|
||||
|
||||
ADD OBJECT 'grdModificari' AS _grdbase WITH ;
|
||||
Anchor = 15, ;
|
||||
ColumnCount = 3, ;
|
||||
DeleteMark = .F., ;
|
||||
FontSize = 10, ;
|
||||
Height = 280, ;
|
||||
Height = 252, ;
|
||||
Left = 12, ;
|
||||
Name = "grdModificari", ;
|
||||
Panel = 1, ;
|
||||
ReadOnly = .T., ;
|
||||
RecordSource = "crsStornoDetalii", ;
|
||||
RowHeight = 19, ;
|
||||
TabIndex = 6, ;
|
||||
Top = 164, ;
|
||||
TabIndex = 3, ;
|
||||
Top = 134, ;
|
||||
Width = 736, ;
|
||||
Column1.ControlSource = "crsStornoDetalii.element", ;
|
||||
Column1.FontSize = 10, ;
|
||||
Column1.Name = "cElement", ;
|
||||
Column1.ReadOnly = .T., ;
|
||||
Column1.Width = 300, ;
|
||||
Column1.Width = 330, ;
|
||||
Column2.Alignment = 1, ;
|
||||
Column2.ControlSource = "crsStornoDetalii.original", ;
|
||||
Column2.FontSize = 10, ;
|
||||
Column2.Name = "cOriginal", ;
|
||||
Column2.ReadOnly = .T., ;
|
||||
Column2.Width = 200, ;
|
||||
Column2.Width = 180, ;
|
||||
Column3.Alignment = 1, ;
|
||||
Column3.ControlSource = "crsStornoDetalii.nou", ;
|
||||
Column3.FontSize = 10, ;
|
||||
Column3.Name = "cNou", ;
|
||||
Column3.ReadOnly = .T., ;
|
||||
Column3.Width = 200
|
||||
Column3.Width = 180
|
||||
*< END OBJECT: ClassLib="_grd_base.vcx" BaseClass="grid" />
|
||||
|
||||
ADD OBJECT 'grdModificari.cElement.Header1' AS header WITH ;
|
||||
@@ -15743,84 +15743,88 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
SelectedBackColor = 100,185,255
|
||||
*< END OBJECT: BaseClass="textbox" />
|
||||
|
||||
ADD OBJECT 'lblAntet' AS _label WITH ;
|
||||
AutoSize = .F., ;
|
||||
Caption = "", ;
|
||||
Height = 46, ;
|
||||
Left = 12, ;
|
||||
Name = "lblAntet", ;
|
||||
Top = 38, ;
|
||||
Width = 736, ;
|
||||
WordWrap = .T.
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'lblAvertisment' AS _label WITH ;
|
||||
Anchor = 11, ;
|
||||
AutoSize = .F., ;
|
||||
Caption = "", ;
|
||||
ForeColor = 192,0,0, ;
|
||||
Height = 40, ;
|
||||
Height = 36, ;
|
||||
Left = 12, ;
|
||||
Name = "lblAvertisment", ;
|
||||
Top = 118, ;
|
||||
Top = 90, ;
|
||||
Width = 736, ;
|
||||
WordWrap = .T.
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'lblClient' AS _label WITH ;
|
||||
Anchor = 1, ;
|
||||
AutoSize = .F., ;
|
||||
Caption = "", ;
|
||||
Height = 18, ;
|
||||
Left = 12, ;
|
||||
Name = "lblClient", ;
|
||||
Top = 34, ;
|
||||
Width = 736
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'lblMotiv' AS _label WITH ;
|
||||
Anchor = 1, ;
|
||||
Caption = "Motiv (optional):", ;
|
||||
Left = 270, ;
|
||||
Name = "lblMotiv", ;
|
||||
Top = 90
|
||||
Top = 62
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'lblNumar' AS _label WITH ;
|
||||
Anchor = 1, ;
|
||||
Caption = "Numar storno:", ;
|
||||
Left = 12, ;
|
||||
Name = "lblNumar", ;
|
||||
Top = 90
|
||||
Top = 62
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'lblStare' AS _label WITH ;
|
||||
Anchor = 14, ;
|
||||
AutoSize = .F., ;
|
||||
Caption = "Nevalidat", ;
|
||||
FontBold = .T., ;
|
||||
ForeColor = 96,96,96, ;
|
||||
Height = 34, ;
|
||||
Left = 12, ;
|
||||
Name = "lblStare", ;
|
||||
Top = 452, ;
|
||||
Width = 200
|
||||
Top = 396, ;
|
||||
Width = 736, ;
|
||||
WordWrap = .T.
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="label" />
|
||||
|
||||
ADD OBJECT 'txtMotiv' AS _textbox WITH ;
|
||||
Anchor = 11, ;
|
||||
ControlSource = "Thisform.pcmotiv", ;
|
||||
Format = "!K", ;
|
||||
Height = 23, ;
|
||||
Left = 375, ;
|
||||
MaxLength = 200, ;
|
||||
Name = "txtMotiv", ;
|
||||
TabIndex = 2, ;
|
||||
Top = 87, ;
|
||||
Top = 59, ;
|
||||
Width = 373
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="textbox" />
|
||||
|
||||
ADD OBJECT 'txtNumar' AS _textbox WITH ;
|
||||
Anchor = 1, ;
|
||||
ControlSource = "Thisform.pcnumarnou", ;
|
||||
Format = "!K", ;
|
||||
Height = 23, ;
|
||||
Left = 105, ;
|
||||
Name = "txtNumar", ;
|
||||
TabIndex = 1, ;
|
||||
Top = 87, ;
|
||||
Top = 59, ;
|
||||
Width = 150
|
||||
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="textbox" />
|
||||
|
||||
PROCEDURE Activate
|
||||
DODEFAULT()
|
||||
TRY
|
||||
This.cmdValideaza.SetFocus()
|
||||
CATCH
|
||||
ENDTRY
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE EnableButoane
|
||||
LPARAMETERS tlEnable
|
||||
This.cmdValideaza.Enabled = m.tlEnable
|
||||
This.cmdGenereaza.Enabled = m.tlEnable
|
||||
This.cmdPdf.Enabled = m.tlEnable
|
||||
This.cmdTrimite.Enabled = m.tlEnable
|
||||
This.txtNumar.Enabled = m.tlEnable
|
||||
@@ -15832,6 +15836,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
LPARAMETERS toAnaf, tnIdEfactura, tcXmlOriginal, tcNumarOriginal, tdDataOriginal, ;
|
||||
tcClient, tcCifFirma, tnTotal, tcMoneda, tlTest, tlB2C, tcFisierStorno, tcNumarNou, ;
|
||||
tcAvertizare
|
||||
DODEFAULT()
|
||||
|
||||
This.poAnaf = toAnaf
|
||||
This.pnIdEfactura = tnIdEfactura
|
||||
@@ -15849,8 +15854,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
This.Caption = 'Stornare eFactura ' + m.tcNumarOriginal + ' - ' + IIF(m.tlTest, 'TEST', 'PRODUCTIE')
|
||||
This.Lb_titlu_alb_b121.Caption = This.Caption
|
||||
This.lblAntet.Caption = 'Factura ' + m.tcNumarOriginal + ' din ' + Dtoc(m.tdDataOriginal) + ' -> Storno' + Chr(13) + Chr(10) + ;
|
||||
'Client: ' + m.tcClient + ' CIF firma: ' + m.tcCifFirma + ' Moneda: ' + m.tcMoneda
|
||||
This.lblClient.Caption = 'Client: ' + m.tcClient + ' CIF: ' + m.tcCifFirma + ' Moneda: ' + m.tcMoneda
|
||||
This.lblAvertisment.Caption = m.tcAvertizare
|
||||
|
||||
This.grdModificari.SetAll("DynamicFontBold", "tip = 2", "Column")
|
||||
@@ -15870,8 +15874,7 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
|
||||
llSucces = StornoEFacturaXML(This.pcXmlOriginal, m.lcNumarNou, m.lcNotaFinal, This.pcFisierStorno, @laModif, @lcMesaj)
|
||||
IF !m.llSucces
|
||||
This.edtStatus.Value = 'Eroare la regenerare: ' + m.lcMesaj
|
||||
This.SetStare(0)
|
||||
This.SetStare(0, 'Eroare la regenerare: ' + m.lcMesaj)
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
This.UmpleGrid(@laModif)
|
||||
@@ -15879,27 +15882,32 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE SetStare
|
||||
LPARAMETERS tnStare
|
||||
LPARAMETERS tnStare, tcMesaj
|
||||
IF PCOUNT() < 2
|
||||
tcMesaj = ''
|
||||
ENDIF
|
||||
This.pnStare = m.tnStare
|
||||
This.cmdPdf.Enabled = .T.
|
||||
This.lblStare.ToolTipText = m.tcMesaj
|
||||
DO CASE
|
||||
CASE m.tnStare = 2
|
||||
* trimis - stare terminala (D26/D35)
|
||||
This.lblStare.Caption = 'Trimis'
|
||||
This.cmdValideaza.Enabled = .F.
|
||||
This.lblStare.Caption = IIF(Empty(m.tcMesaj), 'Trimis', m.tcMesaj)
|
||||
This.lblStare.ForeColor = RGB(0,64,160)
|
||||
This.cmdTrimite.Enabled = .F.
|
||||
This.txtNumar.Enabled = .F.
|
||||
This.txtMotiv.Enabled = .F.
|
||||
CASE m.tnStare = 1
|
||||
This.lblStare.Caption = 'Valid'
|
||||
This.cmdValideaza.Enabled = .T.
|
||||
This.lblStare.Caption = IIF(Empty(m.tcMesaj), 'Valid', m.tcMesaj)
|
||||
This.lblStare.ForeColor = RGB(0,128,0)
|
||||
This.cmdTrimite.Enabled = .T.
|
||||
This.txtNumar.Enabled = .T.
|
||||
This.txtMotiv.Enabled = .T.
|
||||
OTHERWISE
|
||||
This.lblStare.Caption = 'Nevalidat'
|
||||
This.cmdValideaza.Enabled = .T.
|
||||
This.cmdTrimite.Enabled = .F.
|
||||
* mesaj gol = nevalidat (gri), mesaj dat = eroare de validare/regenerare (rosu)
|
||||
This.lblStare.Caption = IIF(Empty(m.tcMesaj), 'Nevalidat', m.tcMesaj)
|
||||
This.lblStare.ForeColor = IIF(Empty(m.tcMesaj), RGB(96,96,96), RGB(192,0,0))
|
||||
This.cmdTrimite.Enabled = .T.
|
||||
This.txtNumar.Enabled = .T.
|
||||
This.txtMotiv.Enabled = .T.
|
||||
ENDCASE
|
||||
@@ -15919,6 +15927,34 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
This.grdModificari.Refresh()
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE Valideaza
|
||||
LOCAL llValid, lcMesajValid, loSrv, loExport
|
||||
IF !This.RegenereazaXml()
|
||||
RETURN .F.
|
||||
ENDIF
|
||||
loSrv = This.poAnaf
|
||||
This.EnableButoane(.F.)
|
||||
WAIT WINDOW 'Se valideaza...' NOWAIT
|
||||
loSrv.RefreshTokenAuto()
|
||||
loExport = CREATEOBJECT('ExportEFactura', .T., loSrv.cToken)
|
||||
llValid = m.loExport.ValidareEFacturaANAF(This.pcFisierStorno, @lcMesajValid)
|
||||
CLEAR TYPEAHEAD
|
||||
WAIT CLEAR
|
||||
This.EnableButoane(.T.)
|
||||
IF m.llValid
|
||||
This.SetStare(1)
|
||||
ELSE
|
||||
This.SetStare(0, IIF(Empty(m.lcMesajValid), 'Validare indisponibila - verificati tokenul/reteaua.', 'Invalid: ' + m.lcMesajValid))
|
||||
ENDIF
|
||||
RETURN m.llValid
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE cmdGenereaza.Click
|
||||
IF Thisform.RegenereazaXml()
|
||||
Thisform.SetStare(0, 'XML regenerat.')
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE cmdPdf.Click
|
||||
LOCAL lcXmlCurent, lcFisierPdf
|
||||
lcXmlCurent = Filetostr(Thisform.pcFisierStorno)
|
||||
@@ -15930,10 +15966,27 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE cmdTrimite.Click
|
||||
LOCAL lcMesajConf, loReturn, lcDirProcesat, lcFisierProcesat
|
||||
IF Thisform.pnStare <> 1
|
||||
LOCAL lcMesajConf, loReturn, lcDirProcesat, lcFisierProcesat, lnOptiune
|
||||
IF Thisform.pnStare = 2
|
||||
RETURN
|
||||
ENDIF
|
||||
lnOptiune = xmenu('\<Valideaza online si Trimite la ANAF;\<Trimite la ANAF fara validare;\<Doar valideaza online')
|
||||
DO CASE
|
||||
CASE m.lnOptiune = 1
|
||||
IF !Thisform.Valideaza()
|
||||
RETURN
|
||||
ENDIF
|
||||
CASE m.lnOptiune = 2
|
||||
IF !Thisform.RegenereazaXml()
|
||||
RETURN
|
||||
ENDIF
|
||||
CASE m.lnOptiune = 3
|
||||
Thisform.Valideaza()
|
||||
RETURN
|
||||
OTHERWISE
|
||||
RETURN
|
||||
ENDCASE
|
||||
|
||||
lcMesajConf = 'Trimiteti la ANAF (' + IIF(Thisform.plTest,'TEST','PRODUCTIE') + ') stornarea facturii ' + Thisform.pcNumarOriginal + ;
|
||||
' ca ' + ALLTRIM(Thisform.pcNumarNou) + ', total ' + Transform(Thisform.pnTotal) + ' ' + Thisform.pcMoneda + '? Operatia nu se poate anula.'
|
||||
IF AMESSAGEBOX(m.lcMesajConf, 4+32+256, _screen.Caption) <> 6
|
||||
@@ -15957,37 +16010,12 @@ DEFINE CLASS frm_storno_efactura AS _frmbase OF "_frm_base.vcx"
|
||||
ENDTRY
|
||||
ENDIF
|
||||
goLog.Log('Storno eFactura: ' + Thisform.pcNumarOriginal + ' -> ' + ALLTRIM(Thisform.pcNumarNou) + ', index ' + loReturn.cIdIncarcare + ', ' + IIF(Thisform.plTest,'TEST','PRODUCTIE'))
|
||||
Thisform.edtStatus.Value = 'Trimis. Index incarcare ' + loReturn.cIdIncarcare + ' (' + IIF(Thisform.plTest,'TEST','PRODUCTIE') + '). ' + ;
|
||||
'Stergeti factura din ROA si emiteti factura corecta cu acelasi numar. Storno-ul apare in Trimise dupa descarcarea mesajelor.'
|
||||
Thisform.EnableButoane(.T.)
|
||||
Thisform.SetStare(2)
|
||||
Thisform.SetStare(2, 'Trimis. Index incarcare ' + loReturn.cIdIncarcare + ' (' + IIF(Thisform.plTest,'TEST','PRODUCTIE') + '). ' + ;
|
||||
'Stergeti factura din ROA si emiteti factura corecta cu acelasi numar. Storno-ul apare in Trimise dupa descarcarea mesajelor.')
|
||||
ELSE
|
||||
Thisform.edtStatus.Value = 'Eroare: ' + loReturn.cMesaj + '. Verificati in Trimise, dupa descarcare, inainte de a retrimite.'
|
||||
Thisform.EnableButoane(.T.)
|
||||
Thisform.SetStare(0)
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE cmdValideaza.Click
|
||||
LOCAL llValid, lcMesajValid, loSrv, loExport
|
||||
IF !Thisform.RegenereazaXml()
|
||||
RETURN
|
||||
ENDIF
|
||||
loSrv = Thisform.poAnaf
|
||||
Thisform.EnableButoane(.F.)
|
||||
WAIT WINDOW 'Se valideaza...' NOWAIT
|
||||
loSrv.RefreshTokenAuto()
|
||||
loExport = CREATEOBJECT('ExportEFactura', .T., loSrv.cToken)
|
||||
llValid = m.loExport.ValidareEFacturaANAF(Thisform.pcFisierStorno, @lcMesajValid)
|
||||
CLEAR TYPEAHEAD
|
||||
WAIT CLEAR
|
||||
Thisform.EnableButoane(.T.)
|
||||
IF m.llValid
|
||||
Thisform.edtStatus.Value = 'Valid.'
|
||||
Thisform.SetStare(1)
|
||||
ELSE
|
||||
Thisform.edtStatus.Value = IIF(Empty(m.lcMesajValid), 'Validare indisponibila - verificati tokenul/reteaua.', 'Invalid: ' + m.lcMesajValid)
|
||||
Thisform.SetStare(0)
|
||||
Thisform.SetStare(0, 'Eroare: ' + loReturn.cMesaj + '. Verificati in Trimise, dupa descarcare, inainte de a retrimite.')
|
||||
ENDIF
|
||||
ENDPROC
|
||||
|
||||
|
||||
Reference in New Issue
Block a user