diff --git a/App_Code/ClsContratos.vb b/App_Code/ClsContratos.vb
index 4846346b8..6a8fe4e01 100644
--- a/App_Code/ClsContratos.vb
+++ b/App_Code/ClsContratos.vb
@@ -420,7 +420,7 @@ Public Class ClsContratos
Public Function UpdateContratos(CveContrato As Integer, NumeroContrato As String, DescripcionContrato As String, NumeroLicitacion As String, CveProveedor As Integer, CveCliente As Integer, CveProspecto As Integer, FechaInicial As DateTime, FechaFinal As DateTime,
Ubicacion As String, Responsable As String, CveSubProyecto As Integer, PorIVA As Double, PorAnticipo As Double, PorAmortizacionAnticipo As Double, PorGarantia As Double, Archivo As String, Geom As String,
CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer,
- Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1.0, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1,
+ Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = -1, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1,
Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1,
Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional FacturacionCicilica As Boolean = False, Optional FacturacionCiclicaAutomatico As Boolean = False,
Optional DiaMesFacturacion As Integer = 1, Optional CvePeriodo As Integer = -1, Optional ObservacionesGenerales As String = "", Optional CveTipoAF As Integer = Nothing, Optional CveChofer As Integer = Nothing, Optional CveChofer2 As Integer = Nothing, Optional CveAF As Integer = Nothing, Optional CantidadPasajeros As Integer = Nothing, Optional CvePartida As Integer = Nothing, Optional CveDestino As Integer = Nothing, Optional CveMasivo As Integer = Nothing) As Boolean
@@ -450,8 +450,8 @@ Public Class ClsContratos
.Add("@CveContratoPadre", SqlDbType.Int).Value = CveContratoPadre
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
- .Add("@EsPresupuestal", SqlDbType.Int).Value = EsPresupuestal
- .Add("@CveContratoTipo", SqlDbType.SmallInt).Value = CveContratoTipo
+ .Add("@EsPresupuestal", SqlDbType.Bit).Value = EsPresupuestal
+ .Add("@CveContratoTipo", SqlDbType.Int).Value = CveContratoTipo
.Add("@ImporteMin", SqlDbType.Money).Value = Minimo
.Add("@ImporteMax", SqlDbType.Money).Value = Maximo
.Add("@Importe", SqlDbType.Money).Value = Importe
@@ -471,7 +471,7 @@ Public Class ClsContratos
.Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
.Add("@Observaciones", SqlDbType.VarChar).Value = Observaciones
.Add("@CveDireccionEnvio", SqlDbType.Int).Value = CveDireccionEnvio
- .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0)
+ .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = AplicaImpuestosLocales
.Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev
.Add("@FacturacionCicilica", SqlDbType.Bit).Value = FacturacionCicilica
.Add("@FacturacionCiclicaAutomatico", SqlDbType.Bit).Value = FacturacionCiclicaAutomatico
diff --git a/App_Code/ClsProductosServicios.vb b/App_Code/ClsProductosServicios.vb
index 5fcda2cf9..fa3deb688 100644
--- a/App_Code/ClsProductosServicios.vb
+++ b/App_Code/ClsProductosServicios.vb
@@ -1545,7 +1545,7 @@ Public Class ClsProductosServicios
- Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
+ Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer, Optional ActualizarFranquicias As Boolean = False) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Gral_MarcasAdd")
@@ -1555,6 +1555,7 @@ Public Class ClsProductosServicios
.Add("@Estatus", SqlDbType.Bit).Value = Estatus
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@ActualizarFranquicias", SqlDbType.Bit).Value = ActualizarFranquicias
End With
Try
@@ -1597,7 +1598,7 @@ Public Class ClsProductosServicios
- Public Function UpdateMarca(Marca As String, CveMarca As Integer, Estatus As Boolean) As Boolean
+ Public Function UpdateMarca(Marca As String, CveMarca As Integer, Estatus As Boolean, CveEmpresa As Integer, Optional ActualizarFranquicias As Boolean = False) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Gral_MarcasUpdate")
@@ -1605,6 +1606,8 @@ Public Class ClsProductosServicios
.Add("@Marca", SqlDbType.VarChar).Value = Marca
.Add("@CveMarca", SqlDbType.Int).Value = CveMarca
.Add("@Estatus", SqlDbType.Bit).Value = Estatus
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@ActualizarFranquicias", SqlDbType.Bit).Value = ActualizarFranquicias
End With
Try
diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index 7ab6aed8c..7fcdf4e14 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -921,7 +921,23 @@
-
+
+
+
+
+
+
+
+
+ Atención!
+ El Proveedor tiene Saldo a favor pendiente por aplicar
+
+
+
+
+
+
+
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 032328419..3855b52f3 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -714,6 +714,18 @@ Partial Class Compras_Compras
ViewState("CveMetodoPago") = value
End Set
End Property
+
+ Private Property MetodoPagoOC As Integer
+ Get
+ If ViewState("MetodoPagoOC") Is Nothing Then
+ ViewState("MetodoPagoOC") = -1
+ End If
+ Return ViewState("MetodoPagoOC").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("MetodoPagoOC") = value
+ End Set
+ End Property
Private Property TipoCambio As Decimal
Get
Return ViewState("TipoCambio").ToString.ToDecimal
@@ -1018,6 +1030,20 @@ Partial Class Compras_Compras
End Set
End Property
+ Private Property CveIEAnticipo As Integer
+ Get
+ If ViewState("CveIEAnticipo") Is Nothing Then
+ ViewState("CveIEAnticipo") = -1
+ End If
+ Return ViewState("CveIEAnticipo").ToString.ToEntero
+ End Get
+ Set(value As Integer)
+ ViewState("CveIEAnticipo") = value
+ End Set
+ End Property
+
+
+
Public Property FechaCompraOriginal As Date
Get
Return ViewState("FechaCompraOriginal").ToString.ToDate
@@ -3967,6 +3993,12 @@ Partial Class Compras_Compras
'------------------ INICIA VALIDACIONES ------------------
+ If MetodoPagoOC = 0 AndAlso RBLPago.SelectedValue.ToEntero <> 2 Then
+ Alert("La orden de compra se definió de contado, favor de especificar la compra de contado.", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+
Dim CveSubProyectoPrincipal As Integer = AsignarSubProyectoPrincipal()
If Not CveSubProyectoPrincipal > 0 Then
@@ -13656,6 +13688,7 @@ Partial Class Compras_Compras
CargaOC()
End Sub
Private Sub CargaOC()
+ MetodoPagoOC = -1
Dim EntregaDirecta As Integer = 0
DivOCSolicitudAnticipo.Visible = False
DivOCSolicitudAnticipoModal.Visible = False
@@ -13694,6 +13727,7 @@ Partial Class Compras_Compras
HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString)
HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString)
EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0)
+ MetodoPagoOC = OC.DtResultados.Rows(0)("MetodoPagoOC").ToString.ToEntero
End If
End If
Next
@@ -13709,6 +13743,7 @@ Partial Class Compras_Compras
HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString)
HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString)
EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0)
+ MetodoPagoOC = OC.DtResultados.Rows(0)("MetodoPagoOC").ToString.ToEntero
End If
End If
Next
@@ -13751,7 +13786,9 @@ Partial Class Compras_Compras
Protected Sub BtnVOC_Click(sender As Object, e As EventArgs)
VinculaOC()
End Sub
+
Private Sub VinculaOC()
+ CveIEAnticipo = -1
If TxtOC.Text <> "" Then
'VARIABLES
@@ -13798,6 +13835,7 @@ Partial Class Compras_Compras
If ObjOC.DtResultados.Rows(0)("CveIEAnticipo").ToString.ToEntero > 0 Then
FoliosOCAnticipo += $"{ObjOC.DtResultados.Rows(0)("FolioOC").ToString},"
FoliosOCAnticipoIE += $"{ObjOC.DtResultados.Rows(0)("FolioIEAnticipo").ToString},"
+ CveIEAnticipo = ObjOC.DtResultados.Rows(0)("CveIEAnticipo").ToString.ToEntero
DivOCSolicitudAnticipo.Visible = True
DivOCSolicitudAnticipoModal.Visible = True
End If
@@ -13889,6 +13927,9 @@ Partial Class Compras_Compras
If DivOCSolicitudAnticipo.Visible And FoliosOCAnticipo.Length > 0 Then
LtSolicitudAnticipoFoliosOC.Text = $"La(s) siguiente(s) OC: {FoliosOCAnticipo.Substring(0, FoliosOCAnticipo.Length - 1)}. tienen vinculado un anticipo"
LtSolicitudAnticipoFoliosIE.Text = $" {FoliosOCAnticipoIE.Substring(0, FoliosOCAnticipoIE.Length - 1)}"
+
+ DVAtencionOCAnticipo.Visible = True
+ UpDVAtencionOCAnticipo.Update()
End If
'PROMOCIONES
@@ -14436,8 +14477,29 @@ Partial Class Compras_Compras
'ANTICIPO OC
If DivOCSolicitudAnticipo.Visible Then
+
+ If CveIEAnticipo > 0 Then
+ DVAtencionOCAnticipo.Visible = True
+ UpDVAtencionOCAnticipo.Update()
+ End If
+
+ Dim scripsSeccion As String = ""
+ For Each gvRow As GridViewRow In GVAnticipos.Rows
+ If gvRow.DataKey("CveIE").ToEntero = CveIEAnticipo Then
+ Dim Chk As CheckBox = gvRow.FCCheckBox("Chk")
+ scripsSeccion = scripsSeccion & $"$('#{Chk.ClientID}').click();"
+ 'RegistraScript($"$('#{Chk.ClientID}').click();", "100")
+ End If
+ Next
+
RegistraScript("MuestraAnticipos();", "MuestaAnticiposOC")
+ RegistraScript("
+ setTimeout(function() {
+ " & scripsSeccion & "
+ }, 200)
+ ")
UpAnticipos.Update()
+
End If
CalculaTotales()
diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb
index 2e73e1c62..fd3c9db42 100644
--- a/Compras/PopUpVerFactura.aspx.vb
+++ b/Compras/PopUpVerFactura.aspx.vb
@@ -10,6 +10,7 @@ Imports iText.Barcodes.Dmcode
Imports Microsoft.Reporting.WebForms
Imports Modelos
Imports Stimulsoft.Base.Context
+Imports ZXing
Partial Class PopUpVerFactura
@@ -6039,6 +6040,13 @@ Partial Class PopUpVerFactura
ObjVentas.Dispose()
If DtPrecios IsNot Nothing Then
+
+ DtPrecios.Columns.Add(New DataColumn("CBBase64", GetType(String)))
+
+ For Each Row As DataRow In DtPrecios.Rows
+ Row("CBBase64") = Convert.ToBase64String(GeneraCodigoQR(Row("CodigoBarras").ToString(), 40, 150, 0, "CODE_39", True))
+ Next
+
Dim DirectorioArchivo As String = "Empresas/Grales/Formatos/Etiqueta.mrt"
If System.IO.File.Exists(UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt") Then
DirectorioArchivo = UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt"
@@ -6153,4 +6161,94 @@ Partial Class PopUpVerFactura
#End Region
+
+ Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String, Optional PureBacode As Boolean = False) As Byte()
+
+ Dim barcodeWriter As New BarcodeWriter
+ Dim opciones As New ZXing.Common.EncodingOptions
+ Dim FormatoBar As New BarcodeFormat
+ 'Dim Respuesta As Byte()
+
+ opciones.Height = Alto
+ opciones.Width = Largo
+ opciones.Margin = Margen
+ opciones.PureBarcode = PureBacode
+ barcodeWriter.Options = opciones
+
+ Select Case Formato
+ Case "All_1D"
+ barcodeWriter.Format = BarcodeFormat.All_1D
+ Exit Select
+ Case "AZTEC"
+ barcodeWriter.Format = BarcodeFormat.AZTEC
+ Exit Select
+ Case "CODABAR"
+ barcodeWriter.Format = BarcodeFormat.CODABAR
+ Exit Select
+ Case "CODE_128"
+ barcodeWriter.Format = BarcodeFormat.CODE_128
+ Exit Select
+ Case "CODE_39"
+ barcodeWriter.Format = BarcodeFormat.CODE_39
+ Exit Select
+ Case "CODE_93"
+ barcodeWriter.Format = BarcodeFormat.CODE_93
+ Exit Select
+ Case "DATA_MATRIX"
+ barcodeWriter.Format = BarcodeFormat.DATA_MATRIX
+ Exit Select
+ Case "EAN_13"
+ barcodeWriter.Format = BarcodeFormat.EAN_13
+ Exit Select
+ Case "EAN_8"
+ barcodeWriter.Format = BarcodeFormat.EAN_8
+ Exit Select
+ Case "IMB"
+ barcodeWriter.Format = BarcodeFormat.IMB
+ Exit Select
+ Case "ITF"
+ barcodeWriter.Format = BarcodeFormat.ITF
+ Exit Select
+ Case "MAXICODE"
+ barcodeWriter.Format = BarcodeFormat.MAXICODE
+ Exit Select
+ Case "MSI"
+ barcodeWriter.Format = BarcodeFormat.MSI
+ Exit Select
+ Case "PDF_417"
+ barcodeWriter.Format = BarcodeFormat.PDF_417
+ Exit Select
+ Case "PLESSEY"
+ barcodeWriter.Format = BarcodeFormat.PLESSEY
+ Exit Select
+ Case "QR_CODE"
+ barcodeWriter.Format = BarcodeFormat.QR_CODE
+ Exit Select
+ Case "RSS_14"
+ barcodeWriter.Format = BarcodeFormat.RSS_14
+ Exit Select
+ Case "RSS_EXPANDED"
+ barcodeWriter.Format = BarcodeFormat.RSS_EXPANDED
+ Exit Select
+ Case "UPC_A"
+ barcodeWriter.Format = BarcodeFormat.UPC_A
+ Exit Select
+ Case "UPC_E"
+ barcodeWriter.Format = BarcodeFormat.UPC_E
+ Exit Select
+ Case "UPC_EAN_EXTENSION"
+ barcodeWriter.Format = BarcodeFormat.UPC_EAN_EXTENSION
+ Exit Select
+
+ End Select
+
+ Dim imgCod As Drawing.Bitmap = barcodeWriter.Write(CodigoBarras)
+ Dim memoriStream As New System.IO.MemoryStream
+ imgCod.Save(memoriStream, Drawing.Imaging.ImageFormat.Bmp)
+
+ 'Respuesta = Convert.ToBase64String(memoriStream.ToArray())
+
+ Return memoriStream.ToArray()
+
+ End Function
End Class
diff --git a/General/CatMarcas.aspx.vb b/General/CatMarcas.aspx.vb
index ec1df2c15..4537b919b 100644
--- a/General/CatMarcas.aspx.vb
+++ b/General/CatMarcas.aspx.vb
@@ -62,23 +62,42 @@ Partial Class General_CatMarcas
DivEstatus.Visible = False
UpModal.Update()
RegistraScript("$('#DModalMarca').modal()")
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
- Dim ObjPS As New ClsProductosServicios
- If Modalidad = "A" Then
- If ObjPS.AddMarcas(TxtMarca.Text, True, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
- RegistraScript("$('#DModalMarca').modal('hide')")
- Alert("La Marca se agregó correctamente.", TipoMensaje.MsgInformacion)
- CargaDatos()
- GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing
- End If
- ElseIf Modalidad = "U" Then
- If ObjPS.UpdateMarca(TxtMarca.Text, CveMarca, ChkEstatus.Checked) Then
- RegistraScript("$('#DModalMarca').modal('hide')")
- Alert("La Marca se actualizo correctamente.", TipoMensaje.MsgInformacion)
- CargaDatos()
- GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing
- End If
+ Dim ActualizarFranquicias As Boolean = False
+
+ If UsuarioActual.Empresa.Funcionalidad(563) <> "" AndAlso UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
+ ActualizarFranquicias = True
End If
+
+ Dim ObjPS As New ClsProductosServicios
+ ObjPS.IniciaTransacSQL()
+
+ Dim TieneError As Boolean = False
+ Try
+ If Modalidad = "A" Then
+ If Not ObjPS.AddMarcas(TxtMarca.Text, True, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ActualizarFranquicias:=ActualizarFranquicias) Then
+ TieneError = True
+ End If
+ ElseIf Modalidad = "U" Then
+ If Not ObjPS.UpdateMarca(TxtMarca.Text, CveMarca, ChkEstatus.Checked, UsuarioActual.CveEmpresa, ActualizarFranquicias:=ActualizarFranquicias) Then
+ TieneError = True
+ End If
+ End If
+ Catch ex As Exception
+ TieneError = True
+ End Try
+
+ If TieneError Then
+ ObjPS.RollBack()
+ Else
+ ObjPS.Commit()
+ End If
+
ObjPS.Dispose()
+
+ GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing
+ CargaDatos()
+
+ RegistraScript("$('#DModalMarca').modal('hide')")
End Sub
#End Region
diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb
index 21187f697..51bc19045 100644
--- a/General/SaldosIniciales.aspx.vb
+++ b/General/SaldosIniciales.aspx.vb
@@ -2502,7 +2502,8 @@ Partial Class General_SaldosIniciales
For Each nuevaEntrada As DataRow In dt.FiltraParametros($"TRIM(Almacen) = '{almacenActual}'").Rows
contadorMovimientos += 1
- Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS")}' ")
+ 'Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS").ToString.Trim}' ")
+ Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS").ToString.Trim(" "c)}' ")
If RowPS IsNot Nothing Then
Dim CvePS As Integer = RowPS("CvePS").ToString().ToEntero()
diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb
index 9823c5e99..c89c8e8a7 100644
--- a/Inventarios/EntradasSalidas.aspx.vb
+++ b/Inventarios/EntradasSalidas.aspx.vb
@@ -4398,7 +4398,7 @@ Partial Class Inventarios_EntradasSalidas
If Valido Then
Dim CveClasificacion As Integer
- Dim CveUM As Double
+ Dim CveUM As Integer
Dim CodigoPS As String = ""
Dim PS As String = ""
@@ -4415,6 +4415,14 @@ Partial Class Inventarios_EntradasSalidas
PS = dr("PS").ToString.ToString
End If
+ Dim CantidadExistencia = GetExistencias(CvePS, CveUM, UsuarioActual.CveEmpresa, DdlAlmacenCambioVigencias.SelectedValue.ToEntero, CveSeccionAlmacen, Serie, Lote, Caducidad.ToDateTime())
+
+ If Cantidad > CantidadExistencia Then
+ Dim msg = $"El producto {PS} no tiene existencia. " + If(Serie.Length > 0, $"Serie: {Serie} ", "") + If(Lote.Length > 0, $"Lote: {Lote} ", "") + If(Caducidad.ToDateTime() > MinFecha, $"Caducidad: {Caducidad} ", "")
+ Alert(msg, TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
Dim registro As DataRow = DtMovimientosCambioVigencias.NewRow
registro.Item("Cantidad") = Cantidad
registro.Item("CveUM") = CveUM
diff --git a/OC/OC.aspx b/OC/OC.aspx
index eaf90f554..f6003cce7 100644
--- a/OC/OC.aspx
+++ b/OC/OC.aspx
@@ -455,7 +455,7 @@
Método de pago:
-
+
@@ -1563,6 +1563,89 @@
+
+
+
+
+
+
+
+
+
+
+
+ Anticipos
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2912,10 +2995,34 @@
$('#<%= TxtSAImPorcentaje.ClientID%>').val(FormatoNumero(importe, 2).replace(/,/g, ""));
});
+
+ <%--$('#<%= TxtSAImPorcentajeContado.ClientID%>').keyup(function () {
+ console.log($(this).val());
+ var importe = (ToDouble($(this).val()) / 100) * ToDouble($get("LblTotal").value.replace(/,/g, ''));
+ $('#<%= TxtSAImporteContado.ClientID%>').val( FormatoNumero(importe, 2).replace(/,/g, "") );
+ });
+ $('#<%= TxtSAImporteContado.ClientID%>').keyup(function () {
+ var importe = (100 * ToDouble($(this).val())) / ToDouble($get("LblTotal").value.replace(/,/g, ""));
+ $('#<%= TxtSAImPorcentajeContado.ClientID%>').val(FormatoNumero(importe, 2).replace(/,/g, ""));
+ });--%>
+
+
+
$get('HdnWidth').value = $("#DivConceptosContenido").width();
});
+
+ function SAImPorcentajeContadokeyup() {
+ var importe = (ToDouble($('#TxtSAImPorcentajeContado').val()) / 100) * ToDouble($get("LblTotal").value.replace(/,/g, ''));
+ $('#TxtSAImporteContado').val(FormatoNumero(importe, 2).replace(/,/g, ""));
+ }
+
+ function SAImporteContadokeyup() {
+ var importe = (100 * ToDouble($('#TxtSAImporteContado').val())) / ToDouble($get("LblTotal").value.replace(/,/g, ""));
+ $('#TxtSAImPorcentajeContado').val(FormatoNumero(importe, 2).replace(/,/g, ""));
+ }
+
function showDivEC(CveCotizacion) {
$('#<%=TxtMotivoEliminacion.ClientID%>').val("");
$('#divEliminarCotizacion').modal();
diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb
index ad8408dbc..38415f4f5 100644
--- a/OC/OC.aspx.vb
+++ b/OC/OC.aspx.vb
@@ -2,6 +2,7 @@
Option Strict On
Imports System.Data
+Imports System.Data.SqlClient
Imports System.IO
Imports Extensiones
Imports GemBox.Spreadsheet
@@ -2820,6 +2821,15 @@ Partial Class OC_OC
End If
+ If Not TieneError AndAlso DdlMetodoPago.SelectedValue.ToEntero = 0 AndAlso TipoOC = "OC" Then
+
+ If Not GeneraAnticpoContado(CveOrdenCompra, OC.IniciaTransacSQL()) Then
+ TieneError = True
+ End If
+
+ End If
+
+
If Not TieneError Then
If Conta IsNot Nothing Then Conta.Commit()
OC.Commit()
@@ -3207,6 +3217,15 @@ Partial Class OC_OC
+
+ 'If Not TieneError AndAlso DdlMetodoPago.SelectedValue.ToEntero = 0 AndAlso TipoOC = "OC" Then
+
+ ' If Not GeneraAnticpoContado(CveOrdenCompra, OC.IniciaTransacSQL()) Then
+ ' TieneError = True
+ ' End If
+
+ 'End If
+
'COMMIT
If Not TieneError Then
'If MonedaTexto <> DdlMoneda.SelectedItem.Text Then
@@ -3258,6 +3277,9 @@ Partial Class OC_OC
End If
End If
+
+
+
'TERMINA TODO POR SI OCURRIÓ ALGO RARO
If TieneError Then
If OC IsNot Nothing Then OC.RollBack()
@@ -5377,12 +5399,24 @@ Partial Class OC_OC
End If
End Sub
- Private Sub EnviaCorreoSolicitudAnticipo(CveEvento As Integer)
+ Private Sub EnviaCorreoSolicitudAnticipo(CveEvento As Integer, Optional ImporteAnticipo As Decimal = 0)
Dim Param As New List(Of String)
+
Dim DtPara As DataTable = GlobalDTUsuarios(DdlSAUsuario.SelectedValue.ToString.ToEntero, CveEmpresaActual)
+ If DdlMetodoPago.SelectedValue.ToEntero = 0 Then
+ DtPara = GlobalDTUsuarios(DdlSAUsuarioContado.SelectedValue.ToString.ToEntero, CveEmpresaActual)
+ End If
+
Param.Add(DtPara.Rows(0)("Correo").ToString()) 'Para
Param.Add("Solicitud de anticipo de Orden de Compra") 'Asunto
- Param.Add(GeneraCorreoAnticipo(lblFolio.Text, DtPara.Rows(0)("Nombre").ToString(), String.Format("http://sig.adssistemas.mx/OI/EventoDetalle.aspx?CveTipoEvento=1&CveEvento={0}", CveEvento), TxtSAImporte.Text, DdlProveedores.SelectedText))
+
+
+ If ImporteAnticipo = 0 Then
+ ImporteAnticipo = TxtSAImporte.Text.ToDecimal
+ End If
+
+
+ Param.Add(GeneraCorreoAnticipo(lblFolio.Text, DtPara.Rows(0)("Nombre").ToString(), String.Format("http://sig.adssistemas.mx/OI/EventoDetalle.aspx?CveTipoEvento=1&CveEvento={0}", CveEvento), ImporteAnticipo.ToString, DdlProveedores.SelectedText))
Param.Add(String.Format("{0}PDF\OC-{1}.pdf", UsuarioActual.Empresa.Ruta, CveOrdenCompra))
Dim Hilo As New Threading.Thread(AddressOf MandaCorreoAnticipo)
Hilo.Start(Param)
@@ -8846,4 +8880,80 @@ Partial Class OC_OC
End Sub
+
+ Protected Sub DdlMetodoPago_SelectedIndexChanged(sender As Object, e As EventArgs)
+
+ DVAnticposContado.Visible = False
+
+ If DdlMetodoPago.SelectedValue.ToEntero = 0 Then
+ DVAnticposContado.Visible = True
+ DdlSAUsuarioContado.DataSource = GlobalDTUsuarios(-1, CveEmpresaActual).FiltraParametros("CvePlataforma = 1", "Nombre")
+ DdlSAUsuarioContado.DataBind()
+ DdlSAUsuarioContado.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ 'CargaAnticiposSolicitudesContado()
+ End If
+
+ UpPanelDVAnticiposContado.Update()
+ End Sub
+
+
+ Protected Function GeneraAnticpoContado(CveOrdenCompraContado As Integer, ByRef transaccionSql As SqlTransaction) As Boolean
+
+ Dim respuesta As Boolean = False
+
+ If TxtSAImporteContado.Text.ToDecimal > LblTotal.Text.ToDecimal Then
+ Alert("El importe solicitado supera el saldo de la orden de compra", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+ Dim Descripcion As New StringBuilder
+ Descripcion.AppendFormat("Importe anticipo : ${0} ({1}%) - Pagar anticipo - Observacion: {2} ", TxtSAImporteContado.Text.FormatoNumero, TxtSAImPorcentajeContado.Text, CveOrdenCompraContado, TxtSAObservacionesContado.Text)
+ Descripcion.AppendFormat("Orden de compra : {0} - Ir a la orden de compra - Imprimir OC", Folio, CveOrdenCompraContado, Encripta(String.Format("OP=OC&CVEOC={0}", CveOrdenCompraContado)))
+
+
+ Dim Asunto As String = $"{lblFolio.Text} - Solicitud de anticipo "
+ Dim ObjOC As New ClsOC(transaccionSql)
+ Dim ObjOI As New ClsOIEventos(ObjOC.IniciaTransacSQL)
+ Dim TieneError As Boolean = False
+
+ If ObjOI.AddEventoTarea(Asunto, Descripcion.ToString, 1, UsuarioActual.CveUsuario, DdlSAUsuarioContado.SelectedValue.ToString.ToEntero, NowADS(), NowADS().AddMinutes(15), -1, 1, -1, "-1", -1, -1, -1, -1, -1, CveOrdenCompraContado.ToEntero, -1, -1, UsuarioActual.CveUsuario, -1, CveEmpresaActual) Then
+ If Not ObjOC.AddSolicitudAnticipo(CveOrdenCompraContado, TxtSAImporteContado.Text.ToDecimal, CveEmpresaActual) Then
+ TieneError = True
+ End If
+ Else
+ TieneError = True
+ End If
+
+ If Not ObjOI.AddEventoBitacora($"Solicitud de anticipo de orden de compra por ${TxtSAImporteContado.Text.FormatoNumero}", "-1", UsuarioActual.CveUsuario, CveEmpresaActual, CveOC:=CveOrdenCompraContado) Then
+ TieneError = True
+ End If
+
+ If Not TieneError Then
+ EnviaCorreoSolicitudAnticipo(ObjOI.CveEvento, TxtSAImporteContado.Text.ToDecimal)
+ 'LIMPIA
+ DdlSAUsuarioContado.SelectedValue = "-1"
+ TxtSAImporteContado.Text = ""
+ TxtSAObservacionesContado.Text = ""
+ TxtSAImPorcentajeContado.Text = ""
+ Alert("La solicitud de anticipo ha sido enviada correctamente.", TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrió un error al hacer la solicitud de anticipo.", TipoMensaje.MsgError)
+ End If
+
+
+ If TieneError Then
+ respuesta = False
+ Else
+ respuesta = True
+ End If
+
+ Return respuesta
+
+ End Function
+
+
+
+
+
End Class
+
diff --git a/Transportes/RepContratoDetalle.aspx b/Transportes/RepContratoDetalle.aspx
index 895ad85c7..8dd15d431 100644
--- a/Transportes/RepContratoDetalle.aspx
+++ b/Transportes/RepContratoDetalle.aspx
@@ -114,7 +114,7 @@
@@ -851,9 +862,10 @@
diff --git a/Transportes/RepContratoDetalle.aspx.vb b/Transportes/RepContratoDetalle.aspx.vb
index 4880c0672..09b1c2067 100644
--- a/Transportes/RepContratoDetalle.aspx.vb
+++ b/Transportes/RepContratoDetalle.aspx.vb
@@ -16,6 +16,14 @@ Partial Class RepContratoDetalle
ViewState("CveContrato") = value
End Set
End Property
+ Private Property ArchivoUpdate As String
+ Get
+ Return ViewState("ArchivoUpdate").ToString
+ End Get
+ Set(value As String)
+ ViewState("ArchivoUpdate") = value
+ End Set
+ End Property
Private Property CveContratoTipo As Integer
Get
Return CType(ViewState("CveContratoTipo"), Integer)
@@ -24,6 +32,14 @@ Partial Class RepContratoDetalle
ViewState("CveContratoTipo") = value
End Set
End Property
+ Private Property CveContratoEstatus As Integer
+ Get
+ Return CType(ViewState("CveContratoEstatus"), Integer)
+ End Get
+ Set(value As Integer)
+ ViewState("CveContratoEstatus") = value
+ End Set
+ End Property
Private Property CveMasivo As Integer
Get
Return CType(ViewState("CveMasivo"), Integer)
@@ -85,6 +101,8 @@ Partial Class RepContratoDetalle
CargaDatos()
AsientoSeleccionado = ""
CveViajePasajero = 0
+ Session("FileExtension") = ""
+ ArchivoUpdate = ""
End If
End Sub
@@ -92,7 +110,7 @@ Partial Class RepContratoDetalle
'Lista Tipo AF
DdlTipoAF.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa)
DdlTipoAF.DataBind()
- DdlTipoAF.Items.Insert(0, New ListItem("-", ""))
+ DdlTipoAF.Items.Insert(0, New ListItem("-", "0"))
End Sub
Private Sub CargaDatos()
'Información General
@@ -117,11 +135,14 @@ Partial Class RepContratoDetalle
TxtDolares.Text = Contrato.Rows(0)("Importe").ToString
TxtPesos.Text = Contrato.Rows(0)("ImporteMax").ToString
TxtAnticipo.Text = Contrato.Rows(0)("ImporteMin").ToString
- If Not String.IsNullOrEmpty(Contrato.Rows(0)("Archivo").ToString) Then
- BtnDescargar.Visible = True
- LbArchivo.Text = Contrato.Rows(0)("Archivo").ToString
- LbArchivo.Visible = True
+ CveContratoEstatus = Contrato.Rows(0)("CveContratosEstatus").ToString.ToEntero
+ If Not IsDBNull(ObjContratos.Archivo) AndAlso ObjContratos.Archivo <> "" AndAlso ObjContratos.Archivo <> "-1" AndAlso ObjContratos.Archivo <> $"{ObjContratos.CveContrato}." Then
ViewState("FUrl") = Path.Combine(UsuarioActual.Empresa.Ruta, "CONTRATOS", ObjContratos.Archivo)
+ 'A2.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=CONTRATO&CveEmpresa={0}&Archivo={1}", ObjContratos.CveEmpresa, ViewState("FUrl").ToString)))
+ BtnDescargar.Visible = True
+ Else
+ BtnDescargar.Visible = False
+ A1.Visible = True
End If
'Boletos Vendidos
If Contrato.Rows(0)("CveContratoTipo").ToString() = "35" Then
@@ -141,12 +162,13 @@ Partial Class RepContratoDetalle
Response.Redirect($"~/Transportes/RepContratos.aspx")
End If
ObjContratos.Dispose()
+ UpTabContainer.Update()
End Sub
#End Region
#Region "Información General"
- Protected Sub GuardarArchivo(sender As Object, e As EventArgs)
+ Protected Sub BtnGuardarArchivo_Click1(sender As Object, e As EventArgs) Handles BtnGuardarArchivo.Click
Dim FileExtension As String = "-1"
Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
Dim Filename As String = ""
@@ -162,7 +184,7 @@ Partial Class RepContratoDetalle
For Each fileItem As Archivo In Filesgral
- FileExtension = IO.Path.GetExtension($"{AppDomain.CurrentDomain.BaseDirectory}Temp\{fileItem.filename}").Replace(".", "")
+ FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
Session("FileExtension") = FileExtension
Dim tempArray() As String
tempArray = fileItem.filename.ToString().Split("-".ToCharArray())
@@ -177,15 +199,18 @@ Partial Class RepContratoDetalle
'ImgArchivo.Src = "/imagenes/accept.png"
Next
- UpTabContainer.Update()
+ UPAFUL.Update()
+
RegistraScript("$('#ModalUpload').modal('hide')", "hidemodal1")
- Button1.Visible = True
+ A1.Visible = True
If Not FileExtension = "-1" Then
BtnDescargar.Visible = True
End If
- UpdateContrato(sender, e)
End Sub
- Protected Sub DescargarArchivo(sender As Object, e As EventArgs)
+ Private Sub BtnDescargar_Click(sender As Object, e As EventArgs) Handles BtnDescargar.Click
+ DescargarArchivo()
+ End Sub
+ Private Sub DescargarArchivo()
Dim File As New FileInfo(ViewState("FUrl").ToString)
If File.Exists Then 'set appropriate headers
@@ -209,18 +234,25 @@ Partial Class RepContratoDetalle
End If 'nothing in the URL as HTTP GET
End Sub
Protected Sub UpdateContrato(sender As Object, e As EventArgs)
+ Dim ArchivoUpdate As String = "-1"
+
+ If Session("FileExtension").ToString <> "" Then
+ ArchivoUpdate = "." & Session("FileExtension").ToString
+ Else
+ End If
+
Dim ObjContratos As New ClsContratos
+ ObjContratos.IniciaTransacSQL()
Try
- If ObjContratos.UpdateContratos(CveContrato, LbFolio.Text, TxtDescripcion.Text, "", -1, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", LbCveSubProyecto.Text.ToEntero, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, -1, -1) Then
+ 'ObjContratos.AddContratos(LbFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", 10, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, DdlMoneda.SelectedValue.ToEntero, 0, CveContratoTipo:=34, CveContratosEstatus:=50, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CantidadPasajeros:=TxtCantidadPasajeros.Text.ToEntero, Observaciones:=TxtObservaciones.Text)
+ If ObjContratos.UpdateContratos(CveContrato, LbFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", LbCveSubProyecto.Text.ToEntero, -1, -1, -1, -1, ArchivoUpdate, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, -1, 0, CveContratoTipo:=CveContratoTipo, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CveContratosEstatus:=CveContratoEstatus) Then
Alert("Contrato actualizado correctamente")
End If
ObjContratos.Commit()
-
Catch ex As Exception
- Alert($"Ocurrió un ocurrió un error al actualizar su boleto", TipoMensaje.MsgError)
+ Alert("Ocurrió un ocurrió un error al actualizar su boleto", TipoMensaje.MsgError)
ObjContratos.RollBack()
Finally
- Alert("Contrato actualizado correctamente")
ObjContratos.Dispose()
CargaDatos()
End Try
@@ -267,7 +299,7 @@ Partial Class RepContratoDetalle
AsientoSeleccionado = buttonID
TxtAsiento.Text = buttonID.Substring(1)
- UpBoletos.Update()
+ UpTabContainer.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "ModalEditar"))
End Sub
Protected Sub UpdateBoleto(sender As Object, e As EventArgs)
@@ -292,8 +324,12 @@ Partial Class RepContratoDetalle
Finally
Alert("Su asiento fue actualizado correctamente")
ObjTransportes.Dispose()
- CargaDatos()
+
End Try
+ RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalEditar"))
+ UpTabContainer.Update()
+ UpPasajeros.Update()
+ CargaDatos()
End Sub
Protected Sub OnChangeRuta(sender As Object, e As EventArgs)
Dim ObjTransportes As New ClsTransportes
@@ -330,6 +366,7 @@ Partial Class RepContratoDetalle
ViajeActual = dt
End Sub
Protected Sub ImprimirBoleto(sender As Object, e As EventArgs)
+
Dim dtResult As New DataTable()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim Fecha As Date = GvRow.DataKey("FechaIng").ToDate
@@ -346,21 +383,22 @@ Partial Class RepContratoDetalle
New ReportParameter("Celular", GvRow.DataKey("Celular")),
New ReportParameter("Importe", Math.Round(Importe, 1).ToString),
New ReportParameter("TipoBoleto", "Tipo Boleto"),
- New ReportParameter("Agencia", GvRow.DataKey("Agencia")),
- New ReportParameter("TelefonoAgencia", GvRow.DataKey("TelefonoAgencia")),
+ New ReportParameter("Agencia", "Agencia"),
+ New ReportParameter("TelefonoAgencia", "TelefonoAgencia"),
New ReportParameter("Asiento", GvRow.DataKey("Asiento"))
}
ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos\Boleto.mrt", dtResult, params, NombreArchivo:="Boleto")
- 'Empresas/Grales/Formatos/EntradaSalida.mrt
- 'Empresas/188/Formatos/Boleto.mrt
-
+ End Sub
+ Protected Sub GvViajesPasajeros_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("BtnImprimir"))
+ End If
End Sub
Protected Sub EditarBoleto(sender As Object, e As EventArgs)
End Sub
Protected Sub CambiarBoleto(sender As Object, e As EventArgs)
- DdlRuta.ClearSelection()
PnEditarViaje.Visible = True
PnEditarUsuario.Visible = False
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
@@ -384,14 +422,15 @@ Partial Class RepContratoDetalle
If ObjContratos.GetContratosReporte(UsuarioActual.CveEmpresa, MinFecha, MaxFecha, -1, CveEstatus:=-1, CveTipoContrato:=35) Then
For Each row As DataRow In ObjContratos.DtResultados.Rows
Dim fecha As DateTime = row("FechaInicial").ToString.ToDateTime
- ' Asigna los valores de la columna deseada al ListItem
+ 'Asigna los valores de la columna deseada al ListItem
Dim listItem As New ListItem(row("SubProyecto").ToString() + " - " + fecha.ToShortDateString + " - " + fecha.ToShortTimeString, row("CveContrato").ToString())
- ' Agrega el ListItem al DropDownList
+ 'Agrega el ListItem al DropDownList
DdlRuta.Items.Add(listItem)
Next
End If
DdlRuta.SelectedValue = GvRow.DataKey("CveViaje")
ObjContratos.Dispose()
+ UpTabContainer.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "ModalEditar"))
End Sub
Protected Sub BtnCancelar_Click(sender As Object, e As EventArgs)
diff --git a/Transportes/RepViajes.aspx.vb b/Transportes/RepViajes.aspx.vb
index d7983b520..b99816534 100644
--- a/Transportes/RepViajes.aspx.vb
+++ b/Transportes/RepViajes.aspx.vb
@@ -1,8 +1,8 @@
Option Explicit On
Option Strict On
Imports System.Data
+Imports Extensiones
Imports Extensiones.ModExtensiones
-
Partial Class ListadoViajes
Inherits ClsPaginas
@@ -24,6 +24,8 @@ Partial Class ListadoViajes
End Set
End Property
#End Region
+
+#Region "Carga Página"
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
@@ -38,18 +40,7 @@ Partial Class ListadoViajes
DdlRutas.DataBind()
Dim ObjRutas As New ClsTransportes()
- 'If ObjRutas.GetRutas(-1, -1, -1, "", True, DateTime.Now) Then
- ' If ObjRutas.DtResultados.Rows.Count > 0 Then
- ' DdlRutas.DataSource = ObjRutas.DtResultados
- ' DdlRutas.DataBind()
- ' DdlRutas.Items.Insert(0, New ListItem("Seleccione Ruta", ""))
- ' End If
- 'End If
- 'DdlRutas.DataSource = ObjRutas.DtResultados
- ' DdlRutas.DataBind()
- ' DdlRutas.Items.Insert(0, New ListItem("Seleccione Ruta", ""))
- 'Lista Destinos'
If ObjRutas.GetDestinos() Then
If ObjRutas.DtResultados.Rows.Count > 0 Then
@@ -73,17 +64,12 @@ Partial Class ListadoViajes
End If
ObjContratos.Dispose()
GvContratos.DataBind()
- 'If ObjContratos.GetContratos(-1, UsuarioActual.CveEmpresa, TipoContrato:=35) Then
- ' GvContratos.DataSource = ObjContratos.DtResultados
- ' GvContratos.DataBind()
- 'End If
End Sub
-
+#End Region
Private Sub LBAgregarViaje_Click(sender As Object, e As EventArgs) Handles LBAgregarViaje.Click
MostrarModal()
End Sub
-
Public Sub MostrarModal()
'Generar Folio
Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero
@@ -104,10 +90,9 @@ Partial Class ListadoViajes
RegistraScript(String.Format("$('#{0}').modal('show');", "ModalAgregar"))
End Sub
-
Protected Sub AddViaje(sender As Object, e As EventArgs)
'Generador de Viajes Masivos
- Dim CveSubProyecto As Integer = DdlRutas.SelectedValue.ToEntero 'GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero
+ Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero
If IsMasivo.Checked = True Then
If TxtFechaInicial.Text = "" Or TxtFrecuencia.Text = "" Then
Alert("Es necesario agregar la fecha inicial y la frecuencia", TipoMensaje.MsgAdvertencia)
@@ -136,13 +121,15 @@ Partial Class ListadoViajes
End If
'Agregamos contrato
ObjContratos.IniciaTransacSQL()
- If ObjContratos.AddContratos(LbFolio.Text, "", "", UsuarioActual.CveProveedor, -1, -1, fecha, fecha, "", "", CveSubProyecto, -1, -1, -1, -1, "", "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, -1, 0, CveContratoTipo:=35, CveContratosEstatus:=50, CvePartida:=DdlPartida.SelectedValue.ToEntero, CveDestino:=DdlDestino.SelectedValue.ToEntero, CveMasivo:=CveMasivo, CveVendedor:=UsuarioActual.CveVendedor) > 0 Then
+ If ObjContratos.AddContratos(LbFolio.Text, "", "", UsuarioActual.CveProveedor, -1, -1, fecha, fecha, "", "", DdlRutas.SelectedValue.ToEntero, -1, -1, -1, -1, "", "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, -1, 0, CveContratoTipo:=35, CveContratosEstatus:=50, CvePartida:=DdlPartida.SelectedValue.ToEntero, CveDestino:=DdlDestino.SelectedValue.ToEntero, CveMasivo:=CveMasivo, CveVendedor:=UsuarioActual.CveVendedor) > 0 Then
ObjContratos.Commit()
End If
'Actualizamos Folio
+ ObjFolio.IniciaTransacSQL()
If ObjFolio.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then
- ObjFolio.Dispose()
+ ObjFolio.Commit()
End If
+ ObjFolio.Dispose()
Next
Alert("Viajes Masivos generados correctamente.")
Catch ex As Exception
@@ -183,16 +170,17 @@ Partial Class ListadoViajes
TxtFechaViaje.Text = ""
'Actualizamos Folio
Dim ObjFolios As New ClsGralFolios
+ ObjFolios.IniciaTransacSQL()
If ObjFolios.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then
- ObjFolios.Dispose()
+ ObjFolios.Commit()
End If
+ ObjFolios.Dispose()
ObjContratos.Dispose()
CargaDatos()
End Try
End If
End Sub
-
Protected Sub ToggleMasivo(sender As Object, e As EventArgs)
DivFechaMasivo.Visible = IsMasivo.Checked
RegistraScript(String.Format("$('#{0}').modal('show');", "ModalAgregar"))
diff --git a/Ventas/ProductosServicios.aspx.vb b/Ventas/ProductosServicios.aspx.vb
index 8294ff03c..1721e2c10 100644
--- a/Ventas/ProductosServicios.aspx.vb
+++ b/Ventas/ProductosServicios.aspx.vb
@@ -2208,7 +2208,7 @@ Partial Class ProductosyServicios
#Region "Codigo Barras"
'Codigo barras/QR se retorna como una imagen bmp
- Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String) As Byte()
+ Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String, Optional PureBacode As Boolean = False) As Byte()
Dim barcodeWriter As New BarcodeWriter
Dim opciones As New ZXing.Common.EncodingOptions
@@ -2218,7 +2218,7 @@ Partial Class ProductosyServicios
opciones.Height = Alto
opciones.Width = Largo
opciones.Margin = Margen
-
+ opciones.PureBarcode = PureBacode
barcodeWriter.Options = opciones
Select Case Formato
@@ -3582,6 +3582,13 @@ Partial Class ProductosyServicios
ObjVentas.Dispose()
If DtPrecios IsNot Nothing Then
+
+ DtPrecios.Columns.Add(New DataColumn("CBBase64", GetType(String)))
+
+ For Each Row As DataRow In DtPrecios.Rows
+ Row("CBBase64") = Convert.ToBase64String(GeneraCodigoQR(Row("CodigoBarras").ToString(), 40, 150, 0, "CODE_39", True))
+ Next
+
Dim DirectorioArchivo As String = "Empresas/Grales/Formatos/Etiqueta.mrt"
If System.IO.File.Exists(UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt") Then
DirectorioArchivo = UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt"