This commit is contained in:
2022-10-18 23:03:01 -07:00
21 changed files with 833 additions and 181 deletions

View File

@@ -376,7 +376,7 @@ Partial Class AF_AF
InicializaValores()
If UsuarioActual.Empresa.UsaAC OrElse UsuarioActual.Empresa.UsaContabilidad Then
If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso (UsuarioActual.Empresa.UsaAC OrElse UsuarioActual.Empresa.UsaContabilidad) Then
CargaCuentasContables()
End If

View File

@@ -59,6 +59,10 @@ Public Class ClsOS
Public Property CveSubProyecto As Integer
Public Property CveOSDetalle As Integer
Public Property CveOSTipo As Integer
Public Property Telefono As String = ""
Public Property CveModeloAuto As Integer = -1
Public Property Año As String = ""
Private Class Especificaciones
Public CveValor As Integer
Public CvePSCaracteristica As Integer
@@ -516,6 +520,10 @@ Public Class ClsOS
Me.UsuarioEntrego = Data.Rows(0)("UsuarioEntrego").ToString
Me.CveSubProyecto = Data.Rows(0)("CveSubproyecto").ToString
Me.CveOSTipo = Data.Rows(0)("CveOrdenServicioTipo").ToString.ToEntero
Me.Telefono = Data.Rows(0)("TelefonoContacto").ToString
Me.CveModeloAuto = Data.Rows(0)("CveModeloAuto").ToString.ToEntero
Me.Año = Data.Rows(0)("Año").ToString
End If
Retorno = True
Catch ex As Exception
@@ -569,7 +577,7 @@ Public Class ClsOS
End Function
Public Function AddOrdenesServicios(CveCliente As Integer, CveSubProyecto As Integer, PersonaSolicito As String, FechaRecepcion As Date, Descripcion As String, CveUsuarioRecibio As Integer, CveEstatusOrdenServicio As Integer,
CveUsuario As Integer, CveEmpresa As Integer, CveCotizacion As Integer, CveVenta As Integer, CveOSPadre As Integer, CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1,
Optional Direccion As String = "-1") As Boolean
Optional Direccion As String = "-1", Optional Telefono As String = "", Optional CveModeloAuto As Integer = -1, Optional Año As String = "-1") As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OS_OrdenesServiciosAdd")
@@ -591,6 +599,10 @@ Public Class ClsOS
.Add("@CveClienteSucursal", SqlDbType.Int).Value = CveClienteSucursal
.Add("@Direccion", SqlDbType.VarChar).Value = Direccion
.Add("@Telefono", SqlDbType.VarChar).Value = Telefono
.Add("@CveModeloAuto", SqlDbType.Int).Value = CveModeloAuto
.Add("@Año", SqlDbType.VarChar).Value = Año
.Add("@CveOS", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@vFolio", SqlDbType.Int).Direction = ParameterDirection.Output
End With
@@ -633,7 +645,8 @@ Public Class ClsOS
Return Retorno
End Function
Public Function UpdateOrdenesServicios(PersonaSolicito As String, FechaRecepcion As String, Descripcion As String, CveUsuarioRecibio As Integer, CveEstatusOrdenServicio As Integer, CveOS As Integer, CveUsuarioModifico As Integer,
CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1, Optional Direccion As String = "-1") As Boolean
CveOSTipo As Integer, Optional CveClienteSucursal As Integer = -1, Optional Direccion As String = "-1",
Optional Telefono As String = "", Optional CveModeloAuto As Integer = -1, Optional Año As String = "-1") As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_OS_OrdenesServiciosUpdate")
@@ -649,6 +662,11 @@ Public Class ClsOS
.Add("@CveOS", SqlDbType.Int).Value = CveOS
.Add("@CveClienteSucursal", SqlDbType.Int).Value = CveClienteSucursal
.Add("@Direccion", SqlDbType.VarChar).Value = Direccion
.Add("@Telefono", SqlDbType.VarChar).Value = Telefono
.Add("@CveModeloAuto", SqlDbType.Int).Value = CveModeloAuto
.Add("@Año", SqlDbType.VarChar).Value = Año
End With
Try

View File

@@ -9677,70 +9677,70 @@ Public Class ClsPaginas
'si tiene iva y su proporcion
If Not ErrorMovtos AndAlso CompraActual.IVA <> 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.IVA).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaIVA
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
If CompraActual.IVADeducible > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.IVADeducible).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento.RoundSQL * Pago.TCPago).RoundSQL
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If
If CompraActual.IVANoDeducible > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.IVANoDeducible).RoundSQL
ImporteMovimiento = (PorcentajePago * CompraActual.IVA).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 280, CompraActual.SerieFolio, Concepto, Ret.IdCtaContIVANoAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaIVA
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
If CompraActual.IVADeducible > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.IVADeducible).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento.RoundSQL * Pago.TCPago).RoundSQL
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If
If CompraActual.IVANoDeducible > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.IVANoDeducible).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 280, CompraActual.SerieFolio, Concepto, Ret.IdCtaContIVANoAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If
End If
End If
'si tiene RET IVA y su proporcion
If Not ErrorMovtos AndAlso CompraActual.RetIVA > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.RetIVA).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
'si tiene RET IVA y su proporcion
If Not ErrorMovtos AndAlso CompraActual.RetIVA > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.RetIVA).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaRetIVA
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaRetIVA
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If
'si tiene Ret ISR y su proporcion
If Not ErrorMovtos AndAlso CompraActual.RetISR > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.RetISR).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
Dim ContabilizableISR As Boolean = False
If UsuarioActual.CveEmpresa = 140 Then
ContabilizableISR = True
End If
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaRetISR
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, Contabilizable:=ContabilizableISR, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
'si tiene Ret ISR y su proporcion
If Not ErrorMovtos AndAlso CompraActual.RetISR > 0 Then
ImporteMovimiento = (PorcentajePago * CompraActual.RetISR).RoundSQL
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
Dim ContabilizableISR As Boolean = False
If UsuarioActual.CveEmpresa.Contiene(140, 7, 11, 12, 122, 145) Then
ContabilizableISR = True
End If
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
Dim Ret As ConceptosRetenciones = CompraActual.ConceptoPrePolizaRetISR
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, Contabilizable:=ContabilizableISR, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, Contabilizable:=ContabilizableISR, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, Contabilizable:=ContabilizableISR, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If
'si tiene IEPS y su proporcion
If Not ErrorMovtos AndAlso CompraActual.IEPS > 0 Then

View File

@@ -977,8 +977,8 @@ Namespace Extensiones
Dim tmp As String = Mid(entero, 2, 6)
If entero.ToString.Length >= 7 And tmp = "000000" Then
If entero.ToString.Length = 7 And tmp = "000000" Then
If entero.ToString.Length >= 7 And tmp = "000000" Or Mid(entero, 3, 6) = "000000" Then
If entero.ToString.Length = 7 And tmp = "000000" Or Mid(entero, 3, 6) = "000000" Then
palabras.Append("de ")
End If
Else

View File

@@ -551,8 +551,9 @@ Partial Class Bancos_ConciliacionesBancariasaspx
End Sub
Protected Sub GeneraPDF(Formato As String)
Dim params As List(Of ReportParameter) = New List(Of ReportParameter)()
Dim Imagen As System.IO.FileInfo = New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString()))
@@ -662,7 +663,7 @@ Partial Class Bancos_ConciliacionesBancariasaspx
params.Add(New ReportParameter("Filtros", Filtros))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri))
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If

View File

@@ -295,7 +295,7 @@
<ContentTemplate>
<br />
<div style="height:450px;overflow-x:scroll">
<asp:GridView ID="GvFacturas" runat="server" AutoGenerateColumns="False" DataKeyNames="CveVenta, CvePrePoliza, CveIE, TipoCambio, CveMoneda, CveCliente, IdCtaContableBancos, IdCtaContClientes, Importe, SerieFolio,CveCuenta" CssClass="table table-striped table-advance table-hover" Style="text-align: center; float: right; width: 100%; " GridLines="None">
<asp:GridView ID="GvFacturas" runat="server" AutoGenerateColumns="False" DataKeyNames="CveVenta, CvePrePoliza, CveIE, TipoCambio, CveMoneda, CveCliente, IdCtaContableBancos, IdCtaContClientes, Importe, SerieFolio,CveCuenta,CveSubProyecto" CssClass="table table-striped table-advance table-hover" Style="text-align: center; float: right; width: 100%; " GridLines="None">
<Columns>
<asp:TemplateField>
<HeaderTemplate>

View File

@@ -43,8 +43,8 @@ Partial Class Bancos_DepositosCaja
DdlCajaChica.DataSource = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros(" CveTipoCuenta = 1", "", {"CveCuenta", "NumCuentaMoneda"})
DdlCajaChica.DataBind()
'código temporal, para claudia y toñita, monge, anadelia
If UsuarioActual.CveUsuario.Contiene(1937, 2452, 3358, 3033) Then
'código temporal, para claudia y toñita, monge, anadelia, alba
If UsuarioActual.CveUsuario.Contiene(1937, 2452, 3358, 3033, 2897) Then
DdlCajaChica.Items.Add(New ListItem("Todas", "-1"))
End If
@@ -302,6 +302,7 @@ Partial Class Bancos_DepositosCaja
Dim CveVenta As Integer = Gvr.DataKey("CveVenta").ToEntero
Dim CvePrePoliza As Integer = Gvr.DataKey("CvePrePoliza").ToEntero
Dim CveCuentaBancaria As Integer = Gvr.DataKey("CveCuenta").ToEntero
Dim tCveSubProyecto As Integer = Gvr.DataKey("CveSubProyecto").ToEntero
FolioIE = ObjBancos.GetNextFolio(CveCuentaBancaria, 2)
If Not FolioIE > 0 Then
@@ -311,7 +312,7 @@ Partial Class Bancos_DepositosCaja
CveIEDestino = ObjBancos.AddBancos_IE(CveCuentaBancaria, 2, Fecha, FolioIE.ToString, String.Format("Depósito Bancario: {0}", SerieFolio), Importe, CveMoneda, 1, TxtObservaciones.Text, "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, SerieFolio, 30, String.Format("Depósito Bancario: {0}", SerieFolio), Fecha, IdCuentaBancariaDestino, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino, ImporteMX:=Importe * TipoCambio) Then
If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, SerieFolio, 30, String.Format("Depósito Bancario: {0}", SerieFolio), Fecha, IdCuentaBancariaDestino, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=tCveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino, ImporteMX:=Importe * TipoCambio) Then
OcurrioError = True
Exit For
End If

View File

@@ -90,8 +90,8 @@ Partial Class Compras_CatProveedoresClasificaciones
End If
End If
If ObjProveedorClasificacion.GetProveedorClasificacion(-1) Then
GlobalDTProveedorClasificacion(-1) = ObjProveedorClasificacion.DtResultados
If ObjProveedorClasificacion.GetProveedorClasificacion(UsuarioActual.CveEmpresa) Then
GlobalDTProveedorClasificacion(UsuarioActual.CveEmpresa) = ObjProveedorClasificacion.DtResultados
End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAddClasificacion"))

View File

@@ -155,11 +155,7 @@
.manita {
cursor: pointer;
}
.centrarUM {
line-height: 40px;
}
select.selecthidden {
display: none;
}
@@ -766,7 +762,7 @@
<%-- 2 --%>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Middle" ItemStyle-Width="70px">
<ItemTemplate>
<asp:Label ID="LtlUnidadMedida" CssClass="centrarUM" runat="server" Text='<%# Eval("UM") %>'></asp:Label>
<asp:Label ID="LtlUnidadMedida" runat="server" Text='<%# Eval("UM") %>'></asp:Label>
<asp:LinkButton ID="LBAplicarEquivalencia" OnClick="LBAplicarEquivalencia_Click" data-toggle="tooltip" title="Aplicar conversión de equivalencia" Text="" runat="server" Visible="false"> <i class="fa fa-magic"></i></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
@@ -2878,7 +2874,7 @@
</asp:TemplateField>
<asp:TemplateField HeaderText="Factura" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:HyperLink ID="HplFactura" runat="server" CssClass="Texto" Text='<%# Eval("SerieFolio")%>' NavigateUrl='<%# If(Eval("CveCompra").ToString <> "0", Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}"), If(Eval("CveIE").ToString <> "0", Eval("CveIE", "/Bancos/IE.aspx?CveIE={0}"), ""))%>'></asp:HyperLink>
<asp:HyperLink ID="HplFactura" runat="server" CssClass="Texto" Text='<%# Eval("SerieFolio")%>' NavigateUrl='<%# If(Eval("CveCompra").ToString <> "0", Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}"), If(Eval("CveIE").ToString <> "0", Eval("CveIE", "/Bancos/IE.aspx?CveIE={0}"), ""))%>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Compra" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center">
@@ -4125,20 +4121,14 @@
<asp:TemplateField>
<HeaderTemplate>Saldo</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlSaldo" runat="server" Text='<%# Eval("Saldo", "{0:N2}") %>'></asp:Literal>&nbsp;
<asp:Literal ID="LtlSaldo" runat="server" Text='<%# Eval("Saldo", "{0:N2}") %>'></asp:Literal>&nbsp;
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Fecha</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaDocumento", "{0:d}") %>'></asp:Literal>&nbsp;
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaDocumento", "{0:d}") %>'></asp:Literal>&nbsp;
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
@@ -4812,23 +4802,23 @@
<label class="col-md-6"><b>Aplicado: </b></label>
<div class="col-md-6">
<asp:Label ID="LblAplicado" runat="server"></asp:Label>
</div>
<div class="row form-group">
</div>
</div>
</div>
<br />
</div>
<div class="row">
<div class="col-md-12 text-right">
<div class="col-md-6 text-right">
<input type="text" id="TxtBusquedaNC" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusquedaNC','{0}')", GvFacturaNC.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 120px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusquedaNC','{0}')", GvFacturaNC.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<div class="col-md-6 text-right">
<asp:UpdatePanel ID="UpChkNCInvNC" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:CheckBox ID="ChkNCInvNC" Text="Afecta Rep Sin Entrada" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<br />
</div>
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvFacturaNC" OnRowDataBound="GvFacturaNC_RowDataBound"
@@ -4837,6 +4827,7 @@
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="ChkFacturaNC" runat="server" />
<span style='display: none'><%# Eval("UUID")%></span>
</ItemTemplate>
</asp:TemplateField>
<asp:HyperLinkField DataTextField="SerieFolio" HeaderText="Folio" DataNavigateUrlFields="CveCompra" DataNavigateUrlFormatString="/Compras/Compras.aspx?CveCompra={0}" Target="_blank" ItemStyle-HorizontalAlign="Left" />
@@ -4844,7 +4835,7 @@
<asp:BoundField HeaderText="Importe/Saldo" DataField="Saldo" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right">
<ItemTemplate>
<asp:TextBox ID="TxtImporte" runat="server" Width="100%" />
<asp:TextBox ID="TxtImporte" runat="server" Width="100%" CssClass="text-right" />
<ajax:FilteredTextBoxExtender ID="FTETxtImporte" runat="server" TargetControlID="TxtImporte" FilterType="Custom, Numbers" ValidChars="." />
</ItemTemplate>
</asp:TemplateField>

View File

@@ -1594,6 +1594,8 @@ Partial Class Compras_Compras
NCSeleccionFacturasRelacionadas(UUIDSList)
End If
End If
'SE OCUPAN AFUERA DEL POSTBACK ??
@@ -3586,7 +3588,7 @@ Partial Class Compras_Compras
Private Sub CargaPSAlias()
DdlPSAlias2.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
DdlPSAlias2.setEsWebService(True)
If UsuarioActual.CveEmpresa = 66 Then
DdlPSAlias2.ddlWS.Attributes.Add("data-subfamilia", "-1")
@@ -6940,8 +6942,9 @@ Partial Class Compras_Compras
For Each rw As GridViewRow In GvDeudores.Rows
If rw.FCCheckBox("Chk").Checked Then
importeMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
importeMN = (importeMovimiento * tipoCambioActual * Multiplicador).RoundSQL
IdCtaContable = CtaProveedorDeudores
Dim tCveProveedor As Integer = rw.DataKey("CveProveedor").ToEntero
'Conta ContPAQ
If IdCtaContable = 0 Then
@@ -6949,7 +6952,7 @@ Partial Class Compras_Compras
idCuentaContabilizacion = 0
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then
ErrorPrepoliza = True : Exit For
End If
@@ -6961,10 +6964,11 @@ Partial Class Compras_Compras
For Each rw As GridViewRow In GvDeudores.Rows
If rw.FCCheckBox("Chk").Checked Then
importeMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
importeMN = (importeMovimiento * tipoCambioActual * Multiplicador).RoundSQL
IdCtaContable = CtaProveedorDeudores
Dim tCveProveedor As Integer = rw.DataKey("CveProveedor").ToEntero
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 254, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, 254, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=tCveProveedor, CveIE:=rw.DataKey("CveIE").ToString.ToEntero, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then
ErrorPrepoliza = True
Exit For
End If
@@ -10766,6 +10770,19 @@ Partial Class Compras_Compras
'e.Row.FCDropDownList("ddlEAlmacen").SelectedValue = If(e.Row.DBCampo("CveAlmacen").ToEntero <= 0, "-1", e.Row.DBCampo("CveAlmacen"))
If UsuarioActual.Empresa.UsaAC Then e.Row.FCDropDownList("ddlEAlmacen").Enabled = False
If UsuarioActual.Empresa.Funcionalidad(567) = "1" Then
If e.Row.FCDropDownList("ddlEAlmacen").Items.Count > 1 Then
e.Row.FCDropDownList("ddlEAlmacen").SelectedIndex = 1
e.Row.FCCheckBox("cbInv").Checked = True
ddlAlmacenConsignacion_SelectedIndexChanged(e.Row.FCDropDownList("ddlEAlmacen"), Nothing)
CambiaTotalDevengar(Nothing, Nothing)
End If
End If
If Not e.Row.DBCampo("CveMetodoInventario").ToString = "5" Then
e.Row.FCTextBox("TbCantidad").Attributes.Add("onblur", String.Format("ValidarCantidad(this,{0})", If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))))
e.Row.FCTextBox("TbCantidad").Text = If(e.Row.DBCampo("CantidadF").ToString.ToDecimal > e.Row.DBCampo("Cantidad").ToString.ToDecimal, e.Row.DBCampo("Cantidad"), e.Row.DBCampo("CantidadF"))
@@ -20133,35 +20150,24 @@ Partial Class Compras_Compras
Private Sub NCSeleccionFacturasRelacionadas(UUIDSListRelacioandos As List(Of String))
If UUIDSListRelacioandos.Count > 0 Then
Dim SaldoNota As Decimal = TxtTotal.Text.ToDecimal
Dim SaldoNotaPorAplicar As Decimal = SaldoNota
Dim CountAplicacion As Integer = 0
Dim sbNoencontrados As New StringBuilder
For Each UUID As String In UUIDSListRelacioandos
UUID = UUID.ToUpper
Dim UUIDEncontrado As Boolean = False
For Each GvRow As GridViewRow In GvFacturaNC.Rows
Dim UUIDGv As String = GvRow.DataKey("UUID").Trim.ToUpper
If UUID.Trim.ToUpper = GvRow.DataKey("UUID").Trim.ToUpper Then
If UUID.Trim.ToUpper = UUIDGv Then
UUIDEncontrado = True
Exit For
End If
Next
If Not UUIDEncontrado Then
sbNoencontrados.Append($"{UUID},")
End If
If Not UUIDEncontrado Then sbNoencontrados.Append($"{UUID}, <br/>")
Next
Dim TeminarAmortizacion As Boolean = False
@@ -20176,19 +20182,18 @@ Partial Class Compras_Compras
If SaldoFactura <= SaldoNotaPorAplicar Then
SaldoNotaPorAplicar = SaldoNotaPorAplicar - SaldoFactura
GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.ToString("###,###,###.00")
GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.FormatoNumero
GvRow.FCCheckBox("ChkFacturaNC").Checked = True
Else
If SaldoFactura >= SaldoNotaPorAplicar Then
GvRow.FCTextBox("TxtImporte").Text = SaldoNotaPorAplicar.ToString("###,###,###.00")
GvRow.FCTextBox("TxtImporte").Text = SaldoNotaPorAplicar.FormatoNumero
GvRow.FCCheckBox("ChkFacturaNC").Checked = True
SaldoNotaPorAplicar = 0
TeminarAmortizacion = True
Else
GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.ToString("###,###,###.00")
GvRow.FCTextBox("TxtImporte").Text = SaldoFactura.FormatoNumero
GvRow.FCCheckBox("ChkFacturaNC").Checked = True
SaldoNotaPorAplicar = SaldoNotaPorAplicar - SaldoFactura
@@ -20198,36 +20203,28 @@ Partial Class Compras_Compras
CountAplicacion = CountAplicacion + 1
Exit For
End If
If SaldoNotaPorAplicar <= 0 Then
TeminarAmortizacion = True
Exit For
End If
Next
If TeminarAmortizacion Then
Exit For
End If
Next
Dim TipoMensaje As TipoMensaje = TipoMensaje.ToastInformacion
Dim TipoMesaje As TipoMensaje = TipoMensaje.ToastInformacion
TipoMesaje = If(sbNoencontrados.ToString.Length > 0 Or (SaldoNotaPorAplicar <> 0), TipoMensaje.ToastAdventencia, TipoMesaje)
TipoMensaje = If(sbNoencontrados.ToString.Length > 0 Or (SaldoNotaPorAplicar <> 0), TipoMensaje.ToastAdventencia, TipoMensaje)
Dim MsgSalida As String = ""
If sbNoencontrados.ToString.Length > 0 Then
MsgSalida = $"UUIDS no encotradas o sin saldo: {sbNoencontrados.ToString()} <br/>"
MsgSalida = $"Folios Fiscales no encontradas o sin saldo: {sbNoencontrados } <br/><br/>"
End If
MsgSalida = $"{MsgSalida}Se seleccionó {(SaldoNota - SaldoNotaPorAplicar).ToString("###,###,###.00")} de {SaldoNota.ToString("###,###,###.00")} a {CountAplicacion} factura{If(CountAplicacion > 0, "s", "")}."
MsgSalida = $"{MsgSalida} Se seleccionó $ {(SaldoNota - SaldoNotaPorAplicar).FormatoNumero} de $ {SaldoNota.FormatoNumero} a {CountAplicacion} factura {If(CountAplicacion > 0, "s", "")}."
Alert(MsgSalida, TipoMesaje)
Alert(MsgSalida, TipoMensaje)
If CountAplicacion > 0 Then
BtnFacturaNC_Click(Nothing, Nothing)
@@ -20235,8 +20232,6 @@ Partial Class Compras_Compras
End If
End Sub
@@ -20244,8 +20239,6 @@ End Class
Public Class MMensajeDevolucion
Public Property CveMovimiento As Integer
Public Property TieneError As Boolean

View File

@@ -115,7 +115,7 @@
<div class="catcuentas left">Subcuenta de</div>
<div class="catcuentas right">
<asp:TextBox ID="Tsubcuenta" runat="server" Enabled="False" Width="140px" ClientIDMode="Static"></asp:TextBox>
<asp:DropDownList ID="DdlCuentaContable" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="false" DataTextField="CtaCodigo" style="max-width:160px"
<asp:DropDownList ID="DdlCuentaContable" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="CtaCodigo" style="max-width:160px"
DataValueField="Id" Width="160px" Visible="false">
</asp:DropDownList>
<br />

View File

@@ -331,7 +331,7 @@ Partial Class Contabilidad2_CatCuentas
Dim ObjConta As New ClsContabilidad
If ObjConta.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
If ObjConta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then
DdlCuentaContable.DataSource = ObjConta.DtResultados
End If

View File

@@ -926,7 +926,7 @@
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Value xml:space="preserve"> </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>calibri</FontFamily>
@@ -980,6 +980,9 @@
<Left>0.01938in</Left>
<Height>0.64213in</Height>
<Width>7.82181in</Width>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Style>None</Style>
@@ -1394,7 +1397,7 @@
<Width>20.06179cm</Width>
<ZIndex>10</ZIndex>
<Visibility>
<Hidden>= (Parameters!AplicaPagare.Value="0" OrElse Parameters!AplicaPagare.Value="")</Hidden>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
@@ -3259,7 +3262,7 @@
<Paragraph>
<TextRuns>
<TextRun>
<Value>Éste documento es una representacion impresa de un CFDi</Value>
<Value>Éste documento es una representacion impresa de un CFDi </Value>
<Style>
<FontSize>9pt</FontSize>
</Style>

View File

@@ -682,6 +682,7 @@
</TablixMembers>
</TablixRowHierarchy>
<DataSetName>DsOC</DataSetName>
<Top>0cm</Top>
<Left>0.04788in</Left>
<Height>0.36752in</Height>
<Width>8.15357in</Width>
@@ -1702,7 +1703,7 @@
<Paragraph>
<TextRuns>
<TextRun>
<Value> Citrus Game, S.A. de C.V.</Value>
<Value>CITRUS GAME S.A.P.I. DE C.V.</Value>
<Style>
<FontFamily>Myriad Pro</FontFamily>
<FontSize>8.5pt</FontSize>

View File

@@ -650,7 +650,7 @@ Partial Class General_SaldosIniciales
If UsuarioActual.Empresa.TipoContabilizacion = 1 Then
Dim ObjConta As New ClsContabilidad
If ObjConta.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
If ObjConta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then
DTCuentasContables = ObjConta.DtResultados
End If
ObjConta.Dispose()
@@ -1502,8 +1502,8 @@ Partial Class General_SaldosIniciales
Dim CveProveedorSucursal As Integer = Row("CveProveedorSucursal").ToString.ToEntero
Dim PorcentajeIVA As String = Row("PorcentajeIVA").ToString
Dim ImpuestosLocales As Decimal = If(dt.Columns.Contains("ImpuestosLocales"), Row("ImpuestosLocales").ToString, "0").ToDecimal
Dim RetIVAPorcentaje As Decimal = Row("RetIVAPorcentaje").ToString.ToDecimal
Dim RetISRPorcentaje As Decimal = Row("RetISRPorcentaje").ToString.ToDecimal
If Not CvePS > 0 Then Alert(String.Format("No se encontró el Producto Servicio"), TipoMensaje.MsgError) : ErrorCompras = True
@@ -1511,7 +1511,8 @@ Partial Class General_SaldosIniciales
If Not CveProveedor > 0 Then Alert(String.Format("No se encontró el Proveedor con el RFC: {0}", {RFC}), TipoMensaje.MsgError) : ErrorCompras = True : Exit For
If Not CveProveedorSucursal > 0 Then CveProveedorSucursal = -1
TipoDocto = IIf(TipoDocto.ToUpper.Contiene("INGRESOS", "INGRESO", "ING"), "Fac", "NC").ToString
TipoDocto = IIf(TipoDocto.ToUpper.Contiene("INGRESOS", "INGRESO", "ING", "FACTURA"), "Fac", "NC").ToString
'Temporalmente SE BORRARA
@@ -1553,7 +1554,7 @@ Partial Class General_SaldosIniciales
CveCompra = ObjCompras.CveCompra
'Compra Detalle
If Not ObjCompras.AddCompraDetalle(CveCompra, CveUnidadMedida, CvePS, Sucursal.ToEntero, -1, 0, 1, SubTotal, 0.16D, SubTotal, 0, "Carga Inicial", -1) Then
If Not ObjCompras.AddCompraDetalle(CveCompra, CveUnidadMedida, CvePS, Sucursal.ToEntero, -1, 0, 1, SubTotal, 0.16D, SubTotal, 0, "Carga Inicial", -1, IVAPorcentaje:=PorcentajeIVA.ToDecimal, RetIVAPorcentaje:=RetIVAPorcentaje, RetISRPorcentaje:=RetISRPorcentaje) Then
ErrorCompras = True
Exit For
End If
@@ -1563,7 +1564,13 @@ Partial Class General_SaldosIniciales
'PrePólizaDetalle
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Total, Folio, IIf(TipoDocto = "Fac", 5, 18).ToString.ToEntero, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, SubTotal, Folio, 6, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=SubTotal, CveClasificacion:=CveClasificacion, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Folio, 14, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IVA, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For
If IVA > 0 Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Folio, 14, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IVA, CveSubProyecto:=Sucursal.ToEntero, CveClasificacion:=CveClasificacion, PorcentajeImpuesto:=PorcentajeIVA.ToDecimal) Then ErrorCompras = True : Exit For
End If
If IEPS > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, IEPS, Folio, 25, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=IEPS, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For
If RetIVA > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, RetIVA, Folio, 15, String.Format("{0}-{1}", Serie, Folio), Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=RetIVA, CveSubProyecto:=Sucursal.ToEntero) Then ErrorCompras = True : Exit For
@@ -1572,8 +1579,8 @@ Partial Class General_SaldosIniciales
'Saldo
If Saldo < Total Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Total - Saldo, Folio, 17, Folio, Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total - Saldo) Then ErrorCompras = True : Exit For
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Total - Saldo, Folio, 95, Folio, Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total - Saldo) Then ErrorCompras = True : Exit For
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Total - Saldo, $"{Folio} SALDO INICIAL", 17, Folio, Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total - Saldo) Then ErrorCompras = True : Exit For
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Total - Saldo, $"{Folio} SALDO INICIAL", 95, Folio, Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedor, ImporteMX:=Total - Saldo) Then ErrorCompras = True : Exit For
End If
Encontrados = Encontrados + 1
@@ -2372,8 +2379,8 @@ Partial Class General_SaldosIniciales
Dim Clasificacion As String = dRow("Clasificacion").ToString.Trim
Dim Categoria As String = dRow("Categoria").ToString.Trim
Dim UsoClasificacion As String = dRow("UsoClasificacion").ToString.Trim.ToUpper
Dim CuentaContableIngreso As String = dRow("CuentaContableIngreso").ToString.Trim
Dim CuentaContableGasto As String = dRow("CuentaContableGasto").ToString.Trim
Dim CuentaContableIngreso As String = dRow("CuentaContableIngreso").ToString.Trim.Replace("-", "")
Dim CuentaContableGasto As String = dRow("CuentaContableGasto").ToString.Trim.Replace("-", "")
Dim CveClasificacion As Integer = -1
Dim CveUsoClasificacion As Integer = -1

View File

@@ -157,16 +157,44 @@
</div>
</div>
<div class="row">
<div class="row" >
<div class="col-md-2">
<b>Drección:</b>
<div class="col-md-2" style="margin-top: 5px" >
<b>Dirección:</b>
</div>
<div class="col-md-4">
<div class="col-md-4" style="margin-top: 5px" >
<asp:TextBox ID="TxtDireccion" runat="server" MaxLength="300" CssClass="form-control" />
</div>
<div class="col-md-2" style="margin-top: 5px" id="DVDatosAdicionalesAcum1" runat="server" visible="false" >
<b>Telefono:</b>
</div>
<div class="col-md-4" style="margin-top: 5px" id="DVDatosAdicionalesAcum3" runat="server" visible="false" >
<asp:TextBox ID="TxtTelefono" CssClass="form-control" runat="server" MaxLength="10"></asp:TextBox>
<ajax:MaskedEditExtender ID="MaskedEditExtender4" runat="server" TargetControlID="TxtTelefono" ClearMaskOnLostFocus="false" MaskType="None" Mask="(999) 999-9999" MessageValidatorTip="true" InputDirection="LeftToRight" ErrorTooltipEnabled="True"></ajax:MaskedEditExtender>
</div>
</div>
<div class="row" id="DVDatosAdicionalesAcum2" runat="server" visible="false">
<div class="col-md-2" style="margin-top: 5px" >
<b>Modelo:</b>
</div>
<div class="col-md-4" style="margin-top: 5px;text-align:left">
<asp:DropDownList ID="DdlModeloAuto" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" CausesValidation="true" DataTextField="ModeloMarca" DataValueField="CveModeloAuto"> </asp:DropDownList>
</div>
<div class="col-md-2" style="margin-top: 5px" >
<b>Año:</b>
</div>
<div class="col-md-4" style="margin-top: 5px" >
<asp:TextBox ID="TxtAnio" CssClass="form-control" runat="server" MaxLength="4"></asp:TextBox>
</div>
</div>
</div>
</div>
</ContentTemplate>

View File

@@ -5,6 +5,7 @@ Imports Extensiones
Imports System.IO
Imports System.Data
Imports Microsoft.Reporting.WebForms
Imports ADSNetLibrary.SIGAPI.Models.Sistema
'Imports msExcel = Microsoft.Office.Interop.Excel
'Imports VBIDE
@@ -291,6 +292,7 @@ Partial Class OS_OrdenesServicios
CargaPSCaracteristicasOpciones()
CargaCuentasCaracteristicas()
CargaAlmacen()
CargaModelos()
CreaDT()
CreaDTPS()
@@ -362,6 +364,10 @@ Partial Class OS_OrdenesServicios
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
DVDatosAdicionalesAcum1.Visible = True
DVDatosAdicionalesAcum2.Visible = True
DVDatosAdicionalesAcum3.Visible = True
Else
LblCuentaEquipoTH.Visible = False
DdlCuentaEquipo.Visible = False
End If
@@ -538,6 +544,12 @@ Partial Class OS_OrdenesServicios
DivMateriales.Visible = True
ImgImprimir.Visible = True
TxtTelefono.Text = ObjOS.Telefono
DdlModeloAuto.SelectedValueExist(ObjOS.CveModeloAuto)
TxtAnio.Text = ObjOS.Año
CargaEventoBitacora()
CargaHistorial()
Else
@@ -1032,7 +1044,9 @@ Partial Class OS_OrdenesServicios
If Not CveOS > 0 Then
Dim bandera As Integer = DdlEstatusOS.SelectedValue.ToEntero
If Not ObjOrdenServicio.AddOrdenesServicios(CveCliente, DdlSubProyecto.SelectedValue.ToEntero, TxtSolicito.Text, TxtFechaRecibido.Text.ToDateTime, TxtDescripcion.Text, UsuarioActual.CveUsuario, EstatusOrdenServicio, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCotizacion, -1, -1, DdlTipoOrdenOS.SelectedValue.ToEntero, CveClienteSucursal:=DdlSucursalCliente.SelectedValue.ToEntero, Direccion:=TxtDireccion.Text) Then
If Not ObjOrdenServicio.AddOrdenesServicios(CveCliente, DdlSubProyecto.SelectedValue.ToEntero, TxtSolicito.Text, TxtFechaRecibido.Text.ToDateTime, TxtDescripcion.Text, UsuarioActual.CveUsuario, EstatusOrdenServicio,
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCotizacion, -1, -1, DdlTipoOrdenOS.SelectedValue.ToEntero, CveClienteSucursal:=DdlSucursalCliente.SelectedValue.ToEntero,
Direccion:=TxtDireccion.Text, Telefono:=TxtTelefono.Text, CveModeloAuto:=DdlModeloAuto.SelectedValue.ToEntero, Año:=TxtAnio.Text) Then
Errores = True
End If
CargaCliente(CveCliente)
@@ -1129,7 +1143,9 @@ Partial Class OS_OrdenesServicios
Else
If CveTecnico = UsuarioActual.CveUsuario Then
If ObjOrdenServicio.UpdateOrdenesServicios(TxtSolicito.Text, TxtFechaRecibido.Text, TxtDescripcion.Text, UsuarioActual.CveUsuario, DdlEstatusOS.SelectedValue.ToEntero, CveOS, UsuarioActual.CveUsuario, DdlTipoOrdenOS.SelectedValue.ToEntero, CveClienteSucursal:=DdlSucursalCliente.SelectedValue.ToEntero, Direccion:=TxtDireccion.Text) Then
If ObjOrdenServicio.UpdateOrdenesServicios(TxtSolicito.Text, TxtFechaRecibido.Text, TxtDescripcion.Text, UsuarioActual.CveUsuario, DdlEstatusOS.SelectedValue.ToEntero, CveOS, UsuarioActual.CveUsuario,
DdlTipoOrdenOS.SelectedValue.ToEntero, CveClienteSucursal:=DdlSucursalCliente.SelectedValue.ToEntero, Direccion:=TxtDireccion.Text, Telefono:=TxtTelefono.Text,
CveModeloAuto:=DdlModeloAuto.SelectedValue.ToEntero, Año:=TxtAnio.Text) Then
For Each Row As DataRow In TmpDT.Rows
If Not Errores Then
Dim CvePS As Integer = Row("CvePS").ToString.ToEntero
@@ -2536,6 +2552,16 @@ Partial Class OS_OrdenesServicios
DdlAlmacenDestino.DataBind()
DdlAlmacenDestino.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaModelos()
Dim ObjGral As New ClsGenerales
If ObjGral.ModelosAutosGet(1, UsuarioActual.CveEmpresa) Then
DdlModeloAuto.DataSource = ObjGral.DtResultados
End If
DdlModeloAuto.DataBind()
DdlModeloAuto.Items.Insert(0, New ListItem("Sin Asignar", "-1"))
End Sub
Public Sub ShowDivSolicitarMaterial_Click(sender As Object, e As EventArgs)
RegistraScript("ShowDivGvSolicitarMaterial();")
End Sub

View File

@@ -1,5 +1,8 @@
<%@ Page Title="Reporte Servicio a Domicilio" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepServicioDomicilio.aspx.vb" Inherits="OS_RepServicioDomicilio" %>
<%@ Register Assembly="TimePicker" Namespace="MKB.TimePicker" TagPrefix="cc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
@@ -87,19 +90,6 @@
height: 150px !important;
}
/*#overlay a:hover {
position: fixed;
display: none;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(0,0,0,0.5);
z-index: 2;
cursor: pointer;
}*/
#moopio a {
@@ -137,8 +127,6 @@
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter">
@@ -159,9 +147,7 @@
<div class="col-md-2">
<asp:DropDownList ID="DdlSubProyecto" ClientIDMode="Static" DataValueField="CveSubProyecto" DataTextField="SubProyecto" runat="server" CssClass="form-control select2me" Width="150px" AppendDataBoundItems="true"></asp:DropDownList>
</div>
</div>
</div>
</div>
@@ -177,6 +163,24 @@
<br />
<asp:UpdatePanel runat="server" ID="UpOrdenesSinAsignar" UpdateMode="Conditional" >
<ContentTemplate>
<div class="row" runat="server" id="DVOSPendientes" visible="false">
<div class="col-md-1">
Orden de Servicio:
</div>
<div class="col-md-4">
<asp:DropDownList runat="server" ID="DdlOrdenesSinAsignar" CssClass="select2me" DataValueField="CveOSDetalle" DataTextField="ConceptoDdl" Width="100%"></asp:DropDownList>
</div>
<div class="col-md-2">
<asp:LinkButton runat="server" ID="LnkOrdenesSinAsignarMostarModal" CssClass="Texto" OnClick="LnkOrdenesSinAsignarMostarModal_Click">Asignar</asp:LinkButton>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="row">
<div class="col-md-12 col-sm-12">
@@ -411,6 +415,99 @@
<div id="DVModalOSAsginar" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UpModalOSAsginar" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Asignar Orden de Servicio</h4>
</div>
<div class="modal-body" >
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input">
<asp:Label runat="server" ID="LblModalCliente" Text="" CssClass="form-control"></asp:Label>
<label for="<%= LblModalCliente.ClientID.ToString()%>">Cliente: </label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input">
<asp:Label runat="server" ID="LblModalConcepto" Text="" CssClass="form-control"></asp:Label>
<label for="<%= LblModalConcepto.ClientID.ToString()%>">Concepto: </label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group form-md-line-input">
<asp:Label runat="server" ID="LblModalSubProyecto" Text="" CssClass="form-control"></asp:Label>
<label for="<%= LblModalSubProyecto.ClientID.ToString()%>"><asp:Label runat="server" ID="LblModalSubProyectoLabel"></asp:Label>: </label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlTecnicoAsignar" Width="100%" runat="server" CssClass="form-control select2me" DataTextField="Nombre" Visible="true" DataValueField="CveUsuario">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvDdlTecnicoAsignar" InitialValue="-1" runat="server" ControlToValidate="DdlTecnicoAsignar" Display="None"
ErrorMessage="El campo <b>''Técnico''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCERfvDdlTecnicoAsignar" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlTecnicoAsignar" Width="350px"></ajax:ValidatorCalloutExtender>
<label for="<%= DdlTecnicoAsignar.ClientID.ToString()%>">Técnico: </label>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="width:150px">
<asp:TextBox ID="TxtModalFechaOS" CssClass="form-control" runat="server" Width="150px"></asp:TextBox>
<span class="input-group-btn " style="position: absolute; right: 41px; top: 9px;">
<asp:LinkButton ID="LnkTxtModalFechaOS" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="METxtModalFechaOS" runat="server" TargetControlID="TxtModalFechaOS" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CETxtModalFechaOS" TargetControlID="TxtModalFechaOS" PopupButtonID="LnkTxtModalFechaOS" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RfvTxtModalFechaOS" runat="server" ControlToValidate="TxtModalFechaOS" Display="None"
ErrorMessage="El campo <b>''Fecha''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VceRfvTxtModalFechaOS" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtModalFechaOS" Width="350px"></ajax:ValidatorCalloutExtender>
<label for="<%= TxtModalFechaOS.ClientID.ToString()%>">Fecha: </label>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input">
<cc1:TimeSelector ID="TSTimeSelector" runat="server" DisplaySeconds="false" DisplayButtons="false" Visible="true" CssClass="form-control" Font-Size="13pt"></cc1:TimeSelector>
<label for="<%= TSTimeSelector.ClientID.ToString()%>">Hora Servicio: </label>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:LinkButton runat="server" ID="LnkModalAsignar" CssClass="btn btn-success" Text="Asignar" OnClick="LnkModalAsignar_Click" ValidationGroup="GrpAsignar" ></asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
@@ -454,10 +551,7 @@
function selectDate(start, end, allDay) {
$('#ModalAgenda').modal('show');
$("#SpanTituloAgenda").html("Agregar Evento");;
//$("#< %=BtnGuardar.ClientID%>").val('Guardar');
//$("#< %=BtnEliminar.ClientID%>").css("display", "none");
$("#SpanTituloAgenda").html("Agregar Evento");
$("#HdnCveEvento").val(-1);
@@ -490,9 +584,7 @@
function updateEvent(event, element) {
$('#ModalAgenda').modal('show');
//$("#SpanTituloAgenda").html("Actualizar Evento");;
//$("#< %=BtnGuardar.ClientID%>").val('Actualizar');
//$("#< %=BtnEliminar.ClientID%>").css("display", "");
$("#DivDescripcionUpdate").css("display", "block");
$("#<%=TxtDescripcionAgenda.ClientID%>").css("display", "none");
@@ -520,8 +612,7 @@
$("#TxtFechaFinAgenda").val("" + event.end.format("DD/MM/YYYY HH:mm"));
//Identifica el tipo de Fecha Termino de la Recurrencia
if (event.recurrenciafin == 0) {
//$("#RBSinFechaFinUpdate").prop('checked', true);
if (event.recurrenciafin == 0) {
$("#TxtFrecuencia").val('0');
} else if (!isNaN(event.recurrenciafin)) {
$("#RBNumeroOcurrencias").prop('checked', true);
@@ -619,7 +710,8 @@
// if addresult is -1, means event was not added
// alert("added key: " + addResult);
if (addResult != -1) {
if (addResult != -1) {
$('#calendar').fullCalendar('renderEvent',
{
title: $("#addEventName").val(),
@@ -632,8 +724,12 @@
true // make the event "stick"
);
$('#calendar').fullCalendar('option', 'minTime', '06:00:00');
$('#calendar').fullCalendar('option', 'maxTime', '17:00:00');
$('#calendar').fullCalendar('unselect');
}
}
@@ -770,6 +866,8 @@
selectHelper: true,
select: selectDate,
editable: true,
minTime: "08:00:00",
maxTime: "19:00:00",
events: {
url: '/Ashx/CargaEventos.ashx',
type: 'GET',

View File

@@ -5,6 +5,8 @@ Imports Extensiones
Imports System.Data
Imports Microsoft.Reporting.WebForms
Imports System.Web.Services
Imports Telerik.Web.UI
Imports APP_Code_CSharp
Partial Class OS_RepServicioDomicilio
Inherits ClsPaginas
@@ -59,6 +61,126 @@ Partial Class OS_RepServicioDomicilio
End Property
Private Property DT_OSSubProyectos As DataTable
Get
If ViewState("DT_OSSubProyectos") Is Nothing Then
ViewState("DT_OSSubProyectos") = New DataTable
End If
Return DirectCast(ViewState("DT_OSSubProyectos"), DataTable)
End Get
Set(value As DataTable)
ViewState("DT_OSSubProyectos") = value
End Set
End Property
Private Property DT_OSNoAsignadas As DataTable
Get
If ViewState("DT_OSNoAsignadas") Is Nothing Then
ViewState("DT_OSNoAsignadas") = New DataTable
End If
Return DirectCast(ViewState("DT_OSNoAsignadas"), DataTable)
End Get
Set(value As DataTable)
ViewState("DT_OSNoAsignadas") = value
End Set
End Property
Private Property CveOSDetalleAsignar As Integer
Get
If ViewState("CveOSDetalleAsignar") Is Nothing Then
ViewState("CveOSDetalleAsignar") = -1
End If
Return ViewState("CveOSDetalleAsignar").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveOSDetalleAsignar") = value
End Set
End Property
Private Property CveSubProyectoAsignar As Integer
Get
If ViewState("CveSubProyectoAsignar") Is Nothing Then
ViewState("CveSubProyectoAsignar") = -1
End If
Return ViewState("CveSubProyectoAsignar").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveSubProyectoAsignar") = value
End Set
End Property
Private Property CveOSAsignar As Integer
Get
If ViewState("CveOSAsignar") Is Nothing Then
ViewState("CveOSAsignar") = -1
End If
Return ViewState("CveOSAsignar").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveOSAsignar") = value
End Set
End Property
Private Property FolioAsignar As String
Get
If ViewState("FolioAsignar") Is Nothing Then
ViewState("FolioAsignar") = ""
End If
Return ViewState("FolioAsignar").ToString
End Get
Set(value As String)
ViewState("FolioAsignar") = value
End Set
End Property
Private Property ConceptoAsignar As String
Get
If ViewState("ConceptoAsignar") Is Nothing Then
ViewState("ConceptoAsignar") = ""
End If
Return ViewState("ConceptoAsignar").ToString
End Get
Set(value As String)
ViewState("ConceptoAsignar") = value
End Set
End Property
Private Property ClienteAsignar As String
Get
If ViewState("ClienteAsignar") Is Nothing Then
ViewState("ClienteAsignar") = ""
End If
Return ViewState("ClienteAsignar").ToString
End Get
Set(value As String)
ViewState("ClienteAsignar") = value
End Set
End Property
Private Property SubProyectoAsignar As String
Get
If ViewState("SubProyectoAsignar") Is Nothing Then
ViewState("SubProyectoAsignar") = ""
End If
Return ViewState("SubProyectoAsignar").ToString
End Get
Set(value As String)
ViewState("SubProyectoAsignar") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
@@ -66,12 +188,14 @@ Partial Class OS_RepServicioDomicilio
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyectoEtiqueta)
LblSubProyectoFiltro.Text = LblSubProyectoEtiqueta.Text
DdlTecnico.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
DdlTecnico.DataBind()
DdlTecnico.Items.Insert(0, New ListItem("Todos", "-1"))
LblModalSubProyectoLabel.Text = LblSubProyectoEtiqueta.Text
CargaTecnicos()
ConsultaOrdenesServiciosNoAsignadas()
CargaOrdenesServiciosNoAsignadas()
CargaTecnicosAsignar()
InicializaCalendar()
End If
End Sub
@@ -115,6 +239,46 @@ Partial Class OS_RepServicioDomicilio
ObjEventos.Dispose()
End Sub
Private Sub CargaTecnicos()
DdlTecnico.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
DdlTecnico.DataBind()
DdlTecnico.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Private Sub CargaTecnicosAsignar()
Dim ObjOS As New ClsOS
Dim TecnicosSubProyectos As New DataTable
Dim TecnicosResultado As New DataTable
If ObjOS.GetSubProyectosEstatusInicial(-1, 3, UsuarioActual.CveEmpresa) Then
TecnicosSubProyectos = ObjOS.DtResultados
End If
For Each SubProyecto As DataRow In DT_OSSubProyectos.Rows
Dim TecnicosSubProyectoAux As DataTable = TecnicosSubProyectos.FiltraParametros(String.Format("SubProyecto = '{0}'", SubProyecto.Item("SubProyecto")))
If TecnicosSubProyectoAux.Rows.Count > 0 Then
Dim EstatusDeTipoProcesoMenor As Integer = TecnicosSubProyectoAux.Rows(0).Item("CveEstatusOrdenServicio").ToString.ToEntero
Dim dtAuxiliar As New DataTable
dtAuxiliar = TecnicosSubProyectos.FiltraParametros(String.Format("SubProyecto = '{0}' AND CveEstatusOrdenServicio = {1}", SubProyecto.Item("SubProyecto"), EstatusDeTipoProcesoMenor), "", {"CveUsuario", "Nombre"})
TecnicosResultado.Merge(dtAuxiliar)
End If
Next
'DtTecnicosSubProyectos = TecnicosResultado
ObjOS.Dispose()
DdlTecnicoAsignar.DataSource = TecnicosResultado
DdlTecnicoAsignar.DataBind()
DdlTecnicoAsignar.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
UpModalOSAsginar.Update()
End Sub
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
Dim ObjEventos As New ClsOIEventos
@@ -281,4 +445,325 @@ Partial Class OS_RepServicioDomicilio
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
RegistraScript("Calendario();")
End Sub
Private Sub CargaOrdenesServiciosNoAsignadas()
DdlOrdenesSinAsignar.DataSource = DT_OSNoAsignadas
DdlOrdenesSinAsignar.DataBind()
UpOrdenesSinAsignar.Update()
End Sub
Private Sub ConsultaOrdenesServiciosNoAsignadas()
Dim CveEstatusOrdenServicio As Integer = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus=1").ToEntero
If CveEstatusOrdenServicio = 0 Then
Alert("No se pudo carga el estatus", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim ObjOS As New ClsOS
If ObjOS.GetOrdenesServiciosNoAsignadas(-1, -1, CveEstatusOrdenServicio, UsuarioActual.CveEmpresa, "-1", "-1") Then
DT_OSSubProyectos = ObjOS.DtResultados.FiltraParametros("", "", {"CveSubProyecto", "SubProyecto"})
DT_OSNoAsignadas = ObjOS.DtResultados
Else
DT_OSSubProyectos = New DataTable
DT_OSNoAsignadas = New DataTable
End If
ObjOS.Dispose()
If DT_OSNoAsignadas.Rows.Count > 0 Then
DVOSPendientes.Visible = True
Else
DVOSPendientes.Visible = False
End If
UpOrdenesSinAsignar.Update()
End Sub
Protected Sub LnkOrdenesSinAsignarMostarModal_Click(sender As Object, e As EventArgs)
CveOSDetalleAsignar = -1
CveOSAsignar = -1
CveSubProyectoAsignar = -1
Dim DTable As DataTable = DT_OSNoAsignadas.FiltraParametros($"CveOSDetalle={DdlOrdenesSinAsignar.SelectedValue}")
If DTable.Rows.Count = 1 Then
CveOSDetalleAsignar = DTable.Rows(0)("CveOSDetalle").ToString.ToEntero
CveSubProyectoAsignar = DTable.Rows(0)("CveSubProyecto").ToString.ToEntero
CveOSAsignar = DTable.Rows(0)("CveOS").ToString.ToEntero
FolioAsignar = DTable.Rows(0)("Folio").ToString
LblModalConcepto.Text = DTable.Rows(0)("Concepto").ToString
LblModalCliente.Text = DTable.Rows(0)("Nombre").ToString
LblModalSubProyecto.Text = DTable.Rows(0)("SubProyecto").ToString
UpModalOSAsginar.Update()
RegistraScript("$('#DVModalOSAsginar').modal('show');")
Else
Alert("Error al cargar datos.")
End If
End Sub
Protected Sub LnkModalAsignar_Click(sender As Object, e As EventArgs)
Dim TieneError As Boolean = False
Dim CveEstatusOS = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 2", "CveEstatusOrdenServicio ASC").ToEntero
Dim CorreoAsignado As String = ""
Dim picker As MKB.TimePicker.TimeSelector = TSTimeSelector
Dim time As DateTime
time = DateTime.Parse(String.Format("{0} {1}:{2} {3}", TxtModalFechaOS.Text, picker.Hour, picker.Minute, picker.AmPm))
Dim ObjOS As New ClsOS
ObjOS.IniciaTransacSQL()
If ObjOS.GetSubProyectosEstatusInicial(DdlTecnicoAsignar.SelectedValue.ToEntero, 3, UsuarioActual.CveEmpresa) Then
Dim subProyectoDelTecnico As DataTable
subProyectoDelTecnico = ObjOS.DtResultados.FiltraParametros($"CveSubProyecto = {CveSubProyectoAsignar}")
If subProyectoDelTecnico.Rows.Count > 0 Then
If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOSDetalleAsignar, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, time, UsuarioActual.CveEmpresa) Then
TieneError = True
End If
Else
Alert("El técnico y la Orden de Servicio deben pertenecer al mismo subProyecto", TipoMensaje.MsgAdvertencia)
TieneError = True
End If
End If
If Not TieneError Then
If Not ObjOS.UpdateOrdenesServiciosEstatus(CveEstatusOS, UsuarioActual.CveUsuario, CveOSAsignar) Then
TieneError = True
End If
If Not TieneError Then
Dim RecurrenciaTipo = 0, Frecuencia = -1, DiasSemana = "-1", Dias = -1, Mes = -1, RecurrenciaFin = "-1"
Dim OIDescripcion As String = $"{DdlTecnicoAsignar.SelectedItem.Text} <b><a href='/OS/OrdenesServicios.aspx?CveOS={CveOSAsignar}' target='_blank' class='Texto' >Orden de servicio {FolioAsignar} </a></b>"
Dim ObjEventos As New ClsOIEventos(ObjOS.IniciaTransacSQL())
If Not ObjEventos.AddEventoAgenda(2, DdlTecnicoAsignar.SelectedItem.Text, OIDescripcion, 2, time, time.AddHours(1), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=2,
Importe:=0, CveOS:=CveOSAsignar, CveSubProyecto:=CveSubProyectoAsignar) Then
TieneError = True
End If
End If
CorreoAsignado = GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero).Rows(0)("Correo").ToString
End If
If Not TieneError Then
ObjOS.Commit()
Else
ObjOS.RollBack()
End If
ObjOS.Dispose()
If Not TieneError And CorreoAsignado.Trim.Length > 0 Then
MandaCorreOS(CveOSAsignar, CorreoAsignado)
End If
If Not TieneError Then
ConsultaOrdenesServiciosNoAsignadas()
Alert("Orden asignada correctamente.")
RegistraScript("$('#DVModalOSAsginar').modal('hide');Calendario();")
End If
End Sub
Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String)
Dim ObjOS As New ClsOS()
Dim params As New List(Of ReportParameter)
Dim CveFolio = ""
Dim TmpDTOS = New DataTable
TmpDTOS.Columns.Add("CveOSDetalle", GetType(Integer))
TmpDTOS.Columns.Add("CveClasificacion", GetType(Integer))
TmpDTOS.Columns.Add("Clasificacion", GetType(String))
TmpDTOS.Columns.Add("CvePS", GetType(Integer))
TmpDTOS.Columns.Add("CveUM", GetType(Integer))
TmpDTOS.Columns.Add("UM", GetType(String))
TmpDTOS.Columns.Add("Cantidad", GetType(Integer))
TmpDTOS.Columns.Add("PS", GetType(String))
TmpDTOS.Columns.Add("Especificaciones", GetType(String))
TmpDTOS.Columns.Add("Materiales", GetType(String))
TmpDTOS.Columns.Add("CveCuentaEquipo", GetType(Integer))
TmpDTOS.Columns.Add("Observaciones", GetType(String))
TmpDTOS.Columns.Add("FechaAtencion", GetType(String))
TmpDTOS.Columns.Add("CveUsuarioAtendio", GetType(Integer))
TmpDTOS.Columns.Add("UsuarioAtendio", GetType(String))
TmpDTOS.Columns.Add("FechaTermino", GetType(String))
TmpDTOS.Columns.Add("FechaEntrega", GetType(String))
TmpDTOS.Columns.Add("CveUsuarioEntrego", GetType(Integer))
TmpDTOS.Columns.Add("UsuarioEntrego", GetType(String))
TmpDTOS.Columns.Add("SeFacturara", GetType(String))
TmpDTOS.Columns.Add("SeSuperviso", GetType(String))
TmpDTOS.Columns.Add("Estatus", GetType(String))
TmpDTOS.Columns.Add("Archivo", GetType(String))
TmpDTOS.Columns.Add("ComentarioTecnico", GetType(String))
Dim TmpDTMaterialesOS = New DataTable
TmpDTMaterialesOS.Columns.Add("CveOSDetalle", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("CveConsecutivo", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("CveConsecutivoDetalle", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("CveMaterial", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("Cantidad", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("CveClasificacion", GetType(Integer))
TmpDTMaterialesOS.Columns.Add("CvePS", GetType(String))
TmpDTMaterialesOS.Columns.Add("CveUM", GetType(String))
TmpDTMaterialesOS.Columns.Add("Clasificacion", GetType(String))
TmpDTMaterialesOS.Columns.Add("PS", GetType(String))
TmpDTMaterialesOS.Columns.Add("UM", GetType(String))
Dim FolioOS As String = ""
Dim RutaReporte As New System.IO.FileInfo(String.Format("{0}Formatos/OrdenServicio.rdlc", UsuarioActual.Empresa.Ruta))
If ObjOS.GetOrdenesServicios(CveOS, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then
If ObjOS.DtResultados.Rows.Count > 0 Then
Dim dtOS As DataTable = ObjOS.DtResultados
Dim dr As DataRow = dtOS.Rows(0)
params.Add(New ReportParameter("Cliente", dr("Cliente").ToString))
params.Add(New ReportParameter("Solicito", dr("PersonaSolicito").ToString))
params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
params.Add(New ReportParameter("Recibio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaRecibido", dr("FechaRecepcion").ToString))
params.Add(New ReportParameter("FolioOS", dr("Folio").ToString))
FolioOS = dr("Folio").ToString
params.Add(New ReportParameter("ClienteTelefono", dr("Telefono").ToString))
params.Add(New ReportParameter("ClienteCalle", dr("Direccion").ToString))
params.Add(New ReportParameter("ClienteColonia", dr("Colonia").ToString))
params.Add(New ReportParameter("ClienteCiudad", dr("Ciudad").ToString))
params.Add(New ReportParameter("ClienteEstado", dr("Estado").ToString))
CveFolio = dr("Folio").ToString
If RutaReporte.Exists Then
params.Add(New ReportParameter("NoDeCliente", dr("CveCliente").ToString))
params.Add(New ReportParameter("RFC", dr("RFC").ToString))
params.Add(New ReportParameter("Vendedor", " "))
params.Add(New ReportParameter("Correo", dr("Correo").ToString))
params.Add(New ReportParameter("CodigoDeServicio", dr("CveOS").ToString))
params.Add(New ReportParameter("Sucursal", dr("SubProyecto").ToString))
params.Add(New ReportParameter("TipoServicio", dr("TipoServicio").ToString))
params.Add(New ReportParameter("TipoEquipo", dr("TipoEquipo").ToString))
params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
params.Add(New ReportParameter("Copia", "Copia: Original"))
params.Add(New ReportParameter("Equipo", dr("Equipo").ToString))
End If
End If
End If
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
If Not RutaReporte.Exists Then
RutaReporte = New System.IO.FileInfo(String.Format("{0}Empresas\Grales\Formatos\OrdenServicio.rdlc", ModExtensiones.DirectorioBaseEmpresas))
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
End If
If ObjOS.GetOrdenesServiciosDetalle(CveOS) Then
TmpDTOS = ObjOS.DtResultados
End If
If ObjOS.GetDetalleMateriales(-1, CveOS) Then
TmpDTMaterialesOS = ObjOS.DtResultados
End If
Dim lrds As New List(Of ReportDataSource)
Dim rds As New ReportDataSource With {.Name = "DataSet2", .Value = TmpDTMaterialesOS}
Dim rds2 As New ReportDataSource With {.Name = "DataSet1", .Value = TmpDTOS}
lrds.Add(rds)
lrds.Add(rds2)
ObjOS.Dispose()
Dim ReporteByte As Byte() = StreamPDF(RutaReporte.FullName, lrds, params, NombreArchivo:=String.Format("OrdenServicio-{0}", CveFolio))
If ReporteByte IsNot Nothing Then
Try
ViewState("Para") = CorreoUsuarioAsignado
ViewState("ArrayCC") = ""
ViewState("Asunto") = "Asinación Orden de Servicio"
ViewState("FolioOSMail") = FolioOS
ViewState("Body") = "Asinación Orden de Servicio"
ViewState("bytesOS") = ReporteByte
Dim Hilo As New Threading.Thread(AddressOf SendmailOS)
Hilo.Start()
Catch ex As Exception
GuardaLogAD($"Error al enviar correo de OS {ex.StackTrace}")
End Try
End If
End Sub
Private Sub SendmailOS()
Dim Asunto, Para, ArrayCC, Body As String
Asunto = If(IsNothing(ViewState("Asunto")), "", ViewState("Asunto").ToString)
Para = If(IsNothing(ViewState("Para")), "", ViewState("Para").ToString)
ArrayCC = If(IsNothing(ViewState("ArrayCC")), "", ViewState("ArrayCC").ToString)
Body = If(IsNothing(ViewState("Body")), "", ViewState("Body").ToString)
Dim Mail As New ClsSisMail()
Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.NombreArchivo = $"OS_{ViewState("FolioOSMail") }.pdf", .ArchivoBinario = DirectCast(ViewState("bytesOS"), Byte())})
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body, ArrayCC, LSRutasMail)
End Sub
End Class

View File

@@ -572,7 +572,7 @@
<i></i>
</div>--%>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRetIVA" CssClass="form-control" runat="server" MaxLength="2" Text="0"></asp:TextBox>
<asp:TextBox ID="TxtRetIVA" CssClass="form-control" runat="server" MaxLength="7" Text="0"></asp:TextBox>
<label for="<%= TxtRetIVA.ClientID.ToString()%>">Retención de IVA:</label><asp:RequiredFieldValidator ID="RFVRetIVA" runat="server" ControlToValidate="TxtRetIVA" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Retención de IVA''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVRetIVA" runat="server" ControlToValidate="TxtRetIVA" Display="None" ErrorMessage="El campo <b>''Retención de IVA''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCRetIVA1" runat="server" HighlightCssClass="vco" TargetControlID="RFVRetIVA" Width="300px"></ajax:ValidatorCalloutExtender>
@@ -580,7 +580,7 @@
<i>%</i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRetISR" CssClass="form-control" runat="server" MaxLength="2" Text="0"></asp:TextBox>
<asp:TextBox ID="TxtRetISR" CssClass="form-control" runat="server" MaxLength="7" Text="0"></asp:TextBox>
<label for="<%= TxtRetISR.ClientID.ToString()%>">Retención de ISR:</label><asp:RequiredFieldValidator ID="RFVRetISR" runat="server" ControlToValidate="TxtRetISR" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Retención de ISR''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVRetISR" runat="server" ControlToValidate="TxtRetISR" Display="None" ErrorMessage="El campo <b>''Retención de ISR''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." Operator="DataTypeCheck" Type="Currency" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RFVRetISR" Width="300px"></ajax:ValidatorCalloutExtender>

View File

@@ -217,7 +217,7 @@
</div>
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontró ningun corte" DataKeyNames="CveVenta"
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontró ninguna remisión pendiente por facturar" DataKeyNames="CveVenta"
ToolTip="Remisiones sin Facturar"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD"
data-sort="true" Style="text-align: center;" GridLines="None">