diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index 8a318b45f..4555bc825 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -1524,7 +1524,7 @@
-
+
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 908a8771d..b98c6e2e8 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -1439,12 +1439,18 @@ Partial Class Compras_Compras
End If
If DdlTipoComprobante.SelectedValue = "NC" Then
- 'paneldevolucion.Visible = True
Pnlalmaceninventarios.Visible = False
- 'cargaddldevoluciones(CveProveedor, TxtSubTotal2.Text.ToDouble)
- InicializaAplicaNCFact()
DivReembolso.Visible = False
RBLPago.Items(2).Enabled = False
+
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ ConfiguraseleccionRNC()
+ Else
+ InicializaAplicaNCFact()
+ End If
+ 'paneldevolucion.Visible = True
+ 'cargaddldevoluciones(CveProveedor, TxtSubTotal2.Text.ToDouble)
+
End If
If DdlTipoComprobante.SelectedValue = "DEV" Then
@@ -1579,7 +1585,6 @@ Partial Class Compras_Compras
'RFVSubProyecto.Enabled = True
End If
-
'VALIDA Usuario TIPO REMESA
If UsuarioActual.TienePermisoProceso(108) Then
RBLPago.Enabled = False
@@ -1672,10 +1677,6 @@ Partial Class Compras_Compras
DdlTipoComprobante.SelectedValueExist("DEV")
End If
- If UsuarioActual.Empresa.Funcionalidad(574).ToEntero = 1 AndAlso DdlTipoComprobante.SelectedValue = "NC" Then
- ConfiguraseleccionRemisionNotaCredito()
- End If
-
If Not CveCompra > 0 Then
LnkProrrateoGasolina.Visible = True
InicializaDTProrrateoGasolina()
@@ -1791,7 +1792,7 @@ Partial Class Compras_Compras
'End Sub
- Private Sub ConfiguraseleccionRemisionNotaCredito()
+ Private Sub ConfiguraseleccionRNC()
Dim AutoSelRNC As Boolean = False
DdlTipoComprobante_SelectedIndexChanged(Nothing, Nothing)
@@ -2011,8 +2012,10 @@ Partial Class Compras_Compras
SubTotalConceptos = TmpDT.SUMD("Total").RoundSQL
If Not TmpDT.Columns.Contains("Amortizacion") Then TmpDT.Columns.Add("Amortizacion", GetType(Decimal))
+ If Not TmpDT.Columns.Contains("AplicaSerie") Then TmpDT.Columns.Add(New DataColumn("AplicaSerie", GetType(Boolean)) With {.DefaultValue = False})
If Not TmpDT.Columns.Contains("AplicaLote") Then TmpDT.Columns.Add(New DataColumn("AplicaLote", GetType(Boolean)) With {.DefaultValue = False})
If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add(New DataColumn("AplicaCaducidad", GetType(Boolean)) With {.DefaultValue = False})
+ If Not TmpDT.Columns.Contains("Serie") Then TmpDT.Columns.Add("Serie", GetType(String))
If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
@@ -2121,7 +2124,10 @@ Partial Class Compras_Compras
DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("DEV"))
DdlTipoCompra.Items.Remove(DdlTipoCompra.Items.FindByValue("6"))
DdlTipoCompra.Items.Remove(DdlTipoCompra.Items.FindByValue("11"))
- If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then DdlTipoCompra.Items.Add(New ListItem("Recolección", "14"))
+ If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
+ DdlTipoCompra.Items.Add(New ListItem("Recolección", "14"))
+ DdlTipoCompra.Items.Add(New ListItem("Apoyo sin virtual", "16"))
+ End If
Case "E"
DdlTipoComprobante.SelectedValue = "NC"
DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Fac"))
@@ -2841,6 +2847,10 @@ Partial Class Compras_Compras
CvePrePoliza = dr("CvePrePoliza").ToString.ToEntero
EstatusAlmacen = dr("EstatusAlmacen").ToString.ToEntero
DdlTipoCompra.SelectedValueExist(dr("CveTipoCompra"))
+ If DdlTipoCompra.SelectedValue = "16" Then
+ DdlTipoCompra.Items.Add(New ListItem("Apoyo sin virtual", "16"))
+ DdlTipoCompra.SelectedValue = dr("CveTipoCompra").ToString
+ End If
TipoCompraOriginal = dr("CveTipoCompra").ToString.ToEntero
CveTipoConcepto = dr("CveTipoConcepto").ToString.ToEntero
ChkEsNoDeducible.Checked = dr("NoDeducible").ToString.ToEntero > 0
@@ -2868,565 +2878,565 @@ Partial Class Compras_Compras
TxtSubTotal2.Text = (dr("SubTotal").ToString.ToDouble - dr("Descuentos").ToString.ToDouble).FormatoNumero(2)
TxtDescuento.Text = dr("Descuentos").ToString.FormatoNumero(2)
- LblAmortizacion.Text = dr("Amortizacion").ToString.FormatoNumero(2)
- TxtIVA.Text = dr("IVA").ToString.FormatoNumero(2)
- TxtRetIVA.Text = dr("RetIVA").ToString.FormatoNumero(2)
- TxtRetISR.Text = dr("RetISR").ToString.FormatoNumero(2)
- TxtIEPS.Text = dr("IEPS").ToString.FormatoNumero(2)
- If dr("IEPS").ToString.ToDouble > 0 Then TrIEPS.Visible = True
- If dr("RetIVA").ToString.ToDouble > 0 Then TrRetIVA.Visible = True
- If dr("RetISR").ToString.ToDouble > 0 Then TrRetISR.Visible = True
- If Math.Abs(dr("Redondeo").ToString.ToDouble) > 0 Then TrRedondeo.Visible = True
- TxtRedondeo.Text = dr("Redondeo").ToString.FormatoNumero(2)
+ LblAmortizacion.Text = dr("Amortizacion").ToString.FormatoNumero(2)
+ TxtIVA.Text = dr("IVA").ToString.FormatoNumero(2)
+ TxtRetIVA.Text = dr("RetIVA").ToString.FormatoNumero(2)
+ TxtRetISR.Text = dr("RetISR").ToString.FormatoNumero(2)
+ TxtIEPS.Text = dr("IEPS").ToString.FormatoNumero(2)
+ If dr("IEPS").ToString.ToDouble > 0 Then TrIEPS.Visible = True
+ If dr("RetIVA").ToString.ToDouble > 0 Then TrRetIVA.Visible = True
+ If dr("RetISR").ToString.ToDouble > 0 Then TrRetISR.Visible = True
+ If Math.Abs(dr("Redondeo").ToString.ToDouble) > 0 Then TrRedondeo.Visible = True
+ TxtRedondeo.Text = dr("Redondeo").ToString.FormatoNumero(2)
- TxtOtrosImpuestos.Text = dr("OtrosImpuestos").ToString.FormatoNumero(2)
- If dr("OtrosImpuestos").ToString.ToDouble > 0 Then TrOtrosImpuestos.Visible = True
- TxtTotal.Text = dr("Total").ToString.FormatoNumero(2)
+ TxtOtrosImpuestos.Text = dr("OtrosImpuestos").ToString.FormatoNumero(2)
+ If dr("OtrosImpuestos").ToString.ToDouble > 0 Then TrOtrosImpuestos.Visible = True
+ TxtTotal.Text = dr("Total").ToString.FormatoNumero(2)
- HfTotalCompra.Value = TxtTotal.Text
+ HfTotalCompra.Value = TxtTotal.Text
- TipoCambio = dr("TipoCambio").ToString.ToDecimal
- TipoCambioOriginal = dr("TipoCambioOriginal").ToString.ToDecimal
- If TipoCambio > 1 Then LblTC.Text = String.Format("TC: {0}", TipoCambio.ToString("N4"))
- If TipoCambio <> TipoCambioOriginal Then LblTCO.Text = String.Format("
TC Original: {0}", TipoCambioOriginal.ToString("N4"))
+ TipoCambio = dr("TipoCambio").ToString.ToDecimal
+ TipoCambioOriginal = dr("TipoCambioOriginal").ToString.ToDecimal
+ If TipoCambio > 1 Then LblTC.Text = String.Format("TC: {0}", TipoCambio.ToString("N4"))
+ If TipoCambio <> TipoCambioOriginal Then LblTCO.Text = String.Format("
TC Original: {0}", TipoCambioOriginal.ToString("N4"))
- AsignaValoresOriginales(TxtSubTotal.Text.ToDecimal, TxtSubTotal2.Text.ToDecimal, TxtIVA.Text.ToDouble, TxtRetIVA.Text.ToDouble, TxtRetISR.Text.ToDouble, TxtTotal.Text.ToDecimal)
- CalculaTotalPorDevengar()
- TxtDocumentoImporteFE.Text = dr("Total").ToString
- RVDocumentoImporte.MaximumValue = dr("Total").ToString.FormatoNumero(2)
- RVDocumentoImporteFE.MaximumValue = RVDocumentoImporte.MaximumValue
- RVDocumentoImporteCaja.MaximumValue = RVDocumentoImporte.MaximumValue
+ AsignaValoresOriginales(TxtSubTotal.Text.ToDecimal, TxtSubTotal2.Text.ToDecimal, TxtIVA.Text.ToDouble, TxtRetIVA.Text.ToDouble, TxtRetISR.Text.ToDouble, TxtTotal.Text.ToDecimal)
+ CalculaTotalPorDevengar()
+ TxtDocumentoImporteFE.Text = dr("Total").ToString
+ RVDocumentoImporte.MaximumValue = dr("Total").ToString.FormatoNumero(2)
+ RVDocumentoImporteFE.MaximumValue = RVDocumentoImporte.MaximumValue
+ RVDocumentoImporteCaja.MaximumValue = RVDocumentoImporte.MaximumValue
- HFDiferenciaCompra.Value = TxtTotal.Text
+ HFDiferenciaCompra.Value = TxtTotal.Text
- TotalGeneral = dr("Total").ToString.ToDouble
- CveMoneda = dr("CveMoneda").ToString.ToEntero
- DdlValidadaSAT.SelectedValue = "Si"
- TxtObsFact.Text = dr("Observaciones").ToString
- LblUsuarioCaptura.Text = dr("Usuario").ToString
- LitFechCaptura.Text = dr("FechaIng").ToString.ToDate.ToShortDateString
- LitFechCaptura.ToolTip = dr("FechaIng").ToString
- LblRetIVA.Text = If(dr("RetIVA").ToString.ToDecimal > 0, TmpDT.MAX("RetIVAPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionIVA / SubTotal2), 0) * 100).FormatoNumero(3) + "%"
- LblRetISR.Text = If(dr("RetISR").ToString.ToDecimal > 0, TmpDT.MAX("RetISRPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionISR / SubTotal2), 0) * 100).FormatoNumero(3)
- If dr("TipoFactura").ToString <> "CFDi" Then LblTipoFact.Text = dr("TipoFactura").ToString : divTipoFactura.Visible = True
- ViewState("CveFactura") = dr("CveFactura").ToString.ToEntero
- ViewState("IdPoliza") = dr("IdPoliza").ToString.ToEntero
+ TotalGeneral = dr("Total").ToString.ToDouble
+ CveMoneda = dr("CveMoneda").ToString.ToEntero
+ DdlValidadaSAT.SelectedValue = "Si"
+ TxtObsFact.Text = dr("Observaciones").ToString
+ LblUsuarioCaptura.Text = dr("Usuario").ToString
+ LitFechCaptura.Text = dr("FechaIng").ToString.ToDate.ToShortDateString
+ LitFechCaptura.ToolTip = dr("FechaIng").ToString
+ LblRetIVA.Text = If(dr("RetIVA").ToString.ToDecimal > 0, TmpDT.MAX("RetIVAPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionIVA / SubTotal2), 0) * 100).FormatoNumero(3) + "%"
+ LblRetISR.Text = If(dr("RetISR").ToString.ToDecimal > 0, TmpDT.MAX("RetISRPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionISR / SubTotal2), 0) * 100).FormatoNumero(3)
+ If dr("TipoFactura").ToString <> "CFDi" Then LblTipoFact.Text = dr("TipoFactura").ToString : divTipoFactura.Visible = True
+ ViewState("CveFactura") = dr("CveFactura").ToString.ToEntero
+ ViewState("IdPoliza") = dr("IdPoliza").ToString.ToEntero
- DdlMoneda.SelectedValue = dr("CveMoneda").ToString
- 'primero se asigna la moneda, para que dentro del proveedor carge los anticipos solo de esa moneda
- DdlProveedor.Visible = False
- HplProveedor.Visible = True
- If dr("CveRetIVAConcepto").ToString.Contiene("2", "3") Then RetIVAFlete = True
- If dr("CveRetISRConcepto").ToString.Contiene("3") Then RetISRResico = True
- CargaProveedor(CveProveedor, "-1")
+ DdlMoneda.SelectedValue = dr("CveMoneda").ToString
+ 'primero se asigna la moneda, para que dentro del proveedor carge los anticipos solo de esa moneda
+ DdlProveedor.Visible = False
+ HplProveedor.Visible = True
+ If dr("CveRetIVAConcepto").ToString.Contiene("2", "3") Then RetIVAFlete = True
+ If dr("CveRetISRConcepto").ToString.Contiene("3") Then RetISRResico = True
+ CargaProveedor(CveProveedor, "-1")
- DdlRetIVAConcepto.SelectedValueExist(dr("CveRetIVAConcepto").ToString)
+ DdlRetIVAConcepto.SelectedValueExist(dr("CveRetIVAConcepto").ToString)
- DdlRetISRConcepto.SelectedValueExist(dr("CveRetISRConcepto").ToString)
- CveRetIVAConceptoOriginal = If(dr("CveRetIVAConcepto").ToString.ToEntero > 0, dr("CveRetIVAConcepto").ToString.ToEntero, -1)
- CveRetISRConceptoOriginal = If(dr("CveRetISRConcepto").ToString.ToEntero > 0, dr("CveRetISRConcepto").ToString.ToEntero, -1)
+ DdlRetISRConcepto.SelectedValueExist(dr("CveRetISRConcepto").ToString)
+ CveRetIVAConceptoOriginal = If(dr("CveRetIVAConcepto").ToString.ToEntero > 0, dr("CveRetIVAConcepto").ToString.ToEntero, -1)
+ CveRetISRConceptoOriginal = If(dr("CveRetISRConcepto").ToString.ToEntero > 0, dr("CveRetISRConcepto").ToString.ToEntero, -1)
- If dr("CveTipoConcepto").ToString.ToEntero = 1 Then LblProveedor.Text = "Proveedor:" Else LblProveedor.Text = "Acreedor:"
- HdnCveEstatusFactura.Value = dr("CveEstatusFactura").ToString
- LblCompraEstatus.Text = dr("EstatusFactura").ToString
- If dr("CveEstatusFactura").ToString = "2" Then ChkProgramarPago.Checked = True
+ If dr("CveTipoConcepto").ToString.ToEntero = 1 Then LblProveedor.Text = "Proveedor:" Else LblProveedor.Text = "Acreedor:"
+ HdnCveEstatusFactura.Value = dr("CveEstatusFactura").ToString
+ LblCompraEstatus.Text = dr("EstatusFactura").ToString
+ If dr("CveEstatusFactura").ToString = "2" Then ChkProgramarPago.Checked = True
- TrRembolsoUpdate.Visible = True
- TrRembolsoNumero.Visible = True
+ TrRembolsoUpdate.Visible = True
+ TrRembolsoNumero.Visible = True
- Dim DtPersonal As DataTable = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto")
- DdlRembolsoPersonal.DataSource = DtPersonal
- DdlRembolsoPersonal.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
- DdlRembolsoPersonal.DataBind()
- If dr("CvePersonal").ToString.ToEntero > 0 Then
- DdlRembolsoPersonal.SelectedValueExist(dr("CvePersonal").ToString)
- TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
- RblRembolso.SelectedValuesIfExist("1")
- TrRembolsoPersonal.Visible = True
- End If
+ Dim DtPersonal As DataTable = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto")
+ DdlRembolsoPersonal.DataSource = DtPersonal
+ DdlRembolsoPersonal.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
+ DdlRembolsoPersonal.DataBind()
+ If dr("CvePersonal").ToString.ToEntero > 0 Then
+ DdlRembolsoPersonal.SelectedValueExist(dr("CvePersonal").ToString)
+ TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
+ RblRembolso.SelectedValuesIfExist("1")
+ TrRembolsoPersonal.Visible = True
+ End If
- Dim DtCajaChica As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa)
- DtCajaChica = DtCajaChica.FiltraParametros(String.Format("CveTipoCuenta = 1"))
- DdlRembolsoCajaChica.DataSource = DtCajaChica
- DdlRembolsoCajaChica.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
- DdlRembolsoCajaChica.DataBind()
- If dr("CveCajaChica").ToString.ToEntero > 0 Then
- DdlRembolsoCajaChica.SelectedValueExist(dr("CveCajaChica").ToString)
- TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
- RblRembolso.SelectedValuesIfExist("2")
- TrRembolsoCajaChica.Visible = True
- End If
+ Dim DtCajaChica As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa)
+ DtCajaChica = DtCajaChica.FiltraParametros(String.Format("CveTipoCuenta = 1"))
+ DdlRembolsoCajaChica.DataSource = DtCajaChica
+ DdlRembolsoCajaChica.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
+ DdlRembolsoCajaChica.DataBind()
+ If dr("CveCajaChica").ToString.ToEntero > 0 Then
+ DdlRembolsoCajaChica.SelectedValueExist(dr("CveCajaChica").ToString)
+ TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
+ RblRembolso.SelectedValuesIfExist("2")
+ TrRembolsoCajaChica.Visible = True
+ End If
- If dr("CvePersonal").ToString.ToEntero > 0 Or dr("CveCajaChica").ToString.ToEntero > 0 Then
- NumeroReembolsoOriginal = dr("NumeroReembolso").ToString
- End If
+ If dr("CvePersonal").ToString.ToEntero > 0 Or dr("CveCajaChica").ToString.ToEntero > 0 Then
+ NumeroReembolsoOriginal = dr("NumeroReembolso").ToString
+ End If
- VisualizaEstatusCompraSaldo(dr("TipoDocto").ToString, dr("Saldo").ToString.ToDecimal, dr("Total").ToString.ToDecimal)
- If dr("IdPoliza").ToString.ToEntero > 0 Then
- HplCompraContabilizada.Text = "Si"
- If UsuarioActual.Empresa.TipoContabilidad = 2 Then HplCompraContabilizada.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
- LblCompraEstatus.ForeColor = Drawing.Color.Navy
- trContabilizada.Visible = True
- If UsuarioActual.TienePermisoProceso(107) Then BtnDescontabilizar.Visible = True
- Else
- BtnDescontabilizar.Visible = False
- HplCompraContabilizada.Text = "No"
- trContabilizada.Visible = True
- End If
-
- If UsuarioActual.Empresa.TipoContabilidad = 1 Then
- trContabilizada.Visible = False
- End If
-
- UPPDescontablizar.Update()
-
- TxtFechaPago.Text = dr("FechaVencimiento").ToString.ToDate.ToShortDateString
- RowBitacora.Visible = True
- CargaEventoBitacora()
- 'ImgAddObs.Attributes.Add("onclick", "javascript: PosicionaObjeto(this.id,'DivEventoBitacora',null,-250,-250); $('#DivEventoBitacora').show(1000); ")
- ImgAddObs.Visible = True
- ChkAplicaNotaCredito.Checked = CBool(dr("AplicaNotaCredito").ToString)
-
- 'CompraSaldo = TotalGeneral - LblAmortizacion.Text.ToDouble
- CompraSaldo = dr("Saldo").ToString.ToDouble
-
- If CompraSaldo > dr("Saldo").ToString.ToDouble Then
- CompraSaldo = dr("Saldo").ToString.ToDouble
- End If
- HdnCompraSaldo.Value = CompraSaldo.ToString
-
- If CompraSaldo > 0 And UsuarioActual.TienePermisoProceso(100) Then
- HLPagar.Visible = True
- HLPagar.NavigateUrl = $"/Bancos/PopIECompras.aspx?CveCompra={CveCompra}&TB_iframe=true&height=520&width=700"
- End If
-
- If dr("CveFactura").ToString.ToEntero > 0 Then
- ImgDownXML.Visible = True : ImgDownXML.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=xml&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
- ImgDownPDF.Visible = True : ImgDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=pdf&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
- Else
- LnkGenrarPDF.Visible = True
- End If
-
- TxtRembolsoNumero.Enabled = If(IdPoliza > 0, False, True)
-
- If dr("CveImportacion").ToString <> "" Then
- divCompraImportacion.Visible = True
- HplCompraImportacion.Text = dr("Importacion").ToString
- If dr("TipoImportacion").ToString = "2" Then 'flete/indirecto
- LtlImportacionTexto.Text = "Indirecto"
- HplCompraImportacion.NavigateUrl = $"/Inventarios/Fletes.aspx?CveFlete={dr("CveImportacion")}"
+ VisualizaEstatusCompraSaldo(dr("TipoDocto").ToString, dr("Saldo").ToString.ToDecimal, dr("Total").ToString.ToDecimal)
+ If dr("IdPoliza").ToString.ToEntero > 0 Then
+ HplCompraContabilizada.Text = "Si"
+ If UsuarioActual.Empresa.TipoContabilidad = 2 Then HplCompraContabilizada.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
+ LblCompraEstatus.ForeColor = Drawing.Color.Navy
+ trContabilizada.Visible = True
+ If UsuarioActual.TienePermisoProceso(107) Then BtnDescontabilizar.Visible = True
Else
- HplCompraImportacion.NavigateUrl = $"/Compras/Importaciones.aspx?CveImportacion={dr("CveImportacion")}"
- End If
- End If
-
- If dr("CveFolioGarantia").ToString <> "" Then
- divFolioGarantia.Visible = True
- DdlFolioGarantia.Items.Insert(0, New ListItem(dr("FolioGarantia").ToString, dr("CveFolioGarantia").ToString))
- DdlFolioGarantia.SelectedValue = dr("CveFolioGarantia").ToString
- End If
-
- 'CargaDetalle
- If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then
- TmpDT = ObjCompra.DtResultados
- TmpDTOriginal = ObjCompra.DtResultados.Copy
-
- TmpDT.Columns.Add("CveClasificacionActualizar", GetType(Integer))
- 'TmpDT.Columns.Add("CveEq", GetType(Integer))
- TmpDT.Columns.Add("CveAlmacen", GetType(Integer))
- 'TmpDT.Columns.Add("CvePersonal", GetType(Integer))
-
- TmpDT.Columns.Add("IdCuentaComprometido", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaPorEjercer", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaDevengado", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaMatriz", GetType(Integer))
-
- TmpDT.Columns.Add("PSDescripcion", GetType(String))
- TmpDT.Columns.Add("ProductoOC", GetType(String))
- TmpDT.Columns.Add("CantidadF", GetType(Double))
-
- 'Consignaciones
- TmpDT.Columns.Add("CveAlmacenConsignacion", GetType(Integer))
- TmpDT.Columns.Add("NoConsignacion", GetType(Integer))
- TmpDT.Columns.Add("CveConsignacion", GetType(Integer))
- TmpDT.Columns.Add("HdnPS", GetType(String))
- TmpDT.Columns.Add("HdnCvePS", GetType(String))
- TmpDT.Columns.Add("HdnClasificacion", GetType(String))
- TmpDT.Columns.Add("HdnCveClasificacion", GetType(String))
- TmpDT.Columns.Add("HdnCveAlmacen", GetType(String))
-
- 'INVENTARIO SERIE/LOTE
- TmpDT.Columns.Add("CveMetodoInventario", GetType(Integer))
-
- 'Fletes y Servicios
- 'TmpDT.Columns.Add("AplicaCostoIndirecto", GetType(Integer)) 'Ya traemos el estatus flete
- TmpDT.Columns.Add("CostoIndirectoAlmacen", GetType(Decimal))
- TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
-
- TmpDT.Columns.Add("CveContrato", GetType(Integer))
- TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
- If Not TmpDT.Columns.Contains("CveContratoDetalle") Then
- TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
- End If
- If Not TmpDT.Columns.Contains("CveCultivoCuadroDetalle") Then
- TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
+ BtnDescontabilizar.Visible = False
+ HplCompraContabilizada.Text = "No"
+ trContabilizada.Visible = True
End If
- If Not TmpDT.Columns.Contains("CveSATPSActualizado") Then
- TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
+ If UsuarioActual.Empresa.TipoContabilidad = 1 Then
+ trContabilizada.Visible = False
End If
- If Not TmpDT.Columns.Contains("ImporteSinImpuestos") Then
- TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Decimal))
+ UPPDescontablizar.Update()
+
+ TxtFechaPago.Text = dr("FechaVencimiento").ToString.ToDate.ToShortDateString
+ RowBitacora.Visible = True
+ CargaEventoBitacora()
+ 'ImgAddObs.Attributes.Add("onclick", "javascript: PosicionaObjeto(this.id,'DivEventoBitacora',null,-250,-250); $('#DivEventoBitacora').show(1000); ")
+ ImgAddObs.Visible = True
+ ChkAplicaNotaCredito.Checked = CBool(dr("AplicaNotaCredito").ToString)
+
+ 'CompraSaldo = TotalGeneral - LblAmortizacion.Text.ToDouble
+ CompraSaldo = dr("Saldo").ToString.ToDouble
+
+ If CompraSaldo > dr("Saldo").ToString.ToDouble Then
+ CompraSaldo = dr("Saldo").ToString.ToDouble
End If
- If Not TmpDT.Columns.Contains("AplicaLote") Then
- TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("AplicaCaducidad") Then
- TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ HdnCompraSaldo.Value = CompraSaldo.ToString
+
+ If CompraSaldo > 0 And UsuarioActual.TienePermisoProceso(100) Then
+ HLPagar.Visible = True
+ HLPagar.NavigateUrl = $"/Bancos/PopIECompras.aspx?CveCompra={CveCompra}&TB_iframe=true&height=520&width=700"
End If
- If Not TmpDT.Columns.Contains("Lote") Then
- TmpDT.Columns.Add("Lote", GetType(String))
- End If
- If Not TmpDT.Columns.Contains("FechaCaducidad") Then
- TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
+ If dr("CveFactura").ToString.ToEntero > 0 Then
+ ImgDownXML.Visible = True : ImgDownXML.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=xml&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
+ ImgDownPDF.Visible = True : ImgDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=pdf&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
+ Else
+ LnkGenrarPDF.Visible = True
End If
- GvPS.DataSource = TmpDT
- GvPS.DataBind()
+ TxtRembolsoNumero.Enabled = If(IdPoliza > 0, False, True)
- If UsuarioActual.Empresa.UsaAC Then
- CargaHidendsAC()
- End If
-
- CalculaTotales(True)
-
- 'If UsuarioActual.Empresa.UsaInventarios Then
- ' DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy
-
- ' If dr("Inventario").ToString = "1" Then
-
- ' CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero
-
- ' Dim Inv As New ClsInventarios
- ' If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
- ' 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento")))
- ' 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros)
-
- ' ImgImprimirAlmacen.Visible = True
- ' ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento"))
-
- ' Dim drt As DataRow
- ' 'actualizo el almacen
- ' For Each dri As DataRow In DtInv.Rows
-
- ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
- ' If drt IsNot Nothing Then
- ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie
- ' TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie
-
- ' dri("CveAlmacen") = drt("CveAlmacen")
-
- ' End If
-
- ' Next
-
- ' End If
-
- ' ''Proceso Super Tramposo de Charlie
- ' 'If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then
- ' ' Dim drt As DataRow
- ' ' For Each dri As DataRow In DtInv.Rows
- ' ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
- ' ' If drt IsNot Nothing Then
- ' ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0)
- ' ' TmpDr("CveAlmacen") = drt("CveAlmacen")
- ' ' End If
- ' ' Next
- ' 'End If
-
- ' Inv.Dispose()
-
- ' End If
-
- ' CargaGvInv()
-
- ' 'Ocultamos "Recibir Aqui"
- ' GvInv.Columns(6).Visible = False
- ' GvInv.Columns(7).Visible = False
-
- 'End If
- End If
-
- DdlTipoComprobante.Enabled = False
- If dr("TipoDocto").ToString = "RNC" Then
- DdlTipoComprobante.Items.Add(New ListItem("Remisión de Nota de Crédito", "RNC"))
- End If
-
- DdlTipoComprobante.SelectedValue = dr("TipoDocto").ToString
- If dr("TipoDocto").ToString.Contiene("Fac", "Ant") Then
- ChkAplicaNotaCredito.Enabled = True
- ImgAnticiposPendientes.Visible = True
- Else
- ImgAnticiposPendientes.Visible = False
- ChkAplicaNotaCredito.Enabled = False
- End If
- HlProveedor.HRef = ""
- TxtCodigo.ReadOnly = True
- 'IPP Usuario Sistema No Bloquea, se cambió al proceso
- If UsuarioActual.TienePermisoProceso(79) Then
- TxtCantidad.Enabled = True
- TxtPrecio.Enabled = True
- Else
- TxtCantidad.Enabled = False
- TxtPrecio.Enabled = False
- End If
-
- DdlPS.Enabled = False
- TxtObsPS.Enabled = False
- 'ImgAmort.Attributes.Clear()
- LbAgregar.Enabled = False
- TxtSerie.Enabled = False
- TxtFolio.Enabled = False
-
- TxtFecha.Enabled = False
- ImgFecha.Enabled = False
- CEFecha.Enabled = False
-
- If UsuarioActual.TienePermisoProceso(342) Then
- TxtFecha.Enabled = True
- ImgFecha.Enabled = True
- CEFecha.Enabled = True
- LnkActualziarFechadecompra.Visible = True
- End If
-
- DdlProveedor.Enabled = False
- DdlProveedorSucursal.Enabled = False
- DdlEstatus.Enabled = False
- DdlMoneda.Enabled = False
- DdlRetIVAConcepto.Enabled = False
- DdlRetISRConcepto.Enabled = False
- If UsuarioActual.TienePermisoProceso(79) Then
- BtnActualizar.Visible = True
- DdlProveedorSucursal.Enabled = True
- DdlPS.Enabled = True
- TxtObsPS.Enabled = True
- LbAgregar.Enabled = True
- LnkUpdateFechaPago.Visible = True
-
- If DdlRetIVAConcepto.SelectedValue.ToEntero > 0 Then
- DdlRetIVAConcepto.Enabled = True
- End If
-
- If DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then
- DdlRetISRConcepto.Enabled = True
- End If
- End If
-
- BtnGuardar.Visible = False
- BtnGuardar.Enabled = False
- UpPSS.Update()
-
- 'GvLeyendasFiscales.Enabled = False
- TxtSubTotal.ReadOnly = True
- TxtIVA.ReadOnly = True
- TxtRetIVA.ReadOnly = True
- TxtRetISR.ReadOnly = True
- TxtIEPS.ReadOnly = True
- TxtOtrosImpuestos.ReadOnly = True
- TxtTotal.ReadOnly = True
-
- 'CargaLeyendasFiscales
- ViewState("CompraFolio") = TxtFolio.Text.Trim
-
- Dim dtnc As DataTable = Nothing
- If dr("TipoDocto").ToString = "Fac" Then
- 'carga as notas de credito vinculadas
- If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
- dtnc = ObjCompra.DtResultados
- End If
- ElseIf dr("TipoDocto").ToString.Contiene("NC", "DEV", "Ant") Then
- If dr("TipoDocto").ToString = "NC" Then
- DivReembolso.Visible = False
- RBLPago.Items(2).Enabled = False
- End If
- If ObjCompra.GetComprasNotasCredito(-1, CveCompra) Then
- dtnc = ObjCompra.DtResultados
- LtlGvAnticiposSel.Text = ""
- End If
- End If
-
- 'VINCULACIÓN OC - NUEVA DICIEMBRE 2015
- If dr("OCVinculada").ToString() <> "" Then
-
- Dim OCS As String = "", CveOCS As String = ""
- Dim DtOCs As New DataTable
- DtOCs.Columns.Add("SerieFolioOC", GetType(String))
- DtOCs.Columns.Add("CveOrdenCompra", GetType(Integer))
- DtOCs.Columns.Add("Fecha", GetType(Date))
- DtOCs.Columns.Add("Descripcion", GetType(String))
- For Each drt As DataRow In TmpDT.FiltraParametros("", "", {"SerieFolioOC", "CveOrdenCompra"}).Rows
- If drt("SerieFolioOC").ToString <> "" Then
- Dim DrOC As DataRow = DtOCs.NewRow
- DrOC("SerieFolioOC") = drt("SerieFolioOC").ToString
- DrOC("CveOrdenCompra") = drt("CveOrdenCompra").ToString
- DtOCs.Rows.Add(DrOC)
+ If dr("CveImportacion").ToString <> "" Then
+ divCompraImportacion.Visible = True
+ HplCompraImportacion.Text = dr("Importacion").ToString
+ If dr("TipoImportacion").ToString = "2" Then 'flete/indirecto
+ LtlImportacionTexto.Text = "Indirecto"
+ HplCompraImportacion.NavigateUrl = $"/Inventarios/Fletes.aspx?CveFlete={dr("CveImportacion")}"
+ Else
+ HplCompraImportacion.NavigateUrl = $"/Compras/Importaciones.aspx?CveImportacion={dr("CveImportacion")}"
End If
- Next
+ End If
- If DtOCs.Rows.Count > 0 Then
- For Each drt As DataRow In DtOCs.Rows
- OCS += If(OCS <> "", String.Format(",{0}", drt("SerieFolioOC").ToString), drt("SerieFolioOC").ToString)
- CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
- 'If ObjOC.GetOrdenesCompraRep("OC", -1, -1, -1, -1, MinFecha, MaxFecha, drt("CveOrdenCompra").ToString.ToEntero, CveProveedor, -1, -1, -1, UsuarioActual.CveEmpresa, -1) Then
- ' If ObjOC.DtResultados.Rows.Count = 1 Then
- ' OCS += If(OCS <> "", String.Format(",{0}", drt("FolioOC").ToString), drt("FolioOC").ToString)
- ' CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
- ' drt("Fecha") = ObjOC.DtResultados.FiltroPrimeroValor("FechaIng")
- ' drt("Descripcion") = ObjOC.DtResultados.FiltroPrimeroValor("Descripcion")
- ' End If
- 'End If
+ If dr("CveFolioGarantia").ToString <> "" Then
+ divFolioGarantia.Visible = True
+ DdlFolioGarantia.Items.Insert(0, New ListItem(dr("FolioGarantia").ToString, dr("CveFolioGarantia").ToString))
+ DdlFolioGarantia.SelectedValue = dr("CveFolioGarantia").ToString
+ End If
+
+ 'CargaDetalle
+ If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then
+ TmpDT = ObjCompra.DtResultados
+ TmpDTOriginal = ObjCompra.DtResultados.Copy
+
+ TmpDT.Columns.Add("CveClasificacionActualizar", GetType(Integer))
+ 'TmpDT.Columns.Add("CveEq", GetType(Integer))
+ TmpDT.Columns.Add("CveAlmacen", GetType(Integer))
+ 'TmpDT.Columns.Add("CvePersonal", GetType(Integer))
+
+ TmpDT.Columns.Add("IdCuentaComprometido", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaPorEjercer", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaDevengado", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaMatriz", GetType(Integer))
+
+ TmpDT.Columns.Add("PSDescripcion", GetType(String))
+ TmpDT.Columns.Add("ProductoOC", GetType(String))
+ TmpDT.Columns.Add("CantidadF", GetType(Double))
+
+ 'Consignaciones
+ TmpDT.Columns.Add("CveAlmacenConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("NoConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("CveConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("HdnPS", GetType(String))
+ TmpDT.Columns.Add("HdnCvePS", GetType(String))
+ TmpDT.Columns.Add("HdnClasificacion", GetType(String))
+ TmpDT.Columns.Add("HdnCveClasificacion", GetType(String))
+ TmpDT.Columns.Add("HdnCveAlmacen", GetType(String))
+
+ 'INVENTARIO SERIE/LOTE
+ TmpDT.Columns.Add("CveMetodoInventario", GetType(Integer))
+
+ 'Fletes y Servicios
+ 'TmpDT.Columns.Add("AplicaCostoIndirecto", GetType(Integer)) 'Ya traemos el estatus flete
+ TmpDT.Columns.Add("CostoIndirectoAlmacen", GetType(Decimal))
+ TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
+
+ TmpDT.Columns.Add("CveContrato", GetType(Integer))
+ TmpDT.Columns.Add("DifPSSat", GetType(Integer))
+
+ If Not TmpDT.Columns.Contains("CveContratoDetalle") Then
+ TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
+ End If
+ If Not TmpDT.Columns.Contains("CveCultivoCuadroDetalle") Then
+ TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
+ End If
+
+ If Not TmpDT.Columns.Contains("CveSATPSActualizado") Then
+ TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
+ End If
+
+ If Not TmpDT.Columns.Contains("ImporteSinImpuestos") Then
+ TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Decimal))
+ End If
+ If Not TmpDT.Columns.Contains("AplicaLote") Then
+ TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
+ End If
+ If Not TmpDT.Columns.Contains("AplicaCaducidad") Then
+ TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ End If
+
+ If Not TmpDT.Columns.Contains("Lote") Then
+ TmpDT.Columns.Add("Lote", GetType(String))
+ End If
+ If Not TmpDT.Columns.Contains("FechaCaducidad") Then
+ TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
+ End If
+
+ GvPS.DataSource = TmpDT
+ GvPS.DataBind()
+
+ If UsuarioActual.Empresa.UsaAC Then
+ CargaHidendsAC()
+ End If
+
+ CalculaTotales(True)
+
+ 'If UsuarioActual.Empresa.UsaInventarios Then
+ ' DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy
+
+ ' If dr("Inventario").ToString = "1" Then
+
+ ' CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero
+
+ ' Dim Inv As New ClsInventarios
+ ' If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
+ ' 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento")))
+ ' 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros)
+
+ ' ImgImprimirAlmacen.Visible = True
+ ' ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento"))
+
+ ' Dim drt As DataRow
+ ' 'actualizo el almacen
+ ' For Each dri As DataRow In DtInv.Rows
+
+ ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
+ ' If drt IsNot Nothing Then
+ ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie
+ ' TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie
+
+ ' dri("CveAlmacen") = drt("CveAlmacen")
+
+ ' End If
+
+ ' Next
+
+ ' End If
+
+ ' ''Proceso Super Tramposo de Charlie
+ ' 'If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then
+ ' ' Dim drt As DataRow
+ ' ' For Each dri As DataRow In DtInv.Rows
+ ' ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
+ ' ' If drt IsNot Nothing Then
+ ' ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0)
+ ' ' TmpDr("CveAlmacen") = drt("CveAlmacen")
+ ' ' End If
+ ' ' Next
+ ' 'End If
+
+ ' Inv.Dispose()
+
+ ' End If
+
+ ' CargaGvInv()
+
+ ' 'Ocultamos "Recibir Aqui"
+ ' GvInv.Columns(6).Visible = False
+ ' GvInv.Columns(7).Visible = False
+
+ 'End If
+ End If
+
+ DdlTipoComprobante.Enabled = False
+ If dr("TipoDocto").ToString = "RNC" Then
+ DdlTipoComprobante.Items.Add(New ListItem("Remisión de Nota de Crédito", "RNC"))
+ End If
+
+ DdlTipoComprobante.SelectedValue = dr("TipoDocto").ToString
+ If dr("TipoDocto").ToString.Contiene("Fac", "Ant") Then
+ ChkAplicaNotaCredito.Enabled = True
+ ImgAnticiposPendientes.Visible = True
+ Else
+ ImgAnticiposPendientes.Visible = False
+ ChkAplicaNotaCredito.Enabled = False
+ End If
+ HlProveedor.HRef = ""
+ TxtCodigo.ReadOnly = True
+ 'IPP Usuario Sistema No Bloquea, se cambió al proceso
+ If UsuarioActual.TienePermisoProceso(79) Then
+ TxtCantidad.Enabled = True
+ TxtPrecio.Enabled = True
+ Else
+ TxtCantidad.Enabled = False
+ TxtPrecio.Enabled = False
+ End If
+
+ DdlPS.Enabled = False
+ TxtObsPS.Enabled = False
+ 'ImgAmort.Attributes.Clear()
+ LbAgregar.Enabled = False
+ TxtSerie.Enabled = False
+ TxtFolio.Enabled = False
+
+ TxtFecha.Enabled = False
+ ImgFecha.Enabled = False
+ CEFecha.Enabled = False
+
+ If UsuarioActual.TienePermisoProceso(342) Then
+ TxtFecha.Enabled = True
+ ImgFecha.Enabled = True
+ CEFecha.Enabled = True
+ LnkActualziarFechadecompra.Visible = True
+ End If
+
+ DdlProveedor.Enabled = False
+ DdlProveedorSucursal.Enabled = False
+ DdlEstatus.Enabled = False
+ DdlMoneda.Enabled = False
+ DdlRetIVAConcepto.Enabled = False
+ DdlRetISRConcepto.Enabled = False
+ If UsuarioActual.TienePermisoProceso(79) Then
+ BtnActualizar.Visible = True
+ DdlProveedorSucursal.Enabled = True
+ DdlPS.Enabled = True
+ TxtObsPS.Enabled = True
+ LbAgregar.Enabled = True
+ LnkUpdateFechaPago.Visible = True
+
+ If DdlRetIVAConcepto.SelectedValue.ToEntero > 0 Then
+ DdlRetIVAConcepto.Enabled = True
+ End If
+
+ If DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then
+ DdlRetISRConcepto.Enabled = True
+ End If
+ End If
+
+ BtnGuardar.Visible = False
+ BtnGuardar.Enabled = False
+ UpPSS.Update()
+
+ 'GvLeyendasFiscales.Enabled = False
+ TxtSubTotal.ReadOnly = True
+ TxtIVA.ReadOnly = True
+ TxtRetIVA.ReadOnly = True
+ TxtRetISR.ReadOnly = True
+ TxtIEPS.ReadOnly = True
+ TxtOtrosImpuestos.ReadOnly = True
+ TxtTotal.ReadOnly = True
+
+ 'CargaLeyendasFiscales
+ ViewState("CompraFolio") = TxtFolio.Text.Trim
+
+ Dim dtnc As DataTable = Nothing
+ If dr("TipoDocto").ToString = "Fac" Then
+ 'carga as notas de credito vinculadas
+ If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
+ dtnc = ObjCompra.DtResultados
+ End If
+ ElseIf dr("TipoDocto").ToString.Contiene("NC", "DEV", "Ant") Then
+ If dr("TipoDocto").ToString = "NC" Then
+ DivReembolso.Visible = False
+ RBLPago.Items(2).Enabled = False
+ End If
+ If ObjCompra.GetComprasNotasCredito(-1, CveCompra) Then
+ dtnc = ObjCompra.DtResultados
+ LtlGvAnticiposSel.Text = ""
+ End If
+ End If
+
+ 'VINCULACIÓN OC - NUEVA DICIEMBRE 2015
+ If dr("OCVinculada").ToString() <> "" Then
+
+ Dim OCS As String = "", CveOCS As String = ""
+ Dim DtOCs As New DataTable
+ DtOCs.Columns.Add("SerieFolioOC", GetType(String))
+ DtOCs.Columns.Add("CveOrdenCompra", GetType(Integer))
+ DtOCs.Columns.Add("Fecha", GetType(Date))
+ DtOCs.Columns.Add("Descripcion", GetType(String))
+ For Each drt As DataRow In TmpDT.FiltraParametros("", "", {"SerieFolioOC", "CveOrdenCompra"}).Rows
+ If drt("SerieFolioOC").ToString <> "" Then
+ Dim DrOC As DataRow = DtOCs.NewRow
+ DrOC("SerieFolioOC") = drt("SerieFolioOC").ToString
+ DrOC("CveOrdenCompra") = drt("CveOrdenCompra").ToString
+ DtOCs.Rows.Add(DrOC)
+ End If
Next
+
+ If DtOCs.Rows.Count > 0 Then
+ For Each drt As DataRow In DtOCs.Rows
+ OCS += If(OCS <> "", String.Format(",{0}", drt("SerieFolioOC").ToString), drt("SerieFolioOC").ToString)
+ CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
+ 'If ObjOC.GetOrdenesCompraRep("OC", -1, -1, -1, -1, MinFecha, MaxFecha, drt("CveOrdenCompra").ToString.ToEntero, CveProveedor, -1, -1, -1, UsuarioActual.CveEmpresa, -1) Then
+ ' If ObjOC.DtResultados.Rows.Count = 1 Then
+ ' OCS += If(OCS <> "", String.Format(",{0}", drt("FolioOC").ToString), drt("FolioOC").ToString)
+ ' CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
+ ' drt("Fecha") = ObjOC.DtResultados.FiltroPrimeroValor("FechaIng")
+ ' drt("Descripcion") = ObjOC.DtResultados.FiltroPrimeroValor("Descripcion")
+ ' End If
+ 'End If
+ Next
+ End If
+
+ TxtOC.Text = OCS
+ TieneOC = True
+
+ If DtOCs.Rows.Count > 1 Then
+ HLOCsVinculadas.Visible = True
+ GvOCsVinculadas.DataSource = DtOCs
+ GvOCsVinculadas.DataBind()
+ UpOCsVinculadas.Update()
+ ElseIf DtOCs.Rows.Count = 1 Then
+ HLOCsVinculadas.Visible = True
+ HLOCsVinculadas.Attributes.Remove("data-toggle")
+ HLOCsVinculadas.Attributes.Remove("data-target")
+ HLOCsVinculadas.Attributes.Add("data-toggle", "tooltip")
+ HLOCsVinculadas.NavigateUrl = $"/OC/OC.aspx?OC={DtOCs.FiltroPrimeroValor("CveOrdenCompra")}"
+ HLOCsVinculadas.Target = "_blank"
+ End If
+
+
End If
- TxtOC.Text = OCS
- TieneOC = True
+ 'BLOQUEA OC
+ TxtOC.Enabled = False
+ ImgBtnBuscarOC.Visible = False
+ Tab.ActiveTabIndex = 0
- If DtOCs.Rows.Count > 1 Then
- HLOCsVinculadas.Visible = True
- GvOCsVinculadas.DataSource = DtOCs
- GvOCsVinculadas.DataBind()
- UpOCsVinculadas.Update()
- ElseIf DtOCs.Rows.Count = 1 Then
- HLOCsVinculadas.Visible = True
- HLOCsVinculadas.Attributes.Remove("data-toggle")
- HLOCsVinculadas.Attributes.Remove("data-target")
- HLOCsVinculadas.Attributes.Add("data-toggle", "tooltip")
- HLOCsVinculadas.NavigateUrl = $"/OC/OC.aspx?OC={DtOCs.FiltroPrimeroValor("CveOrdenCompra")}"
- HLOCsVinculadas.Target = "_blank"
+ GvAnticiposSel.DataSource = dtnc
+ GvAnticiposSel.DataBind()
+
+ If dtnc IsNot Nothing AndAlso dtnc.Rows.Count > 0 Then
+ LtlGvAnticiposSel.Visible = True
End If
+ '' VALIDA ELIMINAR COMPRA, QUE NO TENGA PAGOS CONCILIADOS
+ If (UsuarioActual.TienePermisoProceso(77) OrElse UsuarioActual.TienePermisoProceso(135)) AndAlso dr("NumPagosConciliados").ToString.ToEntero = 0 Then ' Eliminar compra
- End If
+ 'SIN VINCULACIÓN
+ If UsuarioActual.TienePermisoProceso(135) Then
+ If TxtOC.Text = "" AndAlso IdPoliza < 1 AndAlso CveMovimientoAlmacen < 1 AndAlso LblUsuarioCaptura.Text = UsuarioActual.Usuario AndAlso TmpDT.MAX("CveActivoFijo").ToEntero < 1 AndAlso Not ChkProgramarPago.Checked AndAlso CompraSaldo = TxtTotal.Text.ToDouble Then
+ BtnEliminarCompra.Visible = True
+ End If
+ End If
- 'BLOQUEA OC
- TxtOC.Enabled = False
- ImgBtnBuscarOC.Visible = False
- Tab.ActiveTabIndex = 0
-
- GvAnticiposSel.DataSource = dtnc
- GvAnticiposSel.DataBind()
-
- If dtnc IsNot Nothing AndAlso dtnc.Rows.Count > 0 Then
- LtlGvAnticiposSel.Visible = True
- End If
-
- '' VALIDA ELIMINAR COMPRA, QUE NO TENGA PAGOS CONCILIADOS
- If (UsuarioActual.TienePermisoProceso(77) OrElse UsuarioActual.TienePermisoProceso(135)) AndAlso dr("NumPagosConciliados").ToString.ToEntero = 0 Then ' Eliminar compra
-
- 'SIN VINCULACIÓN
- If UsuarioActual.TienePermisoProceso(135) Then
- If TxtOC.Text = "" AndAlso IdPoliza < 1 AndAlso CveMovimientoAlmacen < 1 AndAlso LblUsuarioCaptura.Text = UsuarioActual.Usuario AndAlso TmpDT.MAX("CveActivoFijo").ToEntero < 1 AndAlso Not ChkProgramarPago.Checked AndAlso CompraSaldo = TxtTotal.Text.ToDouble Then
+ 'ELIMINAR A FUERZAS
+ If UsuarioActual.TienePermisoProceso(77) Then
BtnEliminarCompra.Visible = True
+ If CompraSaldo <> TxtTotal.Text.ToDouble AndAlso dr("TipoDocto").ToString = "Fac" Then
+ BtnEliminarCompra.Enabled = False
+ BtnEliminarCompra.ToolTip = "La compra tiene pagos asociados, elimine los pagos primero."
+ End If
+ End If
+
+ Dim StrInventario As String = ""
+ If dr("Inventario").ToString = "1" Then
+ StrInventario = "los Movimientos de Inventario relacionados"
+ End If
+
+ If UsuarioActual.Empresa.UsaAC Then
+ BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra, {0} y la Poliza Asociada?", StrInventario))
+ ElseIf BtnEliminarCompra.Enabled Then
+ BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra y {0}?", StrInventario))
End If
End If
- 'ELIMINAR A FUERZAS
- If UsuarioActual.TienePermisoProceso(77) Then
- BtnEliminarCompra.Visible = True
- If CompraSaldo <> TxtTotal.Text.ToDouble AndAlso dr("TipoDocto").ToString = "Fac" Then
- BtnEliminarCompra.Enabled = False
- BtnEliminarCompra.ToolTip = "La compra tiene pagos asociados, elimine los pagos primero."
+ 'VALIDA CANCELAR COMPRA - AC
+ ValidaCancelarCompra()
+
+ 'CUANDO ESTA CANCELADA
+ If dr("CveEstatusFactura").ToString = "-2" Then
+ BtnEliminarCompra.Visible = False
+ BtnActualizar.Visible = False
+ BtnGuardar.Visible = False
+ BtnCancelarCompra.Visible = False
+
+ LblCompraEstatus.Text = "CANCELADA"
+ LblCompraEstatus.Font.Bold = True
+ LblCompraEstatus.Font.Size = 12
+ LblCompraEstatus.ForeColor = Drawing.Color.DarkRed
+ 'HplIr.Visible = False
+
+ BtnDescontabilizar.Visible = False
+ BtnEliminarPolizaMultiple.Visible = False
+
+ 'LIGA POLIZA CANCELACIÓN
+ 'HplPolizaCancelación.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
+
+ End If
+
+ 'CUANDO FUE REFACTURADA
+ If dr("CompraRefacturada").ToString.ToEntero > 0 Then
+ BtnEliminarCompra.Visible = False
+ BtnActualizar.Visible = False
+ BtnGuardar.Visible = False
+ BtnCancelarCompra.Visible = False
+ End If
+
+ 'TIENE AMORTIZACIÓN
+ If GvAnticiposSel.Rows.Count > 0 Then
+
+ If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
+ BtnCancelarCompra.Visible = False
+ BtnEliminarCompra.Visible = False
End If
End If
- Dim StrInventario As String = ""
- If dr("Inventario").ToString = "1" Then
- StrInventario = "los Movimientos de Inventario relacionados"
+ 'Tiene Importacion
+
+ If dr("EsImportacion").ToString = "True" Then
+ chkImportacion.Checked = True
+ Else
+ chkImportacion.Checked = False
+ End If
+ CargaComplementosPago()
+ CargaGvBitacora()
+ InventarioMov()
+ HabilitaNCInv()
+
+ If Request("RG") IsNot Nothing Then
+ BtnRegenerarPrePolizaAlmacen_Click(Nothing, Nothing)
End If
- If UsuarioActual.Empresa.UsaAC Then
- BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra, {0} y la Poliza Asociada?", StrInventario))
- ElseIf BtnEliminarCompra.Enabled Then
- BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra y {0}?", StrInventario))
- End If
- End If
-
- 'VALIDA CANCELAR COMPRA - AC
- ValidaCancelarCompra()
-
- 'CUANDO ESTA CANCELADA
- If dr("CveEstatusFactura").ToString = "-2" Then
- BtnEliminarCompra.Visible = False
- BtnActualizar.Visible = False
- BtnGuardar.Visible = False
- BtnCancelarCompra.Visible = False
-
- LblCompraEstatus.Text = "CANCELADA"
- LblCompraEstatus.Font.Bold = True
- LblCompraEstatus.Font.Size = 12
- LblCompraEstatus.ForeColor = Drawing.Color.DarkRed
- 'HplIr.Visible = False
-
- BtnDescontabilizar.Visible = False
- BtnEliminarPolizaMultiple.Visible = False
-
- 'LIGA POLIZA CANCELACIÓN
- 'HplPolizaCancelación.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
-
- End If
-
- 'CUANDO FUE REFACTURADA
- If dr("CompraRefacturada").ToString.ToEntero > 0 Then
- BtnEliminarCompra.Visible = False
- BtnActualizar.Visible = False
- BtnGuardar.Visible = False
- BtnCancelarCompra.Visible = False
- End If
-
- 'TIENE AMORTIZACIÓN
- If GvAnticiposSel.Rows.Count > 0 Then
-
- If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
+ If DdlTipoComprobante.SelectedValue = "RNC" And CompraSaldo <> TxtTotal.Text.ToDecimal Then
BtnCancelarCompra.Visible = False
BtnEliminarCompra.Visible = False
End If
- End If
- 'Tiene Importacion
-
- If dr("EsImportacion").ToString = "True" Then
- chkImportacion.Checked = True
- Else
- chkImportacion.Checked = False
- End If
- CargaComplementosPago()
- CargaGvBitacora()
- InventarioMov()
- HabilitaNCInv()
-
- If Request("RG") IsNot Nothing Then
- BtnRegenerarPrePolizaAlmacen_Click(Nothing, Nothing)
- End If
-
- If DdlTipoComprobante.SelectedValue = "RNC" And CompraSaldo <> TxtTotal.Text.ToDecimal Then
- BtnCancelarCompra.Visible = False
- BtnEliminarCompra.Visible = False
- End If
-
- If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
- If ObjCompra.GetGastoMedicos(CveCompra) Then
- DTMedicos = ObjCompra.DtResultados
- GvMedicosGastos.DataSource = ObjCompra.DtResultados
- GvMedicosGastos.DataBind()
+ If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
+ If ObjCompra.GetGastoMedicos(CveCompra) Then
+ DTMedicos = ObjCompra.DtResultados
+ GvMedicosGastos.DataSource = ObjCompra.DtResultados
+ GvMedicosGastos.DataBind()
+ End If
End If
- End If
- Else
- Alert("La compra solicitada no se encontró. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
+ Else
+ Alert("La compra solicitada no se encontró. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
End If
Else
Alert("Ocurrió un error al cargar la compra. Por favor vuelta a intentar o comuniquese con Sistemas.", TipoMensaje.MsgError)
@@ -5559,12 +5569,15 @@ Partial Class Compras_Compras
Dim TmpDr As DataRow = TmpDT.Select($"Consec = {Row("Consec").ToString}")(0)
TmpDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
- ' Si no es un movimiento de almacen va a tronar
- Try
- Dim InvDr As DataRow = DtInv.Select($"Consec = {Row("Consec").ToString}")(0)
- InvDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
- Catch ex As Exception
- End Try
+ Dim drs As DataRow() = DtInv.Select($"Consec = {Row("Consec").ToString}")
+ If drs.Count > 0 Then drs(0)("CveCompraDetalle") = ObjCompras.CveCompraDetalle
+
+ '' Si no es un movimiento de almacen va a tronar
+ 'Try
+ ' Dim InvDr As DataRow = DtInv.Select($"Consec = {Row("Consec").ToString}")(0)
+ ' InvDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
+ 'Catch ex As Exception
+ 'End Try
End If
@@ -6540,7 +6553,6 @@ Partial Class Compras_Compras
End If
AlmacenSoloExistencia = True
End If
-
Dr.AcceptChanges()
Next
End If
@@ -6583,7 +6595,6 @@ Partial Class Compras_Compras
Dim CvePrePoliza2Almacen As Integer = ObjConta.AddPrePolizas("Compras/Registrar/Almacen", If(EsContado And CvePlantillaPrePoliza = 1, 2, CvePlantillaPrePoliza), ImporteCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, NowADS(), ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
If CvePrePoliza2Almacen > 0 Then
-
Dim ImpPrepoliza As Decimal = 0D
Dim ImpPrepolizaMN As Decimal = 0D
@@ -6604,16 +6615,13 @@ Partial Class Compras_Compras
Else
ErrorPrepoliza = True
End If
-
Else
'SI ES GASTO CON ALMACEN NO DEBE CONTABILIZAR CONCEPTO 68
If CveMovimientoInventario > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN.RoundSQL(2), importeMN.RoundSQL(2), 68, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=ContabilizableAlmacen) Then
ErrorPrepoliza = True
End If
-
End If
-
'SI ES GASTO CON ALMACEN REGISTRA EL CONCEPTO 95
If DdlTipoCompra.SelectedValue = "10" Or EntradaComoGastoConAlmacen Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMN.RoundSQL(2), importeMN.RoundSQL(2), 95, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=False) Then
@@ -6831,7 +6839,7 @@ Partial Class Compras_Compras
If RegistraConcepto225 Then
- importeMovimiento = TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 And ISNULL(AplicaCostoIndirecto,0) <> 1 And ISNULL(CveTipoPS,0) = 2").ToString.ToDecimal
+ importeMovimiento = TmpDT.SUM("Total") 'TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 And ISNULL(AplicaCostoIndirecto,0) <> 1 And ISNULL(CveTipoPS,0) = 2").ToString.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
'no es necesario, ya se está interpretandoe l usado como producto
@@ -6851,8 +6859,6 @@ Partial Class Compras_Compras
End If
Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}"
-
-
If importeMovimiento > 0 Or TxtTotal.Text.ToDecimal = 0 Then
RegistroCuentaPuente = True
Dim ImporteTransito As Decimal = 0
@@ -6870,8 +6876,6 @@ Partial Class Compras_Compras
End If
End If
Next
-
-
Dim importeMNTemp As Decimal = 0
Dim CveCompraAmortizacion As Integer = -1
@@ -6902,7 +6906,6 @@ Partial Class Compras_Compras
End If
End If
-
'si se marca que no se va a recibir, falta validación
If Not ErrorMovInv AndAlso Not ObjCompras.UpdateEstatusAlmacen(CveCompra, 1, UsuarioActual.CveUsuario) Then
ErrorMovInv = True
@@ -6923,20 +6926,28 @@ Partial Class Compras_Compras
End If
End If
Else
-
-
Dim DiferenciaDevolucion As Decimal = If(DdlMoneda.SelectedValue.ToEntero <> 1, (importeMovimiento * TxtTC.Text.ToDecimal), importeMovimiento) - TotalRealDevolucion
If TotalRealDevolucion <> 0 Then
-
+ Dim tCveCompra As Integer = CveCompra
+ Dim tCveCompraAmortizacion As Integer = -1
If Math.Abs(DiferenciaDevolucion) > 0 Then
Dim tMovto As Boolean = False
+ Dim tConceptoDiferencia As Integer = 69
If UsuarioActual.CveEmpresa = 119 Then
tMovto = True
Else
DiferenciaDevolucion = -DiferenciaDevolucion
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tMovto, DiferenciaDevolucion, DiferenciaDevolucion, 69, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, DiferenciaDevolucion), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=tCveClasif) Then
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then ' las devoluciones, que tengan descuento por rnc, debe de descontar del saldo de la factura aplicada
+ tConceptoDiferencia = 272
+ tCveCompraAmortizacion = tCveCompra
+ If ObjConta.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa) Then
+ tCveCompra = ObjConta.DtResultados.FiltroPrimeroValor("CveCompraAmortizacion", "CveConceptoContable = 60").ToEntero 'a aplicación de la nc
+ End If
+ End If
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tMovto, DiferenciaDevolucion, DiferenciaDevolucion, tConceptoDiferencia, Referencia, Concepto, CveCompra:=tCveCompra, CveCompraAmortizacion:=tCveCompraAmortizacion, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, DiferenciaDevolucion), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=tCveClasif) Then
ErrorPrepoliza = True
End If
End If
@@ -7014,8 +7025,6 @@ Partial Class Compras_Compras
End If
End If
- 'ChkNCInvNC
-
If Not RegistroCuentaPuente AndAlso Not ChkNCInvNC.Checked Then
'GASTO
If UsuarioActual.CveEmpresa = 119 Then
@@ -7040,20 +7049,7 @@ Partial Class Compras_Compras
If AgregaMercanciaInventario Then
DT = DT.FiltraParametros("ISNULL(CveTipoPS,0) <> 2")
End If
-
Dim DTDistinct As DataTable = DT.Copy
- 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
- ' For Each drowdis As DataRow In DTDistinct.Rows
- ' If drowdis("CveTipoGasto").ToString = "" Then
- ' drowdis("CveTipoGasto") = 0
- ' End If
- ' If drowdis("TipoGasto").ToString.Trim = "" Then
- ' drowdis("TipoGasto") = "ND"
- ' End If
- ' Next
- ' DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF, 0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
- 'Else
-
For Each drowdis As DataRow In DTDistinct.Rows
If drowdis("CveTipoGasto").ToString = "" Then
@@ -7258,7 +7254,7 @@ Partial Class Compras_Compras
End If
Next
- If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso DdlTipoCompra.SelectedValue = "15" Then
Dim TotalSaldo As Decimal = TxtTotal.Text.ToDecimal
For Each gvRow As GridViewRow In GvRNC.Rows
@@ -10918,17 +10914,17 @@ Partial Class Compras_Compras
TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
TmpDT.Columns.Add("TemporadaCuadro", GetType(String))
+ TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("Lote", GetType(String))
TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
-
TmpDTOriginal = New DataTable
TmpDTOriginal.Columns.Add("Consec", GetType(Integer))
TmpDTOriginal.Columns.Add("Cantidad", GetType(Decimal))
@@ -11038,8 +11034,10 @@ Partial Class Compras_Compras
TmpDTOriginal.Columns.Add("CveCultivoCuadroDetalle", GetType(Double))
TmpDTOriginal.Columns.Add("TemporadaCuadro", GetType(String))
+ TmpDTOriginal.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDTOriginal.Columns.Add("AplicaLote", GetType(Boolean))
TmpDTOriginal.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDTOriginal.Columns.Add("Serie", GetType(String))
TmpDTOriginal.Columns.Add("Lote", GetType(String))
TmpDTOriginal.Columns.Add("FechaCaducidad", GetType(Date))
@@ -13876,9 +13874,14 @@ Partial Class Compras_Compras
'si no esta vinculado a nc simplemente me lo brinco
If realizadevolucion Then
- 'si el subtotal es iwal a la nc lo guardo si no marco error
- If subtotal > subtotaldevolucion - 1 AndAlso subtotal < subtotaldevolucion + 1 Then
-
+ 'si el subtotal es igual a la nc lo guardo si no marco error
+ Dim tTolerancia As Decimal = 0
+ Dim tAjustaUltimo As Boolean = True
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ tTolerancia = Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion)
+ tAjustaUltimo = False
+ End If
+ If Math.Abs(subtotal - subtotaldevolucion) <= tTolerancia Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 13, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra, -1, -1, -1, Modulo:="Comp/G1")
If CveMovimientoEntrada <= 0 Then
ErrorMovInv = True
@@ -13894,17 +13897,16 @@ Partial Class Compras_Compras
PU = Dr.DataKey("PU").ToString.ToDecimal
PUExtranjero = Dr.DataKey("PUExtranjero").ToString.ToDecimal
ii += 1
- If CantidadRenglones = ii Then
+ If CantidadRenglones = ii AndAlso tAjustaUltimo Then
Dim dif As Decimal = subtotal - Acumulado
- PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToString.ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal
+ PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal
End If
- If ObjInventario.GetExistenciasProducto(Dr.DataKey("CvePS").ToString.ToEntero, Dr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, CveAlmacen,
- FechaMovto:=TxtFecha.Text.ToDateTime.AddHours(NowADS().Hour).AddMinutes(NowADS().Minute).AddSeconds(NowADS().Second).ToString("yyyy/MM/dd HH:mm")) Then
-
+ Dim tFechaExistencia As DateTime = TxtFecha.Text.ToDateTime.AddHours(NowADS().Hour).AddMinutes(NowADS().Minute).AddSeconds(NowADS().Second)
+ If ObjInventario.GetExistenciasProducto(Dr.DataKey("CvePS").ToEntero, Dr.DataKey("CveUM").ToEntero, UsuarioActual.CveEmpresa, CveAlmacen,
+ FechaMovto:=tFechaExistencia.ToString("yyyy/MM/dd HH:mm")) Then
Dim Existencia As Decimal = ObjInventario.DtResultados.FiltroPrimeroValor("ExistenciaFinal", String.Format("CveAlmacen = {0}", CveAlmacen)).ToDecimal
-
If Dr.FCTextBox("TxtCantidad").Text.ToDouble > Existencia Then
- Alert($"No hay existencia suficiente del producto {Dr.DataKey("PS").ToString} en la fecha:{TxtFecha.Text}", TipoMensaje.MsgAdvertencia)
+ Alert($"No hay existencia suficiente del producto:
- {Dr.DataKey("CodigoPS")} en la fecha: {tFechaExistencia.ToString("yyyy/MM/dd HH:mm")}", TipoMensaje.MsgAdvertencia)
ErrorMovInv = True
Exit For
End If
@@ -13930,11 +13932,11 @@ Partial Class Compras_Compras
End If
Else
ErrorMovInv = True
- Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
+ Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
+ End If
End If
- End If
- If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1) Then
+ If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1) Then
For Each drow As DataRow In ObjInventario.DtResultados.Rows
TotalSumaPU = TotalSumaPU + drow("Total").ToString.ToDecimal
@@ -14003,7 +14005,6 @@ Partial Class Compras_Compras
Dim subtotaldevolucion As Decimal = 0
Dim realizadevolucion As Boolean = False
-
'Calculo los subtotales para comparar con la NC
Dim cantidad As Decimal = 0D
@@ -14018,11 +14019,13 @@ Partial Class Compras_Compras
'si no esta vinculado a nc simplemente me lo brinco
If realizadevolucion Then
- 'si el subtotal es iwal a la nc lo guardo si no marco error
- If TxtSubTotal2.Text.ToDouble > subtotaldevolucion - 1 AndAlso TxtSubTotal2.Text.ToDouble < subtotaldevolucion + 1 Then
-
+ 'si el subtotal es igual a la nc lo guardo si no marco error
+ 'si tiene FNC574, se ajustará la diferencia a un concepto como RNC
+ Dim tTolerancia As Decimal = 1
+ 'si tiene la funcionalidad ajustará en un producto la diferencia
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then tTolerancia = Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion)
+ If Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion) <= tTolerancia Then
VinculaDevolucion()
-
Else
Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
End If
@@ -14053,15 +14056,17 @@ Partial Class Compras_Compras
Dim IVAPorcentajeCompra As Decimal = Math.Round((IVACompra / SubTotalCompra), 2)
Dim Contador As Integer = 0
Dim Consec As Integer = 0
-
+ Dim tAjusteUltimo As Boolean = True
For Each gvr As GridViewRow In GVDevolucion.Rows
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Then
Contador += 1
End If
Next
- Dim CveSubProyectoContrato As String = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto")
- Dim SubProyecto As String = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoContrato.ToEntero).FiltroPrimeroValor("SubProyecto")
+ Dim Total As Decimal = 0
+ Dim CveSubProyectoDev As String = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto")
+ Dim SubProyecto As String = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoDev.ToEntero).FiltroPrimeroValor("SubProyecto")
'Iteramos el GridView de la OC
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then tAjusteUltimo = False
For Each gvr As GridViewRow In GVDevolucion.Rows
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Then
@@ -14073,7 +14078,7 @@ Partial Class Compras_Compras
Dim UM As String = gvr.DataKey("UM").ToString
Dim CveClasificacion As Integer = gvr.DataKey("CveClasificacion").ToString.ToEntero
Dim Clasificacion As String = gvr.DataKey("Clasificacion").ToString
- Dim PS As String = gvr.DataKey("PS").ToString
+ Dim PS As String = gvr.DataKey("CodigoPS").ToString
Dim CveTipoPS As Integer = gvr.DataKey("CveTipoPS").ToString.ToEntero
Dim CveProyecto As String = "-1"
@@ -14081,14 +14086,14 @@ Partial Class Compras_Compras
Dim Proyecto As String = "Seleccione"
Dim Obs As String = ""
Dim PU As Decimal = gvr.DataKey("PU").ToString.ToDecimal
- Dim Total As Decimal = gvr.FCTextBox("TxtTotalDevolucion").Text.ToDecimal
- Dim IVA As Decimal = IVAPorcentajeCompra 'Math.Round(Total * IVAPorcentajeCompra, 2)
+ Total = gvr.FCTextBox("TxtTotalDevolucion").Text.ToDecimal
+ Dim IVA As Decimal = IVAPorcentajeCompra 'Math.Round(Total * IVAPorcentajeCompra, 2)
Dim Descuento As Decimal = 0
Acumulado += (PU * Cantidad)
Consec += 1
- If Consec = Contador Then 'SubTotalCompra < Acumulado Then
+ If Consec = Contador AndAlso tAjusteUltimo Then 'SubTotalCompra < Acumulado Then
'ajusta el valor
Dim dif As Decimal = SubTotalCompra - Acumulado
If dif <> 0 Then
@@ -14096,10 +14101,26 @@ Partial Class Compras_Compras
Total = Cantidad * PU
End If
End If
- AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoContrato, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVA, 0, 0, 0, 0, Descuento, -1, False)
+ AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoDev, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVAPorcentajeCompra, 0, 0, 0, 0, Descuento, -1, False, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero)
End If
Next
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ Dim CvePS_RNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
+ If CvePS_RNC = 0 Then
+ Alert("producto utilizado para diferencia no definido.")
+ Exit Sub
+ End If
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePS_RNC).FiltroPrimero("")
+ Dim PS As String = PSRow("PSCodigo").ToString
+ Dim tDif As Decimal = TxtSubTotal2.Text.ToDecimal - Total
+
+ AddPS(1, PSRow("CveUnidadMedida").ToString.ToEntero, PSRow("UnidadMedida").ToString,
+ PSRow("CveClasificacion").ToString.ToEntero, PSRow("Clasificacion").ToString, CvePS_RNC, PS, 1, CveSubProyectoDev.ToString, SubProyecto, "", "-1", "", tDif, tDif, IVAPorcentajeCompra, 0, 0, 0, 0, 0)
+
+ End If
+
+
AddPS2()
BtnGuardar.Enabled = True
@@ -14115,7 +14136,6 @@ Partial Class Compras_Compras
ImgClasificacion.Visible = False
LbAgregar.Visible = False
- UpPSS.Update()
'CargaGvInv()
@@ -14137,7 +14157,6 @@ Partial Class Compras_Compras
End If
GvOC1.DataBind()
- ' TmpDT = OrdenarTablas("CvePS", DTOCTemp, TmpDT)
GvOC2.DataSource = TmpDT
GvOC2.DataBind()
@@ -14491,19 +14510,13 @@ Partial Class Compras_Compras
End If
End If
- If Not TmpDT.Columns.Contains("AplicaLote") Then
- TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("AplicaCaducidad") Then
- TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("Lote") Then
- TmpDT.Columns.Add("Lote", GetType(String))
- End If
- If Not TmpDT.Columns.Contains("FechaCaducidad") Then
- TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
- End If
+ If Not TmpDT.Columns.Contains("AplicaLote") Then TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+
+ If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
+
+ If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
If ObjInventario.GetInv_ComprasMov(CveCompra, UsuarioActual.CveEmpresa) Then
If ObjInventario.DtResultados.Rows.Count > 0 Then
@@ -16721,7 +16734,6 @@ Partial Class Compras_Compras
End If
End If
-
UPCondicionesPago.Update()
End Sub
@@ -18169,7 +18181,7 @@ Partial Class Compras_Compras
Case "A" 'ADD
Dim SATClavePS As Integer = -1
- Dim PSRow As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
If PSRow IsNot Nothing Then
SATClavePS = PSRow("SATClavePS").ToString.ToEntero
End If
@@ -18258,13 +18270,11 @@ Partial Class Compras_Compras
Optional PSCodigo As String = "-", Optional PSDescripcion As String = "-", Optional CantidadF As Double = -1, Optional EntregaDirecta As Integer = -1, Optional OtrosGastos As Decimal = 0,
Optional CveSATPS As Integer = -1, Optional CargaXml As Boolean = False, Optional CveTipoGasto As Integer = -1, Optional TipoGasto As String = "", Optional PorcentajeIVA As Decimal = 0,
Optional PorcentajeIEPS As Decimal = 0, Optional PorcentajeRetIVA As Decimal = 0, Optional PorcentajeRetISR As Decimal = 0, Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1, Optional CveCultivoCuadroDetalle As Integer = -1,
- Optional CveSATPSActualizado As Boolean = False, Optional TemporadaCuadro As String = "", Optional CodigoPS As String = "") As Integer
+ Optional CveSATPSActualizado As Boolean = False, Optional TemporadaCuadro As String = "", Optional CodigoPS As String = "", Optional CveAlmacen As Integer = -1) As Integer
Dim Row As DataRow = Nothing
- If Not TmpDT.Columns.Contains("CodigoPS") Then
- TmpDT.Columns.Add("CodigoPS")
- End If
+ If Not TmpDT.Columns.Contains("CodigoPS") Then TmpDT.Columns.Add("CodigoPS")
Row = TmpDT.NewRow()
Dim Retorno As Integer = 0
@@ -18425,8 +18435,13 @@ Partial Class Compras_Compras
Row("CveContratoDetalle") = CveContratoDetalle
+ Row("AplicaSerie") = DrPS("AplicaSerie")
+ Row("AplicaLote") = DrPS("AplicaLote")
+ Row("AplicaCaducidad") = DrPS("AplicaCaducidad")
+
Row("CveCultivoCuadroDetalle") = CveCultivoCuadroDetalle
Row("TemporadaCuadro") = TemporadaCuadro
+ If CveAlmacen > 0 Then Row("CveAlmacen") = CveAlmacen
If UsuarioActual.Empresa.UsaAC Then
Row("CveProgramaOperativo") = DdlACGeneral1.SelectedValue.ToEntero
@@ -19430,7 +19445,7 @@ Partial Class Compras_Compras
For Each Dr As DataRow In Dt.Rows
Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL() ' * (If(EsCancelacion, -1, 1))
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, 95, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, 259, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
Respuesta = False
End If
Next
@@ -20749,15 +20764,23 @@ Partial Class Compras_Compras
End If
End If
- If DdlTipoCompra.SelectedValue = "15" Then 'Remisión de nota de crédito
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then 'cuando es emp DIAZ
- If DdlTipoComprobante.SelectedValue = "NC" Then
- CargaGVRemisionNotaCredito()
- HLAplicaNCFact.Visible = False
+ If DdlTipoCompra.SelectedValue = "15" Then 'Remisión de nota de crédito
+
+ If DdlTipoComprobante.SelectedValue = "NC" Then
+ CargaGVRemisionNotaCredito()
+ HLAplicaNCFact.Visible = False
+ Else
+ Alert("Para elegir Remisión de Nota de Crédito el tipo de documento debe de ser Nota de Crédito.", TipoMensaje.MsgAdvertencia)
+ 'DdlRemisionNotaCredito.SelectedValueExist(-1)
+ DdlTipoCompra.SelectedValueExist(-1)
+ End If
Else
- Alert("Para elegir Remisión de Nota de Crédito el tipo de documento debe de ser Nota de Crédito.", TipoMensaje.MsgAdvertencia)
- 'DdlRemisionNotaCredito.SelectedValueExist(-1)
- DdlTipoCompra.SelectedValueExist(-1)
+ 'SE ACTIVA DE NUEVO PARA LA SELECCIÓN
+ HLAplicaNCFact.Visible = True
+ InicializaAplicaNCFact()
+ If CveFactura > 0 Then NCSeleccionFacturasRelacionadas(UUIDSList)
End If
End If
@@ -22038,12 +22061,12 @@ Partial Class Compras_Compras
Dim respuesta As Boolean = True
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
- Dim CvePS_RNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
- Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePS_RNC).FiltroPrimero("")
+ Dim CvePSRNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePSRNC).FiltroPrimero("")
Dim CveSubProyectoPrincipal As Integer = AsignarSubProyectoPrincipal()
Dim SubProyecto As String = ""
- If Not CvePS_RNC > 0 Then
+ If Not CvePSRNC > 0 Then
Alert("No esta definido el producto de Remisión de Nota de Crédito.", TipoMensaje.MsgAdvertencia)
Return False
End If
@@ -22056,7 +22079,6 @@ Partial Class Compras_Compras
SubProyecto = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoPrincipal).FiltroPrimeroValor("SubProyecto")
If PSRow IsNot Nothing Then
-
Dim CompraRNC As New ClsCompraManagerCompras(UsuarioActual) With {
.TipoDocto = "RNC",
.CveProveedor = CveProveedor,
@@ -22090,7 +22112,7 @@ Partial Class Compras_Compras
Dim IVARNC As Decimal = (Importe * PorcentajeIVA).RoundSQL(2)
Dim TotalRNC As Decimal = If(RedondearSaldado, (Importe + IVARNC).RoundSQL(2), (Importe + IVARNC))
- CompraRNC.ConfiguraRegistroRapido(CvePS_RNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNC, IVARNC, TotalRNC, PorcentajeIVA, TipoCambio:=TipoCambioOriginal)
+ CompraRNC.ConfiguraRegistroRapido(CvePSRNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNC, IVARNC, TotalRNC, PorcentajeIVA, TipoCambio:=TipoCambioOriginal)
If CompraRNC.AddCompra(sqltransaccion) Then
Dim tImporteRNC = TotalRNC ' le agrego el importe del iva
Dim Pago As New CompraPago
@@ -22619,7 +22641,7 @@ Partial Class Compras_Compras
nRow("SubTotal") = subtotalParcial.RoundSQL(4)
nRow("Total") = totalParcialDeseado.RoundSQL(4)
- nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
+ nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(2)
nRow("Porcentaje") = ((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)
@@ -22850,7 +22872,7 @@ Public Class ClsCompraManagerCompras
Public Property CveMetodoPago As Integer
Public Property MetodoPago As String
- Public Property DocumentosRelacionadosUUIDSList As List(Of String) = New List(Of String)
+ Public Property DocumentosRelacionadosUUIDSList As HashSet(Of String) = New HashSet(Of String)
Public ReadOnly Property DocumentosRelacionadosUUIDSString As String
Get
Return GeneraStringDoctosRelacionados()
@@ -23069,7 +23091,7 @@ Public Class ClsCompraManagerCompras
If TipoComprobante.ToUpper = "E" AndAlso (CFDIVersion = EnumCFDIVersion.v33 OrElse CFDIVersion = EnumCFDIVersion.v40) Then
Dim UUIDS As String = ""
- Dim UUIDSLista As New List(Of String)
+ Dim UUIDSLista As New HashSet(Of String)
Dim nodeCFDIRelacionados As XmlNode
nodeCFDIRelacionados = XMLDoc.SelectSingleNode(String.Format("//{0}:CfdiRelacionados", Prefijo), namespaces)
@@ -23222,6 +23244,8 @@ Public Class ClsCompraManagerCompras
If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaSerie") Then TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
+
If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
@@ -23454,7 +23478,6 @@ Public Class ClsCompraManagerCompras
TmpDT.Columns.Add("SATClaveUnidadMedida", GetType(String))
TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
-
'Tipo de Gasto
TmpDT.Columns.Add("CveTipoGasto", GetType(Integer))
TmpDT.Columns.Add("TipoGasto", GetType(String))
@@ -23462,26 +23485,23 @@ Public Class ClsCompraManagerCompras
TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Double))
TmpDT.Columns.Add("ImporteConImpuestos", GetType(Double))
TmpDT.Columns.Add("NoDeducible", GetType(Boolean))
-
TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
TmpDT.Columns.Add("TemporadaCuadro", GetType(String))
TmpDT.Columns.Add("NoIdentificacion", GetType(String))
-
+ TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("Lote", GetType(String))
TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
-
TmpDT.AcceptChanges()
-
End Sub
Private Function AjustesValidacion() As Boolean
Dim respuesta As Boolean = True