diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb
index 6ffc5438a..2b603bb68 100644
--- a/App_Code/ClsClientes.vb
+++ b/App_Code/ClsClientes.vb
@@ -261,7 +261,7 @@ Public Class ClsClientes
End Sub
Public Function GetClientes(CveCliente As Integer, Nombre As String, Codigo As String, NombreCorto As String, RFC As String, Telefono As String, Mail As String, CveSubProyecto As Integer,
CveEmpresa As Integer, Optional Estatus As Integer = 1, Optional Notificar As String = "-1", Optional CvePrecioLista As Integer = -1, Optional CveClienteClasificacion As Integer = -1,
- Optional TipoCliente As Integer = 1, Optional CveVendedor As Integer = -1, Optional PermiteCreditoFiltro As Integer = -1) As Boolean
+ Optional TipoCliente As Integer = -1, Optional CveVendedor As Integer = -1, Optional PermiteCreditoFiltro As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_ClientesGet")
diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb
index f9fe5c1e1..dbb113a45 100644
--- a/App_Code/Timbrado.vb
+++ b/App_Code/Timbrado.vb
@@ -3228,10 +3228,24 @@ Public Class Timbrado
Else
+
Dim Resultados = Newtonsoft.Json.Linq.JArray.Parse(resultadoTimbre.Detalle)
+
If Resultados.Count > 0 Then
- Retorno = Resultados(0)("Value").ToString()
- MensajeErrorCFDI = Resultados(0)("Value").ToString()
+
+ If resultadoTimbre.Descripcion.Contains("RFC del receptor no existe") Then
+
+ Retorno = $"El RFC { Resultados(0)("Value").ToString() } no existe en las bases de datos publicadas por el SAT, corrobore este dato con su cliente"
+ MensajeErrorCFDI = $"El RFC { Resultados(0)("Value").ToString() } no existe en las bases de datos publicadas por el SAT, corrobore este dato con su cliente"
+
+ Else
+
+ Retorno = Resultados(0)("Value").ToString()
+ MensajeErrorCFDI = Resultados(0)("Value").ToString()
+
+ End If
+
+
Else
Retorno = resultadoTimbre.Detalle
MensajeErrorCFDI = resultadoTimbre.Detalle
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index 8bdf74e1c..1eeb43303 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -1180,8 +1180,7 @@ Partial Class Bancos_IE
DdlProveedores.SelectedText = ObjProveedor.NombreComercial
DdlProveedores.SelectedValue = ObjProveedor.CveProveedor.ToString
- DivOtrosIngresosEgresos.Visible = True
-
+
End If
Select Case RBL.SelectedValue
@@ -1263,7 +1262,6 @@ Partial Class Bancos_IE
IDCtaBeneficiarioComplementaria = ObjCliente.IdCtaContCompClientes
DdlCliente.SelectedText = ObjCliente.NombreComercial
DdlCliente.SelectedValue = ObjCliente.CveCliente.ToString
- DivOtrosIngresosEgresos.Visible = True
End If
If UsuarioActual.Empresa.UsaAC OrElse UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
@@ -2268,15 +2266,10 @@ Partial Class Bancos_IE
Exit Sub
End If
-
-
-
Dim ObjIE As New ClsBancos()
Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL)
Dim ObjComp As New ClsCompras(ObjIE.IniciaTransacSQL)
- Dim ObjOC As New ClsOC(ObjIE.IniciaTransacSQL)
-
- ' Dim ObjContabilidad As New ClsContabilidad(ObjIE.IniciaTransacSQL)
+ Dim ObjOC As New ClsOC(ObjIE.IniciaTransacSQL)
Dim MsgError As String = ""
Dim CveConceptoContable As Integer = 30
@@ -2286,1008 +2279,968 @@ Partial Class Bancos_IE
Dim CvePlantillaPoliza As Integer = 3
Dim CvePrePoliza As Integer = 0
Dim alertaContabilizacion As String = "Se enviaron correctamente las siguientes pólizas:
"
- Dim Msg As New StringBuilder
-
- If CveIE = -1 Then
-
- Dim CveCuentaDeposito As Integer = 0
- If DdlCuentaDeposito.Items.Count > 0 Then
- CveCuentaDeposito = DdlCuentaDeposito.SelectedValue.ToEntero
- End If
-
- 'OBTIENE COMPROBANTE!!
- ComprobanteIE = ""
- Dim Comprobante As String = ""
- Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
- Dim filemove As String = ""
- For Each fileItem As Archivo In filesgral
- Comprobante = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
- filemove = fileItem.filename
- Next
-
-
- '*****-_- INICIA: CONFIGURACION REGISTRO -_-*****
- If CvePersonal > 0 Then
- If Opcion IsNot Nothing AndAlso Opcion.Contiene("EGSSINFACT") And DDlCheques.SelectedValue.ToEntero > 0 Then
- CveConceptoCompra = 29 'Comprobación Personal
- Else
- CveConceptoCompra = 28 'Prestamo Personal
- End If
- CveConceptoContable = 30 'Banco
- CvePlantillaPoliza = 8
- End If
-
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "DEV" Then
- If CvePersonal > 0 Then
- CveConceptoCompra = 29 'Comprobacion Personal
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 9
- ElseIf CveProveedor > 0 Then
- CveConceptoCompra = 21 'Pago a Proveedor/CAncelacion Anticipos
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 7
- End If
- End If
-
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "ANTC" Then
- If CveCliente > 0 Then
- CveConceptoCompra = 3 'Clientes
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 12
- End If
- End If
-
- 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSCREDITO" Then
- CveConceptoCompra = 48 'Anticipo Acreedores
- CveConceptoContable = 30 'Bancos
- CveCreditoDetalle = DdlCreditoDetalle.SelectedValue.ToEntero
- Dim Estatus As Integer = 2
- If HdnCveTipoCredito.Value = "1" Then
- Estatus = 103
- 'cuando es crediproveedores es, pago a documentos por pagar
- CveConceptoCompra = 57
- End If
- ObjIE.UpdateCreditosDetalle(Estatus, CveCreditoDetalle)
-
- If HdnImporteCredito.Value.ToDouble > 0 AndAlso TxtImporte.Text.ToDouble > HdnImporteCredito.Value.ToDouble Then
- CIF = TxtImporte.Text.ToDecimal - HdnImporteCredito.Value.ToDecimal
- Else
- CIF = 0
- End If
-
- CvePlantillaPoliza = 92
-
- End If
- Dim AgregaPolizaSaldoInicial As Boolean = False
- 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSSINFACT" Then
- Select Case RBL.SelectedValue
- Case "P" 'Proveedores
- If CveProveedor > 0 Then
- CveConceptoCompra = 10 'Anticipo a proveedor
- CveConceptoContable = 30 'Pago a Proveedor
- CvePlantillaPoliza = 3
- End If
- Case "DD" ' Deudores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 43 'Prestamo a deudor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 6
- End If
- Case "AC" ' Acreedores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 42 'Prestamo a acreedor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 21
- End If
- Case "DP" ' Documentos por pagar
- If CveProveedor > 0 Then
- CveConceptoCompra = 50 'Anticipo doc por pagar
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 22
- End If
- Case "FE"
- AgregaPolizaSaldoInicial = True
- End Select
- End If
-
- 'Nuevo Formato Charlie
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "INGPC" Then
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 6
- Select Case RBL.SelectedValue
- Case "DD" ' Deudores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 37 'Prestamo a deudor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 45
- End If
- Case "C" ' Clientes
- If CveCliente > 0 Then
- CveConceptoCompra = 66 'Anticipo doc por pagar
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- End If
- Case "AC" ' Acreedores Diversos
- If CveCliente > 0 Then
- CveConceptoCompra = 41
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- End If
- End Select
- End If
-
- '*****-_- TERMINA: CONFIGURACION REGISTRO -_-*****
-
-
- Dim FolioFijo As Integer = 0
- Dim tCveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero
- Dim tImporteMonedaExtranjera As Decimal = 0
- If tCveMoneda <> 1 Then tImporteMonedaExtranjera = TxtImporte.Text.ToDecimal * GlobalTipoCambio(TxtFechaDocumento.Text.Trim.ToDate).ToString.ToDecimal
- Dim PagueseA = ""
-
- If HdnCveCliente.Value.ToEntero > 0 Then
- PagueseA = DdlCliente.SelectedText.ToString()
- ElseIf HdnCveProveedor.Value.ToEntero > 0 Then
- PagueseA = DdlProveedores.SelectedText.ToString()
- ElseIf HdnCvePersonal.Value.ToEntero > 0 Then
- PagueseA = DdlPersonal.SelectedItem.ToString
- ElseIf DdlCreditoDetalle.SelectedValue.ToEntero > 0 Then
- PagueseA = String.Format("{0} {1} {2}", DdlFinanciera.SelectedItem.Text, DdlCredito.SelectedItem.Text, DdlCreditoDetalle.SelectedItem.Text)
- End If
-
- If AgregaPolizaSaldoInicial Then
- If AgregarSaldoInicial(TxtImporte.Text.ToDouble(), TxtFechaDocumento.Text.ToDateTime(), DdlMoneda.SelectedValue.ToEntero(), ObjMov) <= 0 Then
- MsgError = "No se pudo insertar la póliza de saldo inicial."
- End If
- End If
-
- If MsgError = "" Then
-
-
-
- CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, TxtFechaDocumento.Text.Trim.ToDate, TxtFolio.Text.Trim, PagueseA, TxtImporte.Text.Trim.ToDouble, DdlMoneda.SelectedValue.ToEntero,
- TxtTipoCambio.Text.Trim.ToDouble, TxtObservaciones.Text.Trim, TxtNotificarA.Text.Trim, ChkAbonoCuenta.Checked, ChkAplicaImpuestos.Checked, -1, CvePrePoliza, Comprobante, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaDeposito:=CveCuentaDeposito, CveEstatusIE:=DdlEstatusIE.SelectedValue.ToString.ToEntero, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1))
-
- If CveIE > 0 Then
-
- If DdlTipoTransaccion.SelectedValue = "1" Then FolioFijo = ObjIE.Folio.ToEntero 'cheque
- CvePrePoliza = ObjMov.AddPrePolizas("Bancos/IE " + If(Request("Opcion") IsNot Nothing, Request("Opcion").ToString, "") + " " + RBL.SelectedValue, CvePlantillaPoliza, TxtImporte.Text.Trim.ToDouble, TxtImporte.Text.Trim.ToDouble, tCveMoneda, TxtFechaDocumento.Text.ToDate, PagueseA, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjComp.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, Nothing, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa))
-
- 'valida prepoliza
- If CvePrePoliza > 0 Then
-
- If Not ObjIE.UpdateIEPrePoliza(MinFecha, "", -1, CvePrePoliza, CveIE, -1) Then
- MsgError = "Ocurrio un error al agregar la prepoliza al IE."
- End If
-
- Dim Conc As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
- Dim Ref As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
-
- If Comprobante <> "" Then
- ComprobanteIE = $"{CveIE}.{Comprobante}"
- End If
-
- 'GUARDA COMPROBANTE
- If filemove <> "" Then
- filemove.FilesMove(CveIE.ToString, String.Format("Empresas\{0}\IE", UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta))
- End If
-
- 'GUARDA PREPOLIZAS DETALLE [PRIMERO SON LOS CASOS ESPECIALES, AL FINAL (ELSE) LOS CASOS NORMALES] --REEMPLAZA IFs
- Select Case Opcion
- Case "DEV"
- Dim CveIEOtro As Integer = If(CveProveedor > 0 Or CvePersonal > 0, DdlIEDevolucion.SelectedValue.ToEntero, CveIE)
-
- If CveCliente > 0 AndAlso Not DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDouble = 0 Then
- 'RMF- CASO DONDE HAY UNA DEVOLUCION Y TENGO QUE AFECTAR LAS FACTURAS QUE SE HABIAN MARCADO COMO PAGADAS TENGO QUE REGRESARLAS A PENDIENTES
- Dim Mov As New ClsMovimientos
- If Mov.GetMovimientosIE(2, DdlIEDevolucion.SelectedValue.ToEntero, -1, Now, Now, 1, 0, UsuarioActual.CveEmpresa) Then
- Dim DtIE As DataTable = Mov.DtResultados
- For Each dr As DataRow In DtIE.Rows
-
- If MsgError = "" AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, If(dr("TipoMovto").ToString.ToEntero = 1, False, True), If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, dr("Importe").ToString.ToDecimal), "", dr("CveConceptoContable").ToString.ToEntero, "", Now, IDCtaBeneficiario, -1, CveIE, CveCliente:=dr("CveCliente").ToString.ToEntero, CveVenta:=dr("CveVenta").ToString.ToEntero, ImporteMX:=If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, -dr("Importe").ToString.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
- MsgError = "no se pudo insertar el detalle de la póliza 2"
- End If
- Next
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
-
- End If
- Mov.Dispose()
-
- 'Devolucion de INGxC Formato Charlie
- ElseIf CveCliente > 0 AndAlso DivIvaIxC.Visible Then
-
- Dim Mov As New ClsMovimientos
- 'INGxC
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), Ref, 66, Conc, Now, IDCtaContable, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
-
- If TxtIvaIxC.Text.ToDouble > 0 Then
- 'Iva
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
- End If
-
- 'Bancos
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -TxtImporte.Text.ToDecimal, Ref, 30, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario)
- Mov.Dispose()
-
- Else
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta) Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE:=If(CveIEOtro < 0, CveIE, CveIEOtro), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
- MsgError = "no se pudo insertar el detalle de la póliza 2"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza"
- End If
-
- End If
-
-
- Case "INGPC"
- Dim ConceptoContable As Integer
- Dim TipoMovimiento As Boolean
- Dim importeMovimiento As Decimal
- Dim FechaMovimiento As Date = Now
- Dim Concepto As String = ""
- Dim Referencia As String = PagueseA
-
- Dim importeMX As Decimal
- Dim Multiplicador As Integer
-
- If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
-
- For Each Row As DataRow In ObjMov.DtResultados.Rows
-
- ConceptoContable = Row("CveConcepto").ToString.ToEntero
- TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
- importeMovimiento = 0
- Multiplicador = (Row("Multiplicador").ToString.ToEntero)
- Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
-
- Select Case ConceptoContable
-
- Case 10
- If RBL.SelectedValue = "P" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 28
- If RBL.SelectedValue = "FE" AndAlso CvePersonal > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 37
- If RBL.SelectedValue = "DD" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 41
- If RBL.SelectedValue = "AC" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 46
-
- If TxtInteresMoratorio.Text.ToDecimal > 0 Then
- importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
- importeMX = importeMovimiento
- Else
- importeMovimiento = 0
- importeMX = 0
- End If
-
-
- Case 50
- If RBL.SelectedValue = "DP" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 66
- If RBL.SelectedValue = "C" AndAlso CveCliente > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal
- importeMX = importeMovimiento
-
- 'Agregamos el IVA
- If DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDecimal <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, 61, Concepto, FechaMovimiento, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 226, Concepto, FechaMovimiento, IDCtaBeneficiarioComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=0) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
-
- End If
-
- End If
-
- Case 30
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
-
- End If
-
- End Select
-
- If importeMovimiento <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
-
- Next
-
- End If
-
-
- Case "DevDinV"
- Dim IdCtaContableAplicar = -1
- Dim ImporteAplicar = 0.0D
- Dim ImporteAplicarMN = 0.0D
- Dim ImporteAplicarME = 0.0D
- Dim ReferenciaAplicar = ObjIE.Folio
- Dim ConceptoAplicar = $"Devolución al cliente {PagueseA} {TxtImporte.Text} NC:{SerieFolioDevDin}"
-
- ImporteAplicar = TxtImporte.Text.ToDecimal
- ImporteAplicarME = ImporteAplicar
-
- 'CONSIDERA COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ImporteAplicar
- Else
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- End If
-
- 'BANCOS
- IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
- Exit Select
- End If
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)) - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
+ Dim Msg As New StringBuilder
+
+ Try
+ If CveIE = -1 Then
+
+ Dim CveCuentaDeposito As Integer = 0
+ If DdlCuentaDeposito.Items.Count > 0 Then
+ CveCuentaDeposito = DdlCuentaDeposito.SelectedValue.ToEntero
+ End If
+
+ 'OBTIENE COMPROBANTE!!
+ ComprobanteIE = ""
+ Dim Comprobante As String = ""
+ Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
+ Dim filemove As String = ""
+ For Each fileItem As Archivo In filesgral
+ Comprobante = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
+ filemove = fileItem.filename
+ Next
+
+
+ '*****-_- INICIA: CONFIGURACION REGISTRO -_-*****
+ If CvePersonal > 0 Then
+ If Opcion IsNot Nothing AndAlso Opcion.Contiene("EGSSINFACT") And DDlCheques.SelectedValue.ToEntero > 0 Then
+ CveConceptoCompra = 29 'Comprobación Personal
+ Else
+ CveConceptoCompra = 28 'Prestamo Personal
+ End If
+ CveConceptoContable = 30 'Banco
+ CvePlantillaPoliza = 8
+ End If
+
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "DEV" Then
+ If CvePersonal > 0 Then
+ CveConceptoCompra = 29 'Comprobacion Personal
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 9
+ ElseIf CveProveedor > 0 Then
+ CveConceptoCompra = 21 'Pago a Proveedor/CAncelacion Anticipos
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 7
+ End If
+ End If
+
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "ANTC" Then
+ If CveCliente > 0 Then
+ CveConceptoCompra = 3 'Clientes
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 12
+ End If
+ End If
+
+ 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSCREDITO" Then
+ CveConceptoCompra = 48 'Anticipo Acreedores
+ CveConceptoContable = 30 'Bancos
+ CveCreditoDetalle = DdlCreditoDetalle.SelectedValue.ToEntero
+ Dim Estatus As Integer = 2
+ If HdnCveTipoCredito.Value = "1" Then
+ Estatus = 103
+ 'cuando es crediproveedores es, pago a documentos por pagar
+ CveConceptoCompra = 57
+ End If
+ ObjIE.UpdateCreditosDetalle(Estatus, CveCreditoDetalle)
+
+ If HdnImporteCredito.Value.ToDouble > 0 AndAlso TxtImporte.Text.ToDouble > HdnImporteCredito.Value.ToDouble Then
+ CIF = TxtImporte.Text.ToDecimal - HdnImporteCredito.Value.ToDecimal
+ Else
+ CIF = 0
+ End If
+
+ CvePlantillaPoliza = 92
+
+ End If
+ Dim AgregaPolizaSaldoInicial As Boolean = False
+ 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSSINFACT" Then
+ Select Case RBL.SelectedValue
+ Case "P" 'Proveedores
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 10 'Anticipo a proveedor
+ CveConceptoContable = 30 'Pago a Proveedor
+ CvePlantillaPoliza = 3
+ End If
+ Case "DD" ' Deudores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 43 'Prestamo a deudor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 6
+ End If
+ Case "AC" ' Acreedores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 42 'Prestamo a acreedor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 21
+ End If
+ Case "DP" ' Documentos por pagar
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 50 'Anticipo doc por pagar
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 22
+ End If
+ Case "FE"
+ AgregaPolizaSaldoInicial = True
+ End Select
+ End If
+
+ 'Nuevo Formato Charlie
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "INGPC" Then
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 6
+ Select Case RBL.SelectedValue
+ Case "DD" ' Deudores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 37 'Prestamo a deudor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 45
+ End If
+ Case "C" ' Clientes
+ If CveCliente > 0 Then
+ CveConceptoCompra = 66 'Anticipo doc por pagar
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ End If
+ Case "AC" ' Acreedores Diversos
+ If CveCliente > 0 Then
+ CveConceptoCompra = 41
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ End If
+ End Select
+ End If
+
+ '*****-_- TERMINA: CONFIGURACION REGISTRO -_-*****
+
+
+ Dim FolioFijo As Integer = 0
+ Dim tCveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero
+ Dim tImporteMonedaExtranjera As Decimal = 0
+ If tCveMoneda <> 1 Then tImporteMonedaExtranjera = TxtImporte.Text.ToDecimal * GlobalTipoCambio(TxtFechaDocumento.Text.Trim.ToDate).ToString.ToDecimal
+ Dim PagueseA = ""
+
+ If HdnCveCliente.Value.ToEntero > 0 Then
+ PagueseA = DdlCliente.SelectedText.ToString()
+ ElseIf HdnCveProveedor.Value.ToEntero > 0 Then
+ PagueseA = DdlProveedores.SelectedText.ToString()
+ ElseIf HdnCvePersonal.Value.ToEntero > 0 Then
+ PagueseA = DdlPersonal.SelectedItem.ToString
+ ElseIf DdlCreditoDetalle.SelectedValue.ToEntero > 0 Then
+ PagueseA = String.Format("{0} {1} {2}", DdlFinanciera.SelectedItem.Text, DdlCredito.SelectedItem.Text, DdlCreditoDetalle.SelectedItem.Text)
+ End If
+
+ If AgregaPolizaSaldoInicial Then
+ If AgregarSaldoInicial(TxtImporte.Text.ToDouble(), TxtFechaDocumento.Text.ToDateTime(), DdlMoneda.SelectedValue.ToEntero(), ObjMov) <= 0 Then
+ MsgError = "No se pudo insertar la póliza de saldo inicial."
+ End If
+ End If
+
+ If MsgError = "" Then
+
+
+
+ CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, TxtFechaDocumento.Text.Trim.ToDate, TxtFolio.Text.Trim, PagueseA, TxtImporte.Text.Trim.ToDouble, DdlMoneda.SelectedValue.ToEntero,
+ TxtTipoCambio.Text.Trim.ToDouble, TxtObservaciones.Text.Trim, TxtNotificarA.Text.Trim, ChkAbonoCuenta.Checked, ChkAplicaImpuestos.Checked, -1, CvePrePoliza, Comprobante, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaDeposito:=CveCuentaDeposito, CveEstatusIE:=DdlEstatusIE.SelectedValue.ToString.ToEntero, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1))
+
+ If CveIE > 0 Then
+
+ If DdlTipoTransaccion.SelectedValue = "1" Then FolioFijo = ObjIE.Folio.ToEntero 'cheque
+ CvePrePoliza = ObjMov.AddPrePolizas("Bancos/IE " + If(Request("Opcion") IsNot Nothing, Request("Opcion").ToString, "") + " " + RBL.SelectedValue, CvePlantillaPoliza, TxtImporte.Text.Trim.ToDouble, TxtImporte.Text.Trim.ToDouble, tCveMoneda, TxtFechaDocumento.Text.ToDate, PagueseA, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjComp.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, Nothing, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa))
+
+ 'valida prepoliza
+ If CvePrePoliza > 0 Then
+
+ If Not ObjIE.UpdateIEPrePoliza(MinFecha, "", -1, CvePrePoliza, CveIE, -1) Then
+ MsgError = "Ocurrio un error al agregar la prepoliza al IE."
+ End If
+
+ Dim Conc As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
+ Dim Ref As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
+
+ If Comprobante <> "" Then
+ ComprobanteIE = $"{CveIE}.{Comprobante}"
+ End If
+
+ 'GUARDA COMPROBANTE
+ If filemove <> "" Then
+ filemove.FilesMove(CveIE.ToString, String.Format("Empresas\{0}\IE", UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta))
+ End If
+
+ 'GUARDA PREPOLIZAS DETALLE [PRIMERO SON LOS CASOS ESPECIALES, AL FINAL (ELSE) LOS CASOS NORMALES] --REEMPLAZA IFs
+ Select Case Opcion
+ Case "DEV"
+ Dim CveIEOtro As Integer = If(CveProveedor > 0 Or CvePersonal > 0, DdlIEDevolucion.SelectedValue.ToEntero, CveIE)
+
+ If CveCliente > 0 AndAlso Not DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDouble = 0 Then
+ 'RMF- CASO DONDE HAY UNA DEVOLUCION Y TENGO QUE AFECTAR LAS FACTURAS QUE SE HABIAN MARCADO COMO PAGADAS TENGO QUE REGRESARLAS A PENDIENTES
+ Dim Mov As New ClsMovimientos
+ If Mov.GetMovimientosIE(2, DdlIEDevolucion.SelectedValue.ToEntero, -1, Now, Now, 1, 0, UsuarioActual.CveEmpresa) Then
+ Dim DtIE As DataTable = Mov.DtResultados
+ For Each dr As DataRow In DtIE.Rows
+
+ If MsgError = "" AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, If(dr("TipoMovto").ToString.ToEntero = 1, False, True), If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, dr("Importe").ToString.ToDecimal), "", dr("CveConceptoContable").ToString.ToEntero, "", Now, IDCtaBeneficiario, -1, CveIE, CveCliente:=dr("CveCliente").ToString.ToEntero, CveVenta:=dr("CveVenta").ToString.ToEntero, ImporteMX:=If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, -dr("Importe").ToString.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
+ MsgError = "no se pudo insertar el detalle de la póliza 2"
+ End If
+ Next
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
+
+ End If
+ Mov.Dispose()
+
+ 'Devolucion de INGxC Formato Charlie
+ ElseIf CveCliente > 0 AndAlso DivIvaIxC.Visible Then
+
+ Dim Mov As New ClsMovimientos
+ 'INGxC
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), Ref, 66, Conc, Now, IDCtaContable, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
+
+ If TxtIvaIxC.Text.ToDouble > 0 Then
+ 'Iva
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
+ End If
+
+ 'Bancos
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -TxtImporte.Text.ToDecimal, Ref, 30, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario)
+ Mov.Dispose()
- 'OTROS INGRESOS/EGRESOS
- Dim Impo As Decimal = TxtOtrosIngresosEgresos.Text.ToDecimal
- If TxtOtrosIngresosEgresos.Text.ToDecimal <> 0 Then
- Dim TipoMovtoIE As Boolean = False
- Dim CveConcIE As Integer = 78
- If Impo > 0 Then
- TipoMovtoIE = True
- Impo = Math.Abs(Impo)
- CveConcIE = 78
Else
- TipoMovtoIE = False
- Impo = Math.Abs(Impo)
- CveConcIE = 211
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta) Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE:=If(CveIEOtro < 0, CveIE, CveIEOtro), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
+ MsgError = "no se pudo insertar el detalle de la póliza 2"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza"
+ End If
+
End If
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=Impo, ImporteME:=0) Then
+
+ Case "INGPC"
+ Dim ConceptoContable As Integer
+ Dim TipoMovimiento As Boolean
+ Dim importeMovimiento As Decimal
+ Dim FechaMovimiento As Date = Now
+ Dim Concepto As String = ""
+ Dim Referencia As String = PagueseA
+
+ Dim importeMX As Decimal
+ Dim Multiplicador As Integer
+
+ If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
+
+ For Each Row As DataRow In ObjMov.DtResultados.Rows
+
+ ConceptoContable = Row("CveConcepto").ToString.ToEntero
+ TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
+ importeMovimiento = 0
+ Multiplicador = (Row("Multiplicador").ToString.ToEntero)
+ Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
+
+ Select Case ConceptoContable
+
+ Case 10
+ If RBL.SelectedValue = "P" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 28
+ If RBL.SelectedValue = "FE" AndAlso CvePersonal > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 37
+ If RBL.SelectedValue = "DD" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 41
+ If RBL.SelectedValue = "AC" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 46
+
+ If TxtInteresMoratorio.Text.ToDecimal > 0 Then
+ importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
+ importeMX = importeMovimiento
+ Else
+ importeMovimiento = 0
+ importeMX = 0
+ End If
+
+
+ Case 50
+ If RBL.SelectedValue = "DP" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 66
+ If RBL.SelectedValue = "C" AndAlso CveCliente > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ 'Agregamos el IVA
+ If DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDecimal <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, 61, Concepto, FechaMovimiento, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 226, Concepto, FechaMovimiento, IDCtaBeneficiarioComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=0) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+
+ End If
+
+ End If
+
+ Case 30
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+
+ End If
+
+ End Select
+
+ If importeMovimiento <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+
+ Next
+
+ End If
+
+
+ Case "DevDinV"
+ Dim IdCtaContableAplicar = -1
+ Dim ImporteAplicar = 0.0D
+ Dim ImporteAplicarMN = 0.0D
+ Dim ImporteAplicarME = 0.0D
+ Dim ReferenciaAplicar = ObjIE.Folio
+ Dim ConceptoAplicar = $"Devolución al cliente {PagueseA} {TxtImporte.Text} NC:{SerieFolioDevDin}"
+
+ ImporteAplicar = TxtImporte.Text.ToDecimal
+ ImporteAplicarME = ImporteAplicar
+
+ 'CONSIDERA COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ImporteAplicar
+ Else
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ End If
+
+ 'BANCOS
+ IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
+ Exit Select
+ End If
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)) - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+ 'CANCELA NC
+ IdCtaContableAplicar = IDCtaBeneficiario
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 12, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=-(ImporteAplicarMN), ImporteME:=ImporteAplicarME) Then
MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
Exit Select
End If
- End If
-
- 'CANCELA NC
- IdCtaContableAplicar = IDCtaBeneficiario
- ImporteAplicar = ImporteAplicar + Impo
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 12, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=-(ImporteAplicarMN), ImporteME:=ImporteAplicarME) Then
- MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
- Exit Select
- End If
- 'IMPUESTOS
- If ObjMov.GetPrePolizasDetalle(CvePrePolizaDevDin) Then
- Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
- Dim CveConceptoContableAplciar = -1
- Dim TipoMovtoAplicar = False
-
- For Each Dr As DataRow In ObjMov.DtResultados.FiltraParametros("CveConceptoContable IN (13,8,9,38)").Rows
- CveConceptoContableAplciar = Dr("CveConceptoContable").ToString.ToEntero
- TipoMovtoAplicar = Not CBool(Dr("TipoMovto").ToString)
- ImporteAplicar = (Dr("Importe").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- ImporteAplicarMN = (Dr("ImporteMN").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- ImporteAplicarME = (Dr("ImporteME").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- IdCtaContableAplicar = Dr("IdCtaContable").ToString.ToEntero
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
- Select Case CveConceptoContableAplciar
- Case 13
- CveConceptoContableAplciar = 61
- Case 8
- CveConceptoContableAplciar = 62
- Case 9
- CveConceptoContableAplciar = 63
- Case 38
- CveConceptoContableAplciar = 39
- End Select
- TipoMovtoAplicar = Not TipoMovtoAplicar
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- Exit Select
- End If
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- Exit Select
- End If
-
- Next
- End If
-
- Case "DevDinC"
- 'asdasdasd
- 'asdasdasdasd
- Dim IdCtaContableAplicar = -1
- Dim ImporteAplicar = 0.0D
- Dim ImporteAplicarMN = 0.0D
- Dim ImporteAplicarME = 0.0D
- Dim ReferenciaAplicar = ObjIE.Folio
-
- Dim ConceptoAplicar = $"Devolución de Proveedor {PagueseA} {TxtImporte.Text} NC:{SerieFolioDeCDin}"
-
- ImporteAplicar = TxtImporte.Text.ToDecimal
- ImporteAplicarME = ImporteAplicar
-
-
- 'CONSIDERA COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ImporteAplicar
- Else
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- End If
-
- Dim TCCompra As Decimal = 1
- Dim TCDocumento As Decimal = 1
-
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
-
- TCCompra = GlobalTipoCambio(FechaCompra).ToDecimal
- TCDocumento = GlobalTipoCambio(TxtFechaDocumento.Text.ToDate).ToDecimal
-
- If TCCompra <= 0 Then
- Alert("No se pudo obtener el tipo de cambio de la nota de crédito.", TipoMensaje.MsgAdvertencia)
- End If
-
- If TCCompra <= 0 Then
- Alert("No se pudo obtener el tipo de cambio del documentpo.", TipoMensaje.MsgAdvertencia)
- End If
-
- End If
-
-
-
- 'BANCOS
- IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
- Exit Select
- End If
-
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCDocumento)) - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
+ 'IMPUESTOS
+ If ObjMov.GetPrePolizasDetalle(CvePrePolizaDevDin) Then
+ Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
+ Dim CveConceptoContableAplciar = -1
+ Dim TipoMovtoAplicar = False
- 'OTROS INGRESOS/EGRESOS
- If TxtOtrosIngresosEgresos.Text.ToDecimal <> 0 Then
- Dim Impo As Decimal = TxtOtrosIngresosEgresos.Text.ToDecimal
- Dim TipoMovtoIE As Boolean = False
- Dim CveConcIE As Integer = 78
- If Impo > 0 Then
- TipoMovtoIE = True
- Impo = Math.Abs(Impo)
- CveConcIE = 78
- Else
- TipoMovtoIE = False
- Impo = Math.Abs(Impo)
- CveConcIE = 211
+ For Each Dr As DataRow In ObjMov.DtResultados.FiltraParametros("CveConceptoContable IN (13,8,9,38)").Rows
+ CveConceptoContableAplciar = Dr("CveConceptoContable").ToString.ToEntero
+ TipoMovtoAplicar = Not CBool(Dr("TipoMovto").ToString)
+ ImporteAplicar = (Dr("Importe").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ ImporteAplicarMN = (Dr("ImporteMN").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ ImporteAplicarME = (Dr("ImporteME").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ IdCtaContableAplicar = Dr("IdCtaContable").ToString.ToEntero
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
+ Select Case CveConceptoContableAplciar
+ Case 13
+ CveConceptoContableAplciar = 61
+ Case 8
+ CveConceptoContableAplciar = 62
+ Case 9
+ CveConceptoContableAplciar = 63
+ Case 38
+ CveConceptoContableAplciar = 39
+ End Select
+ TipoMovtoAplicar = Not TipoMovtoAplicar
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ Exit Select
+ End If
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ Exit Select
+ End If
+
+ Next
End If
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=Impo, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
+ Case "DevDinC"
+ 'asdasdasd
+ 'asdasdasdasd
+ Dim IdCtaContableAplicar = -1
+ Dim ImporteAplicar = 0.0D
+ Dim ImporteAplicarMN = 0.0D
+ Dim ImporteAplicarME = 0.0D
+ Dim ReferenciaAplicar = ObjIE.Folio
+
+ Dim ConceptoAplicar = $"Devolución de Proveedor {PagueseA} {TxtImporte.Text} NC:{SerieFolioDeCDin}"
+
+ ImporteAplicar = TxtImporte.Text.ToDecimal
+ ImporteAplicarME = ImporteAplicar
+
+
+ 'CONSIDERA COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ImporteAplicar
+ Else
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ End If
+
+ Dim TCCompra As Decimal = 1
+ Dim TCDocumento As Decimal = 1
+
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+
+ TCCompra = GlobalTipoCambio(FechaCompra).ToDecimal
+ TCDocumento = GlobalTipoCambio(TxtFechaDocumento.Text.ToDate).ToDecimal
+
+ If TCCompra <= 0 Then
+ Alert("No se pudo obtener el tipo de cambio de la nota de crédito.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ If TCCompra <= 0 Then
+ Alert("No se pudo obtener el tipo de cambio del documentpo.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ End If
+
+
+
+ 'BANCOS
+ IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
+ Exit Select
+ End If
+
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCDocumento)) - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+ 'CANCELA NC
+ IdCtaContableAplicar = IDCtaBeneficiario
+ ImporteAplicarMN = ImporteAplicar ' (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, (ImporteAplicar), ReferenciaAplicar, 18, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=(ImporteAplicarMN), ImporteME:=ImporteAplicarME, TipoCambio:=TCCompra) Then
MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
Exit Select
End If
- End If
-
- 'CANCELA NC
- IdCtaContableAplicar = IDCtaBeneficiario
- ImporteAplicar = ImporteAplicar - TxtOtrosIngresosEgresos.Text.ToDecimal
- ImporteAplicarMN = ImporteAplicar ' (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 18, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=(ImporteAplicarMN), ImporteME:=ImporteAplicarME, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
- Exit Select
- End If
-
-
- 'NC COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
-
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCCompra)) - ImporteAplicar).RoundSQL()
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -(ImporteAplicar), ReferenciaAplicar, 201, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-(ImporteAplicarMN), ImporteME:=-(ImporteAplicarME), CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
-
- End If
-
- If TCCompra <> TCDocumento Then
-
- Dim DiferenciaTC As Decimal = TCCompra - TCDocumento
-
- Dim DiferenciaImportes As Decimal = Math.Abs((ImporteAplicar * TCCompra) - (ImporteAplicar * TCDocumento))
-
- If DiferenciaTC < 0 Then
- '64
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
- Exit Select
- End If
-
- Else
- '65
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
- Exit Select
- End If
-
- End If
-
-
-
- End If
-
- 'IMPUESTOS
-
- Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
- Dim CveConceptoContableAplciar = -1
- Dim TipoMovtoAplicar = False
-
-
- Dim ObjCompras As New ClsCompras()
- If ObjCompras.GetCompras(CveCompraDeCDin, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
-
- Dim dr As DataRow = ObjCompras.DtResultados.Rows(0)
- If dr IsNot Nothing Then
-
- Dim CveMonedaDev As Integer = dr("CveMoneda").ToString.ToEntero
- Dim TotalCompraDev As Decimal = dr("Total").ToString.ToDecimal
-
- Dim IVADev As Decimal = dr("IVA").ToString.ToDecimal
- Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
- PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
-
- Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
- Dim CveCuentaIVAxAcreditarDevDinC = 0
- Dim CveCuentaIVAAcreditableDevDinC = 0
- Dim IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
- Dim IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
-
-
- Dim IVADevMN As Decimal = 0
- Dim IEPSDevMN As Decimal = 0
-
-
- Dim PorcentajeDevolucion As Decimal = ((TxtImporte.Text.ToDecimal * 100D / TotalCompraDev) / 100).RoundSQL(2)
-
- IVADev = Math.Round(IVADev * PorcentajeDevolucion, 2)
- IEPSDev = Math.Round(IEPSDev * PorcentajeDevolucion, 2)
-
- Dim CveCuentaDevolucionIMPUESTOS As Integer = -1
- Dim IdCtaIVADevolucionIMPUESTOS As Integer = -1
-
-
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- IVADevMN = IVADev
- IEPSDevMN = IEPSDev
- Else
- IVADevMN = (IVADev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
- IEPSDevMN = (IEPSDev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
- End If
-
-
- Dim ErrorDevolucionImpuestos As Boolean = False
-
- If IVADev > 0 Then
-
- CveCuentaDevolucionIMPUESTOS = CveCuentaIVAxAcreditarDevDinC
- IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
-
- CveCuentaDevolucionIMPUESTOS = CveCuentaIVAAcreditableDevDinC
- IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
-
- End If
- End If
-
-
- If IEPSDev > 0 Then
- 'Dim ObjContabilidad As New ClsContabilidad
- If ObjMov.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then
- Try
- CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditarSIG").ToString.ToEntero
- IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 25, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
-
- If ObjMov.GetRetCuenta(26, UsuarioActual.CveEmpresa) Then
- Try
- CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
- IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 26, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
-
-
- Catch ex As Exception
- Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
- ErrorDevolucionImpuestos = True
- End Try
-
- End If
-
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
-
- Catch ex As Exception
- Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
- ErrorDevolucionImpuestos = True
- End Try
- End If
- End If
-
- If ErrorDevolucionImpuestos Then
- MsgError = MsgError & " Error en devolución compra."
- End If
-
-
- End If
- End If
-
-
-
- Case "EGSCREDITO"
-
- Dim ConceptoContable As Integer
- Dim TipoMovimiento As Boolean
- Dim importeMovimiento As Decimal
- Dim FechaMovimiento As Date = Now
- Dim Concepto As String = ""
- Dim Referencia As String = PagueseA
-
- Dim importeMX As Decimal
- Dim Multiplicador As Integer
-
- If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
-
- For Each Row As DataRow In ObjMov.DtResultados.Rows
-
- ConceptoContable = Row("CveConcepto").ToString.ToEntero
- TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
- importeMovimiento = 0
- Multiplicador = (Row("Multiplicador").ToString.ToEntero)
- Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
-
- Select Case ConceptoContable
-
- Case 30
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
- Case 42
-
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
-
-
- Case 46
- If TxtInteresMoratorio.Text.ToDecimal > 0 Then
- importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
- importeMX = importeMovimiento
- Else
- importeMovimiento = 0
- importeMX = 0
- End If
- Case 48
-
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
- End Select
-
- If importeMovimiento <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
-
- Next
- End If
-
- Case Else
- Dim TipoMovimiento As Boolean = True
-
- If Opcion.Contiene("ANTC") Then
- TipoMovimiento = False
- End If
-
- If CveConceptoCompra = 10 AndAlso DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- IDCtaBeneficiario = IdCtaAnticipoExtranjera
- CveCuentaConta = 0
- End If
-
- 'MOVIMIENTOS EGRESOS
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- Dim IVA As Decimal = 0 ' TxtImporte.Text.ToDouble * HdnProvPorIVA.Value.ToDouble
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, TxtImporte.Text.ToDecimal - IVA - CIF, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DdlIEAcreedor.SelectedValue.ToEntero) Then
- If IVA > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Ref, 19, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- MsgError = "Detalle"
- End If
- 'intereses pagados
- If CIF > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, CIF, Ref, 46, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=CIF, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- MsgError = "Detalle"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza2"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza"
- End If
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- Dim ImporteAplicar As Decimal = TxtImporte.Text.ToDecimal
- Dim ImporteAplicarMN = (ImporteAplicar * TxtTipoCambio.Text.ToDecimal - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAplicar, Ref, 204, Conc, Now, IDCtaContableComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=CveCuentaConta, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
-
- If CveConceptoCompra = 10 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteAplicar, Ref, 266, Conc, Now, IdCtaAnticipoComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=0, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
-
-
- End If
-
-
-
- If Opcion.Contiene("EGSSINFACT") AndAlso CveSolicitudViatico > 0 AndAlso MsgError = "" Then
- If Not ObjIE.UpdateSolicitudesViaticosIE(CveSolicitudViatico, CveIE) Then
- MsgError = "Ocurrió un error al vincular el egreso con la solicitud de viatico."
- End If
- End If
-
- End Select
-
- 'El movimiento 1 es el de Venta
- 'Conta SIG
- If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" AndAlso UsuarioActual.Empresa.UsaContabilidadSIG Then
- If CveCuentaBeneficiario > 0 And CveCuentaConta > 0 Then
- If ObjMov.ContabilizarPrePolizaSIG(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
- IDPoliza = ObjMov.ContaIdPoliza
- Else
- Alert("Ocurrio un error al contabilizar en SIG, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
- End If
- Else
- If CveCuentaConta < 1 Then
- Alert("No se puede contabilizar la Prepoliza en SIG debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
- End If
- If CveCuentaBeneficiario < 1 Then
- Alert("No se puede contabilizar la Prepoliza en SIG debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
- End If
- End If
- End If
-
- 'Conta ContPAQ
- If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" Then
- If IDCtaBeneficiario > 0 And IDCtaContable > 0 Then
- If ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
- IDPoliza = ObjMov.ContaIdPoliza
- 'Alert(alertaContabilizacion & ObjMov.AlertaMensaje, ModExtensiones.TipoMensaje.MsgInformacion)
- Else
- Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
- End If
- Else
- If IDCtaContable < 1 Then
- Alert("No se puede contabilizar la Prepoliza debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
- End If
- If IDCtaBeneficiario < 1 Then
- Alert("No se puede contabilizar la Prepoliza debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
- End If
- End If
- End If
-
- If UsuarioActual.Empresa.UsaAC Then
- Dim ConceptoRenglon, Referencia As String
- Dim FolioPoliza As Integer
- Dim Fecha As Date = TxtFechaDocumento.Text.ToDate
- Dim TipoChq As String = ""
- Dim Total As Double = TxtImporte.Text.ToDouble
-
- Dim Conta As New ClsContPAQi(UsuarioActual.Empresa)
- Conta.IniciaTransacSQL()
-
- If DdlTipoTransaccion.SelectedValue = "1" Then TipoChq = "CHQ"
- ConceptoRenglon = String.Format("Anticipo {0}", PagueseA)
-
- IDPoliza = Conta.AddPoliza(2, ConceptoRenglon, Total, Total, UsuarioActual.CveUsuario, Fecha, ObjIE.Folio, TipoChq)
-
- If IDPoliza > 0 Then
- FolioPoliza = Conta.Folio
- Referencia = ObjIE.Folio
- ConceptoRenglon = String.Format("Anticipo {0} {1}", PagueseA, TxtObservaciones.Text)
-
- Total = TxtImporte.Text.ToDouble
-
- If Not Conta.AddMovimiento(IDPoliza, IDCtaContable, True, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
-
- If Not Conta.AddMovimiento(IDPoliza, IDCtaBeneficiario, False, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
-
- Else
- MsgError = "No se insertó el encabezado"
- End If
-
- If MsgError = "" Then
- Conta.Commit()
-
- Conta.AjustaPoliza(IDPoliza)
- 'actualizar la conta del IE
- ObjIE.UpdateIEPrePoliza(Fecha, FolioPoliza.ToString, IDPoliza, CvePrePoliza, CveIE, 0)
- Else
- Conta.RollBack()
- IDPoliza = 0
- End If
-
- Conta.Dispose()
- End If
-
- 'Notificación de Pago
- If TxtNotificarA.Text.Trim <> "" Then
- NotificacionPago(CveIE, TxtNotificarA.Text.Trim)
- End If
-
- Else
- MsgError = "No se pudo insertar la póliza"
- End If
-
- Else
- MsgError = "No se insertó el encabezado"
- End If
-
- End If
-
- Else
- Msg.Append("El Documento se guardó correctamente.")
-
- End If
-
- 'SOLICITUD DE ANTICIPO OC
- If MsgError = "" Then
- MsgError = GuardaSolicitudAnticipoOC(ObjOC)
- End If
-
- If MsgError = "" Then
- 'VIATICOS
- If ChkAplicaViatico.Checked Then
- Dim Retorno As String = TimbrarNomina12(CvePersonal)
- If Retorno <> "" Then MsgError = $"{MsgError} {Retorno}" : Msg.Clear() : CveIE = -1
- If Retorno <> "" Then
- Alert(Retorno, TipoMensaje.MsgError)
- End If
- End If
- End If
-
- If MsgError = "" Then
- If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
- If ObjMov.ValorPolizaDescuadre > 0 Then
- ' MsgError = ObjMov.MensajePolizaDescuadre
- GuardaLogAD($"Bancos/IE | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
- End If
- Else
- MsgError = "No se pudo validar la prepoliza de cuadre."
- End If
- End If
-
- If MsgError = "" Then
- 'IMPRIME CHEQUE
- 'GeneraChequePDF(CveIE, UsuarioActual.Empresa, IDPoliza)
- If Msg.ToString = "" Then
- Msg.Append("El Documento se guardo correctamente")
- End If
- Dim Archivo As System.IO.FileInfo = Nothing
- 'VERIFICA SI EXISTE EL FORMATO
- If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(2, 8, 9) Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta))
- ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1) Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/CHQ-{1}.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
- If Not Archivo.Exists Then
- Archivo = New System.IO.FileInfo(String.Format("{0}\Empresas\Grales\Formatos\CHQ.rdlc", AppDomain.CurrentDomain.BaseDirectory))
- End If
- ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(6) And UsuarioActual.CveEmpresa = 72 Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/ComprobanteEgreso.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
- End If
-
- If Archivo IsNot Nothing Then
- If Archivo.Exists Then
- Msg.AppendFormat("
{1} ", Encripta(String.Format("OP=IECHEQUE&CVEIE={0}", CveIE)), String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
- End If
- End If
-
- If IDPoliza > 0 Then
- Msg.AppendFormat("
Ver Póliza", IDPoliza)
- End If
-
- 'AUTO DESCARGAR PDF PARA COMPU
- If UsuarioActual.CveEmpresa.Contiene(72, 1, 2) And CveSolicitudViatico > 0 Then
- If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1, 2, 6, 8, 9) Then
- RegistraScript($"window.location.href = '/Compras/PopUpVerFactura.aspx?P={Encripta(String.Format("OP=IE&CVEIE={0}", CveIE))}'", String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
- End If
- End If
- ObjIE.Commit()
-
- Else
- ObjIE.RollBack()
+
+ 'NC COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCCompra)) - ImporteAplicar).RoundSQL()
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -(ImporteAplicar), ReferenciaAplicar, 201, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-(ImporteAplicarMN), ImporteME:=-(ImporteAplicarME), CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+
+ End If
+
+ If TCCompra <> TCDocumento Then
+
+ Dim DiferenciaTC As Decimal = TCCompra - TCDocumento
+
+ Dim DiferenciaImportes As Decimal = Math.Abs((ImporteAplicar * TCCompra) - (ImporteAplicar * TCDocumento))
+
+ If DiferenciaTC < 0 Then
+ '64
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
+ Exit Select
+ End If
+
+ Else
+ '65
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
+ Exit Select
+ End If
+
+ End If
+
+ End If
+
+ 'IMPUESTOS
+
+ Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
+ Dim CveConceptoContableAplciar = -1
+ Dim TipoMovtoAplicar = False
+
+
+ Dim ObjCompras As New ClsCompras()
+ If ObjCompras.GetCompras(CveCompraDeCDin, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
+
+ Dim dr As DataRow = ObjCompras.DtResultados.Rows(0)
+ If dr IsNot Nothing Then
+
+ Dim CveMonedaDev As Integer = dr("CveMoneda").ToString.ToEntero
+ Dim TotalCompraDev As Decimal = dr("Total").ToString.ToDecimal
+
+ Dim IVADev As Decimal = dr("IVA").ToString.ToDecimal
+ Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
+ PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
+
+ Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
+ Dim CveCuentaIVAxAcreditarDevDinC = 0
+ Dim CveCuentaIVAAcreditableDevDinC = 0
+
+ Dim IdCtaIVAXAcreditarDevDinC = 0
+ Dim IdCtaIVAAcreditableDevDinC = 0
+
+ If DTCuentas IsNot Nothing AndAlso DTCuentas.Rows.Count > 0 Then
+ IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
+ IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
+ End If
+
+ Dim IVADevMN As Decimal = 0
+ Dim IEPSDevMN As Decimal = 0
+
+ Dim PorcentajeDevolucion As Decimal = ((TxtImporte.Text.ToDecimal * 100D / TotalCompraDev) / 100).RoundSQL(2)
+
+ IVADev = Math.Round(IVADev * PorcentajeDevolucion, 2)
+ IEPSDev = Math.Round(IEPSDev * PorcentajeDevolucion, 2)
+
+ Dim CveCuentaDevolucionIMPUESTOS As Integer = -1
+ Dim IdCtaIVADevolucionIMPUESTOS As Integer = -1
+
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ IVADevMN = IVADev
+ IEPSDevMN = IEPSDev
+ Else
+ IVADevMN = (IVADev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
+ IEPSDevMN = (IEPSDev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
+ End If
+
+ Dim ErrorDevolucionImpuestos As Boolean = False
+
+ If IVADev > 0 Then
+
+ CveCuentaDevolucionIMPUESTOS = CveCuentaIVAxAcreditarDevDinC
+ IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+
+ CveCuentaDevolucionIMPUESTOS = CveCuentaIVAAcreditableDevDinC
+ IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+
+ End If
+ End If
+
+
+ If IEPSDev > 0 Then
+ 'Dim ObjContabilidad As New ClsContabilidad
+ If ObjMov.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then
+ Try
+ CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditarSIG").ToString.ToEntero
+ IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 25, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+
+ If ObjMov.GetRetCuenta(26, UsuarioActual.CveEmpresa) Then
+ Try
+ CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
+ IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 26, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+
+
+ Catch ex As Exception
+ Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
+ ErrorDevolucionImpuestos = True
+ End Try
+
+ End If
+
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+
+ Catch ex As Exception
+ Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
+ ErrorDevolucionImpuestos = True
+ End Try
+ End If
+ End If
+
+ If ErrorDevolucionImpuestos Then
+ MsgError = MsgError & " Error en devolución compra."
+ End If
+
+
+ End If
+ End If
+
+ Case "EGSCREDITO"
+
+ Dim ConceptoContable As Integer
+ Dim TipoMovimiento As Boolean
+ Dim importeMovimiento As Decimal
+ Dim FechaMovimiento As Date = Now
+ Dim Concepto As String = ""
+ Dim Referencia As String = PagueseA
+
+ Dim importeMX As Decimal
+ Dim Multiplicador As Integer
+
+ If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
+
+ For Each Row As DataRow In ObjMov.DtResultados.Rows
+
+ ConceptoContable = Row("CveConcepto").ToString.ToEntero
+ TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
+ importeMovimiento = 0
+ Multiplicador = (Row("Multiplicador").ToString.ToEntero)
+ Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
+
+ Select Case ConceptoContable
+
+ Case 30
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+ Case 42
+
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ Case 46
+ If TxtInteresMoratorio.Text.ToDecimal > 0 Then
+ importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
+ importeMX = importeMovimiento
+ Else
+ importeMovimiento = 0
+ importeMX = 0
+ End If
+ Case 48
+
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ End Select
+
+ If importeMovimiento <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+
+ Next
+ End If
+
+ Case Else
+ Dim TipoMovimiento As Boolean = True
+
+ If Opcion.Contiene("ANTC") Then
+ TipoMovimiento = False
+ End If
+
+ If CveConceptoCompra = 10 AndAlso DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ IDCtaBeneficiario = IdCtaAnticipoExtranjera
+ CveCuentaConta = 0
+ End If
+
+ 'MOVIMIENTOS EGRESOS
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ Dim IVA As Decimal = 0 ' TxtImporte.Text.ToDouble * HdnProvPorIVA.Value.ToDouble
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, TxtImporte.Text.ToDecimal - IVA - CIF, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DdlIEAcreedor.SelectedValue.ToEntero) Then
+ If IVA > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Ref, 19, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ MsgError = "Detalle"
+ End If
+ 'intereses pagados
+ If CIF > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, CIF, Ref, 46, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=CIF, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ MsgError = "Detalle"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza2"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza"
+ End If
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ Dim ImporteAplicar As Decimal = TxtImporte.Text.ToDecimal
+ Dim ImporteAplicarMN = (ImporteAplicar * TxtTipoCambio.Text.ToDecimal - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAplicar, Ref, 204, Conc, Now, IDCtaContableComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=CveCuentaConta, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+
+ If CveConceptoCompra = 10 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteAplicar, Ref, 266, Conc, Now, IdCtaAnticipoComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=0, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+
+ End If
+
+ If Opcion.Contiene("EGSSINFACT") AndAlso CveSolicitudViatico > 0 AndAlso MsgError = "" Then
+ If Not ObjIE.UpdateSolicitudesViaticosIE(CveSolicitudViatico, CveIE) Then
+ MsgError = "Ocurrió un error al vincular el egreso con la solicitud de viatico."
+ End If
+ End If
+
+ End Select
+
+ 'El movimiento 1 es el de Venta
+ 'Conta SIG
+ If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" AndAlso UsuarioActual.Empresa.UsaContabilidadSIG Then
+ If CveCuentaBeneficiario > 0 And CveCuentaConta > 0 Then
+ If ObjMov.ContabilizarPrePolizaSIG(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
+ IDPoliza = ObjMov.ContaIdPoliza
+ Else
+ Alert("Ocurrio un error al contabilizar en SIG, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
+ End If
+ Else
+ If CveCuentaConta < 1 Then
+ Alert("No se puede contabilizar la Prepoliza en SIG debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ If CveCuentaBeneficiario < 1 Then
+ Alert("No se puede contabilizar la Prepoliza en SIG debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ End If
+ End If
+
+ 'Conta ContPAQ
+ If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" Then
+ If IDCtaBeneficiario > 0 And IDCtaContable > 0 Then
+ If ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
+ IDPoliza = ObjMov.ContaIdPoliza
+ 'Alert(alertaContabilizacion & ObjMov.AlertaMensaje, ModExtensiones.TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
+ End If
+ Else
+ If IDCtaContable < 1 Then
+ Alert("No se puede contabilizar la Prepoliza debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ If IDCtaBeneficiario < 1 Then
+ Alert("No se puede contabilizar la Prepoliza debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ End If
+ End If
+
+ If UsuarioActual.Empresa.UsaAC Then
+ Dim ConceptoRenglon, Referencia As String
+ Dim FolioPoliza As Integer
+ Dim Fecha As Date = TxtFechaDocumento.Text.ToDate
+ Dim TipoChq As String = ""
+ Dim Total As Double = TxtImporte.Text.ToDouble
+
+ Dim Conta As New ClsContPAQi(UsuarioActual.Empresa)
+ Conta.IniciaTransacSQL()
+
+ If DdlTipoTransaccion.SelectedValue = "1" Then TipoChq = "CHQ"
+ ConceptoRenglon = String.Format("Anticipo {0}", PagueseA)
+
+ IDPoliza = Conta.AddPoliza(2, ConceptoRenglon, Total, Total, UsuarioActual.CveUsuario, Fecha, ObjIE.Folio, TipoChq)
+
+ If IDPoliza > 0 Then
+ FolioPoliza = Conta.Folio
+ Referencia = ObjIE.Folio
+ ConceptoRenglon = String.Format("Anticipo {0} {1}", PagueseA, TxtObservaciones.Text)
+
+ Total = TxtImporte.Text.ToDouble
+
+ If Not Conta.AddMovimiento(IDPoliza, IDCtaContable, True, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
+
+ If Not Conta.AddMovimiento(IDPoliza, IDCtaBeneficiario, False, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
+
+ Else
+ MsgError = "No se insertó el encabezado"
+ End If
+
+ If MsgError = "" Then
+ Conta.Commit()
+
+ Conta.AjustaPoliza(IDPoliza)
+ 'actualizar la conta del IE
+ ObjIE.UpdateIEPrePoliza(Fecha, FolioPoliza.ToString, IDPoliza, CvePrePoliza, CveIE, 0)
+ Else
+ Conta.RollBack()
+ IDPoliza = 0
+ End If
+
+ Conta.Dispose()
+ End If
+
+ 'Notificación de Pago
+ If TxtNotificarA.Text.Trim <> "" Then
+ NotificacionPago(CveIE, TxtNotificarA.Text.Trim)
+ End If
+
+ Else
+ MsgError = "No se pudo insertar la póliza"
+ End If
+
+ Else
+ MsgError = "No se insertó el encabezado"
+ End If
+
+ End If
+
+ Else
+ Msg.Append("El Documento se guardó correctamente.")
+
+ End If
+
+ 'SOLICITUD DE ANTICIPO OC
+ If MsgError = "" Then
+ MsgError = GuardaSolicitudAnticipoOC(ObjOC)
+ End If
+
+ If MsgError = "" Then
+ 'VIATICOS
+ If ChkAplicaViatico.Checked Then
+ Dim Retorno As String = TimbrarNomina12(CvePersonal)
+ If Retorno <> "" Then MsgError = $"{MsgError} {Retorno}" : Msg.Clear() : CveIE = -1
+ If Retorno <> "" Then
+ Alert(Retorno, TipoMensaje.MsgError)
+ End If
+ End If
+ End If
+
+ If MsgError = "" Then
+ If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
+ If ObjMov.ValorPolizaDescuadre > 0 Then
+ ' MsgError = ObjMov.MensajePolizaDescuadre
+ GuardaLogAD($"Bancos/IE | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
+ End If
+ Else
+ MsgError = "No se pudo validar la prepoliza de cuadre."
+ End If
+ End If
+
+ If MsgError = "" Then
+ 'IMPRIME CHEQUE
+ 'GeneraChequePDF(CveIE, UsuarioActual.Empresa, IDPoliza)
+ If Msg.ToString = "" Then
+ Msg.Append("El Documento se guardo correctamente")
+ End If
+ Dim Archivo As System.IO.FileInfo = Nothing
+ 'VERIFICA SI EXISTE EL FORMATO
+ If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(2, 8, 9) Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta))
+ ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1) Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/CHQ-{1}.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
+ If Not Archivo.Exists Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}\Empresas\Grales\Formatos\CHQ.rdlc", AppDomain.CurrentDomain.BaseDirectory))
+ End If
+ ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(6) And UsuarioActual.CveEmpresa = 72 Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/ComprobanteEgreso.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
+ End If
+
+ If Archivo IsNot Nothing Then
+ If Archivo.Exists Then
+ Msg.AppendFormat("
{1} ", Encripta(String.Format("OP=IECHEQUE&CVEIE={0}", CveIE)), String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
+ End If
+ End If
+
+ If IDPoliza > 0 Then
+ Msg.AppendFormat("
+
+
+
+
+
<%--
- --%>
-
-
+ --%>
+
+
-
-
-
+
+
+
diff --git a/GPS/CatRemisionesVehiculos.aspx.vb b/GPS/CatRemisionesVehiculos.aspx.vb
index 69a7979ab..f2660c6f5 100644
--- a/GPS/CatRemisionesVehiculos.aspx.vb
+++ b/GPS/CatRemisionesVehiculos.aspx.vb
@@ -42,14 +42,12 @@ Partial Class GPS_CatRemisionesVehiculos
Dim ObjTSoft As New ClsTSoft
If ObjTSoft.GetRemisiones(UsuarioActual.CveCliente) Then
GvRemisiones.DataSource = ObjTSoft.DtResultados
- Else
- GvRemisiones.DataSource = Nothing
End If
If ObjTSoft.GetEstatusRemisiones() Then
DdlEstatus.DataSource = ObjTSoft.DtResultados
End If
-
- ObjTSoft.Dispose()
+ ObjTSoft.Dispose()
+
DdlEstatus.DataBind()
GvRemisiones.DataBind()
UPConsulta.Update()
@@ -91,16 +89,16 @@ Partial Class GPS_CatRemisionesVehiculos
UpContratos.Update()
End Sub
Protected Sub BtnActualizarEstatus_Click(sender As Object, e As EventArgs)
- Dim ObjSoft As New ClsTSoft
- Dim TrackingNo As String = If(TxtTracking.Text <> "", TxtTracking.Text, "-1")
- Dim NumRemolque As String = If(TxtNoRemolque.Text <> "", TxtNoRemolque.Text, "-1")
+ Dim TrackingNo As String = If(TxtTracking.Text <> "", TxtTracking.Text, "-1")
+ Dim NumRemolque As String = If(TxtNoRemolque.Text <> "", TxtNoRemolque.Text, "-1")
+ Dim ObjSoft As New ClsTSoft
If ObjSoft.UpdateEstatusRemisiones(CveRemision, DdlEstatus.SelectedValue.ToEntero, TrackingNo, NumRemolque) Then
Alert("El estatus se actualizó correctamente")
- End If
+ End If
+ ObjSoft.Dispose()
TxtNoRemolque.Text = ""
TxtTracking.Text = ""
- ObjSoft.Dispose()
CargaDatos()
RegistraScript("$('#C_BtnCerrarContrato').click();")
End Sub
@@ -108,17 +106,19 @@ Partial Class GPS_CatRemisionesVehiculos
RegistraScript("$('#C_BtnCerrarContrato').click();")
End Sub
Protected Sub imgHistorial_Click(sender As Object, e As EventArgs)
- Dim ObjSoft As New ClsTSoft
Dim Boton = CType(sender, LinkButton)
Dim GvRow As GridViewRow = DirectCast(Boton.NamingContainer, GridViewRow)
- CveRemision = Boton.CommandArgument.ToEntero
+ CveRemision = Boton.CommandArgument.ToEntero
+
+ Dim ObjSoft As New ClsTSoft
If ObjSoft.GETRemisionesHistorial(GvRow.DataKey("FolioRemision").ToString, GvRow.DataKey("NoEconomico").ToString) Then
GVHistorico.DataSource = ObjSoft.DtResultados
End If
ObjSoft.Dispose()
+
H1.InnerText = $"Histórico Remisión: {GvRow.DataKey("FolioRemision").ToString} "
GVHistorico.DataBind()
UpHistorico.Update()
- RegistraScript("$('#dvHistorico').modal();")
+ RegistraScript("$('#dvHistorico').modal('show');")
End Sub
End Class
diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb
index 3066afea6..7db555706 100644
--- a/General/SaldosIniciales.aspx.vb
+++ b/General/SaldosIniciales.aspx.vb
@@ -10,7 +10,8 @@ Imports GemBox.Spreadsheet
Partial Class General_SaldosIniciales
Inherits ClsPaginas
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
- If Not IsPostBack Then
+ If Not IsPostBack Then
+
End If
End Sub
@@ -68,7 +69,92 @@ Partial Class General_SaldosIniciales
'End Try
'Conexion.Close()
If Not ErrorArchivo Then
+
If RblFormato.SelectedValue = "1" Or RblFormato.SelectedValue = "2" Then
+ If Not dt.Columns(0).ColumnName = "Codigo" Then
+ Alert("El nombre de la primera columna debe ser 'Codigo'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(1).ColumnName = "RazonSocial" Then
+ Alert("El nombre de la segunda columna debe ser 'Fecha'.Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(2).ColumnName = "RFC" Then
+ Alert("El nombre de la tercera columna debe ser 'RFC'.Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(3).ColumnName = "Calle" Then
+ Alert("El nombre de la cuarta columna debe ser 'Calle'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(4).ColumnName = "Número exterior" Then
+ Alert("El nombre de la quinta columna debe ser 'Número exterior' .Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(5).ColumnName = "Colonia" Then
+ Alert("El nombre de la sexta columna debe ser 'Colonia'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(6).ColumnName = "Código postal" Then
+ Alert("El nombre de la séptima columna debe ser 'Código postal'.Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(7).ColumnName = "Población" Then
+ Alert("El nombre de la octava columna debe ser 'Población'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(8).ColumnName = "Estado" Then
+ Alert("El nombre de la novena columna debe ser 'Estado'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(9).ColumnName = "Teléfono" Then
+ Alert("El nombre de la décima columna debe ser 'Teléfono'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(10).ColumnName = "Contacto" Then
+ Alert("El nombre de la onceava columna debe ser 'Contacto'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(11).ColumnName = "Celular Contacto" Then
+ Alert("El nombre de la doceava columna debe ser 'Celular Contacto'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(12).ColumnName = "Limite Credito" Then
+ Alert("El nombre de la treceava columna debe ser 'Limite Credito'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+
+ If Not dt.Columns(13).ColumnName = "Plazo Cobranza" Then
+ Alert("El nombre de la catorceava columna debe ser 'Plazo Cobranza'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+
+ 'If Not dt.Columns(14).ColumnName = "Pais" Then
+ ' Alert("El nombre de la quinceava columna debe ser 'Plazo Cobranza'. Favor de corregirlo", TipoMensaje.MsgError)
+ ' Exit Sub
+ 'End If
+
+
+
+ If Not dt.Columns(14).ColumnName.ToUpper = "BANCO" Then
+ Alert("El nombre de la quinceava columna debe ser 'Banco'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(15).ColumnName.ToUpper = "N° CUENTA" Then
+ Alert("El nombre de la dieciseisava columna debe ser 'N° Cuenta'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+ If Not dt.Columns(16).ColumnName.ToUpper = "CLABE INTER" Then
+ Alert("El nombre de la diecisieteava columna debe ser 'Clabe Inter'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+
+
+
+
+
+ ElseIf RblFormato.SelectedValue = "2" Then
+
If Not dt.Columns(0).ColumnName = "Codigo" Then
Alert("El nombre de la primera columna debe ser 'Codigo'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
@@ -124,22 +210,24 @@ Partial Class General_SaldosIniciales
If Not dt.Columns(13).ColumnName = "Plazo Cobranza" Then
Alert("El nombre de la treceava columna debe ser 'Plazo Cobranza'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
- End If
- If RblFormato.SelectedValue = "1" Then
- If Not dt.Columns(14).ColumnName = "Vendedor" Then
+ End If
+
+
+ If Not dt.Columns(14).ColumnName = "Vendedor" Then
Alert("El nombre de la catorceava columna debe ser 'Es distribuidor'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
End If
If Not dt.Columns(15).ColumnName = "Clasificación" Then
Alert("El nombre de la catorceava columna debe ser 'Es distribuidor'. Favor de corregirlo", TipoMensaje.MsgError)
Exit Sub
- End If
- If Not dt.Columns(16).ColumnName = "Es distribuidor" Then
- Alert("El nombre de la catorceava columna debe ser 'Es distribuidor'. Favor de corregirlo", TipoMensaje.MsgError)
- Exit Sub
- End If
- End If
-
+ End If
+ If Not dt.Columns(16).ColumnName = "Es distribuidor" Then
+ Alert("El nombre de la catorceava columna debe ser 'Es distribuidor'. Favor de corregirlo", TipoMensaje.MsgError)
+ Exit Sub
+ End If
+
+
+
ElseIf RblFormato.SelectedValue = "3" Or RblFormato.SelectedValue = "4" Then
If Not dt.Columns(0).ColumnName = "Sucursal" Then
Alert("El nombre de la primera columna debe ser 'Sucursal'. Favor de corregirlo", TipoMensaje.MsgError)
@@ -517,7 +605,8 @@ Partial Class General_SaldosIniciales
If Not ErrorArchivo Then
'P R O D U C T O S / S E R V I C I O S
- If RblFormato.SelectedValue = "5" Then
+ If RblFormato.SelectedValue = "5" Then
+
Dim ObjPS As New ClsProductosServicios
Dim ObjGral As New ClsGenerales(ObjPS.IniciaTransacSQL())
Dim ObjClas As New ClsClasificaciones(ObjPS.IniciaTransacSQL())
@@ -654,10 +743,14 @@ Partial Class General_SaldosIniciales
End If
If Not CveClasificacion2 > 0 AndAlso Clasificacion2 <> "" Then
- Dim CveCategoria As Integer
+ Dim CveCategoria As Integer
+
+
+
If ObjGral.GetCategorias(UsuarioActual.CveEmpresa, 4) Then
CveCategoria = ObjGral.DtResultados.FiltroPrimeroValor("CveCategoria", "").ToEntero
End If
+
If Not CveCategoria > 0 Then
If ObjGral.AddCategorias(Clasificacion2, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 4) Then
@@ -665,12 +758,27 @@ Partial Class General_SaldosIniciales
CveCategoria = ObjGral.DtResultados.FiltroPrimeroValor("CveCategoria", "").ToEntero
End If
End If
- End If
- If ObjClas.AddClasificaciones(Clasificacion2, "", -1, "-1", -1, "-1", -1, "-1", CveCategoria, UsuarioActual.CveUsuario,
- UsuarioActual.CveEmpresa) Then
- If ObjClas.GetClasificaciones(Tipo:=4) Then Application("GlobalDTClasificaciones2") = ObjClas.DtResultados
- CveClasificacion2 = GlobalDTClasificaciones2(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveClasificacion", $"Clasificacion = '{Clasificacion2}'").ToString.ToEntero
- End If
+ End If
+
+
+ If ObjClas.GetClasificaciones(UsuarioActual.CveEmpresa) Then
+ CveClasificacion2 = ObjClas.DtResultados.FiltroPrimeroValor("CveClasificacion", $"Clasificacion = '{ Clasificacion2.Trim }'").ToEntero
+ End If
+
+
+ If CveClasificacion2 = 0 Then
+
+ If ObjClas.AddClasificaciones(Clasificacion2, "", -1, "-1", -1, "-1", -1, "-1", CveCategoria, UsuarioActual.CveUsuario,
+ UsuarioActual.CveEmpresa) Then
+ If ObjClas.GetClasificaciones(Tipo:=4) Then Application("GlobalDTClasificaciones2") = ObjClas.DtResultados
+ CveClasificacion2 = GlobalDTClasificaciones2(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveClasificacion", $"Clasificacion = '{Clasificacion2}'").ToString.ToEntero
+ End If
+
+ End If
+
+
+
+
End If
If Not CveClasificacion > 0 AndAlso Clasificacion <> "" Then Alert("No se encontró la Clasificación: " + Clasificacion, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
@@ -680,7 +788,7 @@ Partial Class General_SaldosIniciales
If Not CveMedida > 0 AndAlso Medida <> "" Then Alert("No se encontró la Media: " + Medida, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
If Not CveRinTamaño > 0 AndAlso RinTamaño <> "" Then Alert("No se encontró el Tamaño: " + RinTamaño, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
If Not CveModelo > 0 AndAlso Modelo <> "" Then Alert("No se encontró el Modelo: " + Modelo, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
- If Not CveClasificacion2 > 0 AndAlso Clasificacion2 <> "" Then Alert("No se encontró la Serie: " + Clasificacion2, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
+ 'If Not CveClasificacion2 > 0 AndAlso Clasificacion2 <> "" Then Alert("No se encontró la Serie: " + Clasificacion2, TipoMensaje.MsgAdvertencia) : ErrorPS = True : Exit For
If CvePS > 0 Then
If Not ObjPS.UpdatePS(CveClasificacion, 1, CveUnidadMedida, Codigo, "", CodigoBarras, Descripcion, Precio, 1, 1, False, 0, True, True, True, UsuarioActual.CveUsuario, CvePS, -1, -1, CveSATPS,
@@ -739,43 +847,106 @@ Partial Class General_SaldosIniciales
Dim ExisteProveedor As Boolean = False
ObjProv.IniciaTransacSQL()
- For Each Row As DataRow In dt.Rows
+ For Each Row As DataRow In dt.Rows
+
Dim Codigo As String = Row("Codigo").ToString
Dim RazonSocial As String = Row("RazonSocial").ToString
- Dim RFC As String = Row("RFC").ToString.Trim
- Dim Calle As String = Row("Calle").ToString
- Dim NumExt As Decimal = Row("Número exterior").ToString.ToDecimal
- Dim Colonia As String = Row("Colonia").ToString
- Dim CodigoPostal As Decimal = Row("Código Postal").ToString.ToDecimal
- Dim Poblacion As String = Row("Población").ToString
- Dim Estado As String = Row("Estado").ToString
+ Dim RFC As String = Row("RFC").ToString.Trim
+
+ Dim Dirrecion As String = $"{ Row("Población").ToString}, { Row("Estado").ToString} , Colonia { Row("Colonia").ToString}, {Row("Calle").ToString} #{Row("Número exterior").ToString}"
+
+ 'Dim NumExt As String = Row("Número exterior").ToString
+
+
+ ' Dim Colonia As String = Row("Colonia").ToString
+ Dim CodigoPostal As Integer = Row("Código Postal").ToString.ToEntero
+
+ ' Dim Poblacion As String = Row("Población").ToString
+
+ 'Dim Estado As String = Row("Estado").ToString
Dim Telefono As String = Row("Teléfono").ToString
- Dim Contacto As String = Row("Contacto").ToString
+ Dim ContactoMail As String = Row("Contacto").ToString
Dim CelularContacto As String = Row("Celular Contacto").ToString
Dim LimiteCredito As Double = Row("Limite Credito").ToString.ToDouble
- Dim PlazoCobranza As Integer = Row("Plazo Cobranza").ToString.ToEntero
+ Dim PlazoCobranza As Integer = Row("Plazo Cobranza").ToString.ToEntero
+
+ Dim Banco As String = Row("Banco").ToString
+ Dim NumeroCuenta As String = Row("N° CUENTA").ToString.Replace("-", "").Replace(" ", "")
+ Dim ClabeInter As String = Row("Clabe Inter").ToString.Replace("-", "").Replace(" ", "")
+
Dim CveProveedor As Integer = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveProveedor", $"RFC = '{RFC}'").ToString.ToEntero
- Dim CveProveedor2 As Integer = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveProveedor", $"RazonSocial = '{RazonSocial}'").ToString.ToEntero
- Dim CveProveedor3 As Integer = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveProveedor", $"Codigo = '{Codigo}'").ToString.ToEntero
-
- If CveProveedor > 0 Or CveProveedor2 > 0 Or CveProveedor3 > 0 Then
- Contador = Contador + 1
- 'If Not ObjProv.UpdateProveedor(Codigo, RazonSocial, RazonSocial, RazonSocial, RFC, Calle, Telefono,
- ' Contacto, "", Telefono, LimiteCredito, PlazoCobranza, "", 0, 0, 0, -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "",
- ' -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, -1, True, "", "", False, CveProveedor) Then
- ' ErrorProv = True
- ' Exit For
- 'End If
- Else
- If Not ObjProv.AddProveedor(Codigo, RazonSocial, RazonSocial, RazonSocial, RFC, Calle, Telefono,
- Contacto, "", Telefono, LimiteCredito, PlazoCobranza, "", 0, 0, 0, -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "",
- -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, -1, "", "", False, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ Dim CveProveedor2 As Integer = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveProveedor", $"RazonSocial = '{RazonSocial}'").ToString.ToEntero
+ Dim CveProveedor3 As Integer = 0
+
+ If Codigo.Trim.Length > 0 Then
+ CveProveedor3 = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveProveedor", $"Codigo = '{Codigo}'").ToString.ToEntero
+ End If
+
+
+
+ ' If CveProveedor > 0 Or CveProveedor2 > 0 Or CveProveedor3 > 0 Then
+ If CveProveedor > 0 Or CveProveedor2 > 0 Or CveProveedor3 > 0 Then
+ Contador = Contador + 1
+
+ 'If Not ObjProv.UpdateProveedor(Codigo, RazonSocial, RazonSocial, RazonSocial, RFC, Calle, Telefono,
+ ' Contacto, "", Telefono, LimiteCredito, PlazoCobranza, "", 0, 0, 0, -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "",
+ ' -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, -1, True, "", "", False, CveProveedor) Then
+ ' ErrorProv = True
+ ' Exit For
+ 'End If
+
+ Else
+
+ Telefono = Telefono.Replace("-", "").Replace("(", "").Replace(")", "").Trim
+ CelularContacto = CelularContacto.Replace("-", "").Replace("(", "").Replace(")", "").Trim
+
+ Telefono = If(Telefono.Length > 10, "", Telefono)
+ CelularContacto = If(CelularContacto.Length > 10, "", Telefono)
+
+ If Not ObjProv.AddProveedor(Codigo, RazonSocial, RazonSocial, RazonSocial, RFC, Dirrecion, Telefono,
+ "", ContactoMail, CelularContacto, LimiteCredito, PlazoCobranza, "", 0, 0, 0, -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "",
+ -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, "", -1, -1, "", "", False, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CP:=CodigoPostal) Then
ErrorProv = True
- Exit For
- End If
- End If
- Next
+ Exit For
+
+
+ Else
+
+ Dim ErrorCuentaDeposito As Boolean = False
+ 'RESTRICCIONES GENERALES
+ 'QUE TENGA ALGUN DATO DE TIPO DE CUENTA
+ If NumeroCuenta.Trim.Length = 0 AndAlso ClabeInter.Trim.Length = 0 Then
+ ErrorCuentaDeposito = True
+ End If
+
+ 'SI CLABE TIENE ALGO DEBE TENER UNA LOGITUD EXACTA DE 18
+ If ClabeInter.Trim.Length <> 0 AndAlso ClabeInter.Trim.Length <> 18 Then
+ ErrorCuentaDeposito = True
+ End If
+
+ If Not ErrorCuentaDeposito Then
+ Dim ObjGrales As New ClsGenerales(ObjProv.IniciaTransacSQL)
+ If Not ObjGrales.AddCuentasDepositos(Banco, "-1", "-1", NumeroCuenta, ClabeInter, "-1", "-1", "-1", "-1", UsuarioActual.CveUsuario, 1, CveProveedor:=ObjProv.CveProveedor) Then
+ 'ErrorProv = True
+ End If
+ End If
+ End If
+ End If
+
+
+
+
+ Next
+
+
+
+
+
+
+
+
+
If Not ErrorProv Then
ObjProv.Commit()
If ObjProv.GetProveedores(ClsCompProveedores.TipoConsulta.ParaGlobalDT, -1, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, -1) Then Application("GlobalDTCompProveedores") = ObjProv.DtResultados
@@ -1772,10 +1943,12 @@ Partial Class General_SaldosIniciales
End Sub
- Protected Sub BtnDescargar_Click(sender As Object, e As EventArgs) Handles BtnDescargar.Click
- Dim Directorio As String = ""
+ Protected Sub BtnDescargar_Click(sender As Object, e As EventArgs) Handles BtnDescargar.Click
+
+ Dim Directorio As String = ""
+
If RblFormato.SelectedValue = "1" Then
- Directorio = AppDomain.CurrentDomain.BaseDirectory & "Empresas\Grales\SaldosIniciales\FormatoClientes.xlsx"
+ Directorio = AppDomain.CurrentDomain.BaseDirectory & "Empresas\Grales\SaldosIniciales\FormatoProveedor.xlsx"
ElseIf RblFormato.SelectedValue = "2" Then
Directorio = AppDomain.CurrentDomain.BaseDirectory & "Empresas\Grales\SaldosIniciales\FormatoClientes.xlsx"
ElseIf RblFormato.SelectedValue = "3" Then
diff --git a/Inventarios/RecepcionUsados.aspx b/Inventarios/RecepcionUsados.aspx
index 672c93586..cd25a6832 100644
--- a/Inventarios/RecepcionUsados.aspx
+++ b/Inventarios/RecepcionUsados.aspx
@@ -65,9 +65,9 @@
Traspaso Almacen
- <%--
-
+ <%--
+
--%>
Ver PrePóliza
@@ -94,7 +94,7 @@
- Información del movimiento
+ Información del movimiento
+
+
-
diff --git a/Inventarios/RecepcionUsados.aspx.vb b/Inventarios/RecepcionUsados.aspx.vb
index 248603580..ff676f858 100644
--- a/Inventarios/RecepcionUsados.aspx.vb
+++ b/Inventarios/RecepcionUsados.aspx.vb
@@ -1,489 +1,514 @@
-Option Explicit On
-Option Strict On
-
-Imports System.Data
-Imports Extensiones
-Imports System.IO
-Imports Microsoft.Reporting.WebForms
-
-'Imports DocumentFormat.OpenXml.Wordprocessing
-
-Partial Class Inventarios_RecepcionUsados
- Inherits ClsPaginas
-
-#Region "Propiedades"
-
- Private _dtDatos As DataTable
-
- Public Property DtMovimientos() As DataTable
- Get
- Return CType(ViewState("DtMovimientos"), DataTable)
- End Get
- Set(value As DataTable)
- ViewState("DtMovimientos") = value
- End Set
- End Property
-
- Public Property DtMovimientosEntradaInvFisico() As DataTable
-
- Get
- Return CType(ViewState("DtMovimientosEntradaInvFisico"), DataTable)
- End Get
- Set(value As DataTable)
- ViewState("DtMovimientosEntradaInvFisico") = value
- End Set
-
- End Property
-
- Public Property DtMovimientosSalidaInvFisico() As DataTable
-
- Get
- Return CType(ViewState("DtMovimientosSalidaInvFisico"), DataTable)
- End Get
- Set(value As DataTable)
- ViewState("DtMovimientosSalidaInvFisico") = value
- End Set
-
- End Property
-
- Public Property CveMovimiento() As Integer
- Get
- Return ViewState("CveMovimiento").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("CveMovimiento") = value
- End Set
- End Property
- Private Property DtMov As DataTable
- Get
- Return CType(ViewState("DtMov"), DataTable)
- End Get
- Set(value As DataTable)
- ViewState("DtMov") = value
- End Set
- End Property
- Public Property CveCompra() As Integer
- Get
- Return ViewState("CveCompra").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("CveCompra") = value
- End Set
- End Property
- 'Public Property CveConcepto() As Integer
- ' Get
- ' Return ViewState("CveConcepto").ToString.ToEntero
- ' End Get
- ' Set(value As Integer)
- ' ViewState("CveConcepto") = value
- ' End Set
- 'End Property
- Public Property Folio() As Integer
- Get
- Return ViewState("Folio").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("Folio") = value
- End Set
- End Property
- Public Property CveMovimientoRelacionado As Integer
- Get
- Return ViewState("CveMovimientoRelacionado").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("CveMovimientoRelacionado") = value
- End Set
- End Property
- Public Property ConceptoRelacionado As String
- Get
- Return ViewState("ConceptoRelacionado").ToString
- End Get
- Set(value As String)
- ViewState("ConceptoRelacionado") = value
- End Set
- End Property
- Public Property FolioRelacionado As Integer
- Get
- Return ViewState("FolioRelacionado").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("FolioRelacionado") = value
- End Set
- End Property
- Public Property TieneRelacionado As Integer
- Get
- Return ViewState("TieneRelacionado").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("TieneRelacionado") = value
- End Set
- End Property
- Public Property EstatusAlmacenCompra As Integer
- Get
- Return ViewState("EstatusAlmacenCompra").ToString.ToEntero
- End Get
- Set(value As Integer)
- ViewState("EstatusAlmacenCompra") = value
- End Set
- End Property
- Public Property TieneSalida As Boolean
- Get
- Return CBool(ViewState("TieneSalida").ToString)
- End Get
- Set(value As Boolean)
- ViewState("TieneSalida") = value
- End Set
- End Property
- Private Property DtBitacora As DataTable
- Get
- Return CType(ViewState("DtBitacora"), DataTable)
- End Get
- Set(value As DataTable)
- ViewState("DtBitacora") = value
- End Set
- End Property
- Private Property CvePSSerieLote As Integer
- Get
- Return CType(ViewState("CvePSSerieLote"), Integer)
- End Get
- Set(value As Integer)
- ViewState("CvePSSerieLote") = value
- End Set
- End Property
- Private Property PSSerieLote As String
- Get
- Return CType(ViewState("PSSerieLote"), String)
- End Get
- Set(value As String)
- ViewState("PSSerieLote") = value
- End Set
- End Property
- Private Property CveUMSerieLote As Integer
- Get
- Return CType(ViewState("CveUMSerieLote"), Integer)
- End Get
- Set(value As Integer)
- ViewState("CveUMSerieLote") = value
- End Set
- End Property
- Private Property UMSerieLote As String
- Get
- Return CType(ViewState("UMSerieLote"), String)
- End Get
- Set(value As String)
- ViewState("UMSerieLote") = value
- End Set
- End Property
- Private Property CostoPromedioSerieLote As Double
- Get
- Return CType(ViewState("CostoPromedioSerieLote"), Double)
- End Get
- Set(value As Double)
- ViewState("CostoPromedioSerieLote") = value
- End Set
- End Property
- Public Property EsConsumoInterno As Boolean
- Get
- Return CBool(ViewState("EsConsumoInterno").ToString)
- End Get
- Set(value As Boolean)
- ViewState("EsConsumoInterno") = value
- End Set
- End Property
- Private Property FolioAsignado As Integer
- Get
- Return CType(ViewState("FolioAsignado"), Integer)
- End Get
- Set(value As Integer)
- ViewState("FolioAsignado") = value
- End Set
+Option Explicit On
+Option Strict On
+
+Imports System.Data
+Imports Extensiones
+Imports System.IO
+Imports Microsoft.Reporting.WebForms
+
+'Imports DocumentFormat.OpenXml.Wordprocessing
+
+Partial Class Inventarios_RecepcionUsados
+ Inherits ClsPaginas
+
+#Region "Propiedades"
+
+ Private _dtDatos As DataTable
+
+ Public Property DtMovimientos() As DataTable
+ Get
+ Return CType(ViewState("DtMovimientos"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtMovimientos") = value
+ End Set
End Property
- Private Property CveRemisionRecibida As Integer
- Get
- Return IfNull(ViewState("CveRemisionRecibida"), -1, CType(ViewState("CveRemisionRecibida"), Integer)).ToString().ToEntero()
- End Get
- Set(value As Integer)
- ViewState("CveRemisionRecibida") = value
- End Set
+ Public Property DtTamaños() As DataTable
+ Get
+ Return CType(ViewState("DtTamaños"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtTamaños") = value
+ End Set
End Property
- Private Property EsDistribuidor As Boolean
- Get
- Return CBool(IfNull(ViewState("EsDistribuidor"), False, CBool(ViewState("EsDistribuidor"))))
- End Get
- Set(value As Boolean)
- ViewState("EsDistribuidor") = value
- End Set
- End Property
-
-
- Private ReadOnly Property CveConcepto As Integer
- Get
- Return RBLOpcion.SelectedValue.ToEntero
- End Get
- End Property
-
- Public Property AgregarUsado As Boolean
- Get
- If ViewState("AgregarUsado") Is Nothing Then
- Return True
- Else
- Return Boolean.Parse(ViewState("AgregarUsado").ToString)
- End If
-
- End Get
- Set(value As Boolean)
- ViewState("AgregarUsado") = value
- End Set
- End Property
-
-
- Private Property IndexDTUsado As Integer
- Get
- Return CType(ViewState("IndexDTUsado"), Integer)
- End Get
- Set(value As Integer)
- ViewState("IndexDTUsado") = value
- End Set
- End Property
- Private Property Correo As String
- Get
- Return CType(ViewState("Correo"), String)
- End Get
- Set(value As String)
- ViewState("Correo") = value
- End Set
- End Property
- Private Property FolioCorreo As String
- Get
- Return CType(ViewState("FolioCorreo"), String)
- End Get
- Set(value As String)
- ViewState("FolioCorreo") = value
- End Set
- End Property
-
-
-#End Region
-
- Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
- If Not IsPostBack Then
-
-
- CveMovimiento = -1
- CveMovimientoRelacionado = -1
- TieneRelacionado = -1
- TieneSalida = False
- EstatusAlmacenCompra = -1
- EsConsumoInterno = False
- Correo = ""
- FolioCorreo = ""
-
- If IfNull(Request("Opc"), "").ToString = "S" Then
- RBLOpcion.SelectedValue = "3"
- DivCliente.Visible = False
- End If
-
- CreaDT()
- CargaCombos()
- TxtFecha.Text = Now.ToShortDateString
+
+ Public Property DtMovimientosEntradaInvFisico() As DataTable
+
+ Get
+ Return CType(ViewState("DtMovimientosEntradaInvFisico"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtMovimientosEntradaInvFisico") = value
+ End Set
+
+ End Property
+
+ Public Property DtMovimientosSalidaInvFisico() As DataTable
+
+ Get
+ Return CType(ViewState("DtMovimientosSalidaInvFisico"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtMovimientosSalidaInvFisico") = value
+ End Set
+
+ End Property
+
+ Public Property CveMovimiento() As Integer
+ Get
+ Return ViewState("CveMovimiento").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("CveMovimiento") = value
+ End Set
+ End Property
+ Private Property DtMov As DataTable
+ Get
+ Return CType(ViewState("DtMov"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtMov") = value
+ End Set
+ End Property
+ Public Property CveCompra() As Integer
+ Get
+ Return ViewState("CveCompra").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("CveCompra") = value
+ End Set
+ End Property
+ 'Public Property CveConcepto() As Integer
+ ' Get
+ ' Return ViewState("CveConcepto").ToString.ToEntero
+ ' End Get
+ ' Set(value As Integer)
+ ' ViewState("CveConcepto") = value
+ ' End Set
+ 'End Property
+ Public Property Folio() As Integer
+ Get
+ Return ViewState("Folio").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("Folio") = value
+ End Set
+ End Property
+ Public Property CveMovimientoRelacionado As Integer
+ Get
+ Return ViewState("CveMovimientoRelacionado").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("CveMovimientoRelacionado") = value
+ End Set
+ End Property
+ Public Property ConceptoRelacionado As String
+ Get
+ Return ViewState("ConceptoRelacionado").ToString
+ End Get
+ Set(value As String)
+ ViewState("ConceptoRelacionado") = value
+ End Set
+ End Property
+ Public Property FolioRelacionado As Integer
+ Get
+ Return ViewState("FolioRelacionado").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("FolioRelacionado") = value
+ End Set
+ End Property
+ Public Property TieneRelacionado As Integer
+ Get
+ Return ViewState("TieneRelacionado").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("TieneRelacionado") = value
+ End Set
+ End Property
+ Public Property EstatusAlmacenCompra As Integer
+ Get
+ Return ViewState("EstatusAlmacenCompra").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("EstatusAlmacenCompra") = value
+ End Set
+ End Property
+ Public Property TieneSalida As Boolean
+ Get
+ Return CBool(ViewState("TieneSalida").ToString)
+ End Get
+ Set(value As Boolean)
+ ViewState("TieneSalida") = value
+ End Set
+ End Property
+ Private Property DtBitacora As DataTable
+ Get
+ Return CType(ViewState("DtBitacora"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtBitacora") = value
+ End Set
+ End Property
+ Private Property CvePSSerieLote As Integer
+ Get
+ Return CType(ViewState("CvePSSerieLote"), Integer)
+ End Get
+ Set(value As Integer)
+ ViewState("CvePSSerieLote") = value
+ End Set
+ End Property
+ Private Property PSSerieLote As String
+ Get
+ Return CType(ViewState("PSSerieLote"), String)
+ End Get
+ Set(value As String)
+ ViewState("PSSerieLote") = value
+ End Set
+ End Property
+ Private Property CveUMSerieLote As Integer
+ Get
+ Return CType(ViewState("CveUMSerieLote"), Integer)
+ End Get
+ Set(value As Integer)
+ ViewState("CveUMSerieLote") = value
+ End Set
+ End Property
+ Private Property UMSerieLote As String
+ Get
+ Return CType(ViewState("UMSerieLote"), String)
+ End Get
+ Set(value As String)
+ ViewState("UMSerieLote") = value
+ End Set
+ End Property
+ Private Property CostoPromedioSerieLote As Double
+ Get
+ Return CType(ViewState("CostoPromedioSerieLote"), Double)
+ End Get
+ Set(value As Double)
+ ViewState("CostoPromedioSerieLote") = value
+ End Set
+ End Property
+ Public Property EsConsumoInterno As Boolean
+ Get
+ Return CBool(ViewState("EsConsumoInterno").ToString)
+ End Get
+ Set(value As Boolean)
+ ViewState("EsConsumoInterno") = value
+ End Set
+ End Property
+ Private Property FolioAsignado As Integer
+ Get
+ Return CType(ViewState("FolioAsignado"), Integer)
+ End Get
+ Set(value As Integer)
+ ViewState("FolioAsignado") = value
+ End Set
+ End Property
+ Private Property CveRemisionRecibida As Integer
+ Get
+ Return IfNull(ViewState("CveRemisionRecibida"), -1, CType(ViewState("CveRemisionRecibida"), Integer)).ToString().ToEntero()
+ End Get
+ Set(value As Integer)
+ ViewState("CveRemisionRecibida") = value
+ End Set
+ End Property
+ Private Property EsDistribuidor As Boolean
+ Get
+ Return CBool(IfNull(ViewState("EsDistribuidor"), False, CBool(ViewState("EsDistribuidor"))))
+ End Get
+ Set(value As Boolean)
+ ViewState("EsDistribuidor") = value
+ End Set
+ End Property
+
+
+ Private ReadOnly Property CveConcepto As Integer
+ Get
+ Return RBLOpcion.SelectedValue.ToEntero
+ End Get
+ End Property
+
+ Public Property AgregarUsado As Boolean
+ Get
+ If ViewState("AgregarUsado") Is Nothing Then
+ Return True
+ Else
+ Return Boolean.Parse(ViewState("AgregarUsado").ToString)
+ End If
+
+ End Get
+ Set(value As Boolean)
+ ViewState("AgregarUsado") = value
+ End Set
+ End Property
+
+
+ Private Property IndexDTUsado As Integer
+ Get
+ Return CType(ViewState("IndexDTUsado"), Integer)
+ End Get
+ Set(value As Integer)
+ ViewState("IndexDTUsado") = value
+ End Set
+ End Property
+ Private Property Correo As String
+ Get
+ Return CType(ViewState("Correo"), String)
+ End Get
+ Set(value As String)
+ ViewState("Correo") = value
+ End Set
+ End Property
+ Private Property FolioCorreo As String
+ Get
+ Return CType(ViewState("FolioCorreo"), String)
+ End Get
+ Set(value As String)
+ ViewState("FolioCorreo") = value
+ End Set
+ End Property
+ Private Property ObjRemisionNC As Modelos.Factura
+ Get
+ Return CType(ViewState("ObjRemisionNC"), Modelos.Factura)
+ End Get
+ Set(value As Modelos.Factura)
+ ViewState("ObjRemisionNC") = value
+ End Set
+ End Property
+ Private Property ObjFactura As Modelos.Factura
+ Get
+ Return CType(ViewState("ObjFactura"), Modelos.Factura)
+ End Get
+ Set(value As Modelos.Factura)
+ ViewState("ObjFactura") = value
+ End Set
+ End Property
+
+
+#End Region
+
+ Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
+ If Not IsPostBack Then
+
+
+ CveMovimiento = -1
+ CveMovimientoRelacionado = -1
+ TieneRelacionado = -1
+ TieneSalida = False
+ EstatusAlmacenCompra = -1
+ EsConsumoInterno = False
+ Correo = ""
+ FolioCorreo = ""
+
+ If IfNull(Request("Opc"), "").ToString = "S" Then
+ RBLOpcion.SelectedValue = "3"
+ DivCliente.Visible = False
+ End If
+
+ CreaDT()
+ CargaCombos()
+ TxtFecha.Text = Now.ToShortDateString
TxtFechaPendientes.Text = Now.ToShortDateString
- RVFecha.MaximumValue = Now.ToShortDateString
- InicializaClientes()
-
- 'si viene una parámetro para cargar un movimiento lo hacemos dentro del procedimiento cargadatos
- Select Case UsuarioActual.Empresa.Funcionalidad(103)
- Case "1"
-
- Case "2"
- divMonedaSeccion.Visible = True
- divGuia.Visible = True
- End Select
-
-
-
- 'AsignacionOpcion()
- SiguienteFolio()
-
-
- 'SI YA ES MOVIMIENTO REGISTRADO NO ESCONDE COLUMNA AF
- If CveMovimiento > 0 Then
- BloqueaEdicionEncabezado()
- If UsuarioActual.CveEmpresa.Contiene(66, 13) Then
- TrSubProyectoActivoFijo.Visible = True
- VisualizaAF(True)
- CargaSubProyectos()
- End If
- End If
-
- CargaSubProyectosUsados()
- InicializaBitacoraTemporal()
-
- If UsuarioActual.Empresa.Funcionalidad(132) = "1" Then
- DivCodigoSeriePS.Visible = True
- End If
-
- 'If IfNull(Request("CI"), -1).ToString.ToEntero > 0 Then
- ' ActivaConsumoInterno()
- 'End If
-
- 'BLOQUEA PERMISOS
- BtnGuardar.Enabled = PermiteGuardar()
- BtnEliminar.Enabled = PermiteEliminar()
- BtnContabilizar.Enabled = PermiteContabilizar()
- BtnNuevo.Enabled = PermiteCrearNuevo()
-
- ActivaPermisoSeccionAlmacen()
- If CveMovimiento > 0 Then
- PermisoVerImportes()
- End If
-
- 'DdlProducto2.setEsWebService(True)
- 'DdlProducto2.Attributes.Add("data-metodo", "getpsusados")
-
-
- End If
- End Sub
-
-
-
-
-#Region " PERMISOS PAGINAS "
- Private Function PermiteGuardar() As Boolean
- Return If(UsuarioActual.TienePermisoProceso(181) Or EsConsumoInterno, True, False)
- End Function
- '''
- ''' Este permiso solo habilita el Btn del GV. Debe ir en conjunto con el permiso 181 [PermiteGuardar]
- '''
- Private Function PermiteGuardarObservacionDetalle() As Boolean
- Return UsuarioActual.TienePermisoProceso(225)
- End Function
- Private Function PermiteEliminar() As Boolean
- Return If(UsuarioActual.TienePermisoProceso(182), True, False)
- End Function
- Private Function PermiteContabilizar() As Boolean
- Return If(UsuarioActual.TienePermisoProceso(183), True, False)
- End Function
- Private Function PermiteCrearNuevo() As Boolean
- Return If(UsuarioActual.TienePermisoProceso(184) Or EsConsumoInterno, True, False)
- End Function
- Private Sub ActivaPermisoSeccionAlmacen()
- ' GvM.Columns(12).Visible = UsuarioActual.Empresa.Funcionalidad(147) = "1"
-
-
- End Sub
- Private Sub PermisoVerImportes()
- Dim TienePermisoImportes As Boolean = UsuarioActual.TienePermisoProceso(201)
+ RVFecha.MaximumValue = Now.ToShortDateString
+ InicializaClientes()
+
+ 'si viene una parámetro para cargar un movimiento lo hacemos dentro del procedimiento cargadatos
+ Select Case UsuarioActual.Empresa.Funcionalidad(103)
+ Case "1"
+
+ Case "2"
+ divMonedaSeccion.Visible = True
+ divGuia.Visible = True
+ End Select
+
+
+
+ 'AsignacionOpcion()
+ SiguienteFolio()
+
+
+ 'SI YA ES MOVIMIENTO REGISTRADO NO ESCONDE COLUMNA AF
+ If CveMovimiento > 0 Then
+ BloqueaEdicionEncabezado()
+ If UsuarioActual.CveEmpresa.Contiene(66, 13) Then
+ TrSubProyectoActivoFijo.Visible = True
+ VisualizaAF(True)
+ CargaSubProyectos()
+ End If
+ End If
+
+ CargaSubProyectosUsados()
+ InicializaBitacoraTemporal()
+
+ If UsuarioActual.Empresa.Funcionalidad(132) = "1" Then
+ DivCodigoSeriePS.Visible = True
+ End If
+
+ 'If IfNull(Request("CI"), -1).ToString.ToEntero > 0 Then
+ ' ActivaConsumoInterno()
+ 'End If
+
+ 'BLOQUEA PERMISOS
+ BtnGuardar.Enabled = PermiteGuardar()
+ BtnEliminar.Enabled = PermiteEliminar()
+ BtnContabilizar.Enabled = PermiteContabilizar()
+ BtnNuevo.Enabled = PermiteCrearNuevo()
+
+ ActivaPermisoSeccionAlmacen()
+ If CveMovimiento > 0 Then
+ PermisoVerImportes()
+ End If
+
+ CargaTamaños()
+ 'DdlProducto2.setEsWebService(True)
+ 'DdlProducto2.Attributes.Add("data-metodo", "getpsusados")
+
+
+ End If
End Sub
-#End Region
-#Region " VALORES INICIALES "
- Protected Sub CreaDT()
- Dim dt As New DataTable
-
- Dim column As DataColumn = New DataColumn("No")
- column.DataType = Type.GetType("System.Int32")
- With column
- .AutoIncrement = True
- .AutoIncrementSeed = 1
- .AutoIncrementStep = 1
- End With
-
- 'dt.Columns.Add("No", Type.GetType("System.Int32"))
- dt.Columns.Add(column)
- dt.Columns.Add("CveMovimiento", Type.GetType("System.Int32"))
- dt.Columns.Add("CveMovimientoDetalle", Type.GetType("System.Int32"))
- dt.Columns.Add("Cantidad", Type.GetType("System.Double"))
- dt.Columns.Add("CveUM", Type.GetType("System.Int32"))
- dt.Columns.Add("UnidadMedida")
- dt.Columns.Add("CvePS", Type.GetType("System.Int32"))
- dt.Columns.Add("CodigoPS")
- dt.Columns.Add("Codigo")
- dt.Columns.Add("PS")
- dt.Columns.Add("PU", Type.GetType("System.Double"))
- dt.Columns.Add("PUExtranjero", Type.GetType("System.Double"))
- dt.Columns.Add("Total", Type.GetType("System.Double"))
- dt.Columns.Add("CveClasificacion", Type.GetType("System.Int32"))
- dt.Columns.Add("CveSeccionAlmacen", Type.GetType("System.Int32"))
- dt.Columns.Add("SeccionAlmacen")
- dt.Columns.Add("Estatus")
-
- dt.Columns.Add("CostoIndirecto", Type.GetType("System.Double"))
- dt.Columns.Add("CodigoAF")
- dt.Columns.Add("CveAF")
- dt.Columns.Add("SerieLote", Type.GetType("System.String"))
- dt.Columns.Add("Lote", Type.GetType("System.String"))
- dt.Columns.Add("Batch", Type.GetType("System.String"))
-
- dt.Columns.Add("Observaciones")
- dt.Columns.Add("CountMovimientoEntradaDetalle")
- dt.Columns.Add("TotalExtranjero", Type.GetType("System.Double"))
- dt.Columns.Add("CveTamaño", Type.GetType("System.Int32"))
- dt.Columns.Add("Tamaño", Type.GetType("System.String"))
- CargaGVM(dt)
-
- DtMovimientos = dt.Clone
- DtMovimientosEntradaInvFisico = dt.Clone
- DtMovimientosSalidaInvFisico = dt.Clone
-
- End Sub
+
+#Region " PERMISOS PAGINAS "
+ Private Function PermiteGuardar() As Boolean
+ Return If(UsuarioActual.TienePermisoProceso(181) Or EsConsumoInterno, True, False)
+ End Function
+ '''
+ ''' Este permiso solo habilita el Btn del GV. Debe ir en conjunto con el permiso 181 [PermiteGuardar]
+ '''
+ Private Function PermiteGuardarObservacionDetalle() As Boolean
+ Return UsuarioActual.TienePermisoProceso(225)
+ End Function
+ Private Function PermiteEliminar() As Boolean
+ Return If(UsuarioActual.TienePermisoProceso(182), True, False)
+ End Function
+ Private Function PermiteContabilizar() As Boolean
+ Return If(UsuarioActual.TienePermisoProceso(183), True, False)
+ End Function
+ Private Function PermiteCrearNuevo() As Boolean
+ Return If(UsuarioActual.TienePermisoProceso(184) Or EsConsumoInterno, True, False)
+ End Function
+ Private Sub ActivaPermisoSeccionAlmacen()
+ ' GvM.Columns(12).Visible = UsuarioActual.Empresa.Funcionalidad(147) = "1"
+
+
+ End Sub
+ Private Sub PermisoVerImportes()
+ Dim TienePermisoImportes As Boolean = UsuarioActual.TienePermisoProceso(201)
+ End Sub
+
+
+#End Region
+
+#Region " VALORES INICIALES "
+ Protected Sub CreaDT()
+ Dim dt As New DataTable
+
+ Dim column As DataColumn = New DataColumn("No")
+ column.DataType = Type.GetType("System.Int32")
+ With column
+ .AutoIncrement = True
+ .AutoIncrementSeed = 1
+ .AutoIncrementStep = 1
+ End With
+
+ 'dt.Columns.Add("No", Type.GetType("System.Int32"))
+ dt.Columns.Add(column)
+ dt.Columns.Add("CveMovimiento", Type.GetType("System.Int32"))
+ dt.Columns.Add("CveMovimientoDetalle", Type.GetType("System.Int32"))
+ dt.Columns.Add("Cantidad", Type.GetType("System.Double"))
+ dt.Columns.Add("CveUM", Type.GetType("System.Int32"))
+ dt.Columns.Add("UnidadMedida")
+ dt.Columns.Add("CvePS", Type.GetType("System.Int32"))
+ dt.Columns.Add("CodigoPS")
+ dt.Columns.Add("Codigo")
+ dt.Columns.Add("PS")
+ dt.Columns.Add("PU", Type.GetType("System.Double"))
+ dt.Columns.Add("PUExtranjero", Type.GetType("System.Double"))
+ dt.Columns.Add("Total", Type.GetType("System.Double"))
+ dt.Columns.Add("CveClasificacion", Type.GetType("System.Int32"))
+ dt.Columns.Add("CveSeccionAlmacen", Type.GetType("System.Int32"))
+ dt.Columns.Add("SeccionAlmacen")
+ dt.Columns.Add("Estatus")
+
+ dt.Columns.Add("CostoIndirecto", Type.GetType("System.Double"))
+ dt.Columns.Add("CodigoAF")
+ dt.Columns.Add("CveAF")
+ dt.Columns.Add("SerieLote", Type.GetType("System.String"))
+ dt.Columns.Add("Lote", Type.GetType("System.String"))
+ dt.Columns.Add("Batch", Type.GetType("System.String"))
+
+ dt.Columns.Add("Observaciones")
+ dt.Columns.Add("CountMovimientoEntradaDetalle")
+ dt.Columns.Add("TotalExtranjero", Type.GetType("System.Double"))
+ dt.Columns.Add("CveTamaño", Type.GetType("System.Int32"))
+ dt.Columns.Add("Tamaño", Type.GetType("System.String"))
+ CargaGVM(dt)
+
+ DtMovimientos = dt.Clone
+ DtMovimientosEntradaInvFisico = dt.Clone
+ DtMovimientosSalidaInvFisico = dt.Clone
+
+ End Sub
Private Sub CargaCombos()
- DdlSeccion.DataSource = GlobalDTSeccionAlmacen(UsuarioActual.CveEmpresa)
- DdlSeccion.Items.Insert(0, New ListItem("Seleccione", "-1"))
- DdlSeccion.DataBind()
-
- 'Llenar el dropdownlist de monedas
- DdlMoneda.DataSource = GlobalDTMonedas
- DdlMoneda.DataBind()
-
- 'Llenar el dropdownlist de almacén
- DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros("CveTipoAlmacen IN (22)") 'GlobalDTAlmacen(UsuarioActual.CveEmpresa)
-
- DdlAlmacen.Items.Insert(0, New ListItem("Seleccione", "-1"))
- DdlAlmacen.SelectedValue = "-1"
- DdlAlmacen.DataBind()
-
- If IsNothing(Request("CveMovimiento")) Then
- DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen)
- DdlAlmacen_SelectedIndexChanged(DdlAlmacen, EventArgs.Empty)
- End If
-
- CargaPS()
- End Sub
- Private Sub CargaPS()
- Dim ObjAcum As New ClsAcumuladores
- Dim lista As New List(Of String)
- Dim Filtro As String = ""
-
- If ObjAcum.TamañoGet(-1, UsuarioActual.CveEmpresa) Then
- For Each drow As DataRow In ObjAcum.DtResultados.Rows
-
- If drow("CvePSCargo").ToString.ToEntero > 0 Then
- lista.Add(drow("CvePSCargo").ToString)
+ DdlSeccion.DataSource = GlobalDTSeccionAlmacen(UsuarioActual.CveEmpresa)
+ DdlSeccion.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ DdlSeccion.DataBind()
+
+ 'Llenar el dropdownlist de monedas
+ DdlMoneda.DataSource = GlobalDTMonedas
+ DdlMoneda.DataBind()
+
+ 'Llenar el dropdownlist de almacén
+ DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros("CveTipoAlmacen IN (22)") 'GlobalDTAlmacen(UsuarioActual.CveEmpresa)
+
+ DdlAlmacen.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ DdlAlmacen.SelectedValue = "-1"
+ DdlAlmacen.DataBind()
+
+ If IsNothing(Request("CveMovimiento")) Then
+ DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen)
+ DdlAlmacen_SelectedIndexChanged(DdlAlmacen, EventArgs.Empty)
+ End If
+
+ CargaPS()
+ End Sub
+ Private Sub CargaPS()
+ Dim ObjAcum As New ClsAcumuladores
+ Dim lista As New List(Of String)
+ Dim Filtro As String = ""
+
+ If ObjAcum.TamañoGet(-1, UsuarioActual.CveEmpresa) Then
+ For Each drow As DataRow In ObjAcum.DtResultados.Rows
+
+ If drow("CvePSCargo").ToString.ToEntero > 0 Then
+ lista.Add(drow("CvePSCargo").ToString)
End If
- Next
- End If
-
- If lista.Count > 0 Then
-
- Filtro = "CvePS in(" & String.Join(",", lista) & ")"
-
- DdlProducto2.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltraParametros(Filtro)
- DdlProducto2.DataBind()
- DdlProducto2.Items.Insert(0, New ListItem("Seleccione", "-1"))
- End If
-
- ObjAcum.Dispose()
- End Sub
- Private Sub CargaSubProyectos()
- DdlSubProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1), GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1))
+ Next
+ End If
+
+ If lista.Count > 0 Then
+
+ Filtro = "CvePS in(" & String.Join(",", lista) & ")"
+
+ DdlProducto2.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltraParametros(Filtro)
+ DdlProducto2.DataBind()
+ DdlProducto2.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ End If
+
+ ObjAcum.Dispose()
+ End Sub
+ Private Sub CargaSubProyectos()
+ DdlSubProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1), GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1))
DdlSubProyecto.DataBind()
-
- 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
- End Sub
-
+
+ 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ End Sub
+
Private Sub CargaSubProyectosUsados()
If UsuarioActual.CveEmpresa = 140 Then
DivRecepcionUsados.Visible = True
@@ -502,1098 +527,1110 @@ Partial Class Inventarios_RecepcionUsados
DdlSubProyectos.SelectedValueExist(UsuarioActual.CveSubProyecto.ToString)
End If
- End Sub
- Private Sub CargaPersonal()
- TrPersonal.Visible = True
- Dim dt As DataTable = Nothing
-
- Dim RH As New ClsRH
-
- If RH.GetPersonal(-1, UsuarioActual.CveEmpresa) Then
- dt = RH.DtResultados
- End If
-
- RH.Dispose()
-
- DdlPersonal.DataSource = dt
- DdlPersonal.DataBind()
- 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
-#End Region
+ Private Sub CargaPersonal()
+ TrPersonal.Visible = True
+ Dim dt As DataTable = Nothing
-#Region " CARGA DATOS "
+ Dim RH As New ClsRH
+
+ If RH.GetPersonal(-1, UsuarioActual.CveEmpresa) Then
+ dt = RH.DtResultados
+ End If
+
+ RH.Dispose()
+
+ DdlPersonal.DataSource = dt
+ DdlPersonal.DataBind()
+ 'DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ End Sub
+#End Region
+
+#Region " CARGA DATOS "
- Private Sub BloqueaEdicionEncabezado()
-
-
- DdlAlmacen.Enabled = True
- 'DdlConcepto.Enabled = True
- TxtFolio.Enabled = True
- TxtFecha.Enabled = True
- TxtResponsable.Enabled = True
- TxtObservaciones.Enabled = True
- DdlMoneda.Enabled = True
- TxtGuia.Enabled = True
- DdlSeccion.Enabled = True
-
- If CveMovimiento > 0 Then
- DdlAlmacen.Enabled = False
- ' DdlConcepto.Enabled = False
- TxtFolio.Enabled = False
- If Not PermiteGuardar() Then TxtFecha.Enabled = False
- TxtResponsable.Enabled = False
- TxtObservaciones.Enabled = False
- DdlMoneda.Enabled = False
- TxtGuia.Enabled = False
- DdlSeccion.Enabled = False
- End If
- UppGrid.Update()
+ Private Sub BloqueaEdicionEncabezado()
+
+
+ DdlAlmacen.Enabled = True
+ 'DdlConcepto.Enabled = True
+ TxtFolio.Enabled = True
+ TxtFecha.Enabled = True
+ TxtResponsable.Enabled = True
+ TxtObservaciones.Enabled = True
+ DdlMoneda.Enabled = True
+ TxtGuia.Enabled = True
+ DdlSeccion.Enabled = True
+
+ If CveMovimiento > 0 Then
+ DdlAlmacen.Enabled = False
+ ' DdlConcepto.Enabled = False
+ TxtFolio.Enabled = False
+ If Not PermiteGuardar() Then TxtFecha.Enabled = False
+ TxtResponsable.Enabled = False
+ TxtObservaciones.Enabled = False
+ DdlMoneda.Enabled = False
+ TxtGuia.Enabled = False
+ DdlSeccion.Enabled = False
+ End If
+ UppGrid.Update()
End Sub
-#End Region
+#End Region
+
+#Region " BOTONES: ELIMINAR, NUEVO "
+ Protected Sub BtnNuevo_Click(sender As Object, e As EventArgs) Handles BtnNuevo.Click
+ 'Response.Redirect("EntradasSalidas.aspx")
+
+ LimpiarMovimiento()
+ BloqueaEdicionEncabezado()
+ End Sub
+ Private Sub LimpiarMovimiento()
+
+ CveMovimiento = -1
+ SiguienteFolio()
+
+ HplCompra.Visible = False
+ HplPoliza.Visible = False
+ HplVenta.Visible = False
+ HplOrdenCompra.Visible = False
+
+ TrTipoCargado.Visible = False
+ TrPersonal.Visible = False
+
+ DtMovimientos.Clear()
+ GvM.EditIndex = -1
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ BtnGuardar.Visible = PermiteGuardar()
+ BtnEliminar.Visible = False
+
+ DivRegistro.Visible = False
+ DivTipoCambio.Visible = False
+
+ If Not DdlAlmacen.Items.Contains(New ListItem("Seleccione", "-1")) Then
+ DdlAlmacen.Items.Add(New ListItem("Seleccione", "-1"))
+ End If
+ DdlAlmacen.SelectedValue = "-1"
+ If Not EsConsumoInterno Then
+ DdlAlmacen_SelectedIndexChanged(DdlAlmacen, EventArgs.Empty)
+ End If
+ DdlAlmacen.Enabled = True
+
+ TxtResponsable.Text = ""
+ TxtObservaciones.Text = ""
+ TxtFecha.Text = Now.ToShortDateString
+
+ LblUsuarioRegistro.Text = ""
+ LblFechaRegistro.Text = ""
+ HplCompra.Visible = False
+ HplVenta.Visible = False
+ HplPoliza.Visible = False
+ HplOrdenCompra.Visible = False
+
+ LimpiarAgregar()
+
+ InicializaBitacoraTemporal()
+ DtBitacora.Clear()
+ CargaEventoBitacoraTemp()
+
+ TxtRemision.Text = ""
+ DivRemision.Visible = False
+
+ UpRegistroTipoCambio.Update()
+ UPDatos.Update()
+ End Sub
+
+ Private Sub LimpiarAgregar()
+ 'DdlClasificacion.SelectedValue = "-1"
+ txtCantidad.Text = ""
+
+ TxtObservacionesdetalle.Text = ""
+ End Sub
+
+ Protected Sub BtnEliminar_Click(sender As Object, e As EventArgs) Handles BtnEliminar.Click
+ Dim Inv As New ClsInventarios
+ Dim Conta As New ClsContabilidad(Inv.IniciaTransacSQL())
+
+ Dim TieneError = False
+
+ Dim ObjConta As ClsContPAQi = Nothing
+ If UsuarioActual.Empresa.UsaContabilidad Or UsuarioActual.Empresa.UsaAC Then
+ ObjConta = New ClsContPAQi(UsuarioActual.Empresa)
+ ObjConta.IniciaTransacSQL()
+ End If
+
+
+ If Inv.MovimientoRemove(CveMovimiento, UsuarioActual.CveEmpresa) Then
+ If HdnIdPoliza.Value.ToEntero > 0 Then
+ If Not ObjConta.RemovePoliza(HdnIdPoliza.Value.ToEntero) Then
+ TieneError = True
+ End If
+ End If
+ Else
+ TieneError = True
+ End If
+
+ 'If Not TieneError Then
+ ' If Not Conta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) Then
+ ' TieneError = True
+ ' End If
+ 'End If
+
+ If Not TieneError Then
+ If ObjConta IsNot Nothing Then ObjConta.Commit()
+ Inv.Commit()
+
+ Alert("Movimientos Eliminado", TipoMensaje.MsgInformacion)
+ LimpiarMovimiento()
+ Else
+ If ObjConta IsNot Nothing Then ObjConta.RollBack()
+ Inv.RollBack()
+
+ Alert("Ocurrió un error al eliminar el movimiento. Por favor vuelva a intetar.", TipoMensaje.MsgError)
+ End If
+ CveMovimiento = 0
+
+ If ObjConta IsNot Nothing Then ObjConta.Dispose()
+ Inv.Dispose()
+ Conta.Dispose()
+ End Sub
+#End Region
+
+#Region "CORREO"
+
+ Private Function GeneraCorreo() As String
+ Dim ObjInv As New ClsInventarios
+ ObjInv.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
+ Dim strBody As New StringBuilder
+ strBody.Append(" ")
+ strBody.Append(" ")
+ strBody.Append(" ")
+ strBody.Append(" ")
+ strBody.Append(" ")
+ strBody.Append("
")
+ strBody.AppendFormat("
")
+ strBody.Append("
")
+ strBody.Append("
")
+ strBody.Append(" ")
+ strBody.Append("
")
+ strBody.Append("
")
+ strBody.Append("")
+ ObjInv.Dispose()
+ Return strBody.ToString
+ End Function
+
+ Private Sub MandaCorreo(Para As String, Asunto As String, Body As String)
+
+ Dim a As String = String.Format("{0} -- {1} ---- -->", Asunto, Para)
+ Dim Mail As New ClsSisMail()
+ Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body)
+ End Sub
+
+ Protected Sub EnvioCorreo()
+ Dim Body As String = GeneraCorreo()
+ Dim Asunto As String = $"SIG - Se Genero una Recepción de Usados con el folio: {FolioCorreo}"
+ Try
+ Dim Hilo As New System.Threading.Thread(Sub() MandaCorreo(Correo, Asunto, Body))
+ Hilo.Start()
+ Catch ex As Exception
+ OnError("Ocurrió error al mandar MAIL", ex)
+ End Try
+ End Sub
+
+#End Region
+
+#Region " AGREGAR - GUARDAR "
+ Private Function GetExistencias(CvePS As Integer, CveUnidadMedida As Integer, CveEmpresa As Integer, CveAlmacen As Integer, Optional SerieLote As String = "-1", Optional Lote As String = "-1", Optional Batch As String = "-1") As Double
+ Dim Inv As New ClsInventarios
+ Dim Existencia As Double = Inv.GetExistenciasPS(CvePS, CveUnidadMedida, CveEmpresa, CveAlmacen, -1, FechaMovto:=String.Format("{0} {1}", TxtFecha.Text.ToDate.ToString("yyyy/MM/dd"), TxtHoraInicio.PostedTime), SerieLote:=SerieLote, Lote:=Lote, Batch:=Batch)
+ Inv.Dispose()
+ Return Existencia
+ End Function
+
+
+ Protected Sub BtnSerieAddNew_Click(sender As Object, e As EventArgs)
+ AgregarPS()
+ End Sub
+ Private Sub AgregarPS()
+ If Not DdlProducto2.SelectedValue.ToEntero > 0 Then
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ Alert("Es necesario especificar el producto.", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ Dim PU As Decimal = 0
+ If GlobalDTAcumTamaños.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa} AND CvePSCargo > 0 AND CvePSCargo={DdlProducto2.SelectedValue}").Rows.Count > 0 Then
+ PU = GlobalDTAcumTamaños.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa} AND CvePSCargo > 0 AND CvePSCargo={DdlProducto2.SelectedValue}").Rows(0)("Cargo").ToString.ToDecimal
+ End If
+
+ AddNew(DdlProducto2.SelectedValue.ToEntero, DdlProducto2.SelectedItem.Text, DdlUnidad.SelectedValue.ToEntero, DdlUnidad.SelectedItem.Text, txtCantidad.Text.ToDouble, PU,
+ "", "-1", "-1", "-1", TxtObservacionesdetalle.Text, "", "", DdlAlmacen.SelectedValue.ToEntero, DdlAlmacen.SelectedItem.Text, "", HdnCveTamaño.Value.ToEntero)
+ LimpiarAgregar()
+
+ txtCantidad.Text = ""
+
+ RegistraScript("CodigoAF = "";")
+
+ If Not UsuarioActual.Empresa.Funcionalidad(105).ToString = "1" Then
+ DdlProducto2.SelectedValue = "-1"
+ Else
+ DdlProducto2.SelectedIndex = 0
+ End If
+
+ txtCantidad.Focus()
+ End Sub
+
+
+ Protected Sub AddNew(CvePS As Integer, PS As String, CveUM As Integer, UM As String, Cantidad As Double, PU As Double, SerieLote As String, CodigoAF As String, Codigo As String,
+ CveAF As String, Observaciones As String, Lote As String, Batch As String, CveSeccionAlmacen As Integer, SeccionAlmacen As String, Tamaño As String, CveTamaño As Integer)
+
+ 'If DdlAlmacen.SelectedValue.ToEntero <= 0 Then Alert("Seleccione un almacen", TipoMensaje.MsgAdvertencia) : RegistraScript("playsonidito('142608__autistic-lucario__error.wav')") : DdlProducto2.SelectedText = "" : Exit Sub
+
+ Dim Valido As Boolean = True
+
+ Dim CveClasificacion As Integer
+ Dim dr As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS).FiltroPrimero("", "PS")
+ If dr IsNot Nothing Then CveClasificacion = dr("CveClasificacion").ToString.ToEntero
+
+
+ If Valido And AgregarUsado Then
+
+ If ObjFactura IsNot Nothing AndAlso Not EsDistribuidor Then
+ Dim RowDetalle As DataRow = ObjFactura.DtDetalle.FiltroPrimero($"CvePS={CvePS}")
+
+ If RowDetalle IsNot Nothing Then
+
+ 'If RowDetalle("PU").ToString.ToDecimal().RoundSQL <> PU.RoundSQL Then
+ ' Alert($"Los importes no coinciden", TipoMensaje.MsgAdvertencia)
+ ' Exit Sub
+ 'End If
+
+ Dim Puntos As Decimal = DtTamaños.FiltroPrimeroValor("Puntos", $"CvePSCargo={CvePS}").ToDecimal()
+ Dim CantidadPermitida As Double = Math.Ceiling(RowDetalle("Cantidad").ToString.ToDecimal() * Puntos)
+
+ If Cantidad > CantidadPermitida Then
+ Alert($"La cantidad es mayor a la permitida", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ Else
+ Alert($"El producto no se encuentra en la factura", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+ End If
+
+ 'VALIDA QUE LA SERIE NO SEA IGUAL AL CODIGO O CODIGOBARRAS
+ If SerieLote <> "" And (SerieLote.ToUpper = dr("Codigo").ToString.ToUpper Or SerieLote.ToUpper = dr("CodigoBarras").ToString.ToUpper) Then
+ Alert($"La serie indicada {SerieLote} coincide con el codigo o codigo de barras del producto. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ Dim registro As DataRow = DtMovimientos.NewRow
+ registro.Item("Cantidad") = Cantidad
+ registro.Item("CveUM") = CveUM
+ registro.Item("UnidadMedida") = UM
+ registro.Item("CvePS") = CvePS
+ registro.Item("CodigoPS") = PS
+ registro.Item("PS") = PS
+ registro.Item("PU") = PU
+ 'registro.Item("PUExtranjero") = PU
+ registro.Item("Total") = Cantidad * PU
+ registro.Item("CveClasificacion") = CveClasificacion
+ registro.Item("Estatus") = ""
+ registro.Item("CveSeccionAlmacen") = CveSeccionAlmacen
+ registro.Item("SeccionAlmacen") = SeccionAlmacen
+
+
+ registro.Item("CodigoAF") = CodigoAF
+ registro.Item("Codigo") = Codigo
+ registro.Item("CveAF") = CveAF
+ registro.Item("SerieLote") = If(SerieLote <> "", SerieLote, "")
+ registro.Item("Lote") = If(Lote <> "", Lote, "")
+ registro.Item("Batch") = If(Batch <> "", Batch, "")
+ registro.Item("Observaciones") = Observaciones
+
+ registro.Item("CveTamaño") = CveTamaño
+ registro.Item("Tamaño") = Tamaño
+
+ DtMovimientos.Rows.Add(registro)
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+ ' RegistraScript("playsonidito('beep-07.wav')")
+
+ 'asdasdasdasdasdad
+ RegistraScript("$('#DivModalAgregar').modal('hide')", "hidemodal")
+ Else
+
+
+ DtMovimientos.Rows(IndexDTUsado)("Cantidad") = Cantidad
+ DtMovimientos.Rows(IndexDTUsado)("CveUM") = CveUM
+ DtMovimientos.Rows(IndexDTUsado)("UnidadMedida") = UM
+ DtMovimientos.Rows(IndexDTUsado)("CvePS") = CvePS
+ DtMovimientos.Rows(IndexDTUsado)("CodigoPS") = PS
+ DtMovimientos.Rows(IndexDTUsado)("PS") = PS
+ DtMovimientos.Rows(IndexDTUsado)("PU") = PU
+ 'registro.Item("PUExtranjero") = PU
+ DtMovimientos.Rows(IndexDTUsado)("Total") = Cantidad * PU
+ DtMovimientos.Rows(IndexDTUsado)("CveClasificacion") = CveClasificacion
+ DtMovimientos.Rows(IndexDTUsado)("Estatus") = ""
+ DtMovimientos.Rows(IndexDTUsado)("CveSeccionAlmacen") = CveSeccionAlmacen
+ DtMovimientos.Rows(IndexDTUsado)("SeccionAlmacen") = SeccionAlmacen
+
+
+ DtMovimientos.Rows(IndexDTUsado)("CodigoAF") = CodigoAF
+ DtMovimientos.Rows(IndexDTUsado)("Codigo") = Codigo
+ DtMovimientos.Rows(IndexDTUsado)("CveAF") = CveAF
+ DtMovimientos.Rows(IndexDTUsado)("SerieLote") = If(SerieLote <> "", SerieLote, "")
+ DtMovimientos.Rows(IndexDTUsado)("Lote") = If(Lote <> "", Lote, "")
+ DtMovimientos.Rows(IndexDTUsado)("Batch") = If(Batch <> "", Batch, "")
+ DtMovimientos.Rows(IndexDTUsado)("Observaciones") = Observaciones
+
+ DtMovimientos.Rows(IndexDTUsado)("CveTamaño") = CveTamaño
+ DtMovimientos.Rows(IndexDTUsado)("Tamaño") = Tamaño
+
+ DtMovimientos.AcceptChanges()
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ RegistraScript("$('#DivModalAgregar').modal('hide')", "hidemodal")
+ End If
+
+ End Sub
+
+ Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
+ If ObjRemisionNC IsNot Nothing Then
+ Dim sb As New StringBuilder()
+ sb.Append($"Se va a generar un documento de tipo 'Remisión de nota de crédito'. Serie-Folio:{ObjRemisionNC.SerieFolio}. ¿Esta seguro que desea guardar?: ")
+
+ Alert(sb.ToString(), TipoMensaje.MsgConfirmacion, JSBtnAceptar:="GenerarRNC();", TextoConfirmacion:=" Si ", TextoCancelacion:=" No ")
+ Else
+ Guardar()
+ End If
+ End Sub
+ Private Sub BtnGenerarRNC_Click(sender As Object, e As EventArgs) Handles BtnGenerarRNC.Click
+ Guardar(True)
+ End Sub
+
+ Protected Sub Guardar(Optional GenerarRNC As Boolean = False)
+ If GvM.Rows.Count > 0 Then
+ Dim Msg As New StringBuilder()
+
+ Dim ObjInventario As New ClsInventarios
+ Dim ObjAcum As New ClsAcumuladores(ObjInventario.IniciaTransacSQL())
+ Dim ObjVentas As New ClsVentas(ObjInventario.IniciaTransacSQL())
+
+ Dim ErrorMovInv As Boolean = False
+ Dim ErrorAC As Boolean = False
+ Dim IDPoliza As Integer = 0
+ Dim ImporteConcepto = 0.0
+
+ Try
+ Dim CveSubProyecto = -1
+ Dim ActivoFijo = -1
+
+ If CveMovimiento > 0 Then
+ Else
+
+ Dim Fecha = String.Format("{0} {1}", TxtFecha.Text.ToDate.ToString("yyyy/MM/dd"), TxtHoraInicio.PostedTime).ToDate
+ Dim CveCliente As Integer = CInt(IIf((DdlClientes.SelectedValue.ToEntero <= 0), -1, DdlClientes.SelectedValue.ToEntero))
+ Dim CveClienteSucursal As Integer = CInt(IIf((DdlClientesSucursales.SelectedValue.ToEntero <= 0), -1, DdlClientesSucursales.SelectedValue.ToEntero))
+
+ 'cuando es APH
+ Dim tFolio As Integer = -1
+ If UsuarioActual.CveEmpresa = 48 And EsConsumoInterno = False Then tFolio = TxtFolio.Text.ToEntero
+ If Not tFolio > 0 Then
+ tFolio = If(TxtFolio.Text.ToEntero <> FolioAsignado, TxtFolio.Text.ToEntero, -1)
+ End If
+ Dim tCveProveedor As Integer = -1
+ If DdlProveedor.SelectedValue.ToEntero > 0 Then tCveProveedor = DdlProveedor.SelectedValue.ToEntero
+ Dim CveVenta As Integer = -1
-#Region " BOTONES: ELIMINAR, NUEVO "
- Protected Sub BtnNuevo_Click(sender As Object, e As EventArgs) Handles BtnNuevo.Click
- 'Response.Redirect("EntradasSalidas.aspx")
-
- LimpiarMovimiento()
- BloqueaEdicionEncabezado()
- End Sub
- Private Sub LimpiarMovimiento()
-
- CveMovimiento = -1
- SiguienteFolio()
-
- HplCompra.Visible = False
- HplPoliza.Visible = False
- HplVenta.Visible = False
- HplOrdenCompra.Visible = False
-
- TrTipoCargado.Visible = False
- TrPersonal.Visible = False
-
- DtMovimientos.Clear()
- GvM.EditIndex = -1
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- BtnGuardar.Visible = PermiteGuardar()
- BtnEliminar.Visible = False
-
- DivRegistro.Visible = False
- DivTipoCambio.Visible = False
-
- If Not DdlAlmacen.Items.Contains(New ListItem("Seleccione", "-1")) Then
- DdlAlmacen.Items.Add(New ListItem("Seleccione", "-1"))
- End If
- DdlAlmacen.SelectedValue = "-1"
- If Not EsConsumoInterno Then
- DdlAlmacen_SelectedIndexChanged(DdlAlmacen, EventArgs.Empty)
- End If
- DdlAlmacen.Enabled = True
-
- TxtResponsable.Text = ""
- TxtObservaciones.Text = ""
- TxtFecha.Text = Now.ToShortDateString
-
- LblUsuarioRegistro.Text = ""
- LblFechaRegistro.Text = ""
- HplCompra.Visible = False
- HplVenta.Visible = False
- HplPoliza.Visible = False
- HplOrdenCompra.Visible = False
-
- LimpiarAgregar()
-
- InicializaBitacoraTemporal()
- DtBitacora.Clear()
- CargaEventoBitacoraTemp()
-
- TxtRemision.Text = ""
- DivRemision.Visible = False
-
- UpRegistroTipoCambio.Update()
- UPDatos.Update()
- End Sub
-
- Private Sub LimpiarAgregar()
- 'DdlClasificacion.SelectedValue = "-1"
- txtCantidad.Text = ""
-
- TxtObservacionesdetalle.Text = ""
- End Sub
-
- Protected Sub BtnEliminar_Click(sender As Object, e As EventArgs) Handles BtnEliminar.Click
- Dim Inv As New ClsInventarios
- Dim Conta As New ClsContabilidad(Inv.IniciaTransacSQL())
-
- Dim TieneError = False
-
- Dim ObjConta As ClsContPAQi = Nothing
- If UsuarioActual.Empresa.UsaContabilidad Or UsuarioActual.Empresa.UsaAC Then
- ObjConta = New ClsContPAQi(UsuarioActual.Empresa)
- ObjConta.IniciaTransacSQL()
- End If
-
-
- If Inv.MovimientoRemove(CveMovimiento, UsuarioActual.CveEmpresa) Then
- If HdnIdPoliza.Value.ToEntero > 0 Then
- If Not ObjConta.RemovePoliza(HdnIdPoliza.Value.ToEntero) Then
- TieneError = True
- End If
- End If
- Else
- TieneError = True
- End If
-
- 'If Not TieneError Then
- ' If Not Conta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) Then
- ' TieneError = True
- ' End If
- 'End If
-
- If Not TieneError Then
- If ObjConta IsNot Nothing Then ObjConta.Commit()
- Inv.Commit()
-
- Alert("Movimientos Eliminado", TipoMensaje.MsgInformacion)
- LimpiarMovimiento()
- Else
- If ObjConta IsNot Nothing Then ObjConta.RollBack()
- Inv.RollBack()
-
- Alert("Ocurrió un error al eliminar el movimiento. Por favor vuelva a intetar.", TipoMensaje.MsgError)
- End If
- CveMovimiento = 0
-
- If ObjConta IsNot Nothing Then ObjConta.Dispose()
- Inv.Dispose()
- Conta.Dispose()
- End Sub
-#End Region
-
-#Region "CORREO"
-
- Private Function GeneraCorreo() As String
- Dim ObjInv As New ClsInventarios
- ObjInv.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
- Dim strBody As New StringBuilder
- strBody.Append(" ")
- strBody.Append(" ")
- strBody.Append(" ")
- strBody.Append(" ")
- strBody.Append(" ")
- strBody.Append("
")
- strBody.AppendFormat("
")
- strBody.Append("
")
- strBody.Append("
")
- strBody.Append(" ")
- strBody.Append("
")
- strBody.Append("
")
- strBody.Append("")
- ObjInv.Dispose()
- Return strBody.ToString
- End Function
-
- Private Sub MandaCorreo(Para As String, Asunto As String, Body As String)
-
- Dim a As String = String.Format("{0} -- {1} ---- -->", Asunto, Para)
- Dim Mail As New ClsSisMail()
- Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body)
- End Sub
-
- Protected Sub EnvioCorreo()
- Dim Body As String = GeneraCorreo()
- Dim Asunto As String = $"SIG - Se Genero una Recepción de Usados con el folio: {FolioCorreo}"
- Try
- Dim Hilo As New System.Threading.Thread(Sub() MandaCorreo(Correo, Asunto, Body))
- Hilo.Start()
- Catch ex As Exception
- OnError("Ocurrió error al mandar MAIL", ex)
- End Try
- End Sub
-
-#End Region
-
-#Region " AGREGAR - GUARDAR "
- Private Function GetExistencias(CvePS As Integer, CveUnidadMedida As Integer, CveEmpresa As Integer, CveAlmacen As Integer, Optional SerieLote As String = "-1", Optional Lote As String = "-1", Optional Batch As String = "-1") As Double
- Dim Inv As New ClsInventarios
- Dim Existencia As Double = Inv.GetExistenciasPS(CvePS, CveUnidadMedida, CveEmpresa, CveAlmacen, -1, FechaMovto:=String.Format("{0} {1}", TxtFecha.Text.ToDate.ToString("yyyy/MM/dd"), TxtHoraInicio.PostedTime), SerieLote:=SerieLote, Lote:=Lote, Batch:=Batch)
- Inv.Dispose()
- Return Existencia
- End Function
-
-
- Protected Sub BtnSerieAddNew_Click(sender As Object, e As EventArgs)
- AgregarPS()
- End Sub
- Private Sub AgregarPS()
- If Not DdlProducto2.SelectedValue.ToEntero > 0 Then
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- Alert("Es necesario especificar el producto.", TipoMensaje.MsgAdvertencia)
- Exit Sub
- End If
-
- Dim PU As Decimal = 0
- If GlobalDTAcumTamaños.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa} AND CvePSCargo > 0 AND CvePSCargo={DdlProducto2.SelectedValue}").Rows.Count > 0 Then
- PU = GlobalDTAcumTamaños.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa} AND CvePSCargo > 0 AND CvePSCargo={DdlProducto2.SelectedValue}").Rows(0)("Cargo").ToString.ToDecimal
- End If
-
- AddNew(DdlProducto2.SelectedValue.ToEntero, DdlProducto2.SelectedItem.Text, DdlUnidad.SelectedValue.ToEntero, DdlUnidad.SelectedItem.Text, txtCantidad.Text.ToDouble, PU,
- "", "-1", "-1", "-1", TxtObservacionesdetalle.Text, "", "", DdlAlmacen.SelectedValue.ToEntero, DdlAlmacen.SelectedItem.Text, "", HdnCveTamaño.Value.ToEntero)
- LimpiarAgregar()
-
- txtCantidad.Text = ""
-
- RegistraScript("CodigoAF = "";")
-
- If Not UsuarioActual.Empresa.Funcionalidad(105).ToString = "1" Then
- DdlProducto2.SelectedValue = "-1"
- Else
- DdlProducto2.SelectedIndex = 0
- End If
-
- txtCantidad.Focus()
- End Sub
-
-
- Protected Sub AddNew(CvePS As Integer, PS As String, CveUM As Integer, UM As String, Cantidad As Double, PU As Double, SerieLote As String, CodigoAF As String, Codigo As String,
- CveAF As String, Observaciones As String, Lote As String, Batch As String, CveSeccionAlmacen As Integer, SeccionAlmacen As String, Tamaño As String, CveTamaño As Integer)
-
- 'If DdlAlmacen.SelectedValue.ToEntero <= 0 Then Alert("Seleccione un almacen", TipoMensaje.MsgAdvertencia) : RegistraScript("playsonidito('142608__autistic-lucario__error.wav')") : DdlProducto2.SelectedText = "" : Exit Sub
-
- Dim Valido As Boolean = True
-
- Dim CveClasificacion As Integer
- Dim dr As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS).FiltroPrimero("", "PS")
- If dr IsNot Nothing Then CveClasificacion = dr("CveClasificacion").ToString.ToEntero
-
-
- If Valido And AgregarUsado Then
-
-
- 'VALIDA QUE LA SERIE NO SEA IGUAL AL CODIGO O CODIGOBARRAS
- If SerieLote <> "" And (SerieLote.ToUpper = dr("Codigo").ToString.ToUpper Or SerieLote.ToUpper = dr("CodigoBarras").ToString.ToUpper) Then
- Alert($"La serie indicada {SerieLote} coincide con el codigo o codigo de barras del producto. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
- Exit Sub
- End If
-
- Dim registro As DataRow = DtMovimientos.NewRow
- registro.Item("Cantidad") = Cantidad
- registro.Item("CveUM") = CveUM
- registro.Item("UnidadMedida") = UM
- registro.Item("CvePS") = CvePS
- registro.Item("CodigoPS") = PS
- registro.Item("PS") = PS
- registro.Item("PU") = PU
- 'registro.Item("PUExtranjero") = PU
- registro.Item("Total") = Cantidad * PU
- registro.Item("CveClasificacion") = CveClasificacion
- registro.Item("Estatus") = ""
- registro.Item("CveSeccionAlmacen") = CveSeccionAlmacen
- registro.Item("SeccionAlmacen") = SeccionAlmacen
-
-
- registro.Item("CodigoAF") = CodigoAF
- registro.Item("Codigo") = Codigo
- registro.Item("CveAF") = CveAF
- registro.Item("SerieLote") = If(SerieLote <> "", SerieLote, "")
- registro.Item("Lote") = If(Lote <> "", Lote, "")
- registro.Item("Batch") = If(Batch <> "", Batch, "")
- registro.Item("Observaciones") = Observaciones
-
- registro.Item("CveTamaño") = CveTamaño
- registro.Item("Tamaño") = Tamaño
-
- DtMovimientos.Rows.Add(registro)
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
- ' RegistraScript("playsonidito('beep-07.wav')")
-
- 'asdasdasdasdasdad
- RegistraScript("$('#DivModalAgregar').modal('hide')", "hidemodal")
- Else
-
-
- DtMovimientos.Rows(IndexDTUsado)("Cantidad") = Cantidad
- DtMovimientos.Rows(IndexDTUsado)("CveUM") = CveUM
- DtMovimientos.Rows(IndexDTUsado)("UnidadMedida") = UM
- DtMovimientos.Rows(IndexDTUsado)("CvePS") = CvePS
- DtMovimientos.Rows(IndexDTUsado)("CodigoPS") = PS
- DtMovimientos.Rows(IndexDTUsado)("PS") = PS
- DtMovimientos.Rows(IndexDTUsado)("PU") = PU
- 'registro.Item("PUExtranjero") = PU
- DtMovimientos.Rows(IndexDTUsado)("Total") = Cantidad * PU
- DtMovimientos.Rows(IndexDTUsado)("CveClasificacion") = CveClasificacion
- DtMovimientos.Rows(IndexDTUsado)("Estatus") = ""
- DtMovimientos.Rows(IndexDTUsado)("CveSeccionAlmacen") = CveSeccionAlmacen
- DtMovimientos.Rows(IndexDTUsado)("SeccionAlmacen") = SeccionAlmacen
-
-
- DtMovimientos.Rows(IndexDTUsado)("CodigoAF") = CodigoAF
- DtMovimientos.Rows(IndexDTUsado)("Codigo") = Codigo
- DtMovimientos.Rows(IndexDTUsado)("CveAF") = CveAF
- DtMovimientos.Rows(IndexDTUsado)("SerieLote") = If(SerieLote <> "", SerieLote, "")
- DtMovimientos.Rows(IndexDTUsado)("Lote") = If(Lote <> "", Lote, "")
- DtMovimientos.Rows(IndexDTUsado)("Batch") = If(Batch <> "", Batch, "")
- DtMovimientos.Rows(IndexDTUsado)("Observaciones") = Observaciones
-
- DtMovimientos.Rows(IndexDTUsado)("CveTamaño") = CveTamaño
- DtMovimientos.Rows(IndexDTUsado)("Tamaño") = Tamaño
-
- DtMovimientos.AcceptChanges()
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- RegistraScript("$('#DivModalAgregar').modal('hide')", "hidemodal")
- End If
-
- End Sub
- Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
- If GvM.Rows.Count > 0 Then
-
- 'Dim CveMovimiento As Integer
- Dim ObjInventario As New ClsInventarios
- Dim ObjAcum As New ClsAcumuladores(ObjInventario.IniciaTransacSQL())
- Dim ObjVentas As New ClsVentas(ObjInventario.IniciaTransacSQL())
-
- Dim ErrorMovInv As Boolean = False
- Dim ErrorAC As Boolean = False
- Dim IDPoliza As Integer = 0
- Dim ImporteConcepto = 0.0
-
- Try
- Dim CveSubProyecto = -1
- Dim ActivoFijo = -1
-
- If CveMovimiento > 0 Then
- Else
-
- Dim Fecha = String.Format("{0} {1}", TxtFecha.Text.ToDate.ToString("yyyy/MM/dd"), TxtHoraInicio.PostedTime).ToDate
- Dim CveCliente As Integer = CInt(IIf((DdlClientes.SelectedValue.ToEntero <= 0), -1, DdlClientes.SelectedValue.ToEntero))
- Dim CveClienteSucursal As Integer = CInt(IIf((DdlClientesSucursales.SelectedValue.ToEntero <= 0), -1, DdlClientesSucursales.SelectedValue.ToEntero))
-
-
- 'cuando es APH
- Dim tFolio As Integer = -1
- If UsuarioActual.CveEmpresa = 48 And EsConsumoInterno = False Then tFolio = TxtFolio.Text.ToEntero
- If Not tFolio > 0 Then
- tFolio = If(TxtFolio.Text.ToEntero <> FolioAsignado, TxtFolio.Text.ToEntero, -1)
- End If
- Dim tCveProveedor As Integer = -1
- If DdlProveedor.SelectedValue.ToEntero > 0 Then tCveProveedor = DdlProveedor.SelectedValue.ToEntero
- Dim CveVenta As Integer = -1
-
If CveRemisionRecibida > 0 Then
CveVenta = CveRemisionRecibida
- ElseIf EsDistribuidor AndAlso DdlFactura.SelectedValue.ToEntero() > 0 Then
+ ElseIf DdlFactura.SelectedValue.ToEntero() > 0 Then
CveVenta = DdlFactura.SelectedValue.ToEntero()
- End If
-
- 'Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("Inv/ES", 53, 0, 0, 1, TxtFecha.Text.ToDate, $" {TxtObservaciones.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=3)
- CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta,
- CveSubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero,
- Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text,
- PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor)
- If CveMovimiento <= 0 Then
- Alert("No se pudo almacenar el movimiento correctamente", TipoMensaje.MsgError)
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- ObjInventario.RollBack() 'deshace lo insertado
- Else
- Dim Mensaje As String = ""
-
- For Each Dr As DataRow In DtMovimientos.Rows
-
- If CveConcepto = 2 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then
- ImporteConcepto = Dr("PU").ToString.ToDouble * GlobalTipoCambio(TxtFecha.Text.ToDate)
- Else
- ImporteConcepto = Dr("PU").ToString.ToDouble
- End If
-
- If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, Dr("Observaciones").ToString, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
- Mensaje = "Error al guardar los movimientos"
- ErrorMovInv = True
- Exit For
- End If
-
- If Not ObjVentas.UpdateVentaUsadoRecibido(CveRemisionRecibida, Dr("CvePS").ToString.ToEntero, True) Then
- Mensaje = "Error al actualizar el recibo de los usados"
- ErrorMovInv = True
+ End If
+
+ CveMovimiento = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, Fecha, tFolio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta,
+ CveSubProyecto, ActivoFijo, Guia:=TxtGuia.Text, Observaciones:=TxtObservaciones.Text, CvePersonal:=DdlPersonal.SelectedValue.ToEntero,
+ Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text,
+ PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor)
+ If CveMovimiento <= 0 Then
+ Alert("No se pudo almacenar el movimiento correctamente", TipoMensaje.MsgError)
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ ObjInventario.RollBack() 'deshace lo insertado
+ Else
+ Dim Mensaje As String = ""
+
+ For Each Dr As DataRow In DtMovimientos.Rows
+
+ If CveConcepto = 2 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then
+ ImporteConcepto = Dr("PU").ToString.ToDouble * GlobalTipoCambio(TxtFecha.Text.ToDate)
+ Else
+ ImporteConcepto = Dr("PU").ToString.ToDouble
+ End If
+
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, Dr("Observaciones").ToString, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
+ Mensaje = "Error al guardar los movimientos"
+ ErrorMovInv = True
Exit For
- End If
-
- Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 2, 1, 2)
-
- If RBLOpcion.SelectedValue.ToEntero <> 3 Then
+ End If
+
+ If Not ObjVentas.UpdateVentaUsadoRecibido(CveRemisionRecibida, Dr("CvePS").ToString.ToEntero, True) Then
+ Mensaje = "Error al actualizar el recibo de los usados"
+ ErrorMovInv = True
+ Exit For
+ End If
+
+ Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 2, 1, 2)
+
+ If RBLOpcion.SelectedValue.ToEntero <> 3 Then
If EsDistribuidor Then
If Not ObjAcum.DistribuidorMovtosAdd(DdlClientes.SelectedValue.ToEntero, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, -1, UsuarioActual.CveUsuario,
UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then
- 'CveCliente As Integer, Cantidad As Integer, CveTamaño As Integer, CveConcepto As Integer, CveVenta As Integer, CveUsuario As Integer,
- 'CveEmpresa As Integer, ImporteCompras As Decimal, Observaciones As String
-
Mensaje = "Error al guardar Movimientos de distribuidor"
ErrorMovInv = True
Exit For
End If
- End If
- End If
- Next
-
- If Not ErrorMovInv Then
-
- Dim Msg As New StringBuilder
- Msg.AppendFormat(" El Movimiento se registro con el Folio: {0}", ObjInventario.Folio)
- Msg.AppendFormat("
Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento)))
-
- ' If ObjContaAC IsNot Nothing Then ObjContaAC.AjustaPoliza(IDPoliza)
- If IDPoliza > 0 Then Msg = Msg.AppendFormat("
Ver Póliza", IDPoliza)
-
- ObjInventario.Commit() ' aplica los movimientos insertados
- 'If ObjContaAC IsNot Nothing Then ObjContaAC.Commit()
-
- Alert(Msg.ToString, TipoMensaje.MsgInformacion)
-
- 'Limpia Valores cuando inserta de campos especiales
- If UsuarioActual.CveEmpresa = 66 Then
- DdlSubProyecto.SelectedValueExist("-1")
- End If
-
- EnvioCorreo()
-
-
- UPDatos.Update()
- LimpiarMovimiento()
-
- Else
- ObjInventario.RollBack() 'deshace lo insertado
- CveMovimiento = 0
- ' If ObjContaAC IsNot Nothing Then ObjContaAC.RollBack()
- Alert("ocurrió un Error al registrar los movimientos", TipoMensaje.MsgError)
- ' RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- End If
- End If
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- End If
- Catch ex As Exception
- ObjInventario.RollBack() 'deshace lo insertado
- CveMovimiento = 0
- ' If ObjContaAC IsNot Nothing Then ObjContaAC.RollBack()
- Alert("Ocurrió un Error inesperado en el registro" & ex.Message, TipoMensaje.MsgError)
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- End Try
-
- ObjInventario.Dispose() 'elimino la instancia
- ' If ObjContaAC IsNot Nothing Then ObjContaAC.Dispose()
-
- Else
- Alert("No hay ningun registro para generar el movimiento. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgError)
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- End If
-
+ End If
+ End If
+ Next
+
+ If Not ErrorMovInv Then
+
+
+ Msg.AppendFormat(" El Movimiento se registro con el Folio: {0}", ObjInventario.Folio)
+ Msg.AppendFormat("
Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento)))
+
+ If IDPoliza > 0 Then Msg = Msg.AppendFormat("
Ver Póliza", IDPoliza)
+
+ ObjInventario.Commit() ' aplica los movimientos insertados
+
+ 'Limpia Valores cuando inserta de campos especiales
+ If UsuarioActual.CveEmpresa = 66 Then
+ DdlSubProyecto.SelectedValueExist("-1")
+ End If
+
+ EnvioCorreo()
+
+ UPDatos.Update()
+
+ Else
+ ObjInventario.RollBack() 'deshace lo insertado
+ CveMovimiento = 0
+ Alert("ocurrió un Error al registrar los movimientos", TipoMensaje.MsgError)
+ End If
+
+ End If
+ End If
+ Catch ex As Exception
+ ObjInventario.RollBack() 'deshace lo insertado
+ CveMovimiento = 0
+ Alert("Ocurrió un Error inesperado en el registro" & ex.Message, TipoMensaje.MsgError)
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ End Try
+
+ ObjInventario.Dispose()
+ ObjAcum.Dispose()
+ ObjVentas.Dispose()
+
+ If Not ErrorMovInv AndAlso GenerarRNC AndAlso ObjRemisionNC IsNot Nothing Then
+
+ CargaDTDetalleRNC()
+
+ Dim Resp = ObjRemisionNC.EmitirFactura(False)
+ For Each mensaje As String In Resp.Mensajes
+ Msg.AppendFormat(" {0}", mensaje)
+ Next
+ Alert(Msg.ToString, If(Resp.CveVenta > 0, TipoMensaje.MsgInformacion, TipoMensaje.MsgAdvertencia))
+
+ ElseIf Not ErrorMovInv Then
+ Alert(Msg.ToString, TipoMensaje.MsgInformacion)
+ End If
+
+ Else
+ Alert("No hay ningun registro para generar el movimiento. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgError)
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ End If
+
+ LimpiarMovimiento()
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
End Sub
-#End Region
+#End Region
-#Region " ADD INVENTARIO INICIAL "
- Protected Sub BtnCodigoBarras_Click(sender As Object, e As EventArgs)
-
- If TxtCodigoBarras.Text = "" Then
- Exit Sub
- End If
-
- TdSeriePS.Visible = False
-
- Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimero($"CodigoBarras= '{TxtCodigoBarras.Text}'")
- If DrPS Is Nothing Then
- Alert($"No se ha encontrado un producto del Codigo ""{TxtCodigoBarras.Text}"". ", TipoMensaje.MsgAdvertencia, "window.setTimeout(Focus,200);")
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- TxtCodigoBarras.Text = ""
- Exit Sub
- End If
-
- If DrPS("Inv_CveMetodoInventario").ToString.ToEntero = 5 Then
- TdSeriePS.Visible = True
- TxtCodigoSerie.Focus()
- CvePSSerieLote = DrPS("CvePS").ToString.ToEntero
- CveUMSerieLote = DrPS("CveUnidadMedida").ToString.ToEntero
- CostoPromedioSerieLote = DrPS("CostoPromedio").ToString.ToDouble
- Exit Sub
- End If
-
- GuardaCodigoSerie(TxtCantidadProducto.Text.ToDouble, DrPS("CvePS").ToString.ToEntero, DrPS("CveUnidadMedida").ToString.ToEntero, DrPS("CostoPromedio").ToString.ToDouble)
-
- TxtCodigoBarras.Text = ""
- TxtCodigoBarras.Focus()
- End Sub
- Protected Sub BtnSeriePS_Click(sender As Object, e As EventArgs)
- If TxtCodigoSerie.Text.Trim = "" Then TxtCodigoSerie.Focus() : Exit Sub
-
- GuardaCodigoSerie(1, CvePSSerieLote, CveUMSerieLote, CostoPromedioSerieLote, TxtCodigoSerie.Text.Trim)
-
- TdSeriePS.Visible = False
- End Sub
- Private Sub BtnAddCodigo_Click(sender As Object, e As EventArgs) Handles BtnAddCodigo.Click
- If TxtCodigo.Text.Trim = "" Then Exit Sub
-
- Dim DrP = GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimero($"Codigo= '{TxtCodigo.Text.Trim}'")
-
- If DrP IsNot Nothing AndAlso DrP("CvePS").ToString.ToEntero > 0 Then
- GuardaCodigoSerie(TxtCantidadProducto.Text.ToDouble, DrP("CvePS").ToString.ToEntero, DrP("CveUnidadMedida").ToString.ToEntero, DrP("CostoPromedio").ToString.ToDouble)
- Else
- Alert("No se encontró el producto. Favor de verificar y volver a intentar.", TipoMensaje.MsgError, "window.setTimeout(Focus2,200);")
- End If
-
- End Sub
-
- Private Sub GuardaCodigoSerie(Cantidad As Double, CvePS As Integer, CveUM As Integer, CostoPromedio As Double, Optional SerieLote As String = "-1")
- Dim ObjInv As New ClsInventarios
-
- If CveMovimiento <= 0 Then
- CveMovimiento = ObjInv.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, TxtFecha.Text.ToDate, TxtFolio.Text.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1)
- End If
-
- ObjInv.AddMovimientoDetalle(CveMovimiento, Cantidad, CveUM, CvePS, CostoPromedio, -1, SerieLote:=SerieLote)
- ObjInv.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa)
- DtMovimientos = ObjInv.DtResultados.FiltraParametros("", "CveMovimientoDetalle DESC").AsEnumerable.Take(25).CopyToDataTable
- ObjInv.Dispose()
-
- CargaGVM(DtMovimientos)
-
- TxtCodigoBarras.Text = ""
- TxtCodigo.Text = ""
- TxtCodigoSerie.Text = ""
- TxtCantidadProducto.Text = "1"
-
- txtCantidad.Text = ""
-
-
- TxtCodigoBarras.Focus()
- RegistraScript("beep-07.wav')")
+#Region " ADD INVENTARIO INICIAL "
+ Protected Sub BtnCodigoBarras_Click(sender As Object, e As EventArgs)
+
+ If TxtCodigoBarras.Text = "" Then
+ Exit Sub
+ End If
+
+ TdSeriePS.Visible = False
+
+ Dim DrPS = GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimero($"CodigoBarras= '{TxtCodigoBarras.Text}'")
+ If DrPS Is Nothing Then
+ Alert($"No se ha encontrado un producto del Codigo ""{TxtCodigoBarras.Text}"". ", TipoMensaje.MsgAdvertencia, "window.setTimeout(Focus,200);")
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ TxtCodigoBarras.Text = ""
+ Exit Sub
+ End If
+
+ If DrPS("Inv_CveMetodoInventario").ToString.ToEntero = 5 Then
+ TdSeriePS.Visible = True
+ TxtCodigoSerie.Focus()
+ CvePSSerieLote = DrPS("CvePS").ToString.ToEntero
+ CveUMSerieLote = DrPS("CveUnidadMedida").ToString.ToEntero
+ CostoPromedioSerieLote = DrPS("CostoPromedio").ToString.ToDouble
+ Exit Sub
+ End If
+
+ GuardaCodigoSerie(TxtCantidadProducto.Text.ToDouble, DrPS("CvePS").ToString.ToEntero, DrPS("CveUnidadMedida").ToString.ToEntero, DrPS("CostoPromedio").ToString.ToDouble)
+
+ TxtCodigoBarras.Text = ""
+ TxtCodigoBarras.Focus()
End Sub
-#End Region
+ Protected Sub BtnSeriePS_Click(sender As Object, e As EventArgs)
+ If TxtCodigoSerie.Text.Trim = "" Then TxtCodigoSerie.Focus() : Exit Sub
-#Region " DdlConcepto, DdlClasificacion, DdlAlmacen | Index CHANGED "
+ GuardaCodigoSerie(1, CvePSSerieLote, CveUMSerieLote, CostoPromedioSerieLote, TxtCodigoSerie.Text.Trim)
- Protected Sub DdlAlmacen_SelectedIndexChanged(sender As Object, e As EventArgs)
-
- If EsConsumoInterno Then
- Exit Sub
- End If
-
-
-
- Dim filtro As String = ""
- Dim CveTipoAlmacen = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltroPrimeroValor("CveTipoAlmacen", $"CveAlmacen = {DdlAlmacen.SelectedValue}").ToEntero
-
- filtro = If(UsuarioActual.TienePermisoProceso(144), "CveConcepto NOT IN (1,4,5,8,9,10,12,26,27,29)", "CveConcepto NOT IN (1,2,4,5,8,9,10,12,26,27,29)")
-
- If DdlAlmacen.SelectedValue = "-1" Then
- filtro = IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80), "CveConcepto NOT IN (4,5,10)", filtro).ToString
- Else
- filtro = String.Format("{0} AND CveTipoAlmacen = {1}", IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80, 4, 7, 11, 12), "CveConcepto NOT IN (4,5,10)", filtro).ToString, CveTipoAlmacen)
- End If
-
-
-
- End Sub
-
-
- Private Sub VisualizaPU(Opcion As Boolean)
-
-
- txtPrecio.Visible = Opcion
-
- End Sub
- Private Sub VisualizaPUExtranjero(Opcion As Boolean)
-
- End Sub
- Private Sub VisualizaAF(Opcion As Boolean)
-
-
- End Sub
- Private Sub SiguienteFolio()
- Dim Inv As New ClsInventarios
- Dim Folio As Integer = Inv.GetFolioSiguiente(CveConcepto, UsuarioActual.CveEmpresa)
- Inv.Dispose()
-
- TxtFolio.Text = Folio.ToString
- FolioAsignado = Folio
-
- End Sub
- Protected Sub DdlProducto2_SelectedIndexChanged(sender As Object, e As EventArgs)
- ElProductoChange()
- End Sub
- Private Sub ElProductoChange()
-
-
- EscondeColumnasGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- If DdlProducto2.SelectedValue.ToEntero > 0 Then
- Dim MetodoInventario As Integer = GlobalDTPS(UsuarioActual.CveEmpresa, DdlProducto2.SelectedValue.ToEntero).FiltroPrimeroValor("Inv_CveMetodoInventario", "").ToEntero ' ("Inv_CveMetodoInventario = 6", "PS")
-
- End If
-
- DdlUnidad.Items.Clear()
- DdlUnidad.DataSource = GlobalDTProductosServiciosEquivalencias(DdlProducto2.SelectedValue.ToEntero, -1)
- DdlUnidad.DataBind()
-
-
- Dim ObjAcum As New ClsAcumuladores
- Dim CveTamaño As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveTamaño", $"CvePS = { DdlProducto2.SelectedValue.ToEntero }").ToEntero
- HdnCveTamaño.Value = CveTamaño.ToString
-
- If ObjAcum.TamañoGet(-1, UsuarioActual.CveEmpresa) Then
- Dim DtTamaños As DataTable = ObjAcum.DtResultados
-
- HdnCveTamaño.Value = DtTamaños.FiltroPrimeroValor("CveTamaño", $"CvePSCargo = { DdlProducto2.SelectedValue }")
-
- 'LblMoldalCveTamanio.Text = DtTamaños.FiltroPrimeroValor("CveTamaño", $"CvePSCargo = { DdlProducto2.SelectedValue }")
- 'LblMoldalTamanio.Text = DtTamaños.FiltroPrimeroValor("Tamaño", $"CvePSCargo = { DdlProducto2.SelectedValue }")
-
-
- End If
-
- '123123123
-
-
-
-
- 'If ObjAcum.TamañoGet(CveTamaño, UsuarioActual.CveEmpresa) AndAlso ObjAcum.DtResultados.Rows.Count > 0 Then
-
- 'End If
-
- ObjAcum.Dispose()
- UPDatos.Update()
-
+ TdSeriePS.Visible = False
End Sub
-#End Region
+ Private Sub BtnAddCodigo_Click(sender As Object, e As EventArgs) Handles BtnAddCodigo.Click
+ If TxtCodigo.Text.Trim = "" Then Exit Sub
+
+ Dim DrP = GlobalDTPS(UsuarioActual.CveEmpresa).FiltroPrimero($"Codigo= '{TxtCodigo.Text.Trim}'")
+
+ If DrP IsNot Nothing AndAlso DrP("CvePS").ToString.ToEntero > 0 Then
+ GuardaCodigoSerie(TxtCantidadProducto.Text.ToDouble, DrP("CvePS").ToString.ToEntero, DrP("CveUnidadMedida").ToString.ToEntero, DrP("CostoPromedio").ToString.ToDouble)
+ Else
+ Alert("No se encontró el producto. Favor de verificar y volver a intentar.", TipoMensaje.MsgError, "window.setTimeout(Focus2,200);")
+ End If
-#Region " GVM "
- Private Sub CargaGVM(DtTemp As DataTable)
- GvM.DataSource = DtTemp
- GvM.DataBind()
-
- EscondeColumnasGVM(DtTemp)
- End Sub
- Private Sub EscondeColumnasGVM(DtTemp As DataTable)
-
-
- Dim TienePermisoImportes = UsuarioActual.TienePermisoProceso(201)
-
-
- If DtTemp IsNot Nothing AndAlso DtTemp.Rows.Count > 0 Then
- If DtTemp.MAX("SerieLote").ToString <> "" Then
- End If
-
- If DtTemp.MAX("Lote").ToString <> "" Then
- GvM.Columns(11).Visible = True
- End If
-
- If DtTemp.SUM("PUExtranjero") > 0 Then
-
- End If
-
- If DtTemp.SUM("CostoIndirecto") > 0 Then
-
- End If
- End If
-
- End Sub
- Protected Sub GvM_RowDataBound(sender As Object, e As GridViewRowEventArgs)
-
-
- End Sub
- Protected Sub GvM_RowEditing(sender As Object, e As GridViewEditEventArgs) Handles GvM.RowEditing
- GvM.EditIndex = e.NewEditIndex
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
- End Sub
- Protected Sub GvM_RowCancelingEdit(sender As Object, e As GridViewCancelEditEventArgs) Handles GvM.RowCancelingEdit
- GvM.EditIndex = -1
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
- End Sub
- Protected Sub GvM_RowUpdating(sender As Object, e As GridViewUpdateEventArgs) Handles GvM.RowUpdating
-
- Dim Precio As Double = GvM.Rows(e.RowIndex).FCTextBox("TxtPrecio").Text.ToDouble
- Dim No As Integer = GvM.Rows(e.RowIndex).DataKey("No").ToEntero
- Dim serielote As String = GvM.Rows(e.RowIndex).FCTextBox("TxtSerieLote").Text.Replace(" ", String.Empty)
- Dim Observaciones As String = GvM.Rows(e.RowIndex).FCTextBox("TxtObservaciones").Text
- Dim CveSeccionAlmacen As Integer = GvM.Rows(e.RowIndex).FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero
- Dim SeccionAlmacen As String = GvM.Rows(e.RowIndex).FCDropDownList("DdlSeccionAlmacen").SelectedItem.Text
- Dim Drs As DataRow() = DtMovimientos.Select(String.Format("No = {0}", No))
-
- If Drs.Count > 0 Then
- Drs(0)("PU") = Precio
- Drs(0)("Total") = Drs(0)("Cantidad").ToString.ToDouble * Precio
- Drs(0)("Estatus") = "U"
- Drs(0)("SerieLote") = serielote
- Drs(0)("Observaciones") = Observaciones
- Drs(0)("CveSeccionAlmacen") = CveSeccionAlmacen
- Drs(0)("SeccionAlmacen") = SeccionAlmacen
- End If
-
- DtMovimientos.AcceptChanges()
- GvM.EditIndex = -1
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- End Sub
- Protected Sub DeleteRow(ByVal sender As Object, ByVal e As EventArgs)
- Dim lnkRemove As LinkButton = DirectCast(sender, LinkButton)
-
-
- If DtMovimientos.Rows.Count > 0 And lnkRemove.CommandArgument.ToString.Length > 0 Then
- Dim i As Integer
- i = lnkRemove.CommandArgument.ToString.ToEntero
- Dim Drs As DataRow() = DtMovimientos.Select(String.Format("No = {0}", i))
- If Drs.Count > 0 Then
- If CveMovimiento > 0 AndAlso Drs(0)("CveMovimientoDetalle").ToString.ToEntero > 0 Then
- Drs(0)("Estatus") = "E"
- Else
- Drs(0).Delete()
- End If
-
- End If
- DtMovimientos.AcceptChanges()
- End If
-
- GvM.EditIndex = -1
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
End Sub
-#End Region
-#Region " TIPO DE CAMBIO "
- Protected Sub DdlMonedaTC_SelectedIndexChanged(sender As Object, e As EventArgs)
- Select Case DdlMonedaTC.SelectedValue.ToEntero
- Case 1
- TrTC1.Visible = False
- TrTC2.Visible = False
-
- For Each Dr As DataRow In DtMovimientos.Rows
- Dr("PU") = Dr("PUExtranjero")
- Dr("Total") = Dr("PU").ToString.ToDouble * Dr("Cantidad").ToString.ToDouble
- Next
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- 'LtTotal.Text = DtMovimientos.SUM("Total", "").ToString.FormatoNumero
-
- UPDatos.Update()
-
- Case 2
- TrTC1.Visible = True
- TrTC2.Visible = True
- End Select
- End Sub
- Protected Sub BtnAplicarTC_Click(sender As Object, e As EventArgs)
- For Each Dr As DataRow In DtMovimientos.Rows
- Dr("PU") = Dr("PUExtranjero").ToString.ToDouble * TxtTipoCambio.Text.ToDouble
- Dr("Total") = Dr("PU").ToString.ToDouble * Dr("Cantidad").ToString.ToDouble
- Next
-
- CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
-
- 'LtTotal.Text = DtMovimientos.SUM("Total", "").ToString.FormatoNumero
-
- UPDatos.Update()
+ Private Sub GuardaCodigoSerie(Cantidad As Double, CvePS As Integer, CveUM As Integer, CostoPromedio As Double, Optional SerieLote As String = "-1")
+ Dim ObjInv As New ClsInventarios
+
+ If CveMovimiento <= 0 Then
+ CveMovimiento = ObjInv.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, CveConcepto, 1, TxtFecha.Text.ToDate, TxtFolio.Text.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1)
+ End If
+
+ ObjInv.AddMovimientoDetalle(CveMovimiento, Cantidad, CveUM, CvePS, CostoPromedio, -1, SerieLote:=SerieLote)
+ ObjInv.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa)
+ DtMovimientos = ObjInv.DtResultados.FiltraParametros("", "CveMovimientoDetalle DESC").AsEnumerable.Take(25).CopyToDataTable
+ ObjInv.Dispose()
+
+ CargaGVM(DtMovimientos)
+
+ TxtCodigoBarras.Text = ""
+ TxtCodigo.Text = ""
+ TxtCodigoSerie.Text = ""
+ TxtCantidadProducto.Text = "1"
+
+ txtCantidad.Text = ""
+
+
+ TxtCodigoBarras.Focus()
+ RegistraScript("beep-07.wav')")
+ End Sub
+#End Region
+
+#Region " DdlConcepto, DdlClasificacion, DdlAlmacen | Index CHANGED "
+
+ Protected Sub DdlAlmacen_SelectedIndexChanged(sender As Object, e As EventArgs)
+
+ If EsConsumoInterno Then
+ Exit Sub
+ End If
+
+
+
+ Dim filtro As String = ""
+ Dim CveTipoAlmacen = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltroPrimeroValor("CveTipoAlmacen", $"CveAlmacen = {DdlAlmacen.SelectedValue}").ToEntero
+
+ filtro = If(UsuarioActual.TienePermisoProceso(144), "CveConcepto NOT IN (1,4,5,8,9,10,12,26,27,29)", "CveConcepto NOT IN (1,2,4,5,8,9,10,12,26,27,29)")
+
+ If DdlAlmacen.SelectedValue = "-1" Then
+ filtro = IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80), "CveConcepto NOT IN (4,5,10)", filtro).ToString
+ Else
+ filtro = String.Format("{0} AND CveTipoAlmacen = {1}", IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80, 4, 7, 11, 12), "CveConcepto NOT IN (4,5,10)", filtro).ToString, CveTipoAlmacen)
+ End If
+
+
+
+ End Sub
+
+
+ Private Sub VisualizaPU(Opcion As Boolean)
+ txtPrecio.Visible = Opcion
+ End Sub
+ Private Sub VisualizaPUExtranjero(Opcion As Boolean)
+
+ End Sub
+ Private Sub VisualizaAF(Opcion As Boolean)
+
+ End Sub
+ Private Sub SiguienteFolio()
+ Dim Inv As New ClsInventarios
+ Dim Folio As Integer = Inv.GetFolioSiguiente(CveConcepto, UsuarioActual.CveEmpresa)
+ Inv.Dispose()
+
+ TxtFolio.Text = Folio.ToString
+ FolioAsignado = Folio
+
+ End Sub
+ Protected Sub DdlProducto2_SelectedIndexChanged(sender As Object, e As EventArgs)
+ CambiarProducto()
+ End Sub
+ Private Sub CambiarProducto()
+ EscondeColumnasGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ DdlUnidad.Items.Clear()
+ DdlUnidad.DataSource = GlobalDTProductosServiciosEquivalencias(DdlProducto2.SelectedValue.ToEntero, -1)
+ DdlUnidad.DataBind()
+
+ HdnCveTamaño.Value = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveTamaño", $"CvePS = { DdlProducto2.SelectedValue.ToEntero }")
+
+ Dim ObjAcum As New ClsAcumuladores
+ If ObjAcum.TamañoGet(-1, UsuarioActual.CveEmpresa) Then
+ HdnCveTamaño.Value = ObjAcum.DtResultados.FiltroPrimeroValor("CveTamaño", $"CvePSCargo = { DdlProducto2.SelectedValue }")
+ End If
+ ObjAcum.Dispose()
+
+ UPDatos.Update()
+ End Sub
+#End Region
+
+#Region " GVM "
+ Private Sub CargaGVM(DtTemp As DataTable)
+ GvM.DataSource = DtTemp
+ GvM.DataBind()
+
+ EscondeColumnasGVM(DtTemp)
+ End Sub
+ Private Sub EscondeColumnasGVM(DtTemp As DataTable)
+
+ 'Dim TienePermisoImportes = UsuarioActual.TienePermisoProceso(201)
+
+ If DtTemp IsNot Nothing AndAlso DtTemp.Rows.Count > 0 Then
+ If DtTemp.MAX("SerieLote").ToString <> "" Then
+ End If
+
+ If DtTemp.MAX("Lote").ToString <> "" Then
+ GvM.Columns(11).Visible = True
+ End If
+
+ If DtTemp.SUM("PUExtranjero") > 0 Then
+
+ End If
+
+ If DtTemp.SUM("CostoIndirecto") > 0 Then
+
+ End If
+
+ Dim Total = DtTemp.SUM("Total")
+
+ TxtTotal.Text = Total.FormatoNumero(2)
+ End If
+
+ End Sub
+ Protected Sub GvM_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+
+ End Sub
+ Protected Sub GvM_RowEditing(sender As Object, e As GridViewEditEventArgs) Handles GvM.RowEditing
+ GvM.EditIndex = e.NewEditIndex
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+ End Sub
+ Protected Sub GvM_RowCancelingEdit(sender As Object, e As GridViewCancelEditEventArgs) Handles GvM.RowCancelingEdit
+ GvM.EditIndex = -1
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+ End Sub
+ Protected Sub GvM_RowUpdating(sender As Object, e As GridViewUpdateEventArgs) Handles GvM.RowUpdating
+
+ Dim Precio As Double = GvM.Rows(e.RowIndex).FCTextBox("TxtPrecio").Text.ToDouble
+ Dim No As Integer = GvM.Rows(e.RowIndex).DataKey("No").ToEntero
+ Dim serielote As String = GvM.Rows(e.RowIndex).FCTextBox("TxtSerieLote").Text.Replace(" ", String.Empty)
+ Dim Observaciones As String = GvM.Rows(e.RowIndex).FCTextBox("TxtObservaciones").Text
+ Dim CveSeccionAlmacen As Integer = GvM.Rows(e.RowIndex).FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero
+ Dim SeccionAlmacen As String = GvM.Rows(e.RowIndex).FCDropDownList("DdlSeccionAlmacen").SelectedItem.Text
+ Dim Drs As DataRow() = DtMovimientos.Select(String.Format("No = {0}", No))
+
+ If Drs.Count > 0 Then
+ Drs(0)("PU") = Precio
+ Drs(0)("Total") = Drs(0)("Cantidad").ToString.ToDouble * Precio
+ Drs(0)("Estatus") = "U"
+ Drs(0)("SerieLote") = serielote
+ Drs(0)("Observaciones") = Observaciones
+ Drs(0)("CveSeccionAlmacen") = CveSeccionAlmacen
+ Drs(0)("SeccionAlmacen") = SeccionAlmacen
+ End If
+
+ DtMovimientos.AcceptChanges()
+ GvM.EditIndex = -1
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ End Sub
+ Protected Sub DeleteRow(ByVal sender As Object, ByVal e As EventArgs)
+ Dim lnkRemove As LinkButton = DirectCast(sender, LinkButton)
+
+
+ If DtMovimientos.Rows.Count > 0 And lnkRemove.CommandArgument.ToString.Length > 0 Then
+ Dim i As Integer
+ i = lnkRemove.CommandArgument.ToString.ToEntero
+ Dim Drs As DataRow() = DtMovimientos.Select(String.Format("No = {0}", i))
+ If Drs.Count > 0 Then
+ If CveMovimiento > 0 AndAlso Drs(0)("CveMovimientoDetalle").ToString.ToEntero > 0 Then
+ Drs(0)("Estatus") = "E"
+ Else
+ Drs(0).Delete()
+ End If
+
+ End If
+ DtMovimientos.AcceptChanges()
+ End If
+
+ GvM.EditIndex = -1
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ End Sub
+#End Region
+
+#Region " TIPO DE CAMBIO "
+ Protected Sub DdlMonedaTC_SelectedIndexChanged(sender As Object, e As EventArgs)
+ Select Case DdlMonedaTC.SelectedValue.ToEntero
+ Case 1
+ TrTC1.Visible = False
+ TrTC2.Visible = False
+
+ For Each Dr As DataRow In DtMovimientos.Rows
+ Dr("PU") = Dr("PUExtranjero")
+ Dr("Total") = Dr("PU").ToString.ToDouble * Dr("Cantidad").ToString.ToDouble
+ Next
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ 'LtTotal.Text = DtMovimientos.SUM("Total", "").ToString.FormatoNumero
+
+ UPDatos.Update()
+
+ Case 2
+ TrTC1.Visible = True
+ TrTC2.Visible = True
+ End Select
+ End Sub
+ Protected Sub BtnAplicarTC_Click(sender As Object, e As EventArgs)
+ For Each Dr As DataRow In DtMovimientos.Rows
+ Dr("PU") = Dr("PUExtranjero").ToString.ToDouble * TxtTipoCambio.Text.ToDouble
+ Dr("Total") = Dr("PU").ToString.ToDouble * Dr("Cantidad").ToString.ToDouble
+ Next
+
+ CargaGVM(DtMovimientos.FiltraParametros("Estatus <> 'E' "))
+
+ 'LtTotal.Text = DtMovimientos.SUM("Total", "").ToString.FormatoNumero
+
+ UPDatos.Update()
End Sub
-#End Region
+#End Region
+
+#Region " BITACORA "
+ Private Sub InicializaBitacoraTemporal()
+
+ DivBitacora.Visible = True
+ If CveMovimiento > 0 Then
+ CargaEventoBitacora()
+ Else
+ DtBitacora = New DataTable
+ DtBitacora.Columns.Add("FechaIng", GetType(String))
+ DtBitacora.Columns.Add("FechaInicio", GetType(String))
+ DtBitacora.Columns.Add("Usuario", GetType(String))
+ DtBitacora.Columns.Add("CveUsuario", GetType(String))
+ DtBitacora.Columns.Add("Descripcion", GetType(String))
+ DtBitacora.Columns.Add("Prioridad", GetType(String))
+ DtBitacora.Columns.Add("FileExtension", GetType(String))
+ DtBitacora.Columns.Add("Archivo", GetType(String))
+ DtBitacora.Columns.Add("CveOrdenCompra", GetType(String))
+ DtBitacora.Columns.Add("CveEmpresa", GetType(String))
+ End If
-#Region " BITACORA "
- Private Sub InicializaBitacoraTemporal()
-
- DivBitacora.Visible = True
- If CveMovimiento > 0 Then
- CargaEventoBitacora()
- Else
- DtBitacora = New DataTable
- DtBitacora.Columns.Add("FechaIng", GetType(String))
- DtBitacora.Columns.Add("FechaInicio", GetType(String))
- DtBitacora.Columns.Add("Usuario", GetType(String))
- DtBitacora.Columns.Add("CveUsuario", GetType(String))
- DtBitacora.Columns.Add("Descripcion", GetType(String))
- DtBitacora.Columns.Add("Prioridad", GetType(String))
- DtBitacora.Columns.Add("FileExtension", GetType(String))
- DtBitacora.Columns.Add("Archivo", GetType(String))
- DtBitacora.Columns.Add("CveOrdenCompra", GetType(String))
- DtBitacora.Columns.Add("CveEmpresa", GetType(String))
- End If
-
- End Sub
- Private Sub CargaEventoBitacora()
- Dim ObjEventoBitacora As New ClsOIEventos()
-
- If ObjEventoBitacora.GetAgendaBitacora(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
- GvBitacora.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento IN (6,2)")
- Else
- GvBitacora.DataSource = Nothing
- End If
-
- ObjEventoBitacora.Dispose()
-
- GvBitacora.DataBind()
- UPEventoBitacora.Update()
- End Sub
- Protected Sub BtnGuardarEventoBitacora_Click(sender As Object, e As EventArgs) Handles BtnGuardarEventoBitacora.Click
- If CveMovimiento > 0 Then
- GuardaBitacora()
- Else
- AgregaBitacoraTemporal()
- End If
- End Sub
-
-#Region " GUARDA TEMPORAL "
- Private Sub AgregaBitacoraTemporal()
- Dim ObjEventoBitacora As New ClsOIEventos
-
- 'Archivo
- Dim FileExtension As String = ""
- Dim Filename As String = ""
- Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
-
- For Each fileItem As Archivo In Filesgral
- FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
- Filename = fileItem.filename
- Next
-
- Dim Archivo As New System.IO.FileInfo(String.Format("{0}OI\Temp\OI{1}{2}.{3}", UsuarioActual.Empresa.Ruta, UsuarioActual.CveUsuario, Now.ToString("HH-mm"), FileExtension))
- If Archivo.Exists() Then
- Archivo.Delete()
-
- End If
-
- If Filename <> "" Then
- Filename.FilesMove(String.Format("OI{0}{1}", UsuarioActual.CveUsuario, Now.ToString("HH-mm")), String.Format("Empresas\{0}\OI\Temp", UsuarioActual.CveEmpresa))
- End If
-
-
- 'AGREGA
- Dim Dr = DtBitacora.NewRow
- Dr("FechaIng") = Now
- Dr("FechaInicio") = ""
- Dr("Usuario") = UsuarioActual.Usuario
- Dr("CveUsuario") = UsuarioActual.CveUsuario
- Dr("Descripcion") = TxtEventoDescripcion.Text.Trim
- Dr("Prioridad") = 1
- Dr("Archivo") = If(FileExtension = "", "", $"{UsuarioActual.Empresa.Ruta}OI\Temp\OI{UsuarioActual.CveUsuario}{Now.ToString("HH-mm")}.{FileExtension}")
- Dr("FileExtension") = String.Format(".{0}", FileExtension)
- Dr("CveOrdenCompra") = -1
- Dr("CveEmpresa") = UsuarioActual.CveEmpresa
- DtBitacora.Rows.Add(Dr)
-
-
- 'LIMPIA
- TxtEventoDescripcion.Text = ""
- 'ChkEventoPrioridad.Checked = False
- RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
-
- CargaEventoBitacoraTemp()
-
-
- End Sub
- Private Sub CargaEventoBitacoraTemp()
- GvBitacora.DataSource = DtBitacora
- GvBitacora.DataBind()
- UPAddEventoBitacora.Update()
- UPEventoBitacora.Update()
- End Sub
- Private Function GuardaBitacoraTemporal(ObjEventoBitacora As ClsOIEventos, CveMovimiento As Integer) As Boolean
- Dim Retorno = False
- Dim Archivo As System.IO.FileInfo = Nothing
-
- For Each Dr As DataRow In DtBitacora.Rows
- If ObjEventoBitacora.AddEventoBitacora(Dr("Descripcion").ToString, Dr("FileExtension").ToString, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
- Try
- If Dr("Archivo").ToString <> "" Then
- Archivo = New System.IO.FileInfo(Dr("Archivo").ToString)
- If Archivo.Exists() Then
- File.Move(Archivo.ToString, String.Format("{0}OI\OI{1}{2}", UsuarioActual.Empresa.Ruta, ObjEventoBitacora.CveEvento.ToString, Archivo.Extension))
- End If
- End If
- Catch ex As Exception
- Retorno = True
- Alert("Ocurrió un error al guardar los datos adjuntos de la Bitácora.", TipoMensaje.MsgError)
- Exit For
- End Try
-
- Else
- Retorno = True
- Exit For
- End If
- Next
-
- Return Retorno
- End Function
-#End Region
-
-
-#Region " GUARDA DIRECTO "
- Private Sub GuardaBitacora()
- Dim ObjEventoBitacora As New ClsOIEventos
-
- Dim FileExtension As String = ""
- Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
- Dim Filename As String = ""
-
- For Each fileItem As Archivo In Filesgral
- FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)) '.Replace(".", "")
- Filename = fileItem.filename
- Next
-
- Dim descripcion As String = TxtEventoDescripcion.Text.Trim
-
-
- If ObjEventoBitacora.AddEventoBitacora(descripcion, String.Format("{0}", FileExtension), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
-
- If Filename <> "" Then
- Filename.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("Empresas\{0}\OI", UsuarioActual.CveEmpresa))
- End If
-
- GvBitacora.DataSource = ObjEventoBitacora.DtResultados
- TxtEventoDescripcion.Text = ""
- Anexo.Text = "[]"
-
- Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion)
- RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
-
-
- End If
-
- ObjEventoBitacora.Dispose()
- GvBitacora.DataBind()
-
- UPEventoBitacora.Update()
- CargaEventoBitacora()
- UPAddEventoBitacora.Update()
- End Sub
-
-#End Region
-
- Protected Sub GVEventoBitacora_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvBitacora.RowDataBound
- If e.Row.RowType = DataControlRowType.DataRow Then
- If e.Row.DBCampo("Archivo").ToString.Trim <> "" AndAlso CveMovimiento > 0 Then
- e.Row.FCLinkButton("LinkArchivo").Visible = True
- e.Row.FCLinkButton("LinkArchivo").CommandArgument = String.Format("OI\{0}", e.Row.DBCampo("Archivo").ToString)
- ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("LinkArchivo")) 'Registro un evento Postbacktrigger, que recargue toda la pagina para que funcione
- Else
- e.Row.Cells(4).Text = "NO"
- End If
- End If
- End Sub
- Protected Sub DownloadFile(ByVal sender As Object, ByVal e As EventArgs)
- Dim filePath As String = String.Format("{0}{1}", UsuarioActual.Empresa.Ruta, CType(sender, LinkButton).CommandArgument)
- If IO.File.Exists(filePath) Then
- Dim Archivo As New System.IO.FileInfo(filePath)
-
- HttpContext.Current.Response.Clear()
- HttpContext.Current.Response.ClearContent()
- HttpContext.Current.Response.ContentType = "application/octet-stream"
- HttpContext.Current.Response.AppendHeader("Content-disposition", "attachment; filename=" + Path.GetFileName(filePath))
- HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
- HttpContext.Current.Response.TransmitFile(filePath)
- HttpContext.Current.Response.Flush()
- HttpContext.Current.Response.End()
-
- Archivo = Nothing
- Else
- UPEventoBitacora.Update()
- End If
-
End Sub
-#End Region
+ Private Sub CargaEventoBitacora()
+ Dim ObjEventoBitacora As New ClsOIEventos()
-#Region " CONSUMO INTERNO "
+ If ObjEventoBitacora.GetAgendaBitacora(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
+ GvBitacora.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento IN (6,2)")
+ Else
+ GvBitacora.DataSource = Nothing
+ End If
+
+ ObjEventoBitacora.Dispose()
+
+ GvBitacora.DataBind()
+ UPEventoBitacora.Update()
+ End Sub
+ Protected Sub BtnGuardarEventoBitacora_Click(sender As Object, e As EventArgs) Handles BtnGuardarEventoBitacora.Click
+ If CveMovimiento > 0 Then
+ GuardaBitacora()
+ Else
+ AgregaBitacoraTemporal()
+ End If
+ End Sub
+
+#Region " GUARDA TEMPORAL "
+ Private Sub AgregaBitacoraTemporal()
+ Dim ObjEventoBitacora As New ClsOIEventos
+
+ 'Archivo
+ Dim FileExtension As String = ""
+ Dim Filename As String = ""
+ Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
+
+ For Each fileItem As Archivo In Filesgral
+ FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
+ Filename = fileItem.filename
+ Next
+
+ Dim Archivo As New System.IO.FileInfo(String.Format("{0}OI\Temp\OI{1}{2}.{3}", UsuarioActual.Empresa.Ruta, UsuarioActual.CveUsuario, Now.ToString("HH-mm"), FileExtension))
+ If Archivo.Exists() Then
+ Archivo.Delete()
+
+ End If
+
+ If Filename <> "" Then
+ Filename.FilesMove(String.Format("OI{0}{1}", UsuarioActual.CveUsuario, Now.ToString("HH-mm")), String.Format("Empresas\{0}\OI\Temp", UsuarioActual.CveEmpresa))
+ End If
+
+
+ 'AGREGA
+ Dim Dr = DtBitacora.NewRow
+ Dr("FechaIng") = Now
+ Dr("FechaInicio") = ""
+ Dr("Usuario") = UsuarioActual.Usuario
+ Dr("CveUsuario") = UsuarioActual.CveUsuario
+ Dr("Descripcion") = TxtEventoDescripcion.Text.Trim
+ Dr("Prioridad") = 1
+ Dr("Archivo") = If(FileExtension = "", "", $"{UsuarioActual.Empresa.Ruta}OI\Temp\OI{UsuarioActual.CveUsuario}{Now.ToString("HH-mm")}.{FileExtension}")
+ Dr("FileExtension") = String.Format(".{0}", FileExtension)
+ Dr("CveOrdenCompra") = -1
+ Dr("CveEmpresa") = UsuarioActual.CveEmpresa
+ DtBitacora.Rows.Add(Dr)
+
+
+ 'LIMPIA
+ TxtEventoDescripcion.Text = ""
+ 'ChkEventoPrioridad.Checked = False
+ RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
+
+ CargaEventoBitacoraTemp()
+
+
+ End Sub
+ Private Sub CargaEventoBitacoraTemp()
+ GvBitacora.DataSource = DtBitacora
+ GvBitacora.DataBind()
+ UPAddEventoBitacora.Update()
+ UPEventoBitacora.Update()
+ End Sub
+ Private Function GuardaBitacoraTemporal(ObjEventoBitacora As ClsOIEventos, CveMovimiento As Integer) As Boolean
+ Dim Retorno = False
+ Dim Archivo As System.IO.FileInfo = Nothing
+
+ For Each Dr As DataRow In DtBitacora.Rows
+ If ObjEventoBitacora.AddEventoBitacora(Dr("Descripcion").ToString, Dr("FileExtension").ToString, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
+ Try
+ If Dr("Archivo").ToString <> "" Then
+ Archivo = New System.IO.FileInfo(Dr("Archivo").ToString)
+ If Archivo.Exists() Then
+ File.Move(Archivo.ToString, String.Format("{0}OI\OI{1}{2}", UsuarioActual.Empresa.Ruta, ObjEventoBitacora.CveEvento.ToString, Archivo.Extension))
+ End If
+ End If
+ Catch ex As Exception
+ Retorno = True
+ Alert("Ocurrió un error al guardar los datos adjuntos de la Bitácora.", TipoMensaje.MsgError)
+ Exit For
+ End Try
+
+ Else
+ Retorno = True
+ Exit For
+ End If
+ Next
+
+ Return Retorno
+ End Function
+#End Region
+
+
+#Region " GUARDA DIRECTO "
+ Private Sub GuardaBitacora()
+ Dim ObjEventoBitacora As New ClsOIEventos
+
+ Dim FileExtension As String = ""
+ Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
+ Dim Filename As String = ""
+
+ For Each fileItem As Archivo In Filesgral
+ FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)) '.Replace(".", "")
+ Filename = fileItem.filename
+ Next
+
+ Dim descripcion As String = TxtEventoDescripcion.Text.Trim
+
+
+ If ObjEventoBitacora.AddEventoBitacora(descripcion, String.Format("{0}", FileExtension), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveMovimientoAlmacen:=CveMovimiento) Then
+
+ If Filename <> "" Then
+ Filename.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("Empresas\{0}\OI", UsuarioActual.CveEmpresa))
+ End If
+
+ GvBitacora.DataSource = ObjEventoBitacora.DtResultados
+ TxtEventoDescripcion.Text = ""
+ Anexo.Text = "[]"
+
+ Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion)
+ RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
+
+
+ End If
+
+ ObjEventoBitacora.Dispose()
+ GvBitacora.DataBind()
+
+ UPEventoBitacora.Update()
+ CargaEventoBitacora()
+ UPAddEventoBitacora.Update()
+ End Sub
+
+#End Region
+
+ Protected Sub GVEventoBitacora_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvBitacora.RowDataBound
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("Archivo").ToString.Trim <> "" AndAlso CveMovimiento > 0 Then
+ e.Row.FCLinkButton("LinkArchivo").Visible = True
+ e.Row.FCLinkButton("LinkArchivo").CommandArgument = String.Format("OI\{0}", e.Row.DBCampo("Archivo").ToString)
+ ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("LinkArchivo")) 'Registro un evento Postbacktrigger, que recargue toda la pagina para que funcione
+ Else
+ e.Row.Cells(4).Text = "NO"
+ End If
+ End If
+ End Sub
+ Protected Sub DownloadFile(ByVal sender As Object, ByVal e As EventArgs)
+ Dim filePath As String = String.Format("{0}{1}", UsuarioActual.Empresa.Ruta, CType(sender, LinkButton).CommandArgument)
+ If IO.File.Exists(filePath) Then
+ Dim Archivo As New System.IO.FileInfo(filePath)
+
+ HttpContext.Current.Response.Clear()
+ HttpContext.Current.Response.ClearContent()
+ HttpContext.Current.Response.ContentType = "application/octet-stream"
+ HttpContext.Current.Response.AppendHeader("Content-disposition", "attachment; filename=" + Path.GetFileName(filePath))
+ HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
+ HttpContext.Current.Response.TransmitFile(filePath)
+ HttpContext.Current.Response.Flush()
+ HttpContext.Current.Response.End()
+
+ Archivo = Nothing
+ Else
+ UPEventoBitacora.Update()
+ End If
+
+ End Sub
+#End Region
+
+#Region " CONSUMO INTERNO "
'Private Sub ActivaConsumoInterno()
' EsConsumoInterno = True
@@ -1620,9 +1657,9 @@ Partial Class Inventarios_RecepcionUsados
' End If
'End Sub
-#End Region
+#End Region
-#Region "PAQUETERIA GUIA"
+#Region "PAQUETERIA GUIA"
'Protected Sub LnkAgregarGuia_Click(sender As Object, e As EventArgs)
' RegistraScript(String.Format("AbrirVentana('/General/PopUpPaqueteriasGuias.aspx?CveMovimiento={0}',800,620);", CveMovimiento))
'End Sub
@@ -1637,251 +1674,252 @@ Partial Class Inventarios_RecepcionUsados
-#End Region
+#End Region
-#Region "DDL CLIENTE / CLIENTE SUCURSAL - SELECTED INDEX CHANGED"
- Private Sub InicializaClientes()
-
- DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros("EsDistribuidor = 1")
- DdlClientes.DataBind()
-
- DdlClientes.Items.Insert(0, New ListItem("Seleccione", "-1"))
- DdlClientes.SelectedValue = "-1"
-
- End Sub
- 'Protected Sub ActivaClientes()
- ' If UsuarioActual.CveEmpresa.Contiene(72, 80) Then
- ' DivCliente.Visible = True
- ' DivDepartamentoEntrega.Visible = True
- ' 'TxtDepartamentoEntrega.Text = ""
- ' End If
-
-
-
- 'End Sub
- Protected Sub DdlClientes_SelectedIndexChanged(sender As Object, e As EventArgs)
- CambiaCliente()
- End Sub
- Private Sub CambiaCliente()
- DivClienteSucursal.Visible = False
- DdlClientesSucursales.Items.Clear()
- CargaSucursalesCliente()
- CargaFacturasCliente()
-
- UpGenerales.Update()
+#Region "DDL CLIENTE / CLIENTE SUCURSAL - SELECTED INDEX CHANGED"
+ Private Sub InicializaClientes()
+
+ DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa) '.FiltraParametros("EsDistribuidor = 1")
+ DdlClientes.DataBind()
+ DdlClientes.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ DdlClientes.SelectedValue = "-1"
+
End Sub
- Private Sub CargaFacturasCliente()
- DivFactura.Visible = True
- Dim CveCliente As Integer = DdlClientes.SelectedValue.ToEntero()
+ 'Protected Sub ActivaClientes()
+ ' If UsuarioActual.CveEmpresa.Contiene(72, 80) Then
+ ' DivCliente.Visible = True
+ ' DivDepartamentoEntrega.Visible = True
+ ' 'TxtDepartamentoEntrega.Text = ""
+ ' End If
+
+
+
+ 'End Sub
+ Protected Sub DdlClientes_SelectedIndexChanged(sender As Object, e As EventArgs)
+ CambiaCliente()
+ End Sub
+ Private Sub CambiaCliente()
+ DivClienteSucursal.Visible = False
+ DdlClientesSucursales.Items.Clear()
+
+ Me.EsDistribuidor = CBool(GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimeroValor("EsDistribuidor", $"CveCliente = {DdlClientes.SelectedValue.ToEntero()}"))
+
+ CargaSucursalesCliente()
+ CargaFacturasCliente()
+
+ UpGenerales.Update()
+ End Sub
+ Private Sub CargaFacturasCliente()
+ DivFactura.Visible = True
+ Dim CveCliente As Integer = DdlClientes.SelectedValue.ToEntero()
If CveCliente > 0 Then
- Me.EsDistribuidor = True
Dim ObjVentas As New ClsVentas
- If ObjVentas.GetVentas(UsuarioActual.CveEmpresa, "-1", "-1", -1, "-1", CveCliente, -1, -1, -1, "-1", "-1", "-1", CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then
- DdlFactura.DataSource = ObjVentas.DtResultados.Copy()
+ If ObjVentas.GetVentas(UsuarioActual.CveEmpresa, "Ing", "-1", -1, "-1", CveCliente, -1, -1, -1, "-1", "-1", "-1", CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then
+ DdlFactura.DataSource = ObjVentas.DtResultados.FiltraParametros("", "", {"CveVenta", "SerieFolio"})
End If
ObjVentas.Dispose()
DdlFactura.DataBind()
DdlFactura.Items.Insert(0, New ListItem("Seleccione", "-1"))
- End If
-
- End Sub
- Protected Sub CargaSucursalesCliente()
- DdlClientesSucursales.Enabled = True
- Dim ObjCliente As New ClsClientes
- If ObjCliente.GetSucursales(DdlClientes.SelectedValue.ToEntero) Then
- If ObjCliente.DtResultados.Rows.Count > 0 Then
-
- DivClienteSucursal.Visible = True
- UpGenerales.Update()
-
- DdlClientesSucursales.DataSource = ObjCliente.DtResultados
- DdlClientesSucursales.DataBind()
-
- DdlClientesSucursales.Items.Insert(0, New ListItem("Seleccione", "-1"))
- DdlClientesSucursales.SelectedValue = "-1"
-
- UpGenerales.Update()
- End If
- End If
- If DdlClientes.SelectedValue.ToEntero > 0 AndAlso GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}").Rows.Count > 0 Then
- Correo = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}").Rows(0)("Mail").ToString
- End If
-
- ObjCliente.Dispose()
- End Sub
-
- Private Sub BtnGeneraPrepoliza_Click(sender As Object, e As EventArgs) Handles BtnGeneraPrepoliza.Click
- ''PREPOLIZA - SE CAMBIO DE LUGAR EL USO DE ESTA PARTE
- Dim ObjInventario As New ClsInventarios
-
- Dim ErrorMovInv As Boolean = False
- Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
-
-
- Dim DtCostos As DataTable = Nothing
- Dim ValorInventario As Decimal = 0
- Dim ValorInventarioME As Decimal = 0
-
- ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
- Dim CveVenta As Integer = ObjInventario.CveVenta
- Dim MovAlmacen As Boolean = True
-
- Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & CveConcepto).ToEntero
- If OrigenMov = 1 Then MovAlmacen = False Else MovAlmacen = True
-
- If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
- DtCostos = ObjInventario.DtResultados
- Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"})
- Dim DTOCs As DataTable = DtCostos.FiltraParametros("", "", {"CveOrdenCompraDetalle"})
- Dim IdCtaContable As Integer = 0
-
- If tmpCostos.Rows.Count > 0 Then
- Dim Concepto As String = $" {TxtObservaciones.Text}"
- Dim CvePrePoliza = ObjConta.AddPrePolizas("Inv_EntradaSalida", 74, DtCostos.SUM("Total"), DtCostos.SUM("Total"), 1, TxtFecha.Text.ToDate, $"F: {HplVenta.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
-
- If HdnCveOrdenCompra.Value.ToEntero > 0 Then
- MovAlmacen = False
- For Each RowOC As DataRow In DTOCs.Rows
- ValorInventario = DtCostos.SUM("Total", $"CveOrdenCompraDetalle = {RowOC("CveOrdenCompraDetalle")}").ToString.ToDecimal
- ValorInventarioME = DtCostos.SUM("TotalExtranjero", $"CveOrdenCompraDetalle = {RowOC("CveOrdenCompraDetalle")}").ToString.ToDecimal
- If ValorInventarioME > 0 Then
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventarioME, Concepto, 228, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventarioME, ImporteME:=ValorInventarioME, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero, TipoCambio:=LbTipoCambio.Text.ToDecimal) Then
- ValorInventario = ValorInventario - ValorInventarioME
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventario, Concepto, 229, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, ImporteME:=ValorInventarioME, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero, TipoCambio:=LbTipoCambio.Text.ToDecimal) Then
- ErrorMovInv = True
- Exit For
- End If
- Else
- ErrorMovInv = True
- Exit For
- End If
- Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventario, Concepto, 176, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero) Then
- ErrorMovInv = True
- Exit For
- End If
- End If
- Next
- Else
- For Each RowInv As DataRow In tmpCostos.Rows
- ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal
- IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaGasto", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, 69, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario) Then
- ErrorMovInv = True
- Exit For
- End If
-
- Next
- End If
-
-
-
- IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total"), Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total")) Then
- ErrorMovInv = True
- End If
- End If
- End If
-
- If ErrorMovInv = False Then
- ObjInventario.Commit()
- End If
-
- ObjInventario.Dispose()
- ObjConta.Dispose()
-
+ End If
+
+ End Sub
+ Protected Sub CargaSucursalesCliente()
+ DdlClientesSucursales.Enabled = True
+ Dim ObjCliente As New ClsClientes
+ If ObjCliente.GetSucursales(DdlClientes.SelectedValue.ToEntero) Then
+ If ObjCliente.DtResultados.Rows.Count > 0 Then
+
+ DivClienteSucursal.Visible = True
+ UpGenerales.Update()
+
+ DdlClientesSucursales.DataSource = ObjCliente.DtResultados
+ DdlClientesSucursales.DataBind()
+
+ DdlClientesSucursales.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ DdlClientesSucursales.SelectedValue = "-1"
+
+ UpGenerales.Update()
+ End If
+ End If
+ If DdlClientes.SelectedValue.ToEntero > 0 AndAlso GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}").Rows.Count > 0 Then
+ Correo = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}").Rows(0)("Mail").ToString
+ End If
+
+ ObjCliente.Dispose()
End Sub
-#End Region
+ Private Sub BtnGeneraPrepoliza_Click(sender As Object, e As EventArgs) Handles BtnGeneraPrepoliza.Click
+ ''PREPOLIZA - SE CAMBIO DE LUGAR EL USO DE ESTA PARTE
+ Dim ObjInventario As New ClsInventarios
- Private Sub GuardarBitacora(CveVenta As Integer, RutaAdjunto As String, Obser As String)
- Dim ObjEventos As New ClsOIEventos()
-
-
- Try
- If ObjEventos.AddEventoBitacora(Obser, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVenta) Then
-
-
- End If
- Catch ex As Exception
- OnError("Se presento un error al guardar la Bitacora", ex)
- End Try
-
- ObjEventos.Dispose()
-
- End Sub
-
- Protected Sub LnkAgregarUsado_Click(sender As Object, e As EventArgs)
- AgregarUsado = True
- ResetModalUsados()
- RegistraScript("$('#DivModalAgregar').modal()", "showmodal")
- LnkModalAgregarUsado.Text = "Agregar"
- UpModalAgregar.Update()
- End Sub
-
- Protected Sub LnkModalAgregarUsado_Click(sender As Object, e As EventArgs)
- AgregarPS()
- End Sub
-
- Protected Sub LnkActuallizarUsado_Click(sender As Object, e As EventArgs)
- ResetModalUsados()
- AgregarUsado = False
-
- LnkModalAgregarUsado.Text = "Actualizar"
- Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
-
- Dim CveTamaño As Integer = DtMovimientos.Rows(GvRow.RowIndex)("CveTamaño").ToString.ToEntero
- IndexDTUsado = GvRow.RowIndex
-
- txtCantidad.Text = DtMovimientos.Rows(GvRow.RowIndex)("Cantidad").ToString
-
- 'DdlClasificacion.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("CveClasificacion").ToString)
- DdlProducto2.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("CvePS").ToString)
-
- ElProductoChange()
-
- 'LblMoldalTamanio.Text = DtMovimientos.Rows(GvRow.RowIndex)("Tamaño").ToString
- DdlUnidad.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("UnidadMedida").ToString)
- txtPrecio.Text = DtMovimientos.Rows(GvRow.RowIndex)("PU").ToString
- TxtObservacionesdetalle.Text = DtMovimientos.Rows(GvRow.RowIndex)("Observaciones").ToString
-
- RegistraScript("$('#DivModalAgregar').modal()", "showmodal")
- UpModalAgregar.Update()
-
- End Sub
-
- Private Sub ResetModalUsados()
- txtCantidad.Text = ""
- ' DdlClasificacion.SelectedIndex = 0
- DdlProducto2.SelectedIndex = 0
- ' LblMoldalTamanio.Text = ""
- Try
- DdlUnidad.SelectedIndex = 0
- Catch ex As Exception
-
- End Try
-
- DdlUnidad.Items.Clear()
-
- txtPrecio.Text = ""
- TxtObservacionesdetalle.Text = ""
-
- UpModalAgregar.Update()
-
- End Sub
-
- Private Sub RBLOpcion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RBLOpcion.SelectedIndexChanged
- If RBLOpcion.SelectedValue.ToEntero = 3 Then
- DivCliente.Visible = False
- Else
- DivCliente.Visible = True
- End If
- SiguienteFolio()
- UpGenerales.Update()
+ Dim ErrorMovInv As Boolean = False
+ Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
+
+
+ Dim DtCostos As DataTable = Nothing
+ Dim ValorInventario As Decimal = 0
+ Dim ValorInventarioME As Decimal = 0
+
+ ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
+ Dim CveVenta As Integer = ObjInventario.CveVenta
+ Dim MovAlmacen As Boolean = True
+
+ Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & CveConcepto).ToEntero
+ If OrigenMov = 1 Then MovAlmacen = False Else MovAlmacen = True
+
+ If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
+ DtCostos = ObjInventario.DtResultados
+ Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"})
+ Dim DTOCs As DataTable = DtCostos.FiltraParametros("", "", {"CveOrdenCompraDetalle"})
+ Dim IdCtaContable As Integer = 0
+
+ If tmpCostos.Rows.Count > 0 Then
+ Dim Concepto As String = $" {TxtObservaciones.Text}"
+ Dim CvePrePoliza = ObjConta.AddPrePolizas("Inv_EntradaSalida", 74, DtCostos.SUM("Total"), DtCostos.SUM("Total"), 1, TxtFecha.Text.ToDate, $"F: {HplVenta.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
+
+ If HdnCveOrdenCompra.Value.ToEntero > 0 Then
+ MovAlmacen = False
+ For Each RowOC As DataRow In DTOCs.Rows
+ ValorInventario = DtCostos.SUM("Total", $"CveOrdenCompraDetalle = {RowOC("CveOrdenCompraDetalle")}").ToString.ToDecimal
+ ValorInventarioME = DtCostos.SUM("TotalExtranjero", $"CveOrdenCompraDetalle = {RowOC("CveOrdenCompraDetalle")}").ToString.ToDecimal
+ If ValorInventarioME > 0 Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventarioME, Concepto, 228, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventarioME, ImporteME:=ValorInventarioME, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero, TipoCambio:=LbTipoCambio.Text.ToDecimal) Then
+ ValorInventario = ValorInventario - ValorInventarioME
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventario, Concepto, 229, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, ImporteME:=ValorInventarioME, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero, TipoCambio:=LbTipoCambio.Text.ToDecimal) Then
+ ErrorMovInv = True
+ Exit For
+ End If
+ Else
+ ErrorMovInv = True
+ Exit For
+ End If
+ Else
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ValorInventario, Concepto, 176, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveOC:=HdnCveOrdenCompra.Value.ToEntero, CveOCDetalle:=RowOC("CveOrdenCompraDetalle").ToString.ToEntero) Then
+ ErrorMovInv = True
+ Exit For
+ End If
+ End If
+ Next
+ Else
+ For Each RowInv As DataRow In tmpCostos.Rows
+ ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal
+ IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaGasto", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, 69, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario) Then
+ ErrorMovInv = True
+ Exit For
+ End If
+
+ Next
+ End If
+
+
+
+ IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, MovAlmacen, DtCostos.SUMD("Total"), Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total")) Then
+ ErrorMovInv = True
+ End If
+ End If
+ End If
+
+ If ErrorMovInv = False Then
+ ObjInventario.Commit()
+ End If
+
+ ObjInventario.Dispose()
+ ObjConta.Dispose()
+
+ End Sub
+
+#End Region
+
+ Private Sub GuardarBitacora(CveVenta As Integer, RutaAdjunto As String, Obser As String)
+ Dim ObjEventos As New ClsOIEventos()
+
+
+ Try
+ If ObjEventos.AddEventoBitacora(Obser, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVenta) Then
+
+
+ End If
+ Catch ex As Exception
+ OnError("Se presento un error al guardar la Bitacora", ex)
+ End Try
+
+ ObjEventos.Dispose()
+
+ End Sub
+
+ Protected Sub LnkAgregarUsado_Click(sender As Object, e As EventArgs)
+ AgregarUsado = True
+ ResetModalUsados()
+ RegistraScript("$('#DivModalAgregar').modal()", "showmodal")
+ LnkModalAgregarUsado.Text = "Agregar"
+ UpModalAgregar.Update()
+ End Sub
+
+ Protected Sub LnkModalAgregarUsado_Click(sender As Object, e As EventArgs)
+ AgregarPS()
+ End Sub
+
+ Protected Sub LnkActuallizarUsado_Click(sender As Object, e As EventArgs)
+ ResetModalUsados()
+ AgregarUsado = False
+
+ LnkModalAgregarUsado.Text = "Actualizar"
+ Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
+
+ Dim CveTamaño As Integer = DtMovimientos.Rows(GvRow.RowIndex)("CveTamaño").ToString.ToEntero
+ IndexDTUsado = GvRow.RowIndex
+
+ txtCantidad.Text = DtMovimientos.Rows(GvRow.RowIndex)("Cantidad").ToString
+
+ 'DdlClasificacion.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("CveClasificacion").ToString)
+ DdlProducto2.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("CvePS").ToString)
+
+ CambiarProducto()
+
+ 'LblMoldalTamanio.Text = DtMovimientos.Rows(GvRow.RowIndex)("Tamaño").ToString
+ DdlUnidad.SelectedValueExist(DtMovimientos.Rows(GvRow.RowIndex)("UnidadMedida").ToString)
+ txtPrecio.Text = DtMovimientos.Rows(GvRow.RowIndex)("PU").ToString
+ TxtObservacionesdetalle.Text = DtMovimientos.Rows(GvRow.RowIndex)("Observaciones").ToString
+
+ RegistraScript("$('#DivModalAgregar').modal()", "showmodal")
+ UpModalAgregar.Update()
+
+ End Sub
+
+ Private Sub ResetModalUsados()
+ txtCantidad.Text = ""
+ ' DdlClasificacion.SelectedIndex = 0
+ DdlProducto2.SelectedIndex = 0
+ ' LblMoldalTamanio.Text = ""
+ Try
+ DdlUnidad.SelectedIndex = 0
+ Catch ex As Exception
+
+ End Try
+
+ DdlUnidad.Items.Clear()
+
+ txtPrecio.Text = ""
+ TxtObservacionesdetalle.Text = ""
+
+ UpModalAgregar.Update()
+
+ End Sub
+
+ Private Sub RBLOpcion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RBLOpcion.SelectedIndexChanged
+ If RBLOpcion.SelectedValue.ToEntero = 3 Then
+ DivCliente.Visible = False
+ Else
+ DivCliente.Visible = True
+ End If
+ SiguienteFolio()
+ UpGenerales.Update()
End Sub
Protected Sub BtnConsultarPendientes_Click(sender As Object, e As EventArgs)
@@ -1944,4 +1982,433 @@ Partial Class Inventarios_RecepcionUsados
UpGenerales.Update()
End Sub
-End Class
+
+ Protected Sub DdlFactura_SelectedIndexChanged(sender As Object, e As EventArgs)
+
+ If Not EsDistribuidor AndAlso Me.CveRemisionRecibida <= 0 Then
+
+ If ObjRemisionNC IsNot Nothing Then
+ ObjRemisionNC.Dispose()
+ ObjRemisionNC = Nothing
+ End If
+
+ If ObjFactura IsNot Nothing Then
+ ObjFactura.Dispose()
+ ObjFactura = Nothing
+ End If
+
+ Dim CveVenta As Integer = DdlFactura.SelectedValue.ToEntero()
+
+ ObjFactura = New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa, DirectorioServidor:=Server.MapPath("/"))
+
+ If ObjFactura IsNot Nothing Then
+ CreaRemisionNC(ObjFactura.CveCliente, ObjFactura.CveSubProyecto, ObjFactura.CveMoneda)
+ DivTotal.Visible = True
+ End If
+ End If
+
+ UPDatos.Update()
+
+ End Sub
+
+ Private Sub CreaRemisionNC(CveCliente As Integer, CveSubProyecto As Integer, CveMoneda As Integer)
+ ObjRemisionNC = New Modelos.Factura(UsuarioActual)
+
+ Dim Folio As String = ""
+ Dim Serie As String = ""
+
+ Dim ObjFolios As New ClsGralFolios()
+ If ObjFolios.GetFolios("RNC", UsuarioActual.CveEmpresa) Then
+ Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" Estado = 'Activo' AND CveSubProyecto = {0}", CveSubProyecto))
+ If DT.Rows.Count > 0 Then
+ Serie = DT.Rows(0)("Serie").ToString()
+ Folio = DT.Rows(0)("FActual").ToString()
+ End If
+ DT.Dispose()
+ End If
+ ObjFolios.Dispose()
+
+ ObjRemisionNC.TipoMensajeRespuesta = Modelos.TipoMensajeRespuesta.HTML
+ ObjRemisionNC.Serie = Serie
+ ObjRemisionNC.Folio = Folio.ToEntero()
+ ObjRemisionNC.Version = "3.3"
+ ObjRemisionNC.FolioFiscal = ""
+ ObjRemisionNC.CveUsuario = UsuarioActual.CveUsuario
+ ObjRemisionNC.CveEmpresa = UsuarioActual.CveEmpresa
+ ObjRemisionNC.TipoCambio = 1
+ ObjRemisionNC.ConvertirPesos = False
+ ObjRemisionNC.CveMoneda = CveMoneda
+ ObjRemisionNC.Moneda = GlobalDTMonedas.FiltroPrimeroValor("Moneda", String.Format("CveMoneda = {0} ", CveMoneda))
+ ObjRemisionNC.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", String.Format("CveMoneda = {0} ", CveMoneda))
+ ObjRemisionNC.TipoDocto = "RNC"
+ ObjRemisionNC.RefDocto = ""
+ ObjRemisionNC.CveMesa = -1
+ ObjRemisionNC.Fecha = Now
+ ObjRemisionNC.CvePrePoliza = -1
+ ObjRemisionNC.FechaPago = Now
+ ObjRemisionNC.MotivoDescuento = ""
+ ObjRemisionNC.FechaEjecucion = Now
+ ObjRemisionNC.UsuarioCreo = UsuarioActual.Usuario
+ ObjRemisionNC.CveCondicionEntrega = -1
+ ObjRemisionNC.CondicionEntrega = ""
+ ObjRemisionNC.NumeroCuenta = ""
+ ObjRemisionNC.CondicionesPago = 0
+ ObjRemisionNC.FormaPago = 0
+ ObjRemisionNC.PedidoContrato = ""
+ ObjRemisionNC.NumeroContrato = ""
+ ObjRemisionNC.DescripcionContrato = ""
+ ObjRemisionNC.CveCorte = -1
+ ObjRemisionNC.TipoDocumento = "Remisión"
+ ObjRemisionNC.Alfa1 = ""
+ ObjRemisionNC.Alfa2 = ""
+ ObjRemisionNC.Alfa3 = ""
+ ObjRemisionNC.CveContrato = -1
+ ObjRemisionNC.ConvertirPesos = False
+ ObjRemisionNC.CveSubProyecto = CveSubProyecto
+ ObjRemisionNC.CveSubProyectoCobranza = CveSubProyecto
+ ObjRemisionNC.CveSubProyectoEjecucion = CveSubProyecto
+ ObjRemisionNC.SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero(String.Format("CveSubProyecto = {0}", CveSubProyecto)))
+ ObjRemisionNC.SubProyectoMatriz = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1"))
+
+ 'CLIENTE
+ ObjRemisionNC.CveCliente = CveCliente
+ ObjRemisionNC.SetCliente()
+ ObjRemisionNC.CveAlmacen = -1
+
+ Dim ObjCliente As New ClsClientes
+ If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa, -1, TipoCliente:=-1) Then
+ If ObjCliente.DtResultados.Rows.Count > 0 Then
+ ObjRemisionNC.CveFormaPago33 = ObjCliente.CveFormaPago33
+ ObjRemisionNC.FormaPago33 = GlobalDTVtaFormaPago.FiltroPrimeroValor("FormaPago", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
+ ObjRemisionNC.FormaPagoSAT33 = GlobalDTVtaFormaPago.FiltroPrimeroValor("ClaveFormaPagoSAT", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
+
+ ObjRemisionNC.CveMetodoPago33 = ObjCliente.CveMetodoPago33
+ ObjRemisionNC.MetodoPago33 = GlobalDTVtaMetodoPago.FiltroPrimeroValor("MetodoPago", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
+ ObjRemisionNC.ClaveMetodoPagoSAT = GlobalDTVtaMetodoPago.FiltroPrimeroValor("ClaveMetodoPagoSAT", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
+
+ ObjRemisionNC.CveUsoCFDI = ObjCliente.CveUsoCFDI
+ ObjRemisionNC.UsoCFDI = GlobalDTSATUsosCFDI.FiltroPrimeroValor("Descripcion", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
+ ObjRemisionNC.ClaveUsoCFDI = GlobalDTSATUsosCFDI.FiltroPrimeroValor("UsoCFDI", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
+
+ ObjRemisionNC.CveMetodoPago = ObjCliente.CveMetodoPago
+
+ If GlobalDTMetodosPago.FiltraParametros(String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago)).Rows.Count > 0 Then
+ ObjRemisionNC.MetodoPago = GlobalDTMetodosPago.FiltraParametros(String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago)).Rows(0)("MetodoPago").ToString
+ Else
+ ObjRemisionNC.CveMetodoPago = 1
+ ObjRemisionNC.MetodoPago = "Efectivo"
+ End If
+ End If
+ End If
+
+ If ObjCliente.GetSucursales(CveCliente) Then
+ If ObjCliente.DtResultados.Rows.Count > 0 Then
+ ObjRemisionNC.CveClienteSucursal = If(String.IsNullOrEmpty(ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'")), -1, ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'").ToEntero())
+ Else
+ ObjRemisionNC.CveClienteSucursal = -1
+ End If
+ End If
+ ObjCliente.Dispose()
+
+ 'DETALLES
+ ObjRemisionNC.DtDetalle = CreaDTDetalleRNC()
+
+ 'VALIDA PROMOCIONES Y EXISTENCIAS
+ Dim ObjVentas As New ClsVentas
+ If ObjVentas.GetPromocionesPS(-1, Now, CveSubProyecto, ObjRemisionNC.CveCliente, ObjRemisionNC.CveVendedor, UsuarioActual.CveEmpresa) Then
+ ObjRemisionNC.DtPromociones = ObjVentas.DtResultados.Copy()
+ End If
+ ObjVentas.Dispose()
+
+ ObjRemisionNC.Observaciones = ""
+ ObjRemisionNC.OrdenCompra = ""
+ ObjRemisionNC.PedidoContrato = ""
+ ObjRemisionNC.ObservacionesAlmacen = ""
+
+ End Sub
+
+ Private Function AddPSRNC(ByRef TmpDT As DataTable, Cantidad As Decimal, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, CvePS As Integer, PS As String, Obs As String,
+ PU As Decimal, Descuento As Decimal,
+ CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String,
+ Optional SerieLote As String = "", Optional TiempoEntrega As String = "", Optional EntregaDirecta As Integer = 0,
+ Optional CveContratoDetalle As Integer = 0, Optional CveVentaDetalle As Integer = 0, Optional CveMovimientoDetallePedido As Integer = 0,
+ Optional CveOrdenCompraDetalle As Integer = 0, Optional CveVentaDetalleRemision As Integer = 0, Optional CveVentaDetalleCotizacion As Integer = 0,
+ Optional CuentaPredial As String = "", Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional EsCargo As Boolean = False, Optional PorcentajeIVA As Decimal = 0D) As Boolean
+
+ Dim Retorno As Boolean = False
+ If Not CvePS > 0 Then
+ Alert("Ocurrió un error al cargar la información del producto a agregar. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+ If (Obs.Length + PS.Length > 1000) Then
+ Alert(String.Format("El Nombre y observación del producto tiene longitud de {0} caracteres y excede los 1000 caracteres permitidos.", Obs.Length + PS.Length), TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+
+ Dim Row As DataRow = Nothing
+ Dim TotalCalculableImpuestos As Decimal = 0
+ PU = Math.Round(PU, 6) ' el precio unitario puede llevar hasta 6 decimales permitidos
+
+ Row = TmpDT.NewRow()
+ Row("CveProyecto") = CveProyecto
+ Row("Proyecto") = Proyecto
+ Row("CveSubProyecto") = CveSubProyecto
+ Row("SubProyecto") = SubProyecto
+ Row("SerieLote") = SerieLote
+ Row("TiempoEntrega") = TiempoEntrega
+ Row("Orden") = TmpDT.Rows.Count + 1
+ Row("Cantidad") = Cantidad
+ Row("CveUM") = CveUM
+ Row("UM") = UM
+ Row("CveClasificacion") = CveClasificacion
+ Row("Clasificacion") = Clasificacion
+ Row("CvePS") = CvePS
+ Row("Obs") = Obs
+
+
+
+ Dim DrPS As DataRow = Nothing
+
+ DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") ' Estado = -1
+
+ If DrPS Is Nothing Then
+ Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+
+ DrPS("IEPSPorcentaje") = 0
+
+ 'verifica si tiene ventaminima
+ If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString.ToDecimal > 0 Then
+ 'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15...
+ If Cantidad Mod DrPS("VentaMinima").ToString.ToDecimal <> 0 Then
+ Alert(String.Format("El producto se vende solo en cantidades de {0}", DrPS("VentaMinima").ToString))
+ Return False
+ End If
+ End If
+
+ TotalCalculableImpuestos = (Cantidad * (PU)) - Descuento
+
+ Row("PU") = PU
+ Row("Codigo") = DrPS("Codigo")
+ Row("NoIdentificacion") = DrPS("Codigo")
+ Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria")
+ Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana")
+ Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion")
+ Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion")
+ Row("Consec") = TmpDT.Rows.Count + 1
+
+ Row("PS") = DrPS("PS")
+ Row("CodigoPS") = DrPS("PSCodigo").ToString
+ Row("CveTipoPS") = DrPS("CveTipoPS")
+ Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario")
+ Row("CveTamaño") = DrPS("CveTamaño")
+
+ If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion")
+ If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion")
+
+ Row("PorcentajeIVA") = PorcentajeIVA
+
+ Row("IVA") = Row("PorcentajeIVA")
+ Row("ImporteIVA") = Math.Round(Row("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, 2)
+
+
+ Row("ImporteRetIVA") = 0
+ Row("ImporteRetISR") = 0
+ Row("PorcentajeRetIVA") = 0
+ Row("PorcentajeRetISR") = 0
+ Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
+ Row("ImporteIEPS") = Math.Round(DrPS("IEPSPorcentaje").ToString.ToDecimal * TotalCalculableImpuestos, 2)
+ Row("IEPS") = Row("ImporteIEPS")
+ Row("Descuento") = Math.Round(Descuento, 2)
+ Row("TipoDescuento") = 0
+ Row("Total") = (Cantidad * PU)
+ Row("TotalImporte") = Math.Round(Cantidad * PU, 2)
+ 'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
+ ' Row("IdCtaContVentas") = IdCtaContable
+ ' Row("AplicaParaConcepto") = AplicaParaConcepto
+
+ Row("SATClaveProdServ") = DrPS("SATClavePS")
+ Row("SATClaveUM") = DrPS("SATClaveUnidadMedida")
+
+
+ Row("EntregaDirecta") = EntregaDirecta
+ 'Contratos
+ Row("CveContratoDetalle") = CveContratoDetalle
+ Row("CveVentaDetalle") = CveVentaDetalle
+ Row("CveMovimientoDetallePedido") = CveVentaDetalle
+ Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle
+ Row("CveVentaDetalleRemision") = CveVentaDetalleRemision
+ Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion
+ Row("CveVentaDetallePedido2") = CveVentaDetallePedido2
+ Row("CuentaPredial") = CuentaPredial
+ Row("EsCargo") = EsCargo
+
+ 'RECARGAR GV
+ TmpDT.Rows.Add(Row)
+ TmpDT.AcceptChanges()
+ Retorno = True
+ Return Retorno
+
+ End Function
+ Protected Function CreaDTDetalleRNC() As DataTable
+ Dim TmpDT = New DataTable
+ TmpDT.Columns.Add("CveVenta", GetType(Integer))
+ TmpDT.Columns.Add("Consec", GetType(Integer))
+ TmpDT.Columns.Add("Cantidad", GetType(Decimal))
+ TmpDT.Columns.Add("Codigo", GetType(String))
+ TmpDT.Columns.Add("CveUM", GetType(Integer))
+ TmpDT.Columns.Add("UM", GetType(String))
+ TmpDT.Columns.Add("SATClaveUM", GetType(String))
+ TmpDT.Columns.Add("CveClasificacion", GetType(Integer))
+ TmpDT.Columns.Add("Clasificacion", GetType(String))
+ TmpDT.Columns.Add("CvePS", GetType(Integer))
+ TmpDT.Columns.Add("PS", GetType(String))
+ TmpDT.Columns.Add("CodigoPS", GetType(String))
+ TmpDT.Columns.Add("SATClaveProdServ", GetType(String))
+ TmpDT.Columns.Add("NoIdentificacion", GetType(String))
+ TmpDT.Columns.Add("CveTipoPS", GetType(Integer))
+ TmpDT.Columns.Add("CveTipoInvPS", GetType(Integer))
+ TmpDT.Columns.Add("SerieLote", GetType(String))
+ TmpDT.Columns.Add("CuentaPredial", GetType(String))
+ TmpDT.Columns.Add("Obs", GetType(String))
+ TmpDT.Columns.Add("TiempoEntrega", GetType(String))
+ TmpDT.Columns.Add("PU", GetType(Decimal))
+ TmpDT.Columns.Add("IVA", GetType(Decimal))
+ TmpDT.Columns.Add("ImporteIVA", GetType(Decimal))
+ TmpDT.Columns.Add("PorcentajeIVA", GetType(Decimal))
+ TmpDT.Columns.Add("ImporteRetIVA", GetType(Decimal))
+ TmpDT.Columns.Add("ImporteRetISR", GetType(Decimal))
+ TmpDT.Columns.Add("PorcentajeRetIVA", GetType(Decimal))
+ TmpDT.Columns.Add("PorcentajeRetISR", GetType(Decimal))
+ TmpDT.Columns.Add("ImporteIEPS", GetType(Decimal))
+ TmpDT.Columns.Add("IEPS", GetType(Decimal))
+ TmpDT.Columns.Add("PorcentajeIEPS", GetType(Decimal))
+ TmpDT.Columns.Add("Descuento", GetType(Decimal))
+ TmpDT.Columns.Add("TipoDescuento", GetType(Integer))
+ TmpDT.Columns.Add("TotalImporte", GetType(Decimal))
+ TmpDT.Columns.Add("Total", GetType(Decimal))
+ 'Para uso del módulo contable
+ TmpDT.Columns.Add("AsientoContableVentas", GetType(Integer))
+ TmpDT.Columns.Add("IdCtaContVentas", GetType(Integer))
+ TmpDT.Columns.Add("AplicaParaConcepto", GetType(Boolean))
+ TmpDT.Columns.Add("CveProyecto", GetType(Integer))
+ TmpDT.Columns.Add("Proyecto", GetType(String))
+ TmpDT.Columns.Add("CveSubProyecto", GetType(Integer))
+ TmpDT.Columns.Add("SubProyecto", GetType(String))
+ TmpDT.Columns.Add("CveVentaDetallePadre", GetType(Integer))
+
+ 'TipoDescuento: 1 = Descuento * PU; 2 = Descuento por Total del concepto
+ TmpDT.Columns.Add("CvePresupuestoIngreso", GetType(Integer))
+ TmpDT.Columns.Add("CveFuenteRecaudacion", GetType(Integer))
+ 'Contratos
+ TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
+ 'Remisiones a Facturas
+ TmpDT.Columns.Add("CveVentaDetalle", GetType(Integer))
+ TmpDT.Columns.Add("CveVentaDetalleRemision", GetType(Integer))
+ TmpDT.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer))
+
+ 'Pedido2 a Facturas
+ TmpDT.Columns.Add("CveVentaDetallePedido2", GetType(Integer))
+
+ TmpDT.Columns.Add("Origen", GetType(Integer))
+ 'Ordenes Servicio
+ TmpDT.Columns.Add("CveOS", GetType(Integer))
+ TmpDT.Columns.Add("CveOSDetalle", GetType(Integer))
+ TmpDT.Columns.Add("SeFacturara", GetType(Integer))
+ TmpDT.Columns.Add("Folio", GetType(Integer))
+ TmpDT.Columns.Add("Estatus", GetType(String))
+ 'Ordenamiento
+ TmpDT.Columns.Add("Orden", GetType(Integer))
+ TmpDT.Columns.Add("TipoDocto", GetType(String))
+ 'OC
+ TmpDT.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
+ TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
+
+ TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer))
+ TmpDT.Columns.Add("CantidadFacturadaRem", GetType(Decimal))
+ TmpDT.Columns.Add("CantidadFacturadaCot", GetType(Decimal))
+ TmpDT.Columns.Add("CantidadFacturadaPed2", GetType(Decimal))
+ TmpDT.Columns.Add("CantidadInventario", GetType(Decimal))
+
+ TmpDT.Columns.Add("ClaveSATFraccionArancelaria", GetType(String))
+ TmpDT.Columns.Add("ClaveSATUnidadAduana", GetType(String))
+ TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String))
+ TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String))
+
+ TmpDT.Columns.Add("CveTamaño", GetType(Integer))
+ TmpDT.Columns.Add("EsCargo", GetType(Boolean))
+
+ Return TmpDT
+ End Function
+ Protected Sub CargaDTDetalleRNC()
+
+ For Each Row As GridViewRow In GvM.Rows
+ If Row.RowType = DataControlRowType.DataRow Then
+
+ Dim CvePS As Integer = Row.DataKey("CvePS").ToEntero()
+ Dim Cantidad As Decimal = Row.DataKey("Cantidad").ToDecimal()
+ Dim PU As Decimal = Row.DataKey("PU").ToDecimal()
+ Dim SubTotal As Decimal = Cantidad * PU
+
+ Dim CveUnidadMedida As Integer = 0
+ Dim CveClasificacion As Integer = 0
+ Dim UnidadMedida As String = ""
+ Dim Clasificacion As String = ""
+ Dim PS As String = ""
+ Dim PorcentajeIVA As Decimal = 0D
+ Dim IVA As Decimal = 0D
+ If CvePS > 0 Then
+ If SubTotal > 0 Then
+ Dim Dr As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS).Rows(0)
+ If Dr IsNot Nothing Then
+ CveUnidadMedida = Dr("CveUnidadMedida").ToString.ToEntero
+ CveClasificacion = Dr("CveClasificacion").ToString.ToEntero
+ PS = Dr("PSCodigo").ToString
+ UnidadMedida = Dr("UnidadMedida").ToString
+ Clasificacion = Dr("Clasificacion").ToString
+ End If
+ PorcentajeIVA = 0.16D
+ IVA = SubTotal * PorcentajeIVA
+ End If
+ End If
+
+ AddPSRNC(ObjRemisionNC.DtDetalle, Cantidad, CveUnidadMedida, UnidadMedida, CveClasificacion, Clasificacion, CvePS, PS, "Inv/RecepcionUsados", SubTotal, 0, -1, "",
+ ObjRemisionNC.CveSubProyecto, ObjRemisionNC.SubProyecto.SubProyecto, PorcentajeIVA:=PorcentajeIVA)
+ End If
+ Next
+
+ Dim TotalImporte As Decimal = ObjRemisionNC.DtDetalle.SUM("TotalImporte").ToDecimal()
+ Dim ImporteIVA As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteIVA").ToDecimal()
+ Dim ImporteRetIVA As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteRetIVA").ToDecimal()
+ Dim ImporteRetISR As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteRetISR").ToDecimal()
+ Dim ImporteIEPS As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteIEPS").ToDecimal()
+ Dim Descuento As Decimal = ObjRemisionNC.DtDetalle.SUM("Descuento").ToDecimal()
+ Dim Amortizacion As Decimal = 0
+
+ Dim Total As Decimal = (TotalImporte + ImporteIVA + ImporteIEPS) - (ImporteRetIVA + ImporteRetISR + Descuento + Amortizacion)
+
+ 'DETALLES
+ ObjRemisionNC.SubTotal = TotalImporte
+ ObjRemisionNC.Descuento = Descuento
+ ObjRemisionNC.Amortizacion = Amortizacion
+ ObjRemisionNC.IVA = ImporteIVA
+ ObjRemisionNC.RetIVA = ImporteRetIVA
+ ObjRemisionNC.RetISR = ImporteRetISR
+ ObjRemisionNC.IEPS = ImporteIEPS
+ ObjRemisionNC.Total = Total
+ ObjRemisionNC.TotalOtrosConceptos = 0
+ End Sub
+
+ Protected Sub CargaTamaños()
+ Dim objAcum As New ClsAcumuladores
+ If objAcum.TamañoGet(-1, UsuarioActual.Empresa.CveEmpresa) Then
+ DtTamaños = objAcum.DtResultados.Copy()
+ End If
+ objAcum.Dispose()
+ End Sub
+
+End Class
diff --git a/LogMail.txt b/LogMail.txt
index 23f7b21bb..3a04a50e8 100644
--- a/LogMail.txt
+++ b/LogMail.txt
@@ -4,4 +4,4 @@
en ClsSisMail.FinalSend(Mail ObjMail) en C:\inetpub\WWWSIGIT\App_Code\ClsSisMail.vb:línea 129
05/09/2019:12:31 p. m. From:'signotificaciones@adssistemas.mx' - Para:';' - Asunto:'Envío de complemento de pago' - CCP: '' - Adjuntos: 2
- Ocurrió un error al mandar correo.System.InvalidOperationException: Se debe especificar un destinatario.
en System.Net.Mail.SmtpClient.Send(MailMessage message)
- en ClsSisMail.FinalSend(Mail ObjMail) en C:\inetpub\WWWSIGIT\App_Code\ClsSisMail.vb:línea 129
10/09/2019:12:16 p. m. From:'signotificaciones@adssistemas.mx' - Para:'DSDDS@hotmail.com' - Asunto:'SIG - La Orden Compra #26598 cambió de estatus.' - CCP: '' - Adjuntos: 0
10/09/2019:02:58 p. m. No se especifico a remitente - SIG - La Orden Compra #28107 cambió de estatus.
11/09/2019:11:56 a. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Solicitud Vacaciones ' - CCP: '' - Adjuntos: 0
11/09/2019:12:35 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'(Vacaciones:Permisos) Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:02 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Permiso para Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:03 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Vacaciones Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:10 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Vacaciones Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
20/09/2019:05:15 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29109' - CCP: '' - Adjuntos: 1
20/09/2019:05:36 p. m. No se especifico a remitente - Entrega de Factura HMO - 29110
20/09/2019:05:45 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29111' - CCP: '' - Adjuntos: 1
20/09/2019:05:47 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29112' - CCP: '' - Adjuntos: 1
23/09/2019:10:55 a. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'Solicitud de anticipo de Orden de Compra' - CCP: '' - Adjuntos: 0
23/09/2019:11:05 a. m. No se especifico a remitente - Solicitud de anticipo de Orden de Compra
23/09/2019:11:34 a. m. No se especifico a remitente - Solicitud de anticipo de Orden de Compra
25/09/2019:05:06 p. m. No se especifico a remitente - SIG - La Orden Compra #4860 cambió de estatus.
04/10/2019:12:09 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 83
\ No newline at end of file
+ en ClsSisMail.FinalSend(Mail ObjMail) en C:\inetpub\WWWSIGIT\App_Code\ClsSisMail.vb:línea 129
10/09/2019:12:16 p. m. From:'signotificaciones@adssistemas.mx' - Para:'DSDDS@hotmail.com' - Asunto:'SIG - La Orden Compra #26598 cambió de estatus.' - CCP: '' - Adjuntos: 0
10/09/2019:02:58 p. m. No se especifico a remitente - SIG - La Orden Compra #28107 cambió de estatus.
11/09/2019:11:56 a. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Solicitud Vacaciones ' - CCP: '' - Adjuntos: 0
11/09/2019:12:35 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'(Vacaciones:Permisos) Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:02 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Permiso para Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:03 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Vacaciones Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
11/09/2019:01:10 p. m. From:'signotificaciones@adssistemas.mx' - Para:'antonio.gonzalez@adssistemas.mx' - Asunto:'Vacaciones Asistencia Técnica AD Sistemas' - CCP: '' - Adjuntos: 0
20/09/2019:05:15 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29109' - CCP: '' - Adjuntos: 1
20/09/2019:05:36 p. m. No se especifico a remitente - Entrega de Factura HMO - 29110
20/09/2019:05:45 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29111' - CCP: '' - Adjuntos: 1
20/09/2019:05:47 p. m. From:'ENVIOFACTURADIGITAL@COMPUPROVEEDORES.COM' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura HMO - 29112' - CCP: '' - Adjuntos: 1
23/09/2019:10:55 a. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'Solicitud de anticipo de Orden de Compra' - CCP: '' - Adjuntos: 0
23/09/2019:11:05 a. m. No se especifico a remitente - Solicitud de anticipo de Orden de Compra
23/09/2019:11:34 a. m. No se especifico a remitente - Solicitud de anticipo de Orden de Compra
25/09/2019:05:06 p. m. No se especifico a remitente - SIG - La Orden Compra #4860 cambió de estatus.
04/10/2019:12:09 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 83
17/10/2019:12:10 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'SIG - La Orden Compra #1488 cambió de estatus.' - CCP: '' - Adjuntos: 0
17/10/2019:12:10 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'SIG - La Orden Compra #1488 cambió de estatus.' - CCP: 'japmx95@gmail.com;;' - Adjuntos: 0
17/10/2019:12:10 p. m. No se especifico a remitente - SIG - Se Genero una Orden de Compra
17/10/2019:12:39 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com;' - Asunto:'Vinculación de factura de OC ' - CCP: '' - Adjuntos: 0
17/10/2019:07:07 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'SIG - La Orden Compra #1489 cambió de estatus.' - CCP: '' - Adjuntos: 0
17/10/2019:07:07 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'SIG - La Orden Compra #1489 cambió de estatus.' - CCP: 'japmx95@gmail.com;;' - Adjuntos: 0
17/10/2019:07:07 p. m. No se especifico a remitente - SIG - Se Genero una Orden de Compra
17/10/2019:07:11 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com;' - Asunto:'Vinculación de factura de OC ' - CCP: '' - Adjuntos: 0
17/10/2019:07:14 p. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com;' - Asunto:'Recepción de Material de OC ' - CCP: '' - Adjuntos: 0
21/10/2019:10:50 a. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 90
21/10/2019:10:53 a. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 91
21/10/2019:10:53 a. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 92
21/10/2019:10:59 a. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 93
21/10/2019:11:03 a. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 94
21/10/2019:07:01 p. m. No se especifico a remitente - SIG. Requisición #30796 Bitacora
21/10/2019:07:02 p. m. No se especifico a remitente - SIG. Requisición #30796 Bitacora
21/10/2019:07:18 p. m. No se especifico a remitente - SIG. Requisición #31573 Bitacora
21/10/2019:07:35 p. m. No se especifico a remitente - SIG - La Requisicion #31706 cambió de estatus.
21/10/2019:07:35 p. m. No se especifico a remitente - SIG - La Requisicion #31706 cambió de estatus.
21/10/2019:07:36 p. m. No se especifico a remitente - SIG - La Requisición #31706 cambió de estatus.
21/10/2019:07:36 p. m. No se especifico a remitente - SIG. Requisición #31706 Modificada
21/10/2019:07:37 p. m. No se especifico a remitente - SIG - Se Genero una Orden de Compra
21/10/2019:07:37 p. m. No se especifico a remitente - SIG - La Requisición #31706 se le ha asignado
21/10/2019:07:41 p. m. No se especifico a remitente - SIG - La Requisicion #31707 cambió de estatus.
21/10/2019:07:41 p. m. No se especifico a remitente - SIG - La Requisicion #31707 cambió de estatus.
21/10/2019:07:42 p. m. No se especifico a remitente - SIG. Requisición #31707 Bitacora
22/10/2019:09:25 a. m. No se especifico a remitente - SIG. Requisición #31697 Bitacora
\ No newline at end of file
diff --git a/OC/OC.aspx b/OC/OC.aspx
index c0448c64b..18f34f485 100644
--- a/OC/OC.aspx
+++ b/OC/OC.aspx
@@ -1,1833 +1,1856 @@
-<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="OC.aspx.vb" EnableEventValidation="false" Inherits="OC" %>
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb
index 6849f8e1d..4d035618e 100644
--- a/OC/OC.aspx.vb
+++ b/OC/OC.aspx.vb
@@ -174,6 +174,14 @@ Partial Class OC
ViewState("NumCotizacionesGanadoras") = value
End Set
End Property
+ Private Property NumCotizacionesEvaluar As Integer
+ Get
+ NumCotizacionesEvaluar = IfNull(ViewState("NumCotizacionesEvaluar"), "-1", ViewState("NumCotizacionesEvaluar")).ToString().ToEntero()
+ End Get
+ Set(value As Integer)
+ ViewState("NumCotizacionesEvaluar") = value
+ End Set
+ End Property
Private Property ProveedoresCotizacion As ArrayList
Get
ProveedoresCotizacion = DirectCast(ViewState("ProveedoresCotizacion"), ArrayList)
@@ -964,7 +972,7 @@ Partial Class OC
DtDetalle.Columns.Add("CveContratoDetalle", GetType(Integer))
DtDetalle.Columns.Add("CantidadNoEditable", GetType(Double))
- DtDetalle.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
+ 'DtDetalle.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
' DtDetalle.Columns.Add("ClasificacionOG", GetType(String))
@@ -1223,9 +1231,11 @@ Partial Class OC
DdlPrioridad.SelectedValueExist(objOC.Prioridad.ToString)
ChkCotizacion.Checked = objOC.RequiereCotizacion
+
If ChkCotizacion.Checked AndAlso UsuarioActual.Empresa.Funcionalidad(565) = "1" Then
ChkCotizacion.Enabled = False
End If
+
tabCotizaciones.Enabled = objOC.RequiereCotizacion
tabCotizaciones.UpdatePanelID = uppOpciones.ID
TxtGuia.Text = objOC.Guia
@@ -1576,6 +1586,11 @@ Partial Class OC
'CARGA MOVTOS DE ALMACEN
InicializaMovtosAlmacen()
+ If UsuarioActual.Empresa.Funcionalidad(565) = "1" And pCveOrdenCompra > 0 And TipoOC.ToUpper() = "REQ" Then
+ RowCotizaciones.Visible = True
+ UpIvas.Update()
+ End If
+
uppEstatus.Update()
End Sub
@@ -2058,6 +2073,12 @@ Partial Class OC
Private Function ValidaGuardar() As Boolean
Dim TieneError = False
+ 'Entrega Directa requiere Cliente y Vendedor
+ If ChkEntregaDirecta.Checked And Ddlcliente.SelectedValue.ToEntero <= 0 Then
+ Alert("Al ser una Entrega Directa es necesario seleccionar un cliente, por favor seleccione uno.")
+ Return True
+ End If
+
'VALIDA QUE TENGA REGISTROS
If Not GvD.Rows.Count > 0 Then
Alert(String.Format("La {0} debe de tener registros", TipoLargo), TipoMensaje.MsgAdvertencia)
@@ -2196,14 +2217,22 @@ Partial Class OC
End If
'VALIDA QUE TENGA LAS COTIZACIONES QUE DEBEN TENER
- If UsuarioActual.Empresa.Funcionalidad(565) = "1" AndAlso CveConfianzaProveedor > 0 AndAlso (TipoOC.ToUpper = "REQ" And CveEstatusFinalOK = CboE.SelectedValue.ToEntero) Then
+ If UsuarioActual.Empresa.Funcionalidad(565) = "1" AndAlso (TipoOC.ToUpper = "REQ" And CveEstatusFinalOK = CboE.SelectedValue.ToEntero) Then
If CveConfianzaProveedor > 0 Then
+ 'SUMA EL TOTAL DE COTIZACIONES
+ For Each GvRow As GridViewRow In GvBitacoraEva.Rows
+ If GvRow.RowType = DataControlRowType.DataRow Then
+ Me.NumCotizacionesEvaluar += 1
+ End If
+ Next
- If CveConfianzaProveedor = 1 AndAlso Me.NumCotizaciones < 1 Then
- Alert("Para el proveedor seleccionado es necesario terner al menos 1 cotización.", TipoMensaje.MsgAdvertencia)
+ Me.NumCotizacionesEvaluar += Me.NumCotizaciones
+
+ If CveConfianzaProveedor = 1 AndAlso Me.NumCotizacionesEvaluar < 1 Then
+ Alert("Para el proveedor seleccionado es necesario tener al menos 1 cotización.", TipoMensaje.MsgAdvertencia)
TieneError = True
- ElseIf CveConfianzaProveedor = 2 AndAlso Me.NumCotizaciones < 2 Then
- Alert("Para el proveedor seleccionado es necesario terner al menos 2 cotizaciones", TipoMensaje.MsgAdvertencia)
+ ElseIf CveConfianzaProveedor = 2 AndAlso Me.NumCotizacionesEvaluar < 2 Then
+ Alert("Para el proveedor seleccionado es necesario tener al menos 2 cotizaciones", TipoMensaje.MsgAdvertencia)
TieneError = True
End If
@@ -2222,12 +2251,6 @@ Partial Class OC
End Function
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
- 'Entrega Directa requiere Cliente y Vendedor
- If ChkEntregaDirecta.Checked And Ddlcliente.SelectedValue.ToEntero <= 0 Then
- Alert("Al ser una Entrega Directa es necesario seleccionar un cliente, por favor seleccione uno.")
- Exit Sub
- End If
-
'VALIDACIONES PARA GUARDAR
If ValidaGuardar() Then Exit Sub
@@ -4501,18 +4524,48 @@ Partial Class OC
End If
End If
End Sub
+ Protected Sub GvBitacoraEva_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvBitacoraEva.RowDataBound
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("Archivo").ToString.Trim <> "" AndAlso CveOrdenCompra > 0 Then
+ e.Row.FCLinkButton("LinkArchivo").Visible = True
+ e.Row.FCLinkButton("LinkArchivo").CommandArgument = String.Format("OI\{0}", e.Row.DBCampo("Archivo").ToString)
+ ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("LinkArchivo")) 'Registro un evento Postbacktrigger, que recargue toda la pagina para que funcione
+ End If
+ End If
+ End Sub
+ Protected Sub LnkAddCotEva_Click(sender As Object, e As EventArgs) Handles LnkAddCotEva.Click
+ HdnEsCotizacion.Value = "1"
+ ChkEventoPrioridad.Visible = False
+ HBitacora.InnerText = "Cotización"
+ LblBitacora.InnerText = "Cotización"
+
+ UPAddEventoBitacora.Update()
+ UpTituloBitacora.Update()
+ RegistraScript("$('#ModalBitacora').modal('show');")
+ End Sub
+ Protected Sub ImgAddObs_Click(sender As Object, e As EventArgs) Handles ImgAddObs.Click
+ HdnEsCotizacion.Value = "0"
+ ChkEventoPrioridad.Visible = True
+ HBitacora.InnerText = "Bitácora"
+ LblBitacora.InnerText = "Bitácora/Observaciones"
+
+ UPAddEventoBitacora.Update()
+ UpTituloBitacora.Update()
+ RegistraScript("$('#ModalBitacora').modal('show');")
+ End Sub
Protected Sub BtnGuardarEventoBitacora_Click(sender As Object, e As EventArgs) Handles BtnGuardarEventoBitacora.Click
If CveOrdenCompra > 0 Then
- GuardaBitacora()
+ GuardaBitacora(HdnEsCotizacion.Value.ToEntero() > 0)
Else
AgregaBitacoraTemporal()
End If
End Sub
+
#Region " GUARDA DIRECTO "
- Private Sub GuardaBitacora()
+ Private Sub GuardaBitacora(Optional EsCotizacion As Boolean = False)
Dim ObjEventoBitacora As New ClsOIEventos
Dim FileExtension As String = ""
Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
@@ -4523,7 +4576,7 @@ Partial Class OC
Next
Dim descripcion As String = TxtEventoDescripcion.Text.Trim
- Dim Prioridad As Integer = If(ChkEventoPrioridad.Checked, 3, 1)
+ Dim Prioridad As Integer = If(EsCotizacion, 4, If(ChkEventoPrioridad.Checked, 3, 1))
If ObjEventoBitacora.AddEventoBitacora(descripcion, String.Format("{0}", FileExtension), UsuarioActual.CveUsuario, CveEmpresaActual, CveOC:=CveOrdenCompra, Prioridad:=Prioridad) Then
@@ -4535,7 +4588,7 @@ Partial Class OC
TxtEventoDescripcion.Text = ""
Anexo.Text = "[]"
ChkEventoPrioridad.Checked = False
- Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion)
+ Alert($"La {If(EsCotizacion, "cotización", "bitácora/observación")} se guardó correctamente", TipoMensaje.MsgInformacion)
RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
'obtener el Evento de bitacora para enviar el correo
@@ -4562,7 +4615,8 @@ Partial Class OC
If ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento IN (6,2) AND CvePrioridad=3").Rows.Count > 0 Then
DivEventoUrgente.Visible = True
End If
- GvEB.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento IN (6,2)")
+ GvEB.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CveTipoEvento IN (6,2) AND CvePrioridad <> 4")
+ GvBitacoraEva.DataSource = ObjEventoBitacora.DtResultados.FiltraParametros("CvePrioridad = 4")
Else
GvEB.DataSource = Nothing
End If
@@ -4570,7 +4624,9 @@ Partial Class OC
ObjEventoBitacora.Dispose()
GvEB.DataBind()
+ GvBitacoraEva.DataBind()
UPEventoBitacora.Update()
+ UpIvas.Update()
End Sub
#End Region
@@ -4638,7 +4694,7 @@ Partial Class OC
ChkEventoPrioridad.Checked = False
RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal")
- CargaEventoBitacoraTemp()
+ CargaEventoBitacoraTemp()
End Sub
@@ -4703,7 +4759,7 @@ Partial Class OC
option72.Visible = True
DivFolioAdicional.Visible = True
generarAnticipo.Visible = True
- Ddlcliente.DataSource = GlobalDTCliente(CveEmpresaActual).FiltraParametros(" Estatus = 'Activo' ")
+ Ddlcliente.DataSource = GlobalDTCliente(CveEmpresaActual)
Ddlcliente.DataBind()
Ddlcliente.Items.Insert(0, New ListItem(" - ", "-1"))
DdlVendedor.DataSource = GlobalDTVendedores(CveEmpresaActual)
diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb
index 44c9de66e..bef652533 100644
--- a/Ventas/PV.aspx.vb
+++ b/Ventas/PV.aspx.vb
@@ -4641,6 +4641,8 @@ Partial Class PV
End If
ObjCliente.Dispose()
+
+ RecargaGlobalCliente()
End Sub
#End Region
@@ -4823,6 +4825,18 @@ Partial Class PV
ObjPS.Dispose()
End Sub
+
+ Private Sub RecargaGlobalCliente()
+ Dim Hilo As New System.Threading.Thread(AddressOf GeneraGlobalDTCliente)
+ Hilo.Start()
+ End Sub
+ Private Sub GeneraGlobalDTCliente()
+ Dim Objclientes As New ClsClientes
+ If Objclientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus:=-1, TipoCliente:=-1) Then
+ Application("GlobalDTCliente") = Objclientes.DtResultados
+ End If
+ Objclientes.Dispose()
+ End Sub
#End Region
#Region "CLASIFICACIONES DETALLES"
diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb
index 27961920c..ff4079674 100644
--- a/Ventas/Ventas.aspx.vb
+++ b/Ventas/Ventas.aspx.vb
@@ -16788,7 +16788,7 @@ Partial Class Ventas
End Sub
Private Sub GeneraGlobalDTCliente()
Dim Objclientes As New ClsClientes
- If Objclientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus:=-1) Then
+ If Objclientes.GetClientes(-1, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus:=-1,TipoCliente:=-1) Then
Application("GlobalDTCliente") = Objclientes.DtResultados
End If
Objclientes.Dispose()