diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb index 69ac29dc8..42e66ad44 100644 --- a/App_Code/ClsClientes.vb +++ b/App_Code/ClsClientes.vb @@ -1680,6 +1680,63 @@ Public Class ClsClientes Return Retorno End Function + Public Function UpdateClienteNoFrencuente(CveCliente As Integer, Nombre As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Localidad As String, Ciudad As String, CveEstado As Integer, + RFC As String, CP As String, Telefono As String, Mail As String, CveSubProyecto As Integer, CveUsuario As Integer, CveEmpresa As Integer, + NumCuentaPago As String, CveMetodoPago33 As Integer, CveFormaPago33 As Integer, Optional CvePrecioLista As Integer = -1) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_ClientesNoFrecuenteUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveCliente", SqlDbType.Int).Value = CveCliente + .Add("@Nombre", SqlDbType.VarChar).Value = Nombre + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion + .Add("@NoExt", SqlDbType.VarChar).Value = NoExt + .Add("@NoInt", SqlDbType.VarChar).Value = NoInt + .Add("@Colonia", SqlDbType.VarChar).Value = Colonia + .Add("@Localidad", SqlDbType.VarChar).Value = Localidad + .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad + .Add("@CveEstado", SqlDbType.Int).Value = CveEstado + ' .Add("@Pais", SqlDbType.VarChar).Value = Pais + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@CP", SqlDbType.VarChar).Value = CP + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveMetodoPago33", SqlDbType.Int).Value = CveMetodoPago33 + .Add("@CveFormaPago33", SqlDbType.Int).Value = CveFormaPago33 + .Add("@NumCuentaPago", SqlDbType.VarChar).Value = NumCuentaPago + .Add("@CvePrecioLista", SqlDbType.Int).Value = CvePrecioLista + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + + If Ex1.Message.Contains("Número: 2627;") Then + Alert("El Nuevo Cliente no se guardo debido a que actualmente se encuentra registrado", TipoMensaje.MsgAdvertencia) + + ElseIf Ex1.Message.Contains("Número: 2601;") Then + If Ex1.Message.Contains("UN_ClientesRFCEmpresa") Then + Alert("Ya existe un cliente registrado con el mismo RFC.", TipoMensaje.MsgAdvertencia) + End If + + If Ex1.Message.Contains("IND_Clientes_Codigo") Then + Alert("Ya existe un cliente registrado con el mismo Código.", TipoMensaje.MsgAdvertencia) + End If + Else + Me.OnError("Ocurrió un error al Intentar guardar el Nuevo Cliente.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar el cliente", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + #Region "UNIFICAR CLIENTES" Public Function UnificarClientes(CveClienteAUnificar As Integer, CveClienteOriginal As Integer) As Boolean Dim Retorno As Boolean = False diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb index 45b8f3792..8cc4b1e42 100644 --- a/App_Code/ClsInventarios.vb +++ b/App_Code/ClsInventarios.vb @@ -3571,6 +3571,26 @@ Public Class ClsInventarios Return Retorno End Function + + Public Function ReconstruirCostos(CvePS As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Inv_ReconstruirCostos") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePS", SqlDbType.Int).Value = CvePS + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener al reconstruir los costos del producto.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function #End Region #Region " INVENTARIOS - OC " diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index caef462e6..32d650303 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -979,7 +979,7 @@ Public Class ClsNominas Public Function UpdateConcepto(Codigo As String, Concepto As String, Tipo As String, Formula As String, Sistema As Boolean, Estado As Boolean, CveConceptoPadre As Integer, CveConcepto As Integer, EsRetencion As Boolean, CveClasificacion As Integer, IdCtaContable As Integer, CveTipoGasto As Integer, TipoCalculo As Boolean, CveConceptoContable As Integer, - AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer) As Boolean + AplicaFiniquito As Integer, AutomaticoGlobal As Integer, Especie As Integer, Imprimir As Integer, CveSATConcepto As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Nom_ConceptosUpdate") @@ -1004,6 +1004,7 @@ Public Class ClsNominas .Add("Especie", SqlDbType.Bit).Value = Especie .Add("Imprimir", SqlDbType.Bit).Value = Imprimir .Add("CveSATConcepto", SqlDbType.Int).Value = CveSATConcepto + .Add("CveEmpresa", SqlDbType.Int).Value = CveEmpresa End With Try diff --git a/App_Code/ClsProductosServicios.vb b/App_Code/ClsProductosServicios.vb index 0a9d5aca9..bc165de82 100644 --- a/App_Code/ClsProductosServicios.vb +++ b/App_Code/ClsProductosServicios.vb @@ -208,7 +208,7 @@ Public Class ClsProductosServicios Public Function GetPS(CvePS As Integer, CveClasificacion As Integer, CveEmpresa As Integer, Optional Codigo As String = "-1", Optional Codigo2 As String = "-1", Optional CodigoBarras As String = "-1", Optional PS As String = "-1", Optional EsPaquete As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional pAplicaParaVenta As Integer = -1, Optional pEstado As Integer = -1, Optional CveClasificacionCosto As Integer = -1, Optional CveTipoPS As Integer = -1, - Optional CveCompuesto As Integer = -1, Optional SATClavePS As String = "-1", Optional TopSelect As Integer = 10000) As Boolean + Optional CveCompuesto As Integer = -1, Optional SATClavePS As String = "-1", Optional TopSelect As Integer = 10000, Optional CveMarca As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_ProductosServiciosGet") @@ -229,6 +229,7 @@ Public Class ClsProductosServicios .Add("@CveTipoPS", SqlDbType.Int).Value = CveTipoPS .Add("@CveCompuesto", SqlDbType.Int).Value = CveCompuesto .Add("@SATClavePS", SqlDbType.VarChar).Value = SATClavePS + .Add("@CveMarca", SqlDbType.Int).Value = CveMarca .Add("@TopSelect", SqlDbType.Int).Value = TopSelect End With @@ -252,7 +253,7 @@ Public Class ClsProductosServicios Oferta = Data.Rows(0)("Oferta").ToString.ToDouble IVA = Data.Rows(0)("IVA").ToString.ToDouble RetIVA = Data.Rows(0)("RetIVA").ToString.ToDouble - CveMarca = Data.Rows(0)("CveMarca").ToString.ToEntero + Me.CveMarca = Data.Rows(0)("CveMarca").ToString.ToEntero AplicaParaConcepto = CBool(Data.Rows(0)("AplicaParaConcepto").ToString) AplicaParaVenta = Data.Rows(0)("AplicaParaVenta").ToString = "True" Estado = Data.Rows(0)("Estado").ToString = "Activo" diff --git a/App_Code/ClsSisNotificaciones.vb b/App_Code/ClsSisNotificaciones.vb index be0a9a61e..4aafd6454 100644 --- a/App_Code/ClsSisNotificaciones.vb +++ b/App_Code/ClsSisNotificaciones.vb @@ -357,7 +357,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -418,7 +418,7 @@ Public Class ClsSisNotificaciones End If If Archivos.Count > 0 Then - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", $"Se adjunta el {Formato} en el Reporte Programado.", "", Archivos) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", $"Se adjunta el {Formato} en el Reporte Programado.", "", Archivos) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -467,7 +467,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -509,7 +509,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -557,7 +557,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -596,7 +596,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If @@ -635,7 +635,7 @@ Public Class ClsSisNotificaciones If LSRutasMail.Count > 0 Then Dim ObjMail As New ClsSisMail() Dim ResultadoMail As Integer = 0 - If ObjMail.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then + If ObjMail.SendMail(ClsPaginas.EmpresaNotificacionesGPS, Correos, $"Reporte Programado {Date.Today.ToShortDateString}", "Se adjunta en pdf el Reporte Programado.", "", LSRutasMail) Then UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1) End If End If diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index 96d8c619a..adda24263 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -580,6 +580,14 @@ Namespace Modelos Me.DtRemisionesDocumentosRelacionados = ObjVentas.DtResultados.Copy() End If + 'CARGA LOS IMPUESTOS LOCALES + If ObjVentas.GetVentaImpuestosLocales(CveVenta) Then + If ObjVentas.DtResultados.Rows.Count > 0 Then + DtImpuestosLocales = ObjVentas.DtResultados.Copy() + End If + End If + + ObjVentas.Dispose() If Me.RealizarDevolucionAlmacen Then @@ -1618,8 +1626,8 @@ Namespace Modelos End If 'Impuestos Locales - If DtImpuestosLocales IsNot Nothing Then - For Each gvr As DataRow In DtImpuestosLocales.Rows + If factura.DtImpuestosLocales IsNot Nothing Then + For Each gvr As DataRow In factura.DtImpuestosLocales.Rows If Not ObjVentas.AddVentaImpuestoLocales(factura.CveVenta, gvr("CveImpuestoLocal").ToString.ToEntero(), gvr("Importe").ToString().ToDouble()) Then ErrorList.Add("Ocurrió un error al Guardar Impuestos Locales") End If @@ -1627,8 +1635,8 @@ Namespace Modelos End If - If DtFirmas IsNot Nothing AndAlso DtFirmas.Rows.Count > 0 Then - For Each Row As DataRow In DtFirmas.Rows + If factura.DtFirmas IsNot Nothing AndAlso factura.DtFirmas.Rows.Count > 0 Then + For Each Row As DataRow In factura.DtFirmas.Rows If Not ObjVentas.AddVentasFirmas(factura.CveVenta, Row("Titulo").ToString, Row("Nombre").ToString, Row("Puesto").ToString, Row("Lado").ToString.ToEntero) Then ErrorList.Add("Ocurrio un error al Guardar Firmas") End If @@ -4828,8 +4836,10 @@ Namespace Modelos If Not ErrorCancelar Then Dim Filtro As String = "" Select Case ObjFactura.TipoDocto - Case "Ing", "Ped", "Dev" + Case "Ing", "Ped" Filtro = "CveConcepto IN (3, 40)" + Case "Dev" + Filtro = "CveConcepto = 18" Case Else Filtro = "CveConcepto = 9" End Select @@ -4860,19 +4870,22 @@ Namespace Modelos If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen Then 'REALIZA DEVOLUCION A LAS SALIDAS PENDIENTES For Each RowMovimiento As DataRow In DtSalidas.Rows - Dim CveConceptoDevolucion As Integer = -1 - Dim CveAlmacenDevolucion As Integer = -1 + Dim CveConceptoMovimiento As Integer = -1 + Dim CveAlmacenMovimiento As Integer = -1 Dim CveMovimientoDevolucion As Integer = 0 Dim Folio As Integer = 0 Select Case RowMovimiento("CveConcepto").ToString().ToEntero() Case 3 - CveConceptoDevolucion = 18 'DEVOLUCION DEL CLIENTE - CveAlmacenDevolucion = RowMovimiento("CveAlmacen").ToString().ToEntero() + CveConceptoMovimiento = 18 'DEVOLUCION DEL CLIENTE + CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero() Case 40 - CveConceptoDevolucion = 41 'DEVOLUCIÓN DEL CLIENTE DIRECTA - CveAlmacenDevolucion = RowMovimiento("CveAlmacen").ToString().ToEntero() + CveConceptoMovimiento = 41 'DEVOLUCIÓN DEL CLIENTE DIRECTA + CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero() + Case 18 + CveConceptoMovimiento = 3 'DEVOLUCIÓN DEL CLIENTE DIRECTA + CveAlmacenMovimiento = RowMovimiento("CveAlmacen").ToString().ToEntero() ''SI TIENE REMISIONES RELACIONADAS 'If DtRemisionesFacturadas.Rows.Count > 0 Then ' Dim RowRemision As DataRow = DtExistencias.FiltroPrimero($"CveMovimiento = {RowMovimiento("CveMovimiento").ToString()}") @@ -4896,12 +4909,20 @@ Namespace Modelos 'SI TIENE SALDO PENDIENTE POR DEVOLVER GENERA UN MOVIMIENTO DE DEVOLUCION If ObjFactura.SaldoAlmacen <> 0 Then 'SALIDA DE ALMACEN - SALIDA POR TRASPASO CUANDO ES REMISION - DEVOLUCION (SI ES TRASPASO Y TIENE CONTRATO NO HACE DEVOLUCIóN) - CveMovimientoDevolucion = ObjInventario.AddMovimiento(CveAlmacenDevolucion, CveConceptoDevolucion, 1, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1, Observaciones:="", Guia:="", CveContrato:=CveContrato, CveAlmacenDestino:=-1, Modulo:="Mod/CV1") + CveMovimientoDevolucion = ObjInventario.AddMovimiento(CveAlmacenMovimiento, CveConceptoMovimiento, 1, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1, Observaciones:="", Guia:="", CveContrato:=CveContrato, CveAlmacenDestino:=-1, Modulo:="Mod/CV1") Folio = ObjInventario.Folio If CveMovimientoDevolucion > 0 Then For Each Dr As DataRow In DtExistencias.FiltraParametros($"CveMovimiento = {RowMovimiento("CveMovimiento").ToString()}").Rows - If Not ObjInventario.AddMovimientoDetalle(CveMovimientoDevolucion, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero) Then + + Dim FechaCaducidad As Date = MinFecha + If Not String.IsNullOrEmpty(Dr("FechaCaducidad").ToString()) Then + If IsDate(Dr("FechaCaducidad")) Then + FechaCaducidad = Dr("FechaCaducidad").ToString().ToDate() + End If + End If + + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoDevolucion, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, FechaCaducidad:=FechaCaducidad) Then ErrorCancelar = True MensajeError = "Ocurrió un error al procesar los conceptos de salida. Por favor vuelva a intentar." Exit For @@ -4920,12 +4941,17 @@ Namespace Modelos DtCostos = ObjInventario.DtResultados Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"}) - Dim IdCtaContableAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen = {CveAlmacenDevolucion}").ToEntero + Dim IdCtaContableAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen = {CveAlmacenMovimiento}").ToEntero 'Dim CveCuentaAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContableSIG", $"CveAlmacen = {CveAlmacenDevolucion}").ToEntero Dim IdCtaContable As Integer = 0 Dim CveCuenta As Integer = 0 If tmpCostos.Rows.Count > 0 Then + Dim Multiplicador As Decimal = -1D + If ObjFactura.TipoDocto = "Dev" Then + Multiplicador = 1D + End If + If ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa) Then Dim Fecha As Date = Now Dim CveCliente As Integer = ObjVentas.DtResultados(0)("CveCliente").ToString.ToEntero @@ -4950,7 +4976,7 @@ Namespace Modelos CveCuenta = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostosSIG", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero If Not ErrorCancelar Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, False, -1 * ValorInventario, SerieFolio, 69, SerieFolio, Fecha, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=-1 * ValorInventario, CveCuenta:=CveCuenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, False, Multiplicador * ValorInventario, SerieFolio, 69, SerieFolio, Fecha, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=Multiplicador * ValorInventario, CveCuenta:=CveCuenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero) Then ErrorCancelar = True End If End If @@ -4958,7 +4984,7 @@ Namespace Modelos cont += 1 Next - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, True, -1 * TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=-1 * TotalCosto) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaDev, True, Multiplicador * TotalCosto, SerieFolio, 68, SerieFolio, Fecha, IdCtaContableAlmacen, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveMovimientoAlmacen:=CveMovimientoDevolucion, CveSubProyecto:=ObjFactura.CveSubProyecto, ImporteMX:=Multiplicador * TotalCosto) Then ErrorCancelar = True End If @@ -4995,7 +5021,7 @@ Namespace Modelos 'DEVOLUCION REMISION - REGRESA LAS EXISTENCIAS A ENTREGA POR ADELANTADO SI LA FACTURA VIENE DE REMISION 'SI ES DEVOLUCION DEL CLIENTE DEBE REGRESAR A ENTREGA POR ADELANTADO - If Not ErrorCancelar AndAlso CveConceptoDevolucion = 18 AndAlso RevivirRemisiones Then + If Not ErrorCancelar AndAlso CveConceptoMovimiento = 18 AndAlso RevivirRemisiones Then If Not GeneraMovimientosEntregaPorAdelantadoRemision(CveMovimientoDevolucion, ObjVentas, ObjInventario, DtDevRem, ListaRemisionesCancelar) Then ErrorCancelar = True MensajeError = "Ocurrió un error al generar los movimientos de devolución a remisión" diff --git a/Ashx/E141.ashx b/Ashx/E141.ashx index 801f1ab28..fca4a8b19 100644 --- a/Ashx/E141.ashx +++ b/Ashx/E141.ashx @@ -115,6 +115,45 @@ Public Class E141 : Implements IHttpHandler End Get End Property + Public Property GlobalDTPSSimplificado(Optional CveClasificacion As Integer = -1, Optional Codigo As String = "-1", Optional Estatus As Integer = 1, Optional AplicaParaVenta As Integer = -1, Optional CvePS As Integer = -1) As DataTable + Get + Dim AppNombre As String = String.Format("GlobalDTPSSimplificado-{0}", CveEmpresa) + If CveEmpresa <> -1 Then + 'sino existe, recarga los datos + If HttpContext.Current.Application(AppNombre) Is Nothing Then + Dim ObjPS As New ClsProductosServicios + If ObjPS.GetPSSimplificado(CveEmpresa) Then HttpContext.Current.Application(AppNombre) = ObjPS.DtResultados.AsEnumerable() + ObjPS.Dispose() + + End If + + + Dim Cons = DirectCast(HttpContext.Current.Application(AppNombre), EnumerableRowCollection(Of DataRow)) + + Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveEmpresa) = CveEmpresa)) + If CveClasificacion >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveClasificacion) = CveClasificacion)) + Codigo = Codigo.ToUpper() + If Codigo <> "-1" Then Cons = Cons.Where((Function(a) Convert.ToString(a!Codigo).ToUpper() = Codigo)) + If Estatus >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CveEstado) = Estatus)) + If AplicaParaVenta >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!AplicaParaVenta) = AplicaParaVenta)) + If CvePS >= 0 Then Cons = Cons.Where((Function(a) Convert.ToInt32(a!CvePS) = CvePS)) + + Try + GlobalDTPSSimplificado = Cons.OrderBy(Function(a) a!PSCodigo).CopyToDataTable + Catch ex As Exception + GlobalDTPSSimplificado = New DataTable + End Try + + Else + GlobalDTPSSimplificado = DirectCast(HttpContext.Current.Application(AppNombre), EnumerableRowCollection(Of DataRow)).CopyToDataTable + End If + End Get + Set(value As DataTable) + Dim AppNombre As String = String.Format("GlobalDTPSSimplificado-{0}", CveEmpresa) + HttpContext.Current.Application(AppNombre) = value + End Set + End Property + Property GlobalDTMonedas() As DataTable Get GlobalDTMonedas = DirectCast(HttpContext.Current.Application("GlobalDTMonedas"), DataTable) @@ -632,11 +671,14 @@ Public Class E141 : Implements IHttpHandler Dim ObjClientes As New ClsClientes() Dim ObjInventario As New ClsInventarios(ObjClientes.IniciaTransacSQL()) - ObjClientes.IniciaTransacSQL() Try - If Not String.IsNullOrEmpty(JsonRequest("timbrar").ToString) Then - DebeTimbrar = CBool(JsonRequest("timbrar")) + Dim timbrar_request As String = If(JsonRequest("timbrar") Is Nothing, "", JsonRequest("timbrar").ToString()) + + If Not String.IsNullOrEmpty(timbrar_request) Then + DebeTimbrar = CBool(timbrar_request) + Else + DebeTimbrar = False End If ObjFactura = CreaFactura(ObjInventario, ObjClientes, "Ing", Resp, JsonRequest, Usuario) @@ -646,7 +688,7 @@ Public Class E141 : Implements IHttpHandler If Resp.CveVenta > 0 Then Respuesta.status = "success" - Respuesta.data = Resp.CveVenta.ToString() + Respuesta.data = Resp.SerieFolio Else TieneError = True End If @@ -674,9 +716,11 @@ Public Class E141 : Implements IHttpHandler If TieneError Then ObjClientes.RollBack() ObjClientes.Dispose() + ObjInventario.Dispose() Else ObjClientes.Commit() ObjClientes.Dispose() + ObjInventario.Dispose() If DebeTimbrar Then Dim SeTimbro As Boolean = ObjFactura.TimbrarFactura() @@ -690,6 +734,10 @@ Public Class E141 : Implements IHttpHandler End If End If + If ObjFactura IsNot Nothing Then + ObjFactura.Dispose() + End If + Else TieneError = True RespuestaError.message = "No hay un usuario disponible" @@ -708,26 +756,83 @@ Public Class E141 : Implements IHttpHandler #Region "D E F I N I R - O B J E T O S" - Private Function CrearCliente(ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer + Private Function CrearCliente(TipoDocto As String, ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer Dim CveCliente As Integer = -1 Dim CveSubProyecto As Integer = JsonRequest("branch_office_id").ToEntero() - Dim Nombre As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString()) - Dim Direccion As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString()) - Dim NumExt As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString()) - Dim NumInt As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString()) - Dim Colonia As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString()) - Dim Localidad As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString()) - Dim Ciudad As String = Localidad - Dim RFC As String = If(JsonRequest("invoice_rfc") Is Nothing, "XAXX010101000", JsonRequest("invoice_rfc").ToString()) - Dim CP As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString()) - Dim Telefono As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString()) - Dim Correo As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString()) + + + Dim Nombre As String = "" + Dim Direccion As String = "" + Dim NumExt As String = "" + Dim NumInt As String = "" + Dim Colonia As String = "" + Dim Localidad As String = "" + Dim Ciudad As String = "" + Dim Estado As String = "" + Dim RFC As String = "" + Dim CP As String = "" + Dim Telefono As String = "" + Dim Correo As String = "" + + 'DATOS DE CONTACTO + Dim contact_name As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString()) + Dim contact_address As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString()) + Dim contact_ext_number As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString()) + Dim contact_int_number As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString()) + Dim contact_neighborhood As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString()) + Dim contact_city As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString()) + Dim contact_zip_code As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString()) + Dim contact_phone As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString()) + Dim contact_email As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString()) + Dim contact_state As String = If(JsonRequest("contact_state") Is Nothing, "", JsonRequest("contact_state").ToString()) + + 'DATOS DE FACTURACION + Dim invoice_rfc As String = If(JsonRequest("invoice_rfc") Is Nothing, "", JsonRequest("invoice_rfc").ToString()) + Dim invoice_name As String = If(JsonRequest("invoice_name") Is Nothing, "", JsonRequest("invoice_name").ToString()) + Dim invoice_address As String = If(JsonRequest("invoice_address") Is Nothing, "", JsonRequest("invoice_address").ToString()) + Dim invoice_city As String = If(JsonRequest("invoice_city") Is Nothing, "", JsonRequest("invoice_city").ToString()) + Dim invoice_state As String = If(JsonRequest("invoice_state") Is Nothing, "", JsonRequest("invoice_state").ToString()) + Dim invoice_email As String = If(JsonRequest("invoice_email") Is Nothing, "", JsonRequest("invoice_email").ToString()) + Dim invoice_phone As String = If(JsonRequest("invoice_phone") Is Nothing, "", JsonRequest("invoice_phone").ToString()) Dim CveEstado As Integer = -1 - If Not String.IsNullOrEmpty(JsonRequest("contact_state").ToString()) Then - CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{JsonRequest("contact_state").ToString().Trim}'").ToEntero() + If TipoDocto = "Ing" Then + RFC = If(Not String.IsNullOrEmpty(invoice_rfc), invoice_rfc, "XAXX010101000") + Nombre = If(Not String.IsNullOrEmpty(invoice_name), invoice_name, contact_name) + Direccion = If(Not String.IsNullOrEmpty(invoice_address), invoice_address, contact_address) + 'SI LA DIRECCION ES LA MISMA QUE LA DE CONTACTO + If Direccion = contact_address Then + NumExt = If(Not String.IsNullOrEmpty(contact_ext_number), contact_ext_number, "") + NumInt = If(Not String.IsNullOrEmpty(contact_int_number), contact_int_number, "") + Colonia = If(Not String.IsNullOrEmpty(contact_neighborhood), contact_neighborhood, "") + End If + Ciudad = If(Not String.IsNullOrEmpty(invoice_city), invoice_city, contact_city) + Localidad = Ciudad + Estado = If(Not String.IsNullOrEmpty(invoice_state), invoice_state, contact_state) + CP = If(Not String.IsNullOrEmpty(contact_zip_code), contact_zip_code, "") + Correo = If(Not String.IsNullOrEmpty(invoice_email), invoice_email, contact_email) + Telefono = If(Not String.IsNullOrEmpty(invoice_phone), invoice_phone, contact_phone) + + Else + + Nombre = If(Not String.IsNullOrEmpty(contact_name), contact_name, "") + Direccion = If(Not String.IsNullOrEmpty(contact_address), contact_address, "") + NumExt = If(Not String.IsNullOrEmpty(contact_ext_number), contact_ext_number, "") + NumInt = If(Not String.IsNullOrEmpty(contact_int_number), contact_int_number, "") + Colonia = If(Not String.IsNullOrEmpty(contact_neighborhood), contact_neighborhood, "") + Ciudad = If(Not String.IsNullOrEmpty(contact_city), contact_city, "") + Localidad = Ciudad + Estado = If(Not String.IsNullOrEmpty(contact_state), contact_state, "") + CP = If(Not String.IsNullOrEmpty(contact_zip_code), contact_zip_code, "") + Correo = If(Not String.IsNullOrEmpty(contact_email), contact_email, "") + Telefono = If(Not String.IsNullOrEmpty(contact_phone), contact_phone, "") + + End If + + If Not String.IsNullOrEmpty(Estado) Then + CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{Estado.Trim}'").ToEntero() 'SI NO ENCUENTRA EL ESTADO INGRESA EL DE SONORA If CveEstado <= 0 Then @@ -737,11 +842,18 @@ Public Class E141 : Implements IHttpHandler CveEstado = 26 End If + 'SI NO EXISTE EL RFC UTILIZA EL GENERICO If String.IsNullOrEmpty(RFC) Then RFC = "XAXX010101000" End If + If String.IsNullOrEmpty(Nombre) Then + Resp.TieneError = False + Resp.Mensajes.Add("El cliente no tiene un nombre") + Return -1 + End If + 'VALIDAR QUE NO EXISTA EL RFC If RFC <> "XAXX010101000" Then If ObjClientes.GetClientes(-1, "-1", "-1", "-1", RFC, "-1", "-1", -1, UsuarioActual.CveEmpresa, 1, TipoCliente:=-1, TopSelect:=1) Then @@ -774,11 +886,19 @@ Public Class E141 : Implements IHttpHandler Resp.TieneError = False Dim Serie As String = "-1" Dim CveMoneda As Integer = 1 + Dim CveSubProyecto As Integer = JsonRequest("branch_office_id").ToEntero() + + If CveSubProyecto <= 0 Then + Resp.TieneError = False + Resp.Mensajes.Add("La sucursal es requerida") + Return Nothing + End If + Dim CveCliente As Integer = If(JsonRequest("user_id") Is Nothing, 0, JsonRequest("user_id").ToEntero()) If CveCliente <= 0 Then - CveCliente = CrearCliente(ObjClientes, Resp, JsonRequest, UsuarioActual) + CveCliente = CrearCliente(TipoDocto, ObjClientes, Resp, JsonRequest, UsuarioActual) End If If CveCliente <= 0 Then @@ -854,19 +974,6 @@ Public Class E141 : Implements IHttpHandler ElseIf ObjFactura.TipoDocto = "Ing" Then - If ObjFactura.Cliente IsNot Nothing AndAlso Not String.IsNullOrEmpty(JsonRequest("invoice_name").ToString()) Then - ObjFactura.Cliente.Nombre = JsonRequest("invoice_name").ToString() - ObjFactura.Cliente.NombreComercial = JsonRequest("invoice_name").ToString() - ObjFactura.Cliente.Direccion = JsonRequest("invoice_address").ToString() - ObjFactura.Cliente.Colonia = "" - ObjFactura.Cliente.NoInt = "" - ObjFactura.Cliente.NoExt = "" - ObjFactura.Cliente.Localidad = JsonRequest("invoice_city").ToString() - ObjFactura.Cliente.Estado = JsonRequest("invoice_state").ToString() - ObjFactura.Cliente.Mail = JsonRequest("invoice_email").ToString() - ObjFactura.Cliente.Telefono = JsonRequest("invoice_phone").ToString() - End If - 'FORMA DE PAGO If JsonRequest("invoice_way_to_pay") Is Nothing Then Resp.TieneError = False @@ -941,10 +1048,73 @@ Public Class E141 : Implements IHttpHandler End If + If ObjFactura.Cliente IsNot Nothing AndAlso TipoDocto = "Ing" Then + + 'DATOS DE CONTACTO + Dim contact_name As String = If(JsonRequest("contact_name") Is Nothing, "", JsonRequest("contact_name").ToString()) + Dim contact_address As String = If(JsonRequest("contact_address") Is Nothing, "", JsonRequest("contact_address").ToString()) + Dim contact_ext_number As String = If(JsonRequest("contact_ext_number") Is Nothing, "", JsonRequest("contact_ext_number").ToString()) + Dim contact_int_number As String = If(JsonRequest("contact_int_number") Is Nothing, "", JsonRequest("contact_int_number").ToString()) + Dim contact_neighborhood As String = If(JsonRequest("contact_neighborhood") Is Nothing, "", JsonRequest("contact_neighborhood").ToString()) + Dim contact_city As String = If(JsonRequest("contact_city") Is Nothing, "", JsonRequest("contact_city").ToString()) + Dim contact_zip_code As String = If(JsonRequest("contact_zip_code") Is Nothing, "", JsonRequest("contact_zip_code").ToString()) + Dim contact_phone As String = If(JsonRequest("contact_phone") Is Nothing, "", JsonRequest("contact_phone").ToString()) + Dim contact_email As String = If(JsonRequest("contact_email") Is Nothing, "", JsonRequest("contact_email").ToString()) + Dim contact_state As String = If(JsonRequest("contact_state") Is Nothing, "", JsonRequest("contact_state").ToString()) + + 'DATOS DE FACTURACION + Dim invoice_rfc As String = If(JsonRequest("invoice_rfc") Is Nothing, "", JsonRequest("invoice_rfc").ToString()) + Dim invoice_name As String = If(JsonRequest("invoice_name") Is Nothing, "", JsonRequest("invoice_name").ToString()) + Dim invoice_address As String = If(JsonRequest("invoice_address") Is Nothing, "", JsonRequest("invoice_address").ToString()) + Dim invoice_city As String = If(JsonRequest("invoice_city") Is Nothing, "", JsonRequest("invoice_city").ToString()) + Dim invoice_state As String = If(JsonRequest("invoice_state") Is Nothing, "", JsonRequest("invoice_state").ToString()) + Dim invoice_email As String = If(JsonRequest("invoice_email") Is Nothing, "", JsonRequest("invoice_email").ToString()) + Dim invoice_phone As String = If(JsonRequest("invoice_phone") Is Nothing, "", JsonRequest("invoice_phone").ToString()) + + Dim CveEstado As Integer = -1 + + ObjFactura.Cliente.RFC = If(Not String.IsNullOrEmpty(invoice_rfc), invoice_rfc, ObjFactura.Cliente.RFC) + ObjFactura.Cliente.Nombre = If(Not String.IsNullOrEmpty(invoice_name), invoice_name, contact_name) + ObjFactura.Cliente.NombreComercial = ObjFactura.Cliente.NombreComercial + ObjFactura.Cliente.Direccion = If(Not String.IsNullOrEmpty(invoice_address), invoice_address, contact_address) + ObjFactura.Cliente.Mail = If(Not String.IsNullOrEmpty(invoice_email), invoice_email, contact_email) + ObjFactura.Cliente.Telefono = If(Not String.IsNullOrEmpty(invoice_phone), invoice_phone, contact_phone) + ObjFactura.Cliente.Localidad = If(Not String.IsNullOrEmpty(invoice_city), invoice_city, contact_city) + ObjFactura.Cliente.Ciudad = ObjFactura.Cliente.Localidad + ObjFactura.Cliente.Estado = If(Not String.IsNullOrEmpty(invoice_state), invoice_state, contact_state) + + If String.IsNullOrEmpty(ObjFactura.Cliente.RFC) Then + Resp.Mensajes.Add("No se ha ingresado un RFC") + Return Nothing + End If + + If String.IsNullOrEmpty(ObjFactura.Cliente.Nombre) Then + Resp.Mensajes.Add("No se ha ingresado un nombre para el cliente") + Return Nothing + End If + + If Not String.IsNullOrEmpty(ObjFactura.Cliente.Estado) Then + CveEstado = GlobalDTEstado("MEX").FiltroPrimeroValor("CveEstado", $"NombreEstado = '{ObjFactura.Cliente.Estado.Trim}'").ToEntero() + + 'SI NO ENCUENTRA EL ESTADO INGRESA EL DE SONORA + If CveEstado <= 0 Then + CveEstado = 26 + End If + Else + CveEstado = 26 + End If + + Dim Cliente = ObjFactura.Cliente + If Not ObjClientes.UpdateClienteNoFrencuente(CveCliente, Cliente.Nombre, Cliente.Direccion, Cliente.NoExt, Cliente.NoInt, Cliente.Colonia, Cliente.Localidad, Cliente.Ciudad, CveEstado, Cliente.RFC, Cliente.CP, Cliente.Telefono, Cliente.Mail, CveSubProyecto, UsuarioActual.CveUsuario, CveEmpresa, "-1", ObjFactura.CveMetodoPago33, ObjFactura.CveFormaPago33) Then + Resp.TieneError = False + Resp.Mensajes.Add("No se puedo actualizar un cliente") + Return Nothing + End If + + End If + ObjFactura.CveAlmacen = GlobalDTAlmacen(CveEmpresa, CveTipoAlmacen:=1).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={CveSubProyecto}").ToEntero() - - 'DETALLES ObjFactura.DtDetalle = CreaDTDetalle(ObjInventario, ObjFactura, Resp, UsuarioActual, JsonRequest) @@ -958,7 +1128,6 @@ Public Class E141 : Implements IHttpHandler End If End If - 'INVENTARIO If TipoDocto = "Ing" Then ObjFactura.DtInventario = ObjFactura.DtDetalle.Copy.FiltraParametros("CveTipoPS = 2") @@ -1235,7 +1404,9 @@ Public Class E141 : Implements IHttpHandler TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String)) TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String)) - TmpDT.Columns.Add("CveTamaño", GetType(Integer)) + TmpDT.Columns.Add("CveTamaño", GetType(Integer)) + + Try Dim ListaPS = JArray.Parse(JsonRequest("details").ToString()) Dim DescuentoTotal As Decimal = JsonRequest("discount").ToString().ToDecimal() @@ -1245,7 +1416,9 @@ Public Class E141 : Implements IHttpHandler For Each JsonPS As JObject In ListaPS Dim Cantidad As Decimal = JsonPS("quantity").ToString.ToDecimal() - Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, Codigo:=JsonPS("product_sku").ToString()).FiltroPrimero("") + Dim CvePS As Integer = GlobalDTPSSimplificado(Codigo:=JsonPS("product_sku").ToString()).FiltroPrimeroValor("CvePS").ToEntero() + + Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") If DrPS Is Nothing Then Retorno.TieneError = True @@ -1487,7 +1660,7 @@ Public Class E141 : Implements IHttpHandler If Resp.CveVenta > 0 Then Respuesta.status = "success" - Respuesta.data = Resp.CveVenta.ToString() + Respuesta.data = Resp.SerieFolio Else TieneError = True End If @@ -1499,6 +1672,8 @@ Public Class E141 : Implements IHttpHandler Next RespuestaError.message = sb.ToString() End If + + ObjFactura.Dispose() Else TieneError = True Dim sb As New StringBuilder() @@ -2077,7 +2252,8 @@ Public Class E141 : Implements IHttpHandler New JProperty("age", 0), New JProperty("gender", 0), New JProperty("address", ""), - New JProperty("code", "") + New JProperty("code", RowVendedor("CodigoVendedor")), + New JProperty("default_branchoffice", RowVendedor("CveSubProyecto")) ) ArrayVendedores.Add(vendedor) @@ -2097,6 +2273,10 @@ Public Class E141 : Implements IHttpHandler End If End If + If CountPeticionesExitosas > 0 Then + Retorno = True + End If + Return Retorno End Function #End Region diff --git a/Bancos/Creditos.aspx.vb b/Bancos/Creditos.aspx.vb index 437d9c1de..708bd7064 100644 --- a/Bancos/Creditos.aspx.vb +++ b/Bancos/Creditos.aspx.vb @@ -983,7 +983,7 @@ Partial Class Bancos_Creditos For Each gvr As GridViewRow In GvTA.Rows If Not ObjCredito.UpdateCreditosDetalle(gvr.DataKey("CveCreditoDetalle").ToString.ToEntero, gvr.FCTextBox("TxtFecha").Text.ToString.ToDate, gvr.FCTextBox("TxtCapital").Text.ToString.ToDouble, gvr.FCTextBox("TxtIntereses").Text.ToString.ToDouble, gvr.FCTextBox("TxtSeguro").Text.ToString.ToDouble, gvr.FCTextBox("TxtIVACapital").Text.ToString.ToDouble, - gvr.FCTextBox("TxtIVAIntereses").Text.ToString.ToDouble, gvr.FCTextBox("TxtIVASeguro").Text.ToString.ToDouble, 1) Then + gvr.FCTextBox("TxtIVAIntereses").Text.ToString.ToDouble, gvr.FCTextBox("TxtIVASeguro").Text.ToString.ToDouble, -1) Then ErrorCredito = True Exit For End If diff --git a/Bancos/DepositosCaja.aspx b/Bancos/DepositosCaja.aspx index 05ca350a2..668920538 100644 --- a/Bancos/DepositosCaja.aspx +++ b/Bancos/DepositosCaja.aspx @@ -85,14 +85,7 @@ @@ -104,15 +97,16 @@
-
- -
- -
- - -
-
+
+ + +
+
+
+ +
+
+
@@ -124,16 +118,41 @@
-
-
-
- Importe seleccionado: $00.00
+ + +
+ + +
+ Seleccionado: $ + 00.00 + +
+
+
+ + +
+ + + + + + +
+
- + @@ -201,6 +220,9 @@ diff --git a/Bancos/DepositosCaja.aspx.vb b/Bancos/DepositosCaja.aspx.vb index d20bfd0df..6d2911286 100644 --- a/Bancos/DepositosCaja.aspx.vb +++ b/Bancos/DepositosCaja.aspx.vb @@ -21,6 +21,8 @@ Partial Class Bancos_DepositosCaja TxtFecha.Text = Now.ToShortDateString txtFechaI.Text = Now.AddDays(-1).ToShortDateString txtFechaF.Text = Now.ToShortDateString + TxtComision.Attributes.Add("onKeyUp", "txtSuma(event);") + CargaCuentas() End If End Sub @@ -35,6 +37,10 @@ Partial Class Bancos_DepositosCaja DdlSubProyectos.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa) DdlSubProyectos.DataBind() DdlSubProyectos.Items.Insert(0, New ListItem("Todos", "-1")) + + DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) + DdlClasificacion.DataBind() + DdlClasificacion.Items.Insert(0, New ListItem("Todos", "-1")) End Sub Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click @@ -56,11 +62,14 @@ Partial Class Bancos_DepositosCaja GvFacturas.DataBind() lblValorTotal.Text = "00.00" divLabelTotal.Visible = True + DivComision.Visible = True End Sub Private Sub BtnDepositar_Click(sender As Object, e As EventArgs) Handles BtnDepositar.Click Dim TotalImporte As Decimal = 0 + Dim TotalImportePrePoliza As Decimal + For Each Gvr As GridViewRow In GvFacturas.Rows If Gvr.FCCheckBox("ChkFactura").Checked Then TotalImporte += Gvr.DataKey("Importe").ToDecimal Next @@ -70,6 +79,14 @@ Partial Class Bancos_DepositosCaja Exit Sub End If + TotalImportePrePoliza = TotalImporte + If TxtComision.Text.ToEntero > 0 Then + TotalImporte = TotalImporte - TxtComision.Text.ToEntero + If DdlSubProyectos.SelectedValue.ToEntero = -1 Or DdlClasificacion.SelectedValue.ToEntero = -1 Then + Alert("Debes Seleccionar un Subproyecto y una Clasificación", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + End If Dim OcurrioError As Boolean = False Dim ObjContabilidad As New ClsContabilidad() @@ -88,7 +105,10 @@ Partial Class Bancos_DepositosCaja Dim CveCuentaBancariaDestino As Integer = 0 Dim drOrigen As DataRow = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveCuenta:=DdlCajaChica.SelectedValue.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("") Dim drDestino As DataRow = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveCuenta:=DdlCuentaDeposito.SelectedValue.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("") - + Dim CveSubProyecto As Integer = 0 + Dim CveClasificacion As Integer = 0 + Dim documentos As String = "Los Depósitos se realizaron exitósamente

" + Dim imprimirFolios As String = "" If drOrigen IsNot Nothing Then CveMoneda = drOrigen("CveMoneda").ToString.ToEntero IdCuentaBancariaOrigen = drOrigen("IdCtaContable").ToString.ToEntero @@ -101,7 +121,9 @@ Partial Class Bancos_DepositosCaja CveCuentaBancariaDestino = drDestino("IdCtaContableSIG").ToString.ToEntero End If - NuevaCvePrePoliza = ObjContabilidad.AddPrePolizas("Vta", 13, TotalImporte, TotalImporte, CveMoneda, Fecha, "Depósito Bancario", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + NuevaCvePrePoliza = ObjContabilidad.AddPrePolizas("Vta", 13, TotalImportePrePoliza, TotalImportePrePoliza, CveMoneda, Fecha, "Depósito Bancario", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + + 'Salida de Caja Chica FolioIE = ObjBancos.GetNextFolio(DdlCajaChica.SelectedValue.ToEntero, 2) @@ -110,42 +132,59 @@ Partial Class Bancos_DepositosCaja End If CveIEOrigen = ObjBancos.AddBancos_IE(DdlCajaChica.SelectedValue.ToEntero, 2, Fecha, FolioIE.ToString, "Depósito Bancario", TotalImporte, CveMoneda, 1, "Depósito Bancario", "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - - 'Entrada a Bancos - FolioIE = ObjBancos.GetNextFolio(DdlCuentaDeposito.SelectedValue.ToEntero, 8) - If Not FolioIE > 0 Then - OcurrioError = True + If TxtComision.Text.ToEntero > 0 Then + CveSubProyecto = DdlSubProyectos.SelectedValue.ToEntero + CveClasificacion = DdlClasificacion.SelectedValue.ToEntero + If ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TotalImporte, "Depósito Bancario", 30, "Depósito Bancario", Fecha, IdCuentaBancariaOrigen, -1, CveIE:=CveIEOrigen, ImporteMX:=TotalImporte * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then + If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TxtComision.Text.ToEntero, "Comisión", 78, "Depósito Bancario", Fecha, IdCuentaBancariaOrigen, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, ImporteMX:=TxtComision.Text.ToEntero * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then + OcurrioError = True + End If + Else OcurrioError = True + End If + Else + If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TotalImporte, "Depósito Bancario", 30, "Depósito Bancario", Fecha, IdCuentaBancariaOrigen, -1, CveIE:=CveIEOrigen, ImporteMX:=TotalImporte * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then + OcurrioError = True + End If End If - CveIEDestino = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, 8, Fecha, FolioIE.ToString, "Depósito Bancario", TotalImporte, CveMoneda, 1, "Depósito Bancario", "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - For Each Gvr As GridViewRow In GvFacturas.Rows If Gvr.FCCheckBox("ChkFactura").Checked Then 'Datos de las Nuevas PrePolizas + 'Entrada a Bancos Dim Importe As Double = Gvr.DataKey("Importe").ToDouble + Dim SerieFolio As String = Gvr.DataKey("SerieFolio").ToString 'Datos de las Prepolizas A Cancelar Dim CveIE As Integer = Gvr.DataKey("CveIE").ToEntero Dim CveVenta As Integer = Gvr.DataKey("CveVenta").ToEntero Dim CvePrePoliza As Integer = Gvr.DataKey("CvePrePoliza").ToEntero + FolioIE = ObjBancos.GetNextFolio(DdlCuentaDeposito.SelectedValue.ToEntero, 8) + If Not FolioIE > 0 Then + OcurrioError = True + End If + CveIEDestino = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, 8, Fecha, FolioIE.ToString, "Depósito Bancario", Importe, CveMoneda, 1, "Depósito Bancario", "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + + + If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, False, Importe.ToDecimal, SerieFolio, 30, "Depósito Bancario", Fecha, IdCuentaBancariaDestino, -1, CveIE:=CveIEDestino, ImporteMX:=Importe.ToDecimal * TipoCambio, CveCuenta:=CveCuentaBancariaDestino) Then + OcurrioError = True + End If + 'Asignamos la cuenta Deposito If Not ObjBancos.UpdateBancos_IECuentaDeposito(CveIEDestino, CveIE) Then OcurrioError = True End If - + Dim StrEncript As String = Encripta($"OP=DC&CveIE={CveIEDestino}&CuentaCaja={DdlCajaChica.SelectedItem.Text}&CuentaDepo={DdlCuentaDeposito.SelectedItem.Text}") + documentos += String.Format("Documento {1}     ", CveIEDestino.ToString, SerieFolio) + documentos += String.Format("Imprimir {1}

", StrEncript, SerieFolio) End If + Next - If ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, TotalImporte, "Depósito Bancario", 30, "Depósito Bancario", Fecha, IdCuentaBancariaOrigen, -1, CveIE:=CveIEOrigen, ImporteMX:=TotalImporte * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then - If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, "Depósito Bancario", 30, "Depósito Bancario", Fecha, IdCuentaBancariaDestino, -1, CveIE:=CveIEDestino, ImporteMX:=TotalImporte * TipoCambio, CveCuenta:=CveCuentaBancariaDestino) Then - OcurrioError = True - End If - Else OcurrioError = True - End If + If OcurrioError Then ObjContabilidad.RollBack() @@ -153,12 +192,8 @@ Partial Class Bancos_DepositosCaja Else ObjContabilidad.Commit() CargaDatos() - Dim SbMensaje As New StringBuilder() - Dim StrEncript As String = Encripta($"OP=DC&CveIE={CveIEDestino}&CuentaCaja={DdlCajaChica.SelectedItem.Text}&CuentaDepo={DdlCuentaDeposito.SelectedItem.Text}") - SbMensaje.Append("Los Depósitos se realizaron exitósamente

") - SbMensaje.AppendFormat("Documento     ", CveIEDestino) - SbMensaje.AppendFormat("Imprimir ", StrEncript) - Alert(SbMensaje.ToString) + + Alert(documentos.ToString) End If diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb index 8cdfd3dcb..d2f2a0233 100644 --- a/Bancos/IE.aspx.vb +++ b/Bancos/IE.aspx.vb @@ -6676,5 +6676,6 @@ Partial Class Bancos_IE End Sub Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now End Sub End Class \ No newline at end of file diff --git a/Bancos/PopIECompras.aspx.vb b/Bancos/PopIECompras.aspx.vb index 06c24cb3b..925566892 100644 --- a/Bancos/PopIECompras.aspx.vb +++ b/Bancos/PopIECompras.aspx.vb @@ -3647,6 +3647,8 @@ Partial Class Bancos_PopIECompras Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now + End Sub diff --git a/Bancos/PopIEVentas.aspx.vb b/Bancos/PopIEVentas.aspx.vb index 178c34ab4..9b6ae3795 100644 --- a/Bancos/PopIEVentas.aspx.vb +++ b/Bancos/PopIEVentas.aspx.vb @@ -3665,6 +3665,8 @@ Partial Class Bancos_PopIEVentas #End Region Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now + End Sub diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb index 8997a0693..6f9274c1e 100644 --- a/Bancos/ProveedoresAbonar.aspx.vb +++ b/Bancos/ProveedoresAbonar.aspx.vb @@ -3390,6 +3390,8 @@ Partial Class Bancos_ProveedoresAbonar Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now + End Sub diff --git a/Bancos/RepComplementoPago.aspx.vb b/Bancos/RepComplementoPago.aspx.vb index ba740b104..79693c956 100644 --- a/Bancos/RepComplementoPago.aspx.vb +++ b/Bancos/RepComplementoPago.aspx.vb @@ -72,23 +72,25 @@ Partial Class Bancos_RepComplementoPago Dim Banco As New ClsBancos Banco.IniciaTransacSQL() - - If Banco.GeneraTimbrePago(gvr.DataKey("CveIE").ToEntero, -1, UsuarioActual, FechaTimbrado:=FechaTimbrado) Then - If Banco.Mensaje = "" Then - Banco.Commit() - PDFReciboDePagos(-1, -1, Banco.CveComplementoPago, False) - Str.AppendFormat("Folio: {0}  ", Banco.ComplementoSerieFolio) - Str.AppendFormat("XML    ", Encripta(String.Format("OP=CompP&EXT=xml&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago))) - Str.AppendFormat("PDF   ", Encripta(String.Format("OP=CompP&EXT=pdf&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago))) - Str.AppendFormat("{1}   {2}
", gvr.DataKey("CveIE"), gvr.DataKey("Folio"), gvr.DataKey("NombreCliente")) - MandaCorreo(Banco.ComplementoSerieFolio, gvr.DataKey("CobranzaCorreo")) + Try + If Banco.GeneraTimbrePago(gvr.DataKey("CveIE").ToEntero, -1, UsuarioActual, FechaTimbrado:=FechaTimbrado) Then + If Banco.Mensaje = "" Then + Banco.Commit() + PDFReciboDePagos(-1, -1, Banco.CveComplementoPago, False) + Str.AppendFormat("Folio: {0}  ", Banco.ComplementoSerieFolio) + Str.AppendFormat("XML    ", Encripta(String.Format("OP=CompP&EXT=xml&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago))) + Str.AppendFormat("PDF   ", Encripta(String.Format("OP=CompP&EXT=pdf&SerieFolio={0}&CveComplementoPago={1}", Banco.ComplementoSerieFolio, Banco.CveComplementoPago))) + Str.AppendFormat("{1}   {2}
", gvr.DataKey("CveIE"), gvr.DataKey("Folio"), gvr.DataKey("NombreCliente")) + MandaCorreo(Banco.ComplementoSerieFolio, gvr.DataKey("CobranzaCorreo")) + End If + Else + Str.AppendFormat("No se genero complemento del Folio {0} por el siguiente motivo: {1}", gvr.DataKey("Folio"), Banco.Mensaje) + Banco.RollBack() End If - - Else - Str.AppendFormat("No se genero complemento del Folio {0} por el siguiente motivo: {1}", gvr.DataKey("Folio"), Banco.Mensaje) + Catch ex As Exception + OnError("Ocurrió un error al generar el complemento de pago", ex) Banco.RollBack() - End If - + End Try Banco.Dispose() End If Next diff --git a/CRM/RepAcercamientosProcesosDetalle.aspx b/CRM/RepAcercamientosProcesosDetalle.aspx index 61d484036..5559826fa 100644 --- a/CRM/RepAcercamientosProcesosDetalle.aspx +++ b/CRM/RepAcercamientosProcesosDetalle.aspx @@ -3,6 +3,7 @@ + + .chkChoice input + { + margin-right: 5px; + } + + cc Reporte Detalle de los Acercamientos Procesos @@ -55,7 +61,15 @@ -
  • +
  • + Personalizar Columnas +
  • +<%--
  • + PDF +
  • +
  • + Excel +
  • --%>
    @@ -248,7 +262,7 @@
    - + @@ -296,10 +310,53 @@ + + + + + + + + + + + + + + + + diff --git a/CRM/RepAcercamientosProcesosDetalle.aspx.cs b/CRM/RepAcercamientosProcesosDetalle.aspx.cs index b33304729..16d7a879a 100644 --- a/CRM/RepAcercamientosProcesosDetalle.aspx.cs +++ b/CRM/RepAcercamientosProcesosDetalle.aspx.cs @@ -196,6 +196,12 @@ public partial class CRM_RepAcercamientosProcesosDetalle : ClsPaginas GVRepAcercamientosDetalle.DataSource = ObjRepA.DtResultados; ObjRepA.Dispose(); GVRepAcercamientosDetalle.DataBind(); + this.GVRepAcercamientosDetalle.Columns[9].Visible = false; + this.GVRepAcercamientosDetalle.Columns[10].Visible = false; + this.GVRepAcercamientosDetalle.Columns[11].Visible = false; + this.GVRepAcercamientosDetalle.Columns[12].Visible = false; + this.GVRepAcercamientosDetalle.Columns[13].Visible = false; + this.GVRepAcercamientosDetalle.Columns[14].Visible = false; upDatosRepA.Update(); } @@ -225,4 +231,45 @@ public partial class CRM_RepAcercamientosProcesosDetalle : ClsPaginas RcveProbabilidadAcercamiento = DdlProbabilidad.SelectedValue.ToEntero(); cargarDatos(); } + + protected void GVRepAcercamientosDetalle_RowDataBound(object sender, GridViewRowEventArgs e) + { + if (e.Row.RowType == DataControlRowType.DataRow) + { + if (e.Row.FCLabel("lblPrioridad").Text.ToEntero() == 1) + { + e.Row.FCLabel("lblPrioridad").Text = "Baja"; + } + else if (e.Row.FCLabel("lblPrioridad").Text.ToEntero() == 2) + { + e.Row.FCLabel("lblPrioridad").Text = "Media"; + } + else if (e.Row.FCLabel("lblPrioridad").Text.ToEntero() == 3) + { + e.Row.FCLabel("lblPrioridad").Text = "Alta"; + } + } + } + protected void LnkEditargv_Click(object sender, EventArgs e) + { + + RegistraScript("$('#ModalEditar').modal('show')"); + } + + protected void GuardarEditargv_Click(object sender, EventArgs e) + { + foreach (ListItem item in CBLEditargv.Items) + { + if (item.Value.ToEntero() == 1) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[9].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[9].Visible = false; } } + if (item.Value.ToEntero() == 2) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[10].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[10].Visible = false; } } + if (item.Value.ToEntero() == 3) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[11].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[11].Visible = false; } } + if (item.Value.ToEntero() == 4) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[12].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[12].Visible = false; } } + if (item.Value.ToEntero() == 5) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[13].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[13].Visible = false; } } + if (item.Value.ToEntero() == 6) { if (item.Selected) { this.GVRepAcercamientosDetalle.Columns[14].Visible = true; } else { this.GVRepAcercamientosDetalle.Columns[14].Visible = false; } } + } + upDatosRepA.Update(); + RegistraScript("$('#ModalEditar').modal('hide')"); + + } + } \ No newline at end of file diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index d090cd757..ef1b08555 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -1449,6 +1449,8 @@ Partial Class Compras_Compras DivEsNoDeducible.Visible = True DivActualizarVincular.Visible = True + + Else ViewState("CveProveedor") = -1 @@ -1824,7 +1826,7 @@ Partial Class Compras_Compras DdlTipoCompra.Items.Clear() DdlTipoCompra.Items.Add(New ListItem("Seleccione", "-1")) DdlTipoCompra.Items.Add(New ListItem("NC Con Productos", "6")) - DdlTipoCompra.Items.Add(New ListItem("Apoyo Logístico", "9")) + DdlTipoCompra.Items.Add(New ListItem("Apoyo Logístico", "9")) DdlTipoCompra.Items.Add(New ListItem("NC Por Devolución", "11")) @@ -2708,9 +2710,9 @@ Partial Class Compras_Compras TmpDT.Columns.Add("CveContrato", GetType(Integer)) TmpDT.Columns.Add("DifPSSat", GetType(Integer)) - - - + + + If Not TmpDT.Columns.Contains("CveContratoDetalle") Then TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer)) End If @@ -6771,13 +6773,12 @@ Partial Class Compras_Compras Dim CveSubProyecto69 As Integer = TmpDT.MAX("CveSubProyecto").ToEntero If CveSubProyecto69 <= 0 Then - Alert("Debe de asignar un sub proyecto o centro de constos", TipoMensaje.MsgAdvertencia) + Alert("Debe de asignar un sub proyecto o centro de costos", TipoMensaje.MsgAdvertencia) ErrorPrepoliza = True Exit For End If IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {CveClasificacionCostoOC}").ToString.ToEntero - CveCuenta = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaGastoSIG", $"CveClasificacion = {CveClasificacionCostoOC}").ToString.ToEntero If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, SumatoriaOCINV, Referencia, 69, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveClasificacion:=CveClasificacionCostoOC, ImporteMX:=SumatoriaOCINV, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza, CveSubProyecto:=CveSubProyecto69) Then ErrorPrepoliza = True Exit For @@ -7300,6 +7301,10 @@ Partial Class Compras_Compras importeMovimiento = importeMovimiento.Abs.RoundSQL() importeMN = importeMovimiento If importeMovimiento <> 0 Then + + + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza, CveSubProyecto:=CveSubProyecto) Then ErrorPrepoliza = True Exit For @@ -7483,7 +7488,9 @@ Partial Class Compras_Compras importeMovimiento = importeMovimiento.Abs.RoundSQL() importeMN = importeMovimiento If importeMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then + + Dim CveSubProyecto6465 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto6465, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then ErrorPrepoliza = True Exit For End If @@ -7577,7 +7584,9 @@ Partial Class Compras_Compras importeMovimiento = importeMovimiento.Abs.RoundSQL() importeMN = importeMovimiento If importeMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then + Dim CveSubProyecto6465 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto6465, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then + ErrorPrepoliza = True Exit For End If @@ -7673,7 +7682,8 @@ Partial Class Compras_Compras importeFluctuacion = importeFluctuacion.Abs.RoundSQL() If importeFluctuacion <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeFluctuacion, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeFluctuacion, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then + Dim CveSubProyecto6465 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeFluctuacion, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto6465, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeFluctuacion, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza) Then ErrorPrepoliza = True Exit For End If @@ -9035,9 +9045,14 @@ Partial Class Compras_Compras CveCuenta = UsuarioActual.Empresa.CveCuentaPerdidaCambiaria End If + + + + importeFluctuacion = importeFluctuacion.Abs.RoundSQL() If importeFluctuacion <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeFluctuacion, "", ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeFluctuacion, CvePrePolizaOriginal:=CvePrePolizaNueva, ImporteME:=0, CveCuenta:=CveCuenta) Then + Dim CveSubProyecto6465 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, importeFluctuacion, "", ConceptoContable, ConceptoPartida, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto6465, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeFluctuacion, CvePrePolizaOriginal:=CvePrePolizaNueva, ImporteME:=0, CveCuenta:=CveCuenta) Then ErrorMovtosCxP = 1 End If End If @@ -9459,8 +9474,13 @@ Partial Class Compras_Compras importeMN = ImporteMovimiento End If + + + If ImporteMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta) Then + + Dim CveSubProyecto64 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto64, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta) Then ErrorMovtosCxP = 1 Exit For End If @@ -9483,7 +9503,8 @@ Partial Class Compras_Compras End If If ImporteMovimiento <> 0 Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta) Then + Dim CveSubProyecto65 As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaNueva, TipoMovimiento, ImporteMovimiento, Concepto, ConceptoContable, Concepto, Fecha, IdCtaContable, -1, CveCompra:=CveCompra, CveSubProyecto:=CveSubProyecto65, CveProveedor:=CveProveedor, CveIE:=CveIE, ImporteMX:=importeMN, CvePrePolizaOriginal:=CvePrePoliza, ImporteME:=0, CveCuenta:=CveCuenta) Then ErrorMovtosCxP = 1 Exit For End If @@ -17841,7 +17862,7 @@ Partial Class Compras_Compras If UsuarioActual.Empresa.Tipo_CentroCosto <> 1 And UsuarioActual.Empresa.Tipo_CentroCosto <> 2 Then DdlProyecto.SelectedValueExist(GvRow.DataKey("CveProyecto")) - Else + Else DdlProyecto.SelectedValueExist("-1") End If @@ -18049,7 +18070,7 @@ Partial Class Compras_Compras DdlClasificacion.SelectedValueExist(PS("CveClasificacion").ToString) Else Alert("El Productos/Servicio no tiene asignada una Clasificación.") - End If + End If UPPUM.Update() UpPSS.Update() @@ -19148,6 +19169,7 @@ Partial Class Compras_Compras CargaAnticipos(CveProveedor, If(ChkNCInv.Checked, "NC", "-1")) UpAnticipos.Update() End Sub + Private Sub CargaNCINV(Optional ShowAllPendientes As Boolean = False) Dim SaldoAnticipo = 0.0 @@ -20198,7 +20220,7 @@ Partial Class Compras_Compras Dim drInv As DataRow = DtInvOC.FiltroPrimero("") If drInv IsNot Nothing Then 'sino existe no hay problema, porque puede ser le producto un servicio DrInvOCDiferencias("TipoCambioAjuste") = drInv("TipoCambioAjuste").ToString.ToDecimal - DrInvOCDiferencias("Diferencia") = ((gvr.FCTextBox("TxtPU").Text.ToDecimal * drInv("TipoCambioAjuste").ToString.ToDecimal) - drInv("PU").ToString.ToDecimal) * gvr.FCTextBox("TxtCantidad").Text.ToDecimal 'diferencia * drInv("TipoCambioAjuste").ToString.ToDecimal ' + DrInvOCDiferencias("Diferencia") = ((gvr.FCTextBox("TxtPU").Text.ToDecimal * drInv("TipoCambioAjuste").ToString.ToDecimal) - drInv("PUOriginal").ToString.ToDecimal) * gvr.FCTextBox("TxtCantidad").Text.ToDecimal 'diferencia * drInv("TipoCambioAjuste").ToString.ToDecimal ' DrInvOCDiferencias("CveAlmacen") = drInv("CveAlmacen").ToString.ToEntero DrInvOCDiferencias("CveMovimiento") = drInv("CveMovimiento").ToString.ToEntero DrInvOCDiferencias("ConceptoSalida") = drInv("ConceptoSalida").ToString.ToEntero @@ -20306,20 +20328,13 @@ Partial Class Compras_Compras TCInvOC = DrDiferencias("TipoCambioAjuste").ToString.ToDecimal IdCtaContableAlmacen = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", $"CveAlmacen = {DrDiferencias("CveAlmacen").ToString.ToEntero}").ToEntero - CveCuentaAlmacen = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContableSIG", $"CveAlmacen = {DrDiferencias("CveAlmacen").ToString.ToEntero}").ToEntero Dim CveClasificacionCostoOC = TmpDT.FiltroPrimeroValor("CveClasificacion", "ISNULL(TipoAF, 0) <> 2 And ISNULL(CveAlmacen, 0) = 0 And ISNULL(AplicaCostoIndirecto, 0) <> 1 And ISNULL(CveTipoPS, 0) = 2").ToEntero Dim IdCtaContable69 As Integer = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {CveClasificacionCostoOC}").ToString.ToEntero - '' CveCuenta = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaGastoSIG", $"CveClasificacion = {CveClasificacionCostoOC}").ToString.ToEntero - Dim CveSubProyecto As Integer = TmpDT.MAX("CveSubProyecto").ToEntero - - - If DiferenciaInvOC.RoundAD() <> 0 Then - - + If DiferenciaInvOC.RoundSQL() <> 0 Then If CveSubProyecto <= 0 Then Alert("Debe de asignar un sub proyecto o centro de constos.", TipoMensaje.MsgAdvertencia) diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index 9ec3b4e3e..29ddcca3a 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -456,7 +456,11 @@ Partial Class PopUpVerFactura If UrlParametros("EXT").ToString.ToUpper = "PDF" Then If UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero > 0 Then - PDFReciboDePagos(-1, UrlParametros("CVEIE").ToString.ToEntero, UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero, False) 'genero el documento de no existir + Dim CveIE As Integer = -1 + If UrlParametros("CVEIE") IsNot Nothing Then + CveIE = UrlParametros("CVEIE").ToString.ToEntero + End If + PDFReciboDePagos(-1, CveIE, UrlParametros("CVECOMPLEMENTOPAGO").ToString.ToEntero, False) 'genero el documento de no existir End If End If diff --git a/Compras/ReembolsosComprobaciones.aspx.vb b/Compras/ReembolsosComprobaciones.aspx.vb index 9c1333df2..dc1c9f30e 100644 --- a/Compras/ReembolsosComprobaciones.aspx.vb +++ b/Compras/ReembolsosComprobaciones.aspx.vb @@ -431,6 +431,10 @@ Partial Class Compras_ReembolsosComprobaciones Next + 'rmf. codigo temporal + If UsuarioActual.CveEmpresa.Contiene(13, 83) Then + ValFechaDocumento = False + End If If ValFechaDocumento Then Alert(FoliosFechasValFechaDocumento.ToString, TipoMensaje.MsgAdvertencia) @@ -2064,5 +2068,7 @@ Partial Class Compras_ReembolsosComprobaciones Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now + End Sub End Class diff --git a/Compras/eFacturas.aspx b/Compras/eFacturas.aspx index cde36d83a..9b2594e88 100644 --- a/Compras/eFacturas.aspx +++ b/Compras/eFacturas.aspx @@ -216,10 +216,20 @@ - + <%-- + + + + +
    --%> + <%----%> + + +
    + diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb index b59eeb44c..0c39802b5 100644 --- a/Compras/eFacturas.aspx.vb +++ b/Compras/eFacturas.aspx.vb @@ -719,9 +719,15 @@ Partial Class Compras_eFacturas If UsuarioActual.Sesion("eFact-FF").ToString <> "" Then txtFechaF.Text = UsuarioActual.Sesion("eFact-FF").ToString.Trim If UsuarioActual.CveUsuario = 100 Then lbDescargar.Visible = True - If UsuarioActual.TienePermisoProceso(81) Then GvD.Columns(11).Visible = True : GvD.Columns(12).Visible = True - If UsuarioActual.TienePermisoProceso(206) Then GvD.Columns(10).Visible = False - If UsuarioActual.Empresa.Funcionalidad(156) = "1" Then GvD.Columns(5).Visible = True + 'If UsuarioActual.TienePermisoProceso(81) Then GvD.Columns(11).Visible = True : GvD.Columns(12).Visible = True + 'If UsuarioActual.TienePermisoProceso(206) Then GvD.Columns(10).Visible = False + 'If UsuarioActual.Empresa.Funcionalidad(156) = "1" Then GvD.Columns(5).Visible = True + + If UsuarioActual.TienePermisoProceso(81) Then GvD.Columns(12).Visible = True : GvD.Columns(13).Visible = True + If UsuarioActual.TienePermisoProceso(206) Then GvD.Columns(11).Visible = False + If UsuarioActual.Empresa.Funcionalidad(156) = "1" Then GvD.Columns(6).Visible = True + + CargaGvBitacora() CargaDatos() End If @@ -913,6 +919,11 @@ Partial Class Compras_eFacturas #Region "G V D A T O S" Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvD.RowDataBound + + If e.Row.RowType = DataControlRowType.Header Then + e.Row.Cells(4).Attributes.Add("data-tipodato", "numeric") + End If + If e.Row.RowType = DataControlRowType.DataRow Then e.Row.FindControl("lnkRegenerarPDF").Visible = True ' (UsuarioActual.CveRol = 1) 'e.Row.FindControl("lnkDownPdf").Visible = (UsuarioActual.CveRol = 1) @@ -937,6 +948,13 @@ Partial Class Compras_eFacturas e.Row.Cells(2).Attributes.Add("data-order", e.Row.DBCampo("FechaFactura").ToDate.Ticks.ToString) + + 'e.Row.Cells(4).Attributes.Add("data-order", Convert.ToInt64(e.Row.DBCampo("Total").ToDecimal).ToString.PadLeft(10, "0"c)) + + + + + If File.Exists(String.Format("{0}{1}\{2}", Destino, e.Row.DBCampo("RFCDe"), e.Row.DBCampo("XML"))) Then e.Row.FCLiteral("LtlXML").Text = String.Format("Ver", HttpUtility.UrlEncode(e.Row.DBCampo("RFCDe")), HttpUtility.UrlEncode(e.Row.DBCampo("XML"))) If e.Row.DBCampo("TipoComprobante") = "P" Then diff --git a/Contabilidad2/CatCuentas.aspx b/Contabilidad2/CatCuentas.aspx index 9f026eb56..d4db0e496 100644 --- a/Contabilidad2/CatCuentas.aspx +++ b/Contabilidad2/CatCuentas.aspx @@ -185,13 +185,6 @@
    - -
    -
    -
    - (0% - 100% ) -
    -
    @@ -222,11 +215,18 @@
    + +
    +
    +
    + (0% - 100% ) +
    +

    - - + + @@ -270,5 +270,21 @@ buscararbolito('C_ArbolCuentas_Abuscar', 'C_ArbolCuentas_miarbol') }); }); + + function Afectable(btn) { + debugger; + $('#C_nuevacuenta').attr('data-toggle', 'confirmation'); + $('#C_nuevacuenta').attr('data-popout', 'true'); + $('#C_nuevacuenta').attr('data-original-title', 'Verifique los datos para continuar.

    ¿Seguro de registrar esta cuenta nueva?
    '); + $('#C_nuevacuenta').attr('data-btn-ok-label', 'si'); + } + + function NoAfectable() { + debugger; + $('#C_nuevacuenta').attr('data-toggle', ''); + $('#C_nuevacuenta').attr('data-popout', ''); + $('#C_nuevacuenta').attr('data-original-title', ''); + $('#C_nuevacuenta').attr('data-btn-ok-label', ''); + } diff --git a/Contabilidad2/CatCuentas.aspx.vb b/Contabilidad2/CatCuentas.aspx.vb index 4c55dd786..f114656ed 100644 --- a/Contabilidad2/CatCuentas.aspx.vb +++ b/Contabilidad2/CatCuentas.aspx.vb @@ -206,7 +206,11 @@ Partial Class Contabilidad2_CatCuentas End If If Afectable Then + RegistraScript(String.Format("Afectable({0});", nuevacuenta.ClientID)) Alert("Se va crear una subcuenta en una cuenta afectable", TipoMensaje.MsgAdvertencia) + Else + RegistraScript("NoAfectable();") + End If TxtCuenta.Enabled = True @@ -406,15 +410,21 @@ Partial Class Contabilidad2_CatCuentas Dim CveTipoSaldo As Integer = 0 Dim PorcentajeIVA As Decimal = -1 Dim drt As DataRow - Dim CveConceptoAdmin As Integer = -1 - Dim CveProveedor As Integer = -1 - Dim CveCliente As Integer = -1 - Dim CveClasificacion As Integer = -1 - Dim PorcentajeImpuesto As Decimal = -1 - Dim CveBancoCuenta As Integer = -1 - Dim CveAlmacen As Integer = -1 - Dim CvePersonal As Integer = -1 - + Dim CveConceptoAdmin As Integer + Dim CveProveedor As Integer + Dim CveCliente As Integer + Dim CveClasificacion As Integer + Dim PorcentajeImpuesto As Decimal + Dim CveBancoCuenta As Integer + 'Dim CveAlmacen As Integer = -1 + 'Dim CvePersonal As Integer = -1 + Dim NombreCuenta As String + Dim TipoCuenta As String + Dim CuentaMayor As Integer + Dim CveMoneda As Integer + Dim DigAgrup As Integer + Dim CveAgrupadorSat As Integer + Dim NomIdioma As String If DdlAgrupadorSAT.SelectedValue.ToEntero > 0 Then If CveConceptoContable > 0 Then @@ -438,19 +448,28 @@ Partial Class Contabilidad2_CatCuentas CveBancoCuenta = IIf(drt("CveBancoCuenta").ToString.ToEntero = 0, -1, drt("CveBancoCuenta").ToString.ToEntero) 'CveAlmacen = IIf(drt("CveAlmacen").ToString.ToEntero = 0, -1, drt("CveAlmacen").ToString.ToEntero) 'CvePersonal = IIf(drt("CvePersonal").ToString.ToEntero = 0, -1, drt("CvePersonal").ToString.ToEntero) - End If + NombreCuenta = IIf(drt("Nombre").ToString = "", "", drt("Nombre").ToString.ToEntero) + TipoCuenta = IIf(drt("Tipo").ToString = "", "", drt("Tipo").ToString.ToEntero) + CuentaMayor = IIf(drt("CtaMayor").ToString.ToEntero = 0, 0, drt("CtaMayor").ToString.ToEntero) + CveMoneda = IIf(drt("CveMoneda").ToString.ToEntero = -1, -1, drt("CveMoneda").ToString.ToEntero) + DigAgrup = IIf(drt("DigAgrup").ToString.ToEntero = -1, -1, drt("DigAgrup").ToString.ToEntero) + CveAgrupadorSat = IIf(drt("CveAgrupadorSAT").ToString.ToEntero = 0, -1, drt("CveAgrupadorSAT").ToString.ToEntero) + NomIdioma = IIf(drt("NomIdioma").ToString = "", "", drt("NomIdioma").ToString.ToEntero) - idnew = ObjConta.AddCuenta(CvePadre, TxtCuenta.Text.Replace("-", ""), Tnombre.Text, DTcuenta.SelectedValue.ToString, DcuentaMayor.SelectedValue.ToString.ToEntero, - DdlMoneda.SelectedValue.ToEntero, TxtDigAgrup.Text.ToEntero, DdlAgrupadorSAT.SelectedValue.ToEntero, TxtNomIngles.Text.ToString, CveConceptoAdmin:=CveConceptoAdmin, CveProveedor:=CveProveedor, CveCliente:=CveCliente, - CveClasificacion:=CveClasificacion, PorcentajeImpuesto:=PorcentajeImpuesto, CveBancoCuenta:=CveBancoCuenta) - If idnew > 0 Then - If ObjConta.UpdateTraspasoPrepoliza(UsuarioActual.CveEmpresa, IDSelected, idnew) Then - ObjConta.RollBack() - ObjConta.Dispose() - Exit Sub + idnew = ObjConta.AddCuenta(CvePadre, TxtCuenta.Text.Replace("-", ""), Tnombre.Text, DTcuenta.SelectedValue.ToString, DcuentaMayor.SelectedValue.ToString.ToEntero, + DdlMoneda.SelectedValue.ToEntero, TxtDigAgrup.Text.ToEntero, DdlAgrupadorSAT.SelectedValue.ToEntero, TxtNomIngles.Text.ToString, CveConceptoAdmin:=CveConceptoAdmin, CveProveedor:=CveProveedor, CveCliente:=CveCliente, + CveClasificacion:=CveClasificacion, PorcentajeImpuesto:=PorcentajeImpuesto, CveBancoCuenta:=CveBancoCuenta) + If idnew > 0 Then + If Not ObjConta.UpdateTraspasoPrepoliza(UsuarioActual.CveEmpresa, IDSelected, idnew) Then + If ObjConta.UpdateCuenta(IDSelected.ToEntero, NombreCuenta, TipoCuenta, CuentaMayor, CveMoneda, + DigAgrup, CveAgrupadorSat, NomIdioma) Then + ObjConta.RollBack() + ObjConta.Dispose() + Exit Sub + End If + End If End If End If - Else idnew = ObjConta.AddCuenta(IDSelected, TxtCuenta.Text.Replace("-", ""), Tnombre.Text, DTcuenta.SelectedValue.ToString, DcuentaMayor.SelectedValue.ToString.ToEntero, DdlMoneda.SelectedValue.ToEntero, TxtDigAgrup.Text.ToEntero, DdlAgrupadorSAT.SelectedValue.ToEntero, TxtNomIngles.Text.ToString, PorcentajeImpuesto:=PorcentajeIVA) @@ -640,7 +659,7 @@ Partial Class Contabilidad2_CatCuentas pnlOpcion2.Visible = True pnlOpcion3.Visible = True If DdlClasificacion.Items.Count < 2 Then - DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa, UsoClasificacion:=1) + DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) DdlClasificacion.DataBind() End If Case 4 diff --git a/GPS/Rastreo.aspx.vb b/GPS/Rastreo.aspx.vb index 154536392..9200f00dd 100644 --- a/GPS/Rastreo.aspx.vb +++ b/GPS/Rastreo.aspx.vb @@ -1578,22 +1578,39 @@ Partial Class GPS_Rastreo If Opcion = "KM" Then If GVKm.Rows.Count > 0 Then - RutaReporte = "Empresas/Grales/ReportesProgramados/RPTKmRecorridos.rdlc" - NombreReporte = "ReporteKMRecorridos" + If Format = "PDF" Then + RutaReporte = "Empresas/Grales/ReportesProgramados/RPTKmRecorridos.rdlc" + NombreReporte = "ReporteKMRecorridos" + + Try + Dim RptParametro As New List(Of ReportParameter) + RptParametro.Add(New ReportParameter("FechaInicio", FechaI.ToString)) + RptParametro.Add(New ReportParameter("FechaFin", FechaF.ToString)) + RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario)) + RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString)) + + retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC") + + ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format) + Catch ex As Exception + GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex)) + End Try + + Else + Dim filtros As String = $"Fechas: {FechaI.ToString("dd/MM/yyyy")} a {FechaF.ToString("dd/MM/yyyy")}" + + If DtDatos.Rows.Count > 0 AndAlso String.IsNullOrEmpty(DtDatos.Rows(0)("Vehiculo").ToString()) Then + DtDatos.Rows(0)("Vehiculo") = "Total Kilometros Recorridos" + End If + + DtDatos.Columns.RemoveAt(0) + DtDatos.Columns("Vehiculo").ColumnName = "Vehículo" + DtDatos.Columns("TiempoOperativo").ColumnName = "Tiempo Operativo" + DtDatos.Columns("Dist").ColumnName = "Kilometros Recorridos" + + ImprimirExcelG(DtDatos, "ReporteKMRecorridos.xlsx", "Reporte de Kilometros Recorridos", filtros, NombreHoja:="RepKM") + End If - Try - Dim RptParametro As New List(Of ReportParameter) - RptParametro.Add(New ReportParameter("FechaInicio", FechaI.ToString)) - RptParametro.Add(New ReportParameter("FechaFin", FechaF.ToString)) - RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario)) - RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString)) - - retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC") - - ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format) - Catch ex As Exception - GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex)) - End Try Else Alert("No se pudo imprimir el pdf, ya que no se ha hecho una consulta, o ésta no arrojó resultados.", TipoMensaje.MsgInformacion) End If @@ -1737,8 +1754,16 @@ Partial Class GPS_Rastreo GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex)) End Try - retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC") - ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format) + If Opcion = "Idle" AndAlso Format = "EXCEL" Then + Dim filtros As String = $"Fechas: {FechaI.ToString("dd/MM/yyyy")} a {FechaF.ToString("dd/MM/yyyy")}, Tiempo Muerto: {TxtMinutos.Text} minutos" + + ImprimirExcelG(DtDatos, "ReporteKMRecorridos.xlsx", "Reporte de KM Recorridos", filtros) + Else + retorno = StreamPDF(RutaReporte, DtDatos, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC") + ImprimirbytesPDF(retorno, $"{NombreReporte}{Date.Now.ToShortDateString}", Format) + End If + + DtDatos.Clear() Else Alert("No se pudo imprimir el pdf, ya que no se ha hecho una consulta, o ésta no arrojó resultados.", TipoMensaje.MsgInformacion) @@ -1785,7 +1810,7 @@ Partial Class GPS_Rastreo SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) Dim FileExcel As ExcelFile = New ExcelFile Dim Dt = DtPosiciones.Copy() - Dt.Columns.Add("Direccion", GetType(String)) + Dt.Columns.Add("Dirección", GetType(String)) Dt.Columns.Remove("CveDispositivo") Dt.Columns.Remove("Evento") Dt.Columns.Remove("Icono") @@ -1797,11 +1822,42 @@ Partial Class GPS_Rastreo Dt.Columns.Remove("Posicion") For Each Dir As JObject In Direcciones - Dt.Rows(Dir("Indice").ToEntero())("Direccion") = Dir("Direccion").ToString() + Dt.Rows(Dir("Indice").ToEntero())("Dirección") = Dir("Direccion").ToString() Next - Dim item = FileExcel.Worksheets.Add("Última Posición") - item.InsertDataTable(Dt, New InsertDataTableOptions() With + Dt.Columns("Vehiculo").ColumnName = "Vehículo" + Dt.Columns("Velocidad").ColumnName = "Velocidad (KM/H)" + + ImprimirExcelG(Dt, FileName, "Última Posición", "", NombreHoja:="UltimaPosicion") + + 'Dim item = FileExcel.Worksheets.Add("Última Posición") + 'item.InsertDataTable(Dt, New InsertDataTableOptions() With + ' { + ' .ColumnHeaders = True, + ' .StartRow = 0, + ' .StartColumn = 0 + ' }) + 'item.Rows(0).Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(75, 119, 190), SpreadsheetColor.FromArgb(255, 255, 255)) + 'item.Rows(0).Style.Font.Color = SpreadsheetColor.FromArgb(255, 255, 255) + + 'Dim columnCount = item.CalculateMaxUsedColumns() + 'For i = 0 To columnCount + ' item.Columns(i).AutoFit(1, item.Rows(i), item.Rows(item.Rows.Count - 1)) + 'Next + 'FileExcel.Save(Me.Response, FileName, SaveOptions.XlsxDefault) + + End Sub + + + Private Sub ImprimirExcelG(DtDatos As DataTable, Archivo As String, Titulo As String, Filtros As String, Optional NombreHoja As String = "Hoja1") + SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) + Dim excel As ExcelFile = New ExcelFile + + Dim TotalRowHeader As Integer = 8 + Dim TotalRowFooter As Integer = 2 + + Dim item = excel.Worksheets.Add(NombreHoja) + item.InsertDataTable(DtDatos, New InsertDataTableOptions() With { .ColumnHeaders = True, .StartRow = 0, @@ -1813,9 +1869,127 @@ Partial Class GPS_Rastreo Dim columnCount = item.CalculateMaxUsedColumns() For i = 0 To columnCount item.Columns(i).AutoFit(1, item.Rows(i), item.Rows(item.Rows.Count - 1)) - Next - FileExcel.Save(Me.Response, FileName, SaveOptions.XlsxDefault) - + Next + + + Dim worksheet = excel.Worksheets(0) + worksheet.Rows.InsertEmpty(0, TotalRowHeader) + Dim celdasConTexto = worksheet.GetUsedCellRange(True) + celdasConTexto.Style.Font.Name = "Calibri Light" + + Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex) + RangoNombreEmpresa.Merged = True + RangoNombreEmpresa.Value = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=UsuarioActual.CveCliente).FiltroPrimeroValor("Nombre") + RangoNombreEmpresa.Style.Font.Size = 18 * 20 + RangoNombreEmpresa.Style.Font.Name = "Calibri Light" + RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + + + Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex) + RangoTitulo.Merged = True + RangoTitulo.Value = Titulo + RangoTitulo.Style.Font.Size = 20 * 20 + RangoTitulo.Style.Font.Name = "Calibri Light" + RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + + + 'If FechaIMes.Trim.Length > 0 And FechaFMes.Trim.Length > 0 Then + ' Dim RangoFechas = worksheet.Cells.GetSubrangeAbsolute(4, celdasConTexto.FirstColumnIndex, 4, celdasConTexto.LastColumnIndex) + ' RangoFechas.Merged = True + ' RangoFechas.Value = $"Fechas: {FechaIMes} a {FechaFMes}" + ' RangoFechas.Style.Font.Size = 15 * 20 + ' RangoFechas.Style.Font.Name = "Calibri Light" + ' RangoFechas.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + ' RangoFechas.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + 'End If + + + 'If SubProyecto.Length > 0 Then + ' Dim RangoSubProyecto = worksheet.Cells.GetSubrangeAbsolute(5, celdasConTexto.FirstColumnIndex, 5, celdasConTexto.LastColumnIndex) + ' RangoSubProyecto.Merged = True + ' RangoSubProyecto.Value = SubProyecto + ' RangoSubProyecto.Style.Font.Size = 20 * 20 + ' RangoSubProyecto.Style.Font.Name = "Calibri Light" + ' RangoSubProyecto.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + ' RangoSubProyecto.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + 'End If + + + If Not String.IsNullOrEmpty(Filtros) Then + Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex) + RangoDatoTituloExtra.Merged = True + RangoDatoTituloExtra.Value = Filtros + RangoDatoTituloExtra.Style.Font.Size = 15 * 20 + RangoDatoTituloExtra.Style.Font.Name = "Calibri Light" + RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + End If + + + For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex + + worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20 + worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + + worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)) + worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255) + + + + If i > 0 Then + Try + worksheet.Columns(i).AutoFit(1) + Catch ex As Exception + End Try + End If + + Next + + + + Dim IndexEndTable As Integer = DtDatos.Rows.Count + TotalRowHeader + TotalRowFooter + + worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió" + worksheet.Rows(IndexEndTable + 1).Cells(0).Value = UsuarioActual.Nombre + + worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión" + worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy") + + 'Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) + + 'If Imagen.Exists Then + ' Dim Ruta As String = String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta) + ' Using sr As New StreamReader(Ruta) + ' Dim ms As New MemoryStream() + ' sr.BaseStream.CopyTo(ms) + ' worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", 100, 100, LengthUnit.Pixel) + ' End Using + 'End If + + + For I = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex + + If I > 0 Then + + 'If Divisor = 1 Then + ' worksheet.Columns(I + 1).Style.NumberFormat = "#,##0.00" + 'Else + ' worksheet.Columns(I + 1).Style.NumberFormat = "#,##" + 'End If + + Try + worksheet.Columns(I).AutoFit(1) + Catch ex As Exception + End Try + + End If + Next + + excel.Save(Me.Response, Archivo, SaveOptions.XlsxDefault) + End Sub Private Function CargaDireccion(ByVal lat As String, ByVal lng As String) As String Try diff --git a/Inventarios/AjustesSeccionAlmacen.aspx b/Inventarios/AjustesSeccionAlmacen.aspx index 054cd4912..023a61a82 100644 --- a/Inventarios/AjustesSeccionAlmacen.aspx +++ b/Inventarios/AjustesSeccionAlmacen.aspx @@ -88,7 +88,7 @@ <%----%> - + diff --git a/Inventarios/AjustesSeccionAlmacen.aspx.vb b/Inventarios/AjustesSeccionAlmacen.aspx.vb index 11eaa4b15..5821d3005 100644 --- a/Inventarios/AjustesSeccionAlmacen.aspx.vb +++ b/Inventarios/AjustesSeccionAlmacen.aspx.vb @@ -212,11 +212,11 @@ Partial Class Inventarios_AjustesSeccionAlmacen Next 'inserto la prepoliza - If CveMovimientoEntrada > 0 AndAlso CveMovimientoSalida > 0 Then + If Not ErrorMovInv AndAlso CveMovimientoEntrada > 0 AndAlso CveMovimientoSalida > 0 Then Dim Concepto As String = "Ajuste Sección" Dim IdCtaContableOrigen As Integer = 0 Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("Inventario/AjusteAlmacen", 53, 0, 0, 1, Fecha, Concepto, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - Dim importe As Decimal = resultado.SUMD("Total").RoundAD + Dim importe As Decimal = resultado.SUMD("Total").RoundSQL Dim contabilizable As Boolean = False If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importe, Concepto, 68, Concepto, Fecha, IdCtaContableOrigen, -1, CveMovimientoAlmacen:=CveMovimientoSalida, Contabilizable:=contabilizable, ImporteMX:=importe) Then ErrorMovInv = True @@ -616,7 +616,7 @@ Partial Class Inventarios_AjustesSeccionAlmacen 'Mostrar Sección GvD.Columns(11).Visible = ChkMostrarSeccion.Checked GvD.Columns(12).Visible = ChkMostrarSeccion.Checked - + CargaDatos() UppD.Update() End Sub diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb index fb992b66b..e6e103354 100644 --- a/Inventarios/EntradasSalidas.aspx.vb +++ b/Inventarios/EntradasSalidas.aspx.vb @@ -1362,7 +1362,7 @@ Partial Class Inventarios_EntradasSalidas registro.Item("CveUM") = CveUM registro.Item("UnidadMedida") = UM registro.Item("CvePS") = CvePS - registro.Item("CodigoPS") = PS + registro.Item("CodigoPS") = String.Format("{0} - {1}", Codigo, PS) registro.Item("PS") = PS registro.Item("PU") = PU 'registro.Item("PUExtranjero") = PU diff --git a/Inventarios/EntregaAlmacen.aspx b/Inventarios/EntregaAlmacen.aspx index 293ab379a..69a853562 100644 --- a/Inventarios/EntregaAlmacen.aspx +++ b/Inventarios/EntregaAlmacen.aspx @@ -516,7 +516,7 @@ - + diff --git a/Inventarios/EntregaAlmacen.aspx.vb b/Inventarios/EntregaAlmacen.aspx.vb index b54edbe9a..092dd7115 100644 --- a/Inventarios/EntregaAlmacen.aspx.vb +++ b/Inventarios/EntregaAlmacen.aspx.vb @@ -966,8 +966,8 @@ Partial Class Inventarios_EntregaAlmacen If CBool(e.Row.DBCampo("AplicaCaducidad")) Then e.Row.FCTextBox("TxtCaducidad").Visible = True e.Row.FCLinkButton("LnkCaducidad").Visible = True - 'e.Row.FCTextBox("TxtCaducidad").readonly = True - e.Row.FCTextBox("TxtCaducidad").enabled = True + e.Row.FCTextBox("TxtCaducidad").readonly = True + ' e.Row.FCTextBox("TxtCaducidad").enabled = True Else e.Row.FCTextBox("TxtCaducidad").Visible = False e.Row.FCLinkButton("LnkCaducidad").Visible = False @@ -975,8 +975,8 @@ Partial Class Inventarios_EntregaAlmacen If CBool(e.Row.DBCampo("AplicaLote")) Then e.Row.FCTextBox("TxtLote").Visible = True - ' e.Row.FCTextBox("TxtLote").readonly = True - e.Row.FCTextBox("TxtLote").enabled = True + e.Row.FCTextBox("TxtLote").readonly = True + 'e.Row.FCTextBox("TxtLote").enabled = True Else e.Row.FCTextBox("TxtLote").Visible = False End If @@ -2463,18 +2463,21 @@ Partial Class Inventarios_EntregaAlmacen For Each Dr As DataRow In DtDatos.Rows CantidadPendiente = Dr("CantidadGV").ToString().ToDecimal - Dr("CantidadTraspaso").ToString().ToDecimal - CantidadEntradaSinCosto If CantidadPendiente > 0 Then - Dim PU As Decimal = 0 - - 'SI FUE POR SERIE + Dim PU As Decimal = 0 + Dim CveSeccionAlmacen As Integer = If(CBool(Dr("AplicaSeccion")), Dr("CveSeccion").ToString().ToEntero(), -1) + + 'SI FUE POR SERIE DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0} AND FueTraspaso IS NULL", Dr("Consec"))) DtDetalleLote = DtDatosDetalleLote.FiltraParametros(String.Format("ConsecId = {0} AND FueTraspaso IS NULL", Dr("Consec"))) If DtDetalle.Rows.Count > 0 Then For Each Dr1 As DataRow In DtDetalle.Rows - If TipoMovimiento = 2 AndAlso DtExistencias IsNot Nothing Then - PU = DtExistencias.FiltroPrimeroValor("PU", $"CveTipoAlmacenDevolucion <> 26 AND CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()} AND Serie = '{Dr1("Serie").ToString()}'").ToString().ToDecimal + If TipoMovimiento = 2 AndAlso DtExistencias IsNot Nothing Then + CveSeccionAlmacen = DtExistencias.FiltroPrimeroValor("CveSeccionAlmacen", $"ISNULL(CveTipoAlmacenDevolucion,0) <> 26 AND CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()} AND Serie = '{Dr1("Serie").ToString()}'").ToString().ToEntero + + PU = DtExistencias.FiltroPrimeroValor("PU", $"CveTipoAlmacenDevolucion <> 26 AND CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()} AND Serie = '{Dr1("Serie").ToString()}'").ToString().ToDecimal End If - If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, 1, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, Serie:=Dr1("Serie").ToString(), CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=-3) Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, 1, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, Serie:=Dr1("Serie").ToString(), CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=CveSeccionAlmacen) Then ErrorMovInv = True TextoError.AppendFormat("Ocurrió un error al procesar los conceptos con serie. Por favor vuelva a intentar.") Exit For @@ -2483,10 +2486,11 @@ Partial Class Inventarios_EntregaAlmacen ElseIf DtDetalleLote.Rows.Count > 0 Then For Each Dr1 As DataRow In DtDetalleLote.Rows If TipoMovimiento = 2 AndAlso DtExistencias IsNot Nothing Then + CveSeccionAlmacen = DtExistencias.FiltroPrimeroValor("CveSeccionAlmacen", $"CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()} AND Serie = '{Dr1("Serie").ToString()}'").ToString().ToEntero PU = DtExistencias.FiltroPrimeroValor("PU", $"CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()} AND Serie = '{Dr1("Serie").ToString()}'").ToString().ToDecimal End If - If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr1("Cantidad").ToString().ToDouble, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=If(CBool(Dr("AplicaSeccion")), Dr("CveSeccion").ToString().ToEntero(), -1)) Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr1("Cantidad").ToString().ToDouble, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=CveSeccionAlmacen) Then ErrorMovInv = True TextoError.AppendFormat("Ocurrió un error al procesar los conceptos con serie. Por favor vuelva a intentar.") Exit For @@ -2497,7 +2501,7 @@ Partial Class Inventarios_EntregaAlmacen PU = DtExistencias.FiltroPrimeroValor("PU", $"CvePS = {Dr("CvePS")} AND CveUM = {Dr("CveUM").ToString().ToEntero()}").ToString().ToDecimal End If - If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, CantidadPendiente, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=If(CBool(Dr("AplicaSeccion")), Dr("CveSeccion").ToString().ToEntero(), -1)) Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, CantidadPendiente, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), PU, CveVentaDetalle:=Dr("CveVentaDetalle").ToString().ToEntero(), FechaCaducidad:=If(CBool(Dr("AplicaCaducidad")), Dr("FechaCaducidad").ToString().ToDate, MinFecha), Lote:=If(CBool(Dr("AplicaLote")), Dr("Lote").ToString(), "-1"), CveSeccionAlmacen:=-3) Then ErrorMovInv = True TextoError.AppendFormat("Ocurrió un error al procesar los conceptos de salida. Por favor vuelva a intentar.") Exit For diff --git a/Inventarios/ReconstruirCostos.aspx b/Inventarios/ReconstruirCostos.aspx new file mode 100644 index 000000000..46211a81d --- /dev/null +++ b/Inventarios/ReconstruirCostos.aspx @@ -0,0 +1,104 @@ +<%@ Page Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="ReconstruirCostos.aspx.vb" Inherits="Inventario_ReconstruirCostos" %> + + + + + + + + + + + +   + + + + <%--
  • + Imprimir +
  • --%> +
    + + + + + +
    +
    +
    + +
    +
    +
    + <%--Filtros--%> + +
    + + + +
    + + +
    + + + +
    +
    +
    +
    +
    +
    +
    + +
    +
    + + " style="display: inline-block; margin-right: -20px; width: 150px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
    +
    + + + +
    + + + + + + + + + + + + + + + + +
    +
    +
    + + + + +
    +
    +
    + + +
    +
    +
    +
    + + +
    + + + + + diff --git a/Inventarios/ReconstruirCostos.aspx.vb b/Inventarios/ReconstruirCostos.aspx.vb new file mode 100644 index 000000000..1f082cf1d --- /dev/null +++ b/Inventarios/ReconstruirCostos.aspx.vb @@ -0,0 +1,88 @@ +Option Explicit On +Option Strict On + +Imports Extensiones +Imports System.Data +Partial Class Inventario_ReconstruirCostos + Inherits ClsPaginas + + Private Property FacturasCheckadas As Integer + Get + Return ViewState("FacturasCheckadas").ToString.ToEntero + End Get + Set(value As Integer) + ViewState("FacturasCheckadas") = value + End Set + End Property + + Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load + If Not IsPostBack Then + CargaClasificaciones() + CargaMarcas() + End If + End Sub + Private Sub CargaClasificaciones() + + If UsuarioActual.Empresa.UsaAC Then + DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros(" Codigo = '' OR Codigo IS NULL ", Orderby:="Clasificacion") + Else + DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros("", Orderby:="Clasificacion") + End If + DdlClasificacion.DataBind() + End Sub + + Private Sub CargaMarcas() + + Dim ObjPS As New ClsProductosServicios + + If ObjPS.GetMarcas(UsuarioActual.CveEmpresa) Then + DdlMarca.DataSource = ObjPS.DtResultados + DdlMarca.DataBind() + + End If + ObjPS.Dispose() + End Sub + Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click + CargaDatos() + End Sub + + Private Sub CargaDatos() + + + Dim ObjPS As New ClsProductosServicios + ObjPS.GetPS(-1, DdlClasificacion.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, CveMarca:=DdlMarca.SelectedValue.ToEntero) + If ObjPS.DtResultados.Rows.Count > 0 Then + GvProdcutos.DataSource = ObjPS.DtResultados + GvProdcutos.DataBind() + UpGvProductos.Update() + End If + ObjPS.Dispose() + End Sub + Private Sub BtnReconstruir_Click(sender As Object, e As EventArgs) Handles BtnReconstruir.Click + Dim objInv As New ClsInventarios + Dim TieneError As Boolean = False + Dim Producto As String = "" + + For Each Gvr As GridViewRow In GvProdcutos.Rows + If Gvr.FCCheckBox("ChkProducto").Checked Then + Dim CvePS As Integer = Gvr.DataKey("CvePS").ToEntero + If Not objInv.ReconstruirCostos(CvePS, UsuarioActual.CveEmpresa) Then + TieneError = True + Producto += String.Format("{0}
    ", Gvr.DataKey("PS").ToString) + + End If + End If + Next + + If TieneError Then + Alert(String.Format("Error al reconstruir los costos en los siguientes productos: {0}", Producto), TipoMensaje.MsgError) + Else + Alert("Se realizo el cambio correctamente", TipoMensaje.MsgConfirmacion) + + End If + + objInv.Dispose() + End Sub + + +End Class \ No newline at end of file diff --git a/Nomina/Nomina2.aspx b/Nomina/Nomina2.aspx index 333d3376b..27158a68e 100644 --- a/Nomina/Nomina2.aspx +++ b/Nomina/Nomina2.aspx @@ -153,6 +153,9 @@
  • Ver provisión
  • +
  • + Ver provisión Asimilados +
  • Timbrar todos
  • diff --git a/Sistemas/PopUpAddUsuario.aspx.vb b/Sistemas/PopUpAddUsuario.aspx.vb index b48a4fd17..1ec6d9763 100644 --- a/Sistemas/PopUpAddUsuario.aspx.vb +++ b/Sistemas/PopUpAddUsuario.aspx.vb @@ -1,7 +1,7 @@ Imports Extensiones Imports System.Data Partial Class Sistemas_PopUpAddUsuario - Inherits ClsPaginas + Inherits ClsPaginas #Region "PROPIEDADES" Public Property CveCliente As Integer Get @@ -51,7 +51,7 @@ Partial Class Sistemas_PopUpAddUsuario Set(value As Integer) ViewState("CvePlataforma") = value End Set - End Property + End Property #End Region Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then @@ -164,8 +164,14 @@ Partial Class Sistemas_PopUpAddUsuario If ObjUsuario.UpdateUsuario(LtlUsuario.Text, TxtNombre.Text, -1, TxtEmail.Text, -1, -1, True, True, -1, CveUsuario, -1, -1) Then Alert("La contraseña se reestableció correctamente a la contraseña por default '-acceso-'.") Dim Liga As String = $"{Context.Request.Url.OriginalString.Substring(0, Context.Request.Url.OriginalString.Length - Context.Request.Url.PathAndQuery.Length)}/LogIn.aspx" - Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa) - EnviaCorreo(Liga, LigaActivar) + Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa) + + If UsuarioActual.Empresa.CvePlataforma = 3 Then + EnviaCorreoGPS(Liga, LigaActivar) + Else + EnviaCorreo(Liga, LigaActivar) + End If + End If End If ObjUsuario.Dispose() @@ -251,8 +257,14 @@ Partial Class Sistemas_PopUpAddUsuario 'ENVIA CORREO If CveUsuario > 0 Then Dim Liga As String = $"{Context.Request.Url.OriginalString.Substring(0, Context.Request.Url.OriginalString.Length - Context.Request.Url.PathAndQuery.Length)}/LogIn.aspx" - Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa) - Mensaje = EnviaCorreo(Liga, LigaActivar) + Dim LigaActivar As String = Liga & "?p=" & Encripta("CveU=" & CveUsuario & "&Clave=" & "-acceso-" & "&Opcion=Activar&Hora=" & DateTime.Now.Ticks& & "&CveE=" & UsuarioActual.CveEmpresa) + + If UsuarioActual.Empresa.CvePlataforma = 3 Then + Mensaje = EnviaCorreoGPS(Liga, LigaActivar) + Else + Mensaje = EnviaCorreo(Liga, LigaActivar) + End If + Else HuboError = True End If @@ -651,16 +663,139 @@ Partial Class Sistemas_PopUpAddUsuario OnError("Ocurrió error al mandar MAIL", ex) End Try + Return Retorno + End Function + + Private Function EnviaCorreoGPS(Liga As String, LigaActivar As String) As String + Dim Retorno As String = "" + Try + 'Dim URL As String = "https://gps.signalsgps.com/" + LigaActivar + + Dim Para = TxtEmail.Text.Trim + Dim Asunto = "ACCESO A SIGNALS GPS" + + 'Dim SBBody As New StringBuilder + ''Linia de estilos + 'SBBody.Append("") + ''incio Cuerpo del correo + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("ALTA DE CUENTA") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.AppendFormat(" Estimado {0}:
    ", TxtNombre.Text.ToUpper) + 'SBBody.AppendFormat("El presente correo es para informarle que se le han asignado los siguientes datos para el acceso a la Plataforma de: {0}

    ", UsuarioActual.Empresa.Empresa) + 'SBBody.Append("
    ") + 'SBBody.Append("
    Datos de usuario
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    Usuario
    ") + 'SBBody.AppendFormat("
    {0}
    ", TxtEmail.Text) + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    Accesé al sistema dando click a la liga y estableciendo su contraseña
    ") + 'SBBody.AppendFormat("", LigaActivar) + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + 'SBBody.Append("Para Activar su cuenta debera cambiar su contraseña.

    ") + 'SBBody.Append("
    ") + 'SBBody.Append("Nota Favor de NO responder este correo. ") + 'SBBody.Append("


    ") + 'SBBody.AppendFormat("", URL) + 'SBBody.Append("
    ") + 'SBBody.Append("
    ") + + Dim SBBody As New StringBuilder() + + SBBody.Append("
    ") + SBBody.Append("
    ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append("
     ") + SBBody.Append("

    DATOS DE ACCESO

    ") + SBBody.Append("

     

    ") + SBBody.Append("
    ") + SBBody.Append("
    ") + SBBody.AppendFormat("


    Estimado / a {0}:

    ", TxtNombre.Text) + SBBody.Append("

    El presente correo es para informarle que se le han asignado los siguentes datos para el acceso a la plataforma SIGNALS GPS

    ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append(" ") + SBBody.Append("") + SBBody.Append("
    ") + SBBody.Append("

    USUARIO ASIGNADO

    ") + SBBody.Append("
    ") + SBBody.Append("

    Usuario:

    ") + SBBody.AppendFormat("

    {0}

    ", TxtEmail.Text) + SBBody.Append("
    ") + SBBody.Append("

    Contraseña:

    ") + SBBody.Append("

    -acceso-

    ") + SBBody.Append("
    ") + SBBody.AppendFormat("

    👆INGRESAR A SIGNALS GPS👆

    ", LigaActivar) + SBBody.Append("
    ") + SBBody.Append("
    ") + SBBody.Append("


    Favor de NO responder este correo.

    ") + SBBody.Append("
    ") + SBBody.Append("

     

    ") + SBBody.Append("
    ") + 'Termino Cuerpo del correo + + Dim Hilo As New System.Threading.Thread(Sub() MandaCorreo(Asunto, Para, SBBody.ToString)) + Hilo.Start() + + 'Dim JSBTN As String = "" + 'If UsuarioActual.CveCliente > 0 Then + ' JSBTN = $"document.location.href=""javascript: Ir2({CveCliente})"";" + 'ElseIf CveCliente > 0 Then + ' JSBTN = $"document.location.href=""javascript:Ir({CveCliente})"";" + 'End If + 'If UsuarioActual.Empresa.CvePlataforma = 3 Then + ' Alert("El correo se ha enviado correctamente a: " + TxtEmail.Text + ".", TipoMensaje.MsgInformacion, JSBTN) + 'End If + + Retorno = $"El correo se ha enviado correctamente a: {TxtEmail.Text}." + + Catch ex As Exception + OnError("Ocurrió error al mandar MAIL", ex) + End Try + Return Retorno End Function Private Sub MandaCorreo(Asunto As String, Para As String, Body As String) Dim a As String = String.Format("{0} -- {1} ---- -->", Asunto, Para) a.GuardaLog() Dim Mail As New ClsSisMail() - Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body) - End Sub -#End Region + Dim EmpresaEnvio As Empresa = ClsPaginas.EmpresaNotificaciones + + If UsuarioActual.Empresa.CvePlataforma = 3 Then + EmpresaEnvio = ClsPaginas.EmpresaNotificacionesGPS + End If + + Mail.SendMail(EmpresaEnvio, Para, Asunto, Body) + End Sub +#End Region + #Region "M O D U L O S" Public Sub CargaModulosAcceso() Dim ObjPermisos As New ClsSisUsuarios @@ -808,11 +943,11 @@ Partial Class Sistemas_PopUpAddUsuario End If End If - End Sub - - + End Sub + + #End Region - + #Region "V E H I C U L O S" Private Sub CargaDispositivos() GvDispositivos.DataSource = GlobalDTDispositivos(CveCliente).FiltraParametros("Estatus = 1 ") @@ -826,10 +961,10 @@ Partial Class Sistemas_PopUpAddUsuario End If End If End If - End Sub - + End Sub + #End Region - + #Region "N O T I F I C A C I O N E S" Private Sub CargarNotificaciones() Dim ObjNotificaciones As New ClsSisNotificaciones @@ -851,11 +986,11 @@ Partial Class Sistemas_PopUpAddUsuario e.Row.FCCheckBox("chkApp").Checked = If(DtNotificacionesUsuarios.FiltroPrimeroValor("Alerta_App", $"CveNotificacion = {e.Row.DBCampo("CveNotificacion")}").ToString = "True", True, False) End If End If - End Sub - - + End Sub + + #End Region - + Protected Sub BtnCambiarUsuario_Click(sender As Object, e As EventArgs) CveUsuario = -1 diff --git a/Site.master b/Site.master index 0996ebb05..6c399c64c 100644 --- a/Site.master +++ b/Site.master @@ -6,7 +6,7 @@ - Sistema de Información Gerencial + Sistema de Información Gerencial diff --git a/Site.master.vb b/Site.master.vb index e35e3893b..899461f8d 100644 --- a/Site.master.vb +++ b/Site.master.vb @@ -76,6 +76,7 @@ Partial Class Site If UsuarioActual.Empresa.CvePlataforma = 3 Then lnkFavicon.Href = "/Imagenes/favicongps.ico" + tTitulo.Text = "SIGNALS GPS" Else lnkFavicon.Href = "/Imagenes/favicon.ico" End If diff --git a/Ventas/ClientesAbonar.aspx b/Ventas/ClientesAbonar.aspx index 0c2dc1e61..61dbde5f6 100644 --- a/Ventas/ClientesAbonar.aspx +++ b/Ventas/ClientesAbonar.aspx @@ -365,7 +365,7 @@ Complemento Pago - + diff --git a/Ventas/ClientesAbonar.aspx.vb b/Ventas/ClientesAbonar.aspx.vb index 359ed6e11..fc2aa4147 100644 --- a/Ventas/ClientesAbonar.aspx.vb +++ b/Ventas/ClientesAbonar.aspx.vb @@ -639,11 +639,10 @@ Partial Class Ventas_ClientesAbonar If e.Row.DBCampo("CveVenta").ToEntero > 0 Then If e.Row.DataKey("ClaveMetodoPagoSAT") = "PUE" Then - e.Row.FCLinkButton("LnkComplemento").Text = "" - e.Row.FCLinkButton("LnkComplemento").CssClass = "text-danger" + e.Row.FCLiteral("LtlComplemento").Text = "" End If Else - e.Row.FCLinkButton("LnkComplemento").Visible = False + e.Row.FCLiteral("LtlComplemento").Visible = False End If @@ -3179,5 +3178,7 @@ Partial Class Ventas_ClientesAbonar Private Sub RVTxtFechaDocumento_Init(sender As Object, e As EventArgs) Handles RVTxtFechaDocumento.Init RVTxtFechaDocumento.MaximumValue = DateTime.Now.ToShortDateString + Calendario.EndDate = DateTime.Now + End Sub End Class diff --git a/Ventas/PV.aspx b/Ventas/PV.aspx index fdfef6fe7..0ac8d7586 100644 --- a/Ventas/PV.aspx +++ b/Ventas/PV.aspx @@ -2953,7 +2953,7 @@
    - + <%----%> <%----%> diff --git a/Ventas/PV.aspx.vb b/Ventas/PV.aspx.vb index f908576ee..e481299ef 100644 --- a/Ventas/PV.aspx.vb +++ b/Ventas/PV.aspx.vb @@ -6274,8 +6274,6 @@ Partial Class PV GvRecepcionUsados.DataSource = DtTamanios GvRecepcionUsadosModal.DataSource = DtTamanios - - DdlFolioGarantia.DataBind() DdlTipoUso.DataBind() DdlTipoDefecto.DataBind() DdlFacturas.DataBind() diff --git a/Ventas/RepAnticipo-NC-IXC.aspx b/Ventas/RepAnticipo-NC-IXC.aspx index 62e4b7539..efdbb26a4 100644 --- a/Ventas/RepAnticipo-NC-IXC.aspx +++ b/Ventas/RepAnticipo-NC-IXC.aspx @@ -46,8 +46,10 @@
    - - + + + <%-- + --%>
    Fecha Ini Doc:
    diff --git a/Ventas/RepAnticipo-NC-IXC.aspx.cs b/Ventas/RepAnticipo-NC-IXC.aspx.cs index 4895c21bc..bfe564237 100644 --- a/Ventas/RepAnticipo-NC-IXC.aspx.cs +++ b/Ventas/RepAnticipo-NC-IXC.aspx.cs @@ -65,11 +65,16 @@ public partial class Ventas_RepAnticipo_NC_IXC : ClsPaginas DdlSucursal.Items.Insert(0, new ListItem("Todos", "-1")); } + //protected void CargaClientes() + //{ + // DdlCliente.DataSource = get_GlobalDTCliente(UsuarioActual.CveEmpresa,-1); + // DdlCliente.DataBind(); + // DdlCliente.Items.Insert(0, new ListItem("Todos", "-1")); + //} protected void CargaClientes() { - DdlCliente.DataSource = get_GlobalDTCliente(UsuarioActual.CveEmpresa,-1); - DdlCliente.DataBind(); - DdlCliente.Items.Insert(0, new ListItem("Todos", "-1")); + DdlCliente.setEsWebService(true); + DdlCliente.Attributes.Add("data-metodo", "getcliente"); } protected void CargaVendedores() { @@ -87,7 +92,12 @@ public partial class Ventas_RepAnticipo_NC_IXC : ClsPaginas DateTime FechaFCorte; if (TxtFechaFCorte.Text != "") { FechaFCorte = TxtFechaFCorte.Text.ToDate(); } else { FechaFCorte = DateTime.MaxValue; } ClsVentas ObjVenta = new ClsVentas(); - if (ObjVenta.GetRepAnticiposNCIXC(DdlCliente.SelectedValue.ToEntero(), DdlSucursal.SelectedValue.ToEntero(), txtFechaI.Text.ToDate(), + int CveCliente = -1; + if (DdlCliente.SelectedValue.ToEntero() != 0) + { + CveCliente = DdlCliente.SelectedValue.ToEntero(); + } + if (ObjVenta.GetRepAnticiposNCIXC(CveCliente, DdlSucursal.SelectedValue.ToEntero(), txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(),UsuarioActual.CveEmpresa, FechaICorte, FechaFCorte, TipoCambio, TCEspecifico, DdlVendedor.SelectedValue.ToEntero(),DdlConSaldo.SelectedValue.ToEntero())) { GvDatos.DataSource = ObjVenta.DtResultados; @@ -127,7 +137,7 @@ public partial class Ventas_RepAnticipo_NC_IXC : ClsPaginas String Sucursal; if (DdlSucursal.SelectedValue != "-1") { Sucursal = $" Sucursal: {DdlSucursal.SelectedItem.Text}"; } else { Sucursal = ""; } String Cliente; - if (DdlCliente.SelectedValue != "-1") { Cliente = $" Cliente: {DdlCliente.SelectedItem.Text}"; } else { Cliente = ""; } + if (DdlCliente.SelectedValue != "-1") { Cliente = $" Cliente: {DdlCliente.SelectedText}"; } else { Cliente = ""; } if (DtDatos.Rows.Count > 0) { System.IO.FileInfo Imagen = new System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)); diff --git a/Ventas/RepAnticipo-NC-IXCDetalle.aspx b/Ventas/RepAnticipo-NC-IXCDetalle.aspx index 5d17ff9ea..427376291 100644 --- a/Ventas/RepAnticipo-NC-IXCDetalle.aspx +++ b/Ventas/RepAnticipo-NC-IXCDetalle.aspx @@ -50,8 +50,10 @@
    - - +<%-- + --%> + +
    Fecha Ini Doc:
    diff --git a/Ventas/RepAnticipo-NC-IXCDetalle.aspx.cs b/Ventas/RepAnticipo-NC-IXCDetalle.aspx.cs index 6abb773da..24bd56845 100644 --- a/Ventas/RepAnticipo-NC-IXCDetalle.aspx.cs +++ b/Ventas/RepAnticipo-NC-IXCDetalle.aspx.cs @@ -58,7 +58,12 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas TxtFechaFCorte.Text = DateTime.Today.ToString(); CargaSucursales(); CargaClientes(); - DdlCliente.SelectedValueExist(Request["CveCliente"] == null ? "-1" : Request["CveCliente"].ToString()); + int CveCliente = (Request["CveCliente"] == null ? -1 : Request["CveCliente"].ToString().ToEntero()); + + DdlCliente.SelectedValue = CveCliente.ToString(); + DataTable dt = get_GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:CveCliente); + DdlCliente.SelectedText = dt.FiltroPrimeroValor("NombreComercial", ""); + DdlSucursal.SelectedValueExist(Request["CveSubProyecto"] == null ? "-1" : Request["CveSubProyecto"].ToString()); DdlTipo.SelectedValueExist(Request["Tipo"] == null ? "-1" : Request["Tipo"].ToString()); CveMoneda = Request["CveMoneda"] == null ? -1 : Request["CveMoneda"].ToString().ToEntero(); @@ -90,16 +95,21 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas DdlSucursal.DataBind(); DdlSucursal.Items.Insert(0, new ListItem("Todos", "-1")); DdlSucursal.SelectedValue = "-1"; + } + + //protected void CargaClientes() + //{ + // DdlCliente.DataSource = get_GlobalDTCliente(UsuarioActual.CveEmpresa, -1); + // DdlCliente.DataBind(); + // DdlCliente.Items.Insert(0, new ListItem("Todos", "-1")); + // DdlCliente.SelectedValue = "-1"; + //} + + protected void CargaClientes() + { + DdlCliente.setEsWebService(true); + DdlCliente.Attributes.Add("data-metodo", "getcliente"); } - - protected void CargaClientes() - { - DdlCliente.DataSource = get_GlobalDTCliente(UsuarioActual.CveEmpresa, -1); - DdlCliente.DataBind(); - DdlCliente.Items.Insert(0, new ListItem("Todos", "-1")); - DdlCliente.SelectedValue = "-1"; - } - protected void CargaVendedores() { DdlVendedor.DataSource = get_GlobalDTVendedores(UsuarioActual.CveEmpresa); @@ -116,8 +126,13 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas if (TxtFechaICorte.Text != "") { FechaICorte = TxtFechaICorte.Text.ToDate(); } else { FechaICorte = DateTime.MinValue; } DateTime FechaFCorte; if (TxtFechaFCorte.Text != "") { FechaFCorte = TxtFechaFCorte.Text.ToDate(); } else { FechaFCorte = DateTime.MaxValue; } - ClsVentas ObjVenta = new ClsVentas(); - if (ObjVenta.GetRepAnticiposNCIXCDetalle(DdlCliente.SelectedValue.ToEntero(), DdlSucursal.SelectedValue.ToEntero(), txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), + ClsVentas ObjVenta = new ClsVentas(); + int CveCliente = -1; + if (DdlCliente.SelectedValue.ToEntero() != 0) + { + CveCliente = DdlCliente.SelectedValue.ToEntero(); + } + if (ObjVenta.GetRepAnticiposNCIXCDetalle(CveCliente, DdlSucursal.SelectedValue.ToEntero(), txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), UsuarioActual.CveEmpresa, DdlConSaldo.SelectedValue.ToEntero(), DdlTipo.SelectedValue.ToEntero(), CveMoneda, FechaICorte, FechaFCorte, TipoCambio, TCEspecifico)) { GvDatos.DataSource = ObjVenta.DtResultados; @@ -128,7 +143,7 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas UpDatos.Update(); if (TxtFechaFCorte.Text != DateTime.Now.ToShortDateString() && txtFechaI.Text != "") { LnkHabilitarSaldar.Visible = false; LnkSaldar.Visible = false; } else { LnkHabilitarSaldar.Visible = true; } if (LnkSaldar.Visible) { HabilitarCheckbox(); } - Tipo = DdlTipo.SelectedValue.ToEntero(); + Tipo = DdlTipo.SelectedValue.ToEntero(); } protected void BtnConsultar_Click(object sender, EventArgs e) @@ -159,7 +174,7 @@ public partial class Ventas_RepAnticipo_NC_IXCDetalle : ClsPaginas String Sucursal; if (DdlSucursal.SelectedValue != "-1") { Sucursal = $" Sucursal: {DdlSucursal.SelectedItem.Text}"; } else { Sucursal = ""; } String Cliente; - if (DdlCliente.SelectedValue != "-1") { Cliente = $" Cliente: {DdlCliente.SelectedItem.Text}"; } else { Cliente = ""; } + if (DdlCliente.SelectedValue.ToEntero() != -1) { Cliente = $" Cliente: {DdlCliente.SelectedText}"; } else { Cliente = ""; } String ConSaldo; if (DdlConSaldo.SelectedValue != "-1") { ConSaldo = $" Con Saldo: {DdlConSaldo.SelectedItem.Text}"; } else { ConSaldo = ""; } String Tipo2; diff --git a/Ventas/Ventas.aspx b/Ventas/Ventas.aspx index c0658934e..81aaae32d 100644 --- a/Ventas/Ventas.aspx +++ b/Ventas/Ventas.aspx @@ -756,8 +756,7 @@ Servicio a Domicilio:  - - activado + activado @@ -1263,7 +1262,7 @@ - <%--22--%> + <%--22--%> @@ -1428,7 +1427,8 @@ - + <%-- --%> + @@ -2210,8 +2210,7 @@ - - - + + + + +
    - +
    @@ -2343,8 +2342,7 @@
    - +
    @@ -2435,123 +2433,7 @@
    - -
    -
    -
    - - 7Eleven - -
    -
    -
    -
    -
    - -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - -
    Proveedor:  -
    - -
    -
    Folio:  -
    - -
    -
    Tienda:  -
    - -
    - <%----%> -
    Fecha:  - -
    - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    - - FORD - -
    -
    -
    -
    -
    - -
    - -
    -
    -
    -
    - - - - - - - - - - - - - -
    GSDB:   -
    - -
    -
    ASN :   -
    - -
    -   - - -
    - - -
    -
    -
    -
    -
    +
    @@ -2723,6 +2605,230 @@
    +
    +
    +
    + + 7Eleven + +
    +
    +
    +
    +
    + +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + +
    Proveedor:  +
    + +
    +
    Folio:  +
    + +
    +
    Tienda:  +
    + +
    + <%----%> +
    Fecha:  + +
    + + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + FORD + +
    +
    +
    +
    +
    + +
    + +
    +
    +
    +
    + + + + + + + + + + + + + +
    GSDB:   +
    + +
    +
    ASN :   +
    + +
    +   + + +
    + + +
    +
    +
    +
    +
    +
    +
    +
    + + Complementos INE +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    @@ -2840,9 +2946,9 @@
    - + - +
    @@ -3366,7 +3472,7 @@
    - +
    $ @@ -3947,7 +4053,7 @@
    - +
    --%> <%-- ******************************************** Corte de Caja *************************************************************************************************************************************** --%> @@ -6060,7 +6166,8 @@
    @@ -6349,7 +6458,7 @@
    - +
    @@ -6907,75 +7016,124 @@