This commit is contained in:
2022-08-22 08:22:41 -07:00
13 changed files with 327 additions and 176 deletions

View File

@@ -720,7 +720,7 @@ Public Class ClsSisUsuarios
#End Region
#Region "U S U A R I O S"
Public Function GetUsuarios(CveUsuario As Integer, Optional CveRol As Integer = -1, Optional CveUsuarioControlado As Integer = -1) As Boolean
Public Function GetUsuarios(CveUsuario As Integer, Optional CveRol As Integer = -1, Optional CveUsuarioControlado As Integer = -1, Optional Estatus As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Sis_UsuariosGet")
@@ -731,6 +731,9 @@ Public Class ClsSisUsuarios
.Add("@Usuario", SqlDbType.VarChar).Value = "-1"
.Add("@Contraseña", SqlDbType.VarChar).Value = "-1"
.Add("@EsLogIn", SqlDbType.Bit).Value = 0
.Add("@Estatus", SqlDbType.Int).Value = Estatus
End With
Try

View File

@@ -4919,81 +4919,81 @@ Public Class Timbrado
#End Region
#Region "Comercio Exterior"
'If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then
' If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then
If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then
If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then
' 'DATOS GENERALES
' cfdi.ComercioExterior11(ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado,
' ObjCFDITimbre.Complementos.ComercioExterior11.TipoOperacion,
' ObjCFDITimbre.Complementos.ComercioExterior11.ClavedePedimento,
' ObjCFDITimbre.Complementos.ComercioExterior11.CertificadoOrigen,
' ObjCFDITimbre.Complementos.ComercioExterior11.NumCertificadoOrigen,
' ObjCFDITimbre.Complementos.ComercioExterior11.NumeroExportadorConfiable,
' ObjCFDITimbre.Complementos.ComercioExterior11.Incoterm,
' ObjCFDITimbre.Complementos.ComercioExterior11.Subdivision,
' ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones,
' ObjCFDITimbre.Complementos.ComercioExterior11.TipoCambioUSD,
' ObjCFDITimbre.Complementos.ComercioExterior11.TotalUSD)
' 'EMISOR
' cfdi.ComercioExterior11Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP))
' cfdi.ComercioExterior11Domicilio(ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Colonia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Localidad,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Referencia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Municipio,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Estado,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Pais,
' ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CP)
' 'RECEPTOR
' cfdi.ComercioExterior11Receptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib)
' cfdi.ComercioExterior11DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Localidad,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Referencia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Municipio,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Estado,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Pais,
' ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.CP)
' cfdi.ComercioExterior11Destinatario(ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Nombre,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Calle,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Colonia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Localidad,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Referencia,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Municipio,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Estado,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Pais,
' ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.CP)
' 'MERCANCIAS
' If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then
' For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias
' cfdi.ComercioExterior11Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares)
' If concep.DescripcionesEspecificas.Marca <> "" Then
' cfdi.ComercioExterior11MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca,
' concep.DescripcionesEspecificas.Modelo,
' concep.DescripcionesEspecificas.SubModelo,
' concep.DescripcionesEspecificas.NumeroSerie)
' End If
' Next
'DATOS GENERALES
cfdi.ComercioExterior11(ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado,
ObjCFDITimbre.Complementos.ComercioExterior11.TipoOperacion,
ObjCFDITimbre.Complementos.ComercioExterior11.ClavedePedimento,
ObjCFDITimbre.Complementos.ComercioExterior11.CertificadoOrigen,
ObjCFDITimbre.Complementos.ComercioExterior11.NumCertificadoOrigen,
ObjCFDITimbre.Complementos.ComercioExterior11.NumeroExportadorConfiable,
ObjCFDITimbre.Complementos.ComercioExterior11.Incoterm,
ObjCFDITimbre.Complementos.ComercioExterior11.Subdivision,
ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones,
ObjCFDITimbre.Complementos.ComercioExterior11.TipoCambioUSD,
ObjCFDITimbre.Complementos.ComercioExterior11.TotalUSD)
'EMISOR
cfdi.ComercioExterior11Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP))
cfdi.ComercioExterior11Domicilio(ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Colonia,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Localidad,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Referencia,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Municipio,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Estado,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Pais,
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CP)
'RECEPTOR
cfdi.ComercioExterior11Receptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib)
cfdi.ComercioExterior11DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Localidad,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Referencia,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Municipio,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Estado,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Pais,
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.CP)
cfdi.ComercioExterior11Destinatario(ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Nombre,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Calle,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Colonia,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Localidad,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Referencia,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Municipio,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Estado,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Pais,
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.CP)
'MERCANCIAS
If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then
For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias
cfdi.ComercioExterior11Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares)
If concep.DescripcionesEspecificas.Marca <> "" Then
cfdi.ComercioExterior11MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca,
concep.DescripcionesEspecificas.Modelo,
concep.DescripcionesEspecificas.SubModelo,
concep.DescripcionesEspecificas.NumeroSerie)
End If
Next
' End If
End If
' End If
'End If
End If
End If
#End Region
End If

View File

@@ -2417,7 +2417,7 @@ Partial Class ContabilidadC_RegPrePolizaS
End If
TipoMov = GlobalDTTipoTransacciones.FiltroPrimeroValor("CveTipoTransaccion", String.Format("TipoTransaccion = '{0}' ", Row("TipoTransferencia"))).ToEntero
TipoNaturaleza = GlobalDTTipoTransacciones.FiltroPrimeroValor("Tipo", String.Format("TipoTransaccion = '{0}' ", Row("TipoTransferencia"))).ToEntero
TipoNaturaleza = GlobalDTTipoTransacciones.FiltroPrimeroValor("Tipo", String.Format("TipoTransaccion = '{0}' ", Row("TipoTransferencia")))
FolioExcel = Row("Folio").ToString.ToEntero
CveTipoTransaccion = TipoMov
@@ -2438,11 +2438,19 @@ Partial Class ContabilidadC_RegPrePolizaS
Exit Sub
End If
If Row("Abono").ToString.ToDecimal > 0 And TipoNaturaleza = "Ing" Or Row("Cargo").ToString.ToDecimal > 0 And TipoNaturaleza = "Egs" Then
If Not (TipoNaturaleza = "Ing" And ((TipoMovto = False And ImporteDocumento >= 0) Or (TipoMovto = True And ImporteDocumento <= 0)) Or
TipoNaturaleza = "Egs" And ((TipoMovto = True And ImporteDocumento >= 0) Or (TipoMovto = False And ImporteDocumento <= 0))) Then
Alert($"El movimiento con cuenta: {NombreCuenta} , importe: {ImporteDocumento.ToString("###,###,###.00")} (registro {ContadorRegistros}), no tiene la naturaleza correcta", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
'If Row("Abono").ToString.ToDecimal > 0 And TipoNaturaleza = "Ing" Or Row("Cargo").ToString.ToDecimal > 0 And TipoNaturaleza = "Egs" Then
' Alert($"El movimiento con cuenta: {NombreCuenta} , importe: {ImporteDocumento.ToString("###,###,###.00")} (registro {ContadorRegistros}), no tiene la naturaleza correcta", TipoMensaje.MsgAdvertencia)
' Exit Sub
'End If
End If
If Row("Abono").ToString.ToDecimal > 0 And Row("Cargo").ToString.ToDecimal > 0 Then

View File

@@ -181,6 +181,11 @@ Partial Class Contabilidad2_RepAnexoCatalogoAnual
Private Sub CargaDatos()
If CveCuenta <= -1 Then
Alert("No hay una cuenta expecificada.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
DTHeaders = New DataTable
DTDatos = New DataTable

View File

@@ -1472,6 +1472,10 @@ Partial Class Inventarios_RecepcionAlmacen
e.Row.FCButton("BtnSerie").Visible = False
e.Row.FCTextBox("TbCantidadF").Enabled = True
e.Row.FCCheckBox("cbInv").Enabled = True
If UsuarioActual.TienePermisoProceso(345) Then 'carga la cantidad con el rol AD
e.Row.FCTextBox("TbCantidadF").Text = e.Row.DBCampo("CantidadF").FormatoNumero
End If
End If
End If
@@ -1499,7 +1503,7 @@ Partial Class Inventarios_RecepcionAlmacen
e.Row.FCTextBox("TbCantidadF").Text = e.Row.DBCampo("CantidadF").FormatoNumero
e.Row.FCTextBox("TbCantidadF").Enabled = False
End If
If UsuarioActual.CveRol = 1 Then 'carga la cantidad con el rol AD
If UsuarioActual.TienePermisoProceso(345) Then 'carga la cantidad con el rol AD
e.Row.FCTextBox("TbCantidadF").Text = e.Row.DBCampo("CantidadF").FormatoNumero
End If
End If

View File

@@ -1082,7 +1082,7 @@ Partial Class Inventarios_RecepcionUsados
If Valido And AgregarUsado Then
If ObjFactura IsNot Nothing AndAlso Me.CveRemisionRecibida > 0 Then
Dim RowDetalle As DataRow = ObjFactura.DtDetalle.FiltroPrimero($"CvePS={CvePS}")
Dim RowDetalle As DataRow = ObjFactura.DtDetalle.FiltroPrimero($"CveVentaDetalle={CveVentaDetalle}")
If RowDetalle IsNot Nothing Then

View File

@@ -657,7 +657,7 @@
<div class="col-md-12">
<asp:UpdatePanel runat="server" ID="UpDatosRecepcion" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatosRecepcion" DataKeyNames="CveMovimiento,CveUM,CvePS,PS,CveAF,CodigoBarras,CveAlmacen,CveAlmacenDestino,AplicaSerie,CveMovimientoDetalle,CveMovimientoDetalleTransitorio,PU,CveAlmacenSalida,CveMovimientoSalida,Serie,Lote,FechaCaducidad,Cantidad, GastoIndirectoSalida, Importe,Codigo" runat="server" AutoGenerateColumns="False" EmptyDataText="No hay movimientos pendientes" ToolTip="Listado de Movimientos" CssClass="table table-hover Widthall" GridLines="None">
<asp:GridView ID="GvDatosRecepcion" DataKeyNames="CveMovimiento,CveUM,CvePS,PS,CveAF,CodigoBarras,CveAlmacen,CveAlmacenDestino,AplicaSerie,CveMovimientoDetalle,CveMovimientoDetalleTransitorio,PU,CveAlmacenSalida,CveMovimientoSalida,Serie,Lote,FechaCaducidad,Cantidad, GastoIndirectoSalida, Importe,Codigo,CveAlmacenTransitorioVirtual" runat="server" AutoGenerateColumns="False" EmptyDataText="No hay movimientos pendientes" ToolTip="Listado de Movimientos" CssClass="table table-hover Widthall" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Center">
<%--<HeaderTemplate>

View File

@@ -1124,6 +1124,7 @@ Partial Class Inventarios_TraspasoAlmacen
dtvirtual = ObjInventario.DtResultados
If dtvirtual.Rows.Count > 0 Then
'SALIDA VIRTUAL
CveMovimientoVirtualSalida = ObjInventario.AddMovimiento(CveAlmacenVirtualSalida, 37, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Modulo:="TA/V", CveMovimientoRelacionado:=CveMovimientoSalida, CveAlmacenDestino:=CveAlmacenVirtualEntrada)
FolioVirtualSalida = ObjInventario.Folio
Dim Contabilizable As Boolean = False
@@ -1143,9 +1144,9 @@ Partial Class Inventarios_TraspasoAlmacen
End If
Next
'SALIDA VIRTUAL
'ENTRADA VIRTUAL
Dim importevirtual As Decimal = 0
CveMovimientoVirtualEntrada = ObjInventario.AddMovimiento(CveAlmacenVirtualSalida, 36, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Modulo:="TA/S3", CveMovimientoRelacionado:=CveMovimientoEntrada, CveAlmacenDestino:=CveAlmacenVirtualEntrada)
CveMovimientoVirtualEntrada = ObjInventario.AddMovimiento(CveAlmacenVirtualEntrada, 36, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Modulo:="TA/S3", CveMovimientoRelacionado:=CveMovimientoEntrada, CveAlmacenDestino:=CveAlmacenVirtualEntrada)
FolioVirtualEntrada = ObjInventario.Folio
If CveMovimientoVirtualEntrada > 0 Then
Dim DtCostosVirtual As DataTable
@@ -1834,6 +1835,8 @@ Partial Class Inventarios_TraspasoAlmacen
Dim TextoError As String = ""
Dim Fecha As Date = TxtFechaRecepcion.Text.ToDate
Dim CveMovimientoVirtualEntrada As Integer = 0
Dim CveMovimientoVirtualSalida As Integer = 0
Dim CveMovimientoSalidaTransitorio As Integer = 0
Dim FolioVirtualEntrada As Integer = 0
@@ -1917,6 +1920,7 @@ Partial Class Inventarios_TraspasoAlmacen
If UsuarioActual.Empresa.Funcionalidad(573) = "1" Then
Dim CveAlmacenVirtual As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=GvDatosRecepcion.Rows(0).DataKey("CveAlmacenSalida").ToEntero).FiltroPrimeroValor("CveAlmacenVirtual", "").ToEntero()
Dim CveAlmacenVirtualSalida As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=GvDatosRecepcion.Rows(0).DataKey("CveAlmacenDestino").ToEntero).FiltroPrimeroValor("CveAlmacenVirtual", "").ToEntero()
'SI EL ALMACEN ORIGEN ES DE APOPYO LOGISTICO EL ALMACEN VIRTUAL DEBE SER DE APOYO LOGISTICO
'Dim CveAlmacenVirtual As Integer = -1
@@ -1927,15 +1931,21 @@ Partial Class Inventarios_TraspasoAlmacen
'End If
'VERIFICA SI TIENE ALMACEN VIRTUAL ASIGNADA
If CveAlmacenVirtual > 0 Then
If CveAlmacenVirtual > 0 And CveAlmacenVirtualSalida > 0 Then
Dim dtvirtual As DataTable = Nothing
Dim importePoliza As Decimal = 0
If ObjInventario.GetMovimientosDetalleVirtual(CveMovimientoEntrada, UsuarioActual.CveEmpresa, CveMovimientoRelacionado:=CveMovimientoSalida) Then
dtvirtual = ObjInventario.DtResultados
If dtvirtual.Rows.Count > 0 Then
CveMovimientoVirtualEntrada = ObjInventario.AddMovimiento(CveAlmacenVirtual, 36, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoEntrada, Modulo:="TA/C2")
CveMovimientoVirtualSalida = ObjInventario.AddMovimiento(CveAlmacenVirtualSalida, 37, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservacionesRecepcion.Text.Trim, CveMovimientoRelacionado:=CveMovimientoSalidaTransitorio, Modulo:="TA/C3")
FolioVirtualEntrada = ObjInventario.Folio
For Each RowVirtual As DataRow In dtvirtual.Rows
Dim CvePS = RowVirtual("CvePS").ToString().ToEntero()
Dim CantidadUsado As Decimal = RowVirtual("Cantidad").ToString().ToDecimal()
@@ -1943,21 +1953,54 @@ Partial Class Inventarios_TraspasoAlmacen
Dim CveUM As Integer = RowVirtual("CveUM").ToString().ToEntero()
Dim CostoIndirecto As Decimal = RowVirtual("CostoIndirecto").ToString().ToDecimal()
importePoliza = importePoliza + (CantidadUsado * PU)
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoVirtualEntrada, CantidadUsado, CveUM, CvePS, PU, -1, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
ErrorMovInv = True
Exit For
End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoVirtualSalida, CantidadUsado, CveUM, CvePS, PU, -1, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then
ErrorMovInv = True
Exit For
End If
Next
End If
Else
TextoError = "No se pudo registrar el movimiento virtual"
ErrorMovInv = True
'Else
' TextoError = "No se pudo registrar el movimiento virtual"
' ErrorMovInv = True
End If
'Else
' TextoError = "La Sucursal no tiene creado un almacen virtual"
' ErrorMovInv = True
If Not ErrorMovInv AndAlso (CveMovimientoSalida > 0 And CveMovimientoVirtualEntrada > 0) Then
Dim CvePrePolizaMovVirtual As Integer = ObjConta.AddPrePolizas("TA/C2|TA/C3", 53, importePoliza, importePoliza, 1, TxtFecha.Text.ToDate, "TA/C2|TA/C3", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CvePrePolizaMovVirtual > 0 Then
If Not ErrorMovInv AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePolizaMovVirtual, True, importePoliza, importePoliza, 68, TxtObservacionesRecepcion.Text, TxtObservacionesRecepcion.Text, -1, -1, CveMovimientoAlmacen:=CveMovimientoVirtualSalida, Contabilizable:=False) Then
ErrorMovInv = True
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaMovVirtual, False, importePoliza, importePoliza, 68, TxtObservacionesRecepcion.Text, TxtObservacionesRecepcion.Text, -1, -1, CveMovimientoAlmacen:=CveMovimientoVirtualEntrada, Contabilizable:=False) Then
ErrorMovInv = True
End If
Else
ErrorMovInv = True
End If
End If
Else
TextoError = "La Sucursal no tiene creado un almacen virtual"
ErrorMovInv = True
End If
End If
If Not ErrorMovInv Then

View File

@@ -42,16 +42,34 @@
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-lg-1">
Empresa:
</div>
<div class="col-lg-4">
</div>
</div>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr class="SubTotales">
<td>Empresa:
<td style="width:500px!important">Empresa:
<asp:DropDownList ID="DdlEmpresa" runat="server" AppendDataBoundItems="true" DataTextField="Empresa" DataValueField="CveEmpresa" Class="form-control input-sm select2me " Style="width: 400px !important;" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<td style="width:200px!important">Estatus:
<asp:DropDownList ID="DdlEsatus" runat="server" AppendDataBoundItems="true" Class="form-control input-sm select2me " Style="width: 100px !important;">
<asp:ListItem Text="Todos" Value="-1"></asp:ListItem>
<asp:ListItem Text="Activos" Value="1" Selected="True"></asp:ListItem>
<asp:ListItem Text="Inactivos" Value="0"></asp:ListItem>
</asp:DropDownList>
</td>
<td style="text-align:right!important">
<asp:Button ID="consultar" runat="server" Text="Consultar" OnClick="consultar_Click" class="btn btn-primary" />
</td>
</tr>
</table>
</ContentTemplate>

View File

@@ -70,7 +70,7 @@ Partial Class Sistemas_Usuarios
Public Sub CargaDatos()
Dim Usuario As New ClsSisUsuarios
If Usuario.GetUsuarios(-1, -1) Then
If Usuario.GetUsuarios(-1, -1, Estatus:=DdlEsatus.SelectedValue.ToEntero) Then
If UsuarioActual.CveRol <> 1 Then
DtUsuarios = Usuario.DtResultados.FiltraParametros(String.Format("CveEmpresa = {0} AND CveRol <> 1", DdlEmpresa.SelectedValue))
'DtUsuarios = Usuario.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)

View File

@@ -5211,7 +5211,12 @@ Partial Class PV
'SOLO VALIDA EXISTENCIAS Y COSTO: SI USA INVENTARIOS, SOLO PRODUCTOS TIPO PRODUCTO, SOLO REMISIONES E INGRESOS
If UsuarioActual.Empresa.UsaInventarios AndAlso CveTipoPS = 2 AndAlso (DdlTipoComprobante.SelectedValue.Contiene("Rem", "Ing", "PA") Or (DdlTipoComprobante.SelectedValue.Contiene("Cot") And UsuarioActual.CveEmpresa.Contiene(119, 140))) Then
Dim ObjInventarios As New ClsInventarios
Dim Existencia As Decimal = ObjInventarios.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, -1, FechaMovto:=DateTime.Today.AddDays(1).ToString("yyyy/MM/dd HH:mm"), CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), ExcluyeAdelantado:=1, PendientePorSurtir:=1, RestringirAlmacenes:=1, ExcluyeApartados:=-1)
Dim CveTipoAlmacen As Integer = 1
If ChkServicioDomicilio.Checked Then
CveTipoAlmacen = 29
End If
Dim Existencia As Decimal = ObjInventarios.GetExistenciasPS(CvePS, CveUM, UsuarioActual.CveEmpresa, -1, CveTipoAlmacen:=CveTipoAlmacen, FechaMovto:=DateTime.Today.AddDays(1).ToString("yyyy/MM/dd HH:mm"), CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero, CveVendedor:=DdlVendedor.SelectedValue.ToEntero, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), ExcluyeAdelantado:=1, PendientePorSurtir:=1, RestringirAlmacenes:=1, ExcluyeApartados:=1)
Dim Costo As Decimal = ObjInventarios.GetCostoPS(CvePS, TxtCantidad.Text.Trim.ToDouble, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero)
ObjInventarios.Dispose()
Dim PrecioMinimo As Decimal = 0

View File

@@ -2406,8 +2406,7 @@
</div>
</div>
</div>
</div>
</div>
</div> </div>
<div class="row">
<div class="col-md-12">
<div class="portlet light xspadding bordered whitoutcol" style="width: 100%;">
@@ -2418,10 +2417,12 @@
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div class="tools">
Emitir <asp:CheckBox ID="ChkEmitirComercioExterior" runat="server" CssClass="chksino" Text=" " OnCheckedChanged="ChkEmitirComercioExterior_CheckedChanged" AutoPostBack="true" />
<a href="javascript:;" onclick="CargaComercioExterior()" class="expand"></a>
</div>
</div>
@@ -2429,6 +2430,16 @@
<asp:UpdatePanel ID="UpComercioExterior" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="form-body">
<%-- <div class="row rowpadding">
<label class="col-md-2">Emitir:</label>
<div class="col-md-10">
</div>
</div>
<br /> --%>
<div class="row">
<label class="col-md-2 form-group form-md-line-input">Tipo Operación:</label>
<div class="col-md-3 form-group form-md-line-input" style="margin-top: 0px; padding-top: 0px; display: inline-block;">

View File

@@ -6334,6 +6334,10 @@ Partial Class Ventas
LblTipoOperacion.Text = ObjCliente.ClaveSATTipoOperacionDescripcion
LblClavePedimento.Text = ObjCliente.ClaveSATPedimentoDescripcion
If ObjCliente.AplicaComercioExterior Then
ChkEmitirComercioExterior.Checked = True
End If
If ObjCliente.AplicaComercioExterior Then
DdlSATMotivoTraslado.DataSource = GlobalDTSATMotivoTraslado
DdlSATMotivoTraslado.DataBind()
@@ -8624,17 +8628,41 @@ Partial Class Ventas
If TipoDocumentoAutorizacion = "Ing" Then
If TipoAutorizacion = 1 Then
If ImporteAutorizacion < TxtTotal.Text.ToDecimal() Then
CveAutorizacion = -1
Alert($"El crédito autorizado es insuficiente. Crédito Disponible:{ImporteAutorizacion:N2}", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If TieneDiasVencidos Then
CveAutorizacion = -1
Alert($"El crédito no esta autorizado. El cliente tiene días vencidos", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If ImporteAutorizacion < TxtTotal.Text.ToDecimal() Then
Dim BloquearCredito As Boolean = True
CveAutorizacion = -1
'VERIFICA SI TIENE CREDITO DISPONIBLE DENTRO DEL CLIENTE
Dim ObjCred As New ClsVentas
If ObjCred.ObtenerCreditoRestante(CveCliente, DdlSucursalCliente.SelectedValue.ToEntero()) AndAlso ObjCred.DtResultados.Rows.Count > 0 Then
'SI TIENE CREDITO DISPONIBLE NO BLOQUEAR AUNQUE LA AUTORIZACION NO TENGA EL IMPORTE DEL DOCUMENTO
If DdlSucursalCliente.SelectedValue.ToEntero() > 0 Then
If (ObjCred.DtResultados(0)("LimiteRestanteSucursal").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal)) > 0 Then
BloquearCredito = False
End If
Else
If (ObjCred.DtResultados(0)("LimiteRestanteCliente").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal)) > 0 Then
BloquearCredito = False
End If
End If
End If
ObjCred.Dispose()
If BloquearCredito Then
Alert($"El crédito autorizado es insuficiente. Crédito Disponible:{ImporteAutorizacion:N2}", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
End If
End If
'If TipoAutorizacion = 2 Then
@@ -11735,6 +11763,10 @@ Partial Class Ventas
Private Function PreParaTimbre(Obj As Modelos.Factura) As CFDITimbre
Dim Timbre As New CFDITimbre
Timbre.Comprobante.Version = If(UsuarioActual.Empresa.Funcionalidad(350) = "1", "4.0", "3.3")
Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", ""))
Timbre.Comprobante.Folio = Obj.Folio.ToString()
Timbre.Comprobante.Serie = Obj.Serie
@@ -11943,104 +11975,121 @@ Partial Class Ventas
i += 1
Next
Dim AplicaComercioExteriorSubProyecto As Boolean = If(GlobalDTSubProyectos(-1, Obj.CveSubProyecto, CveEmpresa:=UsuarioActual.CveEmpresa)(0)("AplicaComercioExterior").ToString() = "True", True, False)
Timbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto = AplicaComercioExteriorSubProyecto
If Obj.Cliente.AplicaComercioExterior And AplicaComercioExteriorSubProyecto Then
'DATOS GENERALES
Timbre.Complementos.ComercioExterior11.TipoOperacion = GlobalDTTipoOperacion().FiltraParametros($"CveTipoOperacion={CveTipoOperacion}")(0)("ClaveSATTipoOperacion").ToString()
Timbre.Complementos.ComercioExterior11.ClavedePedimento = GlobalDTClavePedimento().FiltraParametros($"CvePedimento={CvePedimento}")(0)("ClaveSATPedimento").ToString()
Timbre.Complementos.ComercioExterior11.CertificadoOrigen = "0"
Timbre.Complementos.ComercioExterior11.Incoterm = GlobalDTIncoterm.FiltroPrimeroValor("ClaveSATIncoterm", $"CveIncoterm={DdlIncoterm.SelectedValue}")
Timbre.Complementos.ComercioExterior11.Subdivision = "0"
Timbre.Complementos.ComercioExterior11.TipoCambioUSD = If(Obj.CveMoneda = 1, 1, Obj.TipoCambio.ToString().ToDecimal)
Timbre.Complementos.ComercioExterior11.MotivoTraslado = GlobalDTSATMotivoTraslado.FiltroPrimeroValor("ClaveSATMotivoTraslado", $"CveMotivoTraslado={DdlSATMotivoTraslado.SelectedValue}")
Dim AplicaComercioExteriorSubProyecto As Boolean
If ChkEmitirComercioExterior.Checked Then
AplicaComercioExteriorSubProyecto = If(GlobalDTSubProyectos(-1, Obj.CveSubProyecto, CveEmpresa:=UsuarioActual.CveEmpresa)(0)("AplicaComercioExterior").ToString() = "True", True, False)
Timbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto = AplicaComercioExteriorSubProyecto
If Obj.Cliente.AplicaComercioExterior And AplicaComercioExteriorSubProyecto Then
'DATOS GENERALES
Timbre.Comprobante.Exportacion = "02"
Timbre.Complementos.ComercioExterior11.TipoOperacion = GlobalDTTipoOperacion().FiltraParametros($"CveTipoOperacion={CveTipoOperacion}")(0)("ClaveSATTipoOperacion").ToString()
Timbre.Complementos.ComercioExterior11.ClavedePedimento = GlobalDTClavePedimento().FiltraParametros($"CvePedimento={CvePedimento}")(0)("ClaveSATPedimento").ToString()
Timbre.Complementos.ComercioExterior11.CertificadoOrigen = "0"
Timbre.Complementos.ComercioExterior11.Incoterm = GlobalDTIncoterm.FiltroPrimeroValor("ClaveSATIncoterm", $"CveIncoterm={DdlIncoterm.SelectedValue}")
Timbre.Complementos.ComercioExterior11.Subdivision = "0"
Timbre.Complementos.ComercioExterior11.TipoCambioUSD = If(Obj.CveMoneda = 1, 1, Obj.TipoCambio.ToString().ToDecimal)
Timbre.Complementos.ComercioExterior11.MotivoTraslado = GlobalDTSATMotivoTraslado.FiltroPrimeroValor("ClaveSATMotivoTraslado", $"CveMotivoTraslado={DdlSATMotivoTraslado.SelectedValue}")
'EMISOR
Dim Dr As DataRow
Dr = Nothing
If GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).Rows.Count > 0 Then
Dr = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa)(0)
End If
Timbre.Complementos.ComercioExterior11.Emisor.CURP = UsuarioActual.Empresa.CURP
Timbre.Complementos.ComercioExterior11.Emisor.Calle = Dr("Calle").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.NumeroExterior = Dr("NoExt").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.NumeroInterior = Dr("NoInt").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Colonia = Dr("ClaveSATColonia").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Localidad = ""
Timbre.Complementos.ComercioExterior11.Emisor.Municipio = Dr("ClaveSATMunicipio").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Estado = Dr("ClaveSATEstado").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Pais = Dr("ClaveSATPais").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.CP = Dr("ClaveSATCP").ToString()
'RECEPTOR
Timbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib = "" ' EN LA VERSION 3.3 NO DEBE DE REGISTRARSE ESTE VALOR
Timbre.Complementos.ComercioExterior11.Receptor.Calle = Obj.Cliente.Direccion
Timbre.Complementos.ComercioExterior11.Receptor.NumeroExterior = Obj.Cliente.NoExt
Timbre.Complementos.ComercioExterior11.Receptor.NumeroInterior = Obj.Cliente.NoInt
Timbre.Complementos.ComercioExterior11.Receptor.Colonia = Obj.Cliente.ClaveSATColonia
Timbre.Complementos.ComercioExterior11.Receptor.Localidad = ""
Timbre.Complementos.ComercioExterior11.Receptor.Referencia = Obj.Cliente.ReferenciaFiscal
Timbre.Complementos.ComercioExterior11.Receptor.Municipio = Obj.Cliente.Ciudad
Timbre.Complementos.ComercioExterior11.Receptor.CP = Obj.Cliente.CP
Timbre.Complementos.ComercioExterior11.Receptor.Estado = Obj.Cliente.ClaveSATEstado
Timbre.Complementos.ComercioExterior11.Receptor.Pais = Obj.Cliente.ClaveSATPais
Timbre.Receptor.ResidenciaFiscal = Obj.Cliente.ClaveSATPais
Timbre.Receptor.NumeroRegistroTributario = Obj.Cliente.NumRegIdTrib
'EMISOR
Dim Dr As DataRow
Dr = Nothing
If GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).Rows.Count > 0 Then
Dr = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa)(0)
End If
Timbre.Complementos.ComercioExterior11.Emisor.CURP = UsuarioActual.Empresa.CURP
Timbre.Complementos.ComercioExterior11.Emisor.Calle = Dr("Calle").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.NumeroExterior = Dr("NoExt").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.NumeroInterior = Dr("NoInt").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Colonia = Dr("ClaveSATColonia").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Localidad = ""
Timbre.Complementos.ComercioExterior11.Emisor.Municipio = Dr("ClaveSATMunicipio").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Estado = Dr("ClaveSATEstado").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.Pais = Dr("ClaveSATPais").ToString()
Timbre.Complementos.ComercioExterior11.Emisor.CP = Dr("ClaveSATCP").ToString()
Dim ComExtPais, ComExtEstado, ComExtMunicipio, ComExtColonia, ComExtCalle, ComExtNumero, ComExtCP As String
ComExtColonia = "" : ComExtMunicipio = ""
ComExtPais = GlobalDTGralPaises.FiltroPrimeroValor("ClaveSATPais", $"CvePais={DdlComExtPais.SelectedValue}")
ComExtCalle = TxtComExtCalle.Text.Trim
ComExtNumero = TxtComExtNumero.Text.Trim
ComExtCP = TxtComExtCP.Text.Trim
If ComExtPais = "MEX" Then
ComExtEstado = GlobalDTGralEstados(ComExtPais).FiltroPrimeroValor("ClaveSATEstado", $"CveEstado={DdlComExtEstado.SelectedValue}")
ComExtMunicipio = GlobalDTGralMunicipios(ComExtEstado).FiltroPrimeroValor("ClaveSATMunicipio", $"CveMunicipio={DdlComExtMunicipio.SelectedValue}")
ComExtColonia = GlobalDTGralColonias("-1", "-1", "-1", CveColonia:=DdlComExtColonia.SelectedValue.ToEntero).FiltroPrimeroValor("ClaveSATColonia", "")
Else
If ComExtPais.Contiene("USA", "CAN") Then
'RECEPTOR
Timbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib = If(Timbre.Comprobante.Version = "4.0", Obj.Cliente.NumRegIdTrib, "") ' EN LA VERSION 3.3 NO DEBE DE REGISTRARSE ESTE VALOR
Timbre.Complementos.ComercioExterior11.Receptor.Calle = Obj.Cliente.Direccion
Timbre.Complementos.ComercioExterior11.Receptor.NumeroExterior = Obj.Cliente.NoExt
Timbre.Complementos.ComercioExterior11.Receptor.NumeroInterior = Obj.Cliente.NoInt
Timbre.Complementos.ComercioExterior11.Receptor.Colonia = Obj.Cliente.ClaveSATColonia
Timbre.Complementos.ComercioExterior11.Receptor.Localidad = ""
Timbre.Complementos.ComercioExterior11.Receptor.Referencia = Obj.Cliente.ReferenciaFiscal
Timbre.Complementos.ComercioExterior11.Receptor.Municipio = Obj.Cliente.Ciudad
Timbre.Complementos.ComercioExterior11.Receptor.CP = Obj.Cliente.CP
Timbre.Complementos.ComercioExterior11.Receptor.Estado = Obj.Cliente.ClaveSATEstado
Timbre.Complementos.ComercioExterior11.Receptor.Pais = Obj.Cliente.ClaveSATPais
Timbre.Receptor.ResidenciaFiscal = Obj.Cliente.ClaveSATPais
Timbre.Receptor.NumeroRegistroTributario = Obj.Cliente.NumRegIdTrib
Dim ComExtPais, ComExtEstado, ComExtMunicipio, ComExtColonia, ComExtCalle, ComExtNumero, ComExtCP As String
ComExtColonia = "" : ComExtMunicipio = ""
ComExtPais = GlobalDTGralPaises.FiltroPrimeroValor("ClaveSATPais", $"CvePais={DdlComExtPais.SelectedValue}")
ComExtCalle = TxtComExtCalle.Text.Trim
ComExtNumero = TxtComExtNumero.Text.Trim
ComExtCP = TxtComExtCP.Text.Trim
If ComExtPais = "MEX" Then
ComExtEstado = GlobalDTGralEstados(ComExtPais).FiltroPrimeroValor("ClaveSATEstado", $"CveEstado={DdlComExtEstado.SelectedValue}")
ComExtMunicipio = GlobalDTGralMunicipios(ComExtEstado).FiltroPrimeroValor("ClaveSATMunicipio", $"CveMunicipio={DdlComExtMunicipio.SelectedValue}")
ComExtColonia = GlobalDTGralColonias("-1", "-1", "-1", CveColonia:=DdlComExtColonia.SelectedValue.ToEntero).FiltroPrimeroValor("ClaveSATColonia", "")
Else
ComExtEstado = TxtComExtEstado.Text.Trim
If ComExtPais.Contiene("USA", "CAN") Then
ComExtEstado = GlobalDTGralEstados(ComExtPais).FiltroPrimeroValor("ClaveSATEstado", $"CveEstado={DdlComExtEstado.SelectedValue}")
Else
ComExtEstado = TxtComExtEstado.Text.Trim
End If
ComExtMunicipio = TxtComExtMunicipio.Text.Trim
ComExtColonia = TxtComExtColonia.Text.Trim
End If
ComExtMunicipio = TxtComExtMunicipio.Text.Trim
ComExtColonia = TxtComExtColonia.Text.Trim
'DESTINATARIO
Timbre.Complementos.ComercioExterior11.Destinatario.Nombre = TxtDestinatarioNombre.Text.Trim
Timbre.Complementos.ComercioExterior11.Destinatario.Calle = ComExtCalle
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior = ComExtNumero
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Colonia = ComExtColonia
Timbre.Complementos.ComercioExterior11.Destinatario.Localidad = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Referencia = Obj.Cliente.ReferenciaFiscal
Timbre.Complementos.ComercioExterior11.Destinatario.Municipio = ComExtMunicipio
Timbre.Complementos.ComercioExterior11.Destinatario.CP = ComExtCP
Timbre.Complementos.ComercioExterior11.Destinatario.Estado = ComExtEstado
Timbre.Complementos.ComercioExterior11.Destinatario.Pais = ComExtPais
Timbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib = TxtNumRegIdTrib.Text.Trim
'MERCANCIAS
For Each Gvr As GridViewRow In GvComercioExterior.Rows
Dim mercancia As New CFDIComercioExterior11Mercancias With {.CantidadAduana = Gvr.FCTextBox("TxtCantidad").Text.ToDecimal,
.FraccionArancelaria = Gvr.DataKey("ClaveSATFraccionArancelaria").ToString(),
.UnidadAduana = Gvr.DataKey("ClaveSATUnidadAduana").ToString(),
.ValorDolares = Math.Round(Gvr.FCTextBox("TxtCantidad").Text.ToDecimal * Gvr.FCTextBox("TxtValorUnitario").Text.ToDecimal, 2),
.ValorUnitarioAduana = Gvr.FCTextBox("TxtValorUnitario").Text.ToDecimal,
.NoIdentificacion = Gvr.DataKey("Codigo")}
If Gvr.FCTextBox("TxtMarca").Text <> "" Then
mercancia.DescripcionesEspecificas.Marca = Gvr.FCTextBox("TxtMarca").Text
End If
Timbre.Complementos.ComercioExterior11.Mercancias.Add(mercancia)
i += 1
Next
End If
'DESTINATARIO
Timbre.Complementos.ComercioExterior11.Destinatario.Nombre = TxtDestinatarioNombre.Text.Trim
Timbre.Complementos.ComercioExterior11.Destinatario.Calle = ComExtCalle
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior = ComExtNumero
Timbre.Complementos.ComercioExterior11.Destinatario.NumeroInterior = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Colonia = ComExtColonia
Timbre.Complementos.ComercioExterior11.Destinatario.Localidad = ""
Timbre.Complementos.ComercioExterior11.Destinatario.Referencia = Obj.Cliente.ReferenciaFiscal
Timbre.Complementos.ComercioExterior11.Destinatario.Municipio = ComExtMunicipio
Timbre.Complementos.ComercioExterior11.Destinatario.CP = ComExtCP
Timbre.Complementos.ComercioExterior11.Destinatario.Estado = ComExtEstado
Timbre.Complementos.ComercioExterior11.Destinatario.Pais = ComExtPais
Timbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib = TxtNumRegIdTrib.Text.Trim
'MERCANCIAS
For Each Gvr As GridViewRow In GvComercioExterior.Rows
Dim mercancia As New CFDIComercioExterior11Mercancias With {.CantidadAduana = Gvr.FCTextBox("TxtCantidad").Text.ToDecimal,
.FraccionArancelaria = Gvr.DataKey("ClaveSATFraccionArancelaria").ToString(),
.UnidadAduana = Gvr.DataKey("ClaveSATUnidadAduana").ToString(),
.ValorDolares = Math.Round(Gvr.FCTextBox("TxtCantidad").Text.ToDecimal * Gvr.FCTextBox("TxtValorUnitario").Text.ToDecimal, 2),
.ValorUnitarioAduana = Gvr.FCTextBox("TxtValorUnitario").Text.ToDecimal,
.NoIdentificacion = Gvr.DataKey("Codigo")}
If Gvr.FCTextBox("TxtMarca").Text <> "" Then
mercancia.DescripcionesEspecificas.Marca = Gvr.FCTextBox("TxtMarca").Text
End If
Timbre.Complementos.ComercioExterior11.Mercancias.Add(mercancia)
i += 1
Next
Else
Timbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto = False
End If
Return Timbre
End Function
@@ -34981,5 +35030,10 @@ Partial Class Ventas
End Function
Protected Sub ChkEmitirComercioExterior_CheckedChanged(sender As Object, e As EventArgs)
End Sub
End Class