Compras carga xml caractestes especiales, Formato Cotizacion 140 v4.0

This commit is contained in:
Oscar Irigoyen
2022-12-01 12:14:03 -07:00
parent 4024b09f86
commit f786c6863f
3 changed files with 1997 additions and 1900 deletions

View File

@@ -1,10 +1,23 @@
Option Explicit On Option Explicit On
Option Strict On Option Strict On
'Imports System.Diagnostics
'Imports System.Globalization
'Imports System.IO
'Imports System.Threading.Tasks
'Imports ADSNetLibrary.SIGAPI.Helpers
'Imports Extensiones
'Imports Stimulsoft.Base
Imports System.Activities
Imports System.Data
Imports System.Diagnostics Imports System.Diagnostics
Imports System.Globalization Imports System.Globalization
Imports System.IO Imports System.IO
Imports System.Threading.Tasks Imports System.Threading.Tasks
Imports System.Xml
Imports Extensiones
Imports Newtonsoft.Json
Partial Class Compras_Compras Partial Class Compras_Compras
@@ -1765,7 +1778,7 @@ Partial Class Compras_Compras
If Validada And Not EnListadoEFOS Then If Validada And Not EnListadoEFOS Then
Try Try
XMLDoc.LoadXml(File.ReadAllText(Archivo).Replace("<br>", "").Replace("<", "")) XMLDoc.LoadXml(File.ReadAllText(Archivo).Replace("<br>", "").Replace("<", "").Replace("o;?", ""))
Catch ex As Exception Catch ex As Exception
Try Try
Dim oReader = New StreamReader(Archivo, Encoding.GetEncoding("ISO-8859-1")) Dim oReader = New StreamReader(Archivo, Encoding.GetEncoding("ISO-8859-1"))
@@ -8304,7 +8317,7 @@ Partial Class Compras_Compras
Dim IndicePrimero As Integer = 0 Dim IndicePrimero As Integer = 0
For Each dRow As DataRow In TmpDT.Rows For Each dRow As DataRow In TmpDT.Rows
If Boolean.Parse(dRow("AplicaIEPS").ToString) And dRow("IEPSPS").ToString.ToDecimal > 0 Then If dRow("IEPSPS").ToString.ToDecimal > 0 Then
IndicePrimero = IndiceContador IndicePrimero = IndiceContador
Exit For Exit For
End If End If
@@ -8312,11 +8325,8 @@ Partial Class Compras_Compras
Next Next
If DiferenciaIEPSPS.RoundAD(2) <> 0 Then If DiferenciaIEPSPS.RoundAD(2) <> 0 Then
TmpDT.Rows(IndicePrimero)("IEPSPS") = TmpDT.Rows(IndicePrimero)("IEPSPS").ToString.ToDecimal + DiferenciaIEPSPS TmpDT.Rows(IndicePrimero)("IEPSPS") = TmpDT.Rows(IndicePrimero)("IEPSPS").ToString.ToDecimal + DiferenciaIEPSPS
TmpDT.AcceptChanges() TmpDT.AcceptChanges()
End If End If
@@ -8571,23 +8581,34 @@ Partial Class Compras_Compras
PorcentajePago = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal / TxtTotal.Text.ToDecimal PorcentajePago = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal / TxtTotal.Text.ToDecimal
Dim ImporteAntMNComision As Decimal = (ImporteAnt + ImporComisionAnticipo)
If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimientoCompra, (ImporteAnt + ImporComisionAnticipo), "", CveConceptoCompra, "", TxtFechaPago.Text.ToDate, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMNComision, ImporteME:=If(TipoCambioAnt = 1, 0, (ImporteAnt + ImporComisionAnticipo)), TipoCambio:=TipoCambioAnt, CveSubProyecto:=CveSubProyectoAnticipo) Then 'Se comento por que ya se aplica el pago en AplicaPrePolizaPagoCompra
ErrorMovtosCxP = 1 'Dim ImporteAntMNComision As Decimal = (ImporteAnt + ImporComisionAnticipo)
'If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimientoCompra, (ImporteAnt + ImporComisionAnticipo), "", CveConceptoCompra, "", TxtFechaPago.Text.ToDate, IdCtaContable, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMNComision, ImporteME:=If(TipoCambioAnt = 1, 0, (ImporteAnt + ImporComisionAnticipo)), TipoCambio:=TipoCambioAnt, CveSubProyecto:=CveSubProyectoAnticipo) Then
' ErrorMovtosCxP = 1
'End If
If gvr.DataKey("TipoDocto").Contiene("Egsc") Then
CompraActual.IdCtaContableAnticipoProv = IdCtaContable
End If
If gvr.DataKey("TipoDocto").Contiene("DD") Then
CompraActual.IdCtaContableProv = IdCtaContable
End If End If
If CveMonedaAnticipo > 1 Then If CveMonedaAnticipo > 1 Then
Dim ImporteAntMN As Decimal = TipoCambioAnt * ImporteAnt - ImporteAnt Dim ImporteAntMN As Decimal = TipoCambioAnt * ImporteAnt - ImporteAnt
If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimientoCompra, ImporteAntMN, "", CveConceptoCompraComplementaria, "", TxtFechaPago.Text.ToDate, IdCtaContableComp, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMN, ImporteME:=If(TipoCambioAnt = 1, 0, ImporteAnt), TipoCambio:=TipoCambioAnt, CveSubProyecto:=CveSubProyectoAnticipo) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimientoCompra, ImporteAntMN, "", CveConceptoCompraComplementaria, "", TxtFechaPago.Text.ToDate, IdCtaContableComp, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=ImporteAntMN, ImporteME:=If(TipoCambioAnt = 1, 0, ImporteAnt), TipoCambio:=TipoCambioAnt, CveSubProyecto:=CveSubProyectoAnticipo) Then
ErrorMovtosCxP = 1 ErrorMovtosCxP = 1
End If
End If End If
End If
Pago.CveIE = CveIE Pago.CveIE = CveIE
Pago.CveCompraAmortizacion = CveCompraNC Pago.CveCompraAmortizacion = CveCompraNC
AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePolizaNueva, ObjConta) AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePolizaNueva, ObjConta)
End If
End If End If
End If
Next Next
@@ -9783,12 +9804,38 @@ Partial Class Compras_Compras
#Region "CargaXML" #Region "CargaXML"
Private Function ValorXML(n As XmlNode, Campo As String, Optional Retorno As String = "") As String Private Function ValorXML(n As XmlNode, Campo As String, Optional Retorno As String = "") As String
Dim o As XmlNode = n.Attributes.Cast(Of XmlAttribute)().SingleOrDefault(Function(a) String.Compare(a.Name, Campo, True) = 0)
If o Is Nothing Then If UsuarioActual.CveRol = 1 Then
Return Retorno
Try
Dim o As XmlNode = n.Attributes.Cast(Of XmlAttribute)().SingleOrDefault(Function(a) String.Compare(a.Name, Campo, True) = 0)
If o Is Nothing Then
Return Retorno
Else
Return o.Value
End If
Catch ex As Exception
Alert($"Error al leer valor nodo campo:{Campo}")
Return ""
End Try
Else Else
Return o.Value
Dim o As XmlNode = n.Attributes.Cast(Of XmlAttribute)().SingleOrDefault(Function(a) String.Compare(a.Name, Campo, True) = 0)
If o Is Nothing Then
Return Retorno
Else
Return o.Value
End If
End If End If
End Function End Function
Private Sub CargaComprobanteXML(XMLDoc As XmlDocument) Private Sub CargaComprobanteXML(XMLDoc As XmlDocument)
@@ -12242,8 +12289,30 @@ Partial Class Compras_Compras
End Sub End Sub
Protected Sub BtnContado_Click(sender As Object, e As EventArgs) Protected Sub BtnContado_Click(sender As Object, e As EventArgs)
TxtRembolsoNumero.Text = TxtNumeroReembolso.Text TxtRembolsoNumero.Text = TxtNumeroReembolso.Text
If RBLContado.SelectedValue.ToEntero = 6 Then ' Caja chica
DdlFuncionarioEmpleado.SelectedValueExist(-1)
DdlCuentaCajaChicaReembolso.SelectedValueExist(-1)
TxtDocumentoImporteFE.Text = ""
TextBox3.Text = ""
ViewState("CvePersonal") = -1
End If
If RBLContado.SelectedValue.ToEntero = 2 Then ' viaticos personal
DdlTipoTransaccionCaja.SelectedValueExist(-1)
DdlCuentaCaja.SelectedValueExist(-1)
TxtDocumentoFolioCaja.Text = ""
TxtDocumentoImporteCaja.Text = ""
TxtDocumentoObservacionesCaja.Text = ""
ViewState("CveCajaChica") = -1
End If
UpContado.Update()
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivContadoModal")) RegistraScript(String.Format("$('#{0}').modal('hide');", "DivContadoModal"))
End Sub End Sub
Protected Sub RblRembolso_SelectedIndexChanged(sender As Object, e As EventArgs) Protected Sub RblRembolso_SelectedIndexChanged(sender As Object, e As EventArgs)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff