This commit is contained in:
rakcsle
2021-05-05 10:41:43 -07:00
112 changed files with 59805 additions and 8985 deletions

View File

@@ -96,13 +96,15 @@
</tr><tr> <td>Crédito al Salario</td> </tr><tr> <td>Crédito al Salario</td>
<td> <td>
<asp:TextBox ID="TxtCredSalario" runat="server" Width="75px"></asp:TextBox></td></tr></table> <asp:TextBox ID="TxtCredSalario" runat="server" Width="75px"></asp:TextBox></td>
</tr></table>
</asp:Panel> </asp:Panel>
<asp:Panel ID="PnlFiniquito" runat="server" Visible="false"> <asp:Panel ID="PnlFiniquito" runat="server" Visible="true">
<table> <table border="0" id="TbIEPersonal" runat="server" Visible="false" >
<tr><td>Personal:</td><td><asp:DropDownList CssClass="select2me" ID="DdlNominaPersonal" DataTextField="Nombre" DataValueField="CvePersonal" runat="server" Width="200px"> </asp:DropDownList></td></tr> <tr><td>Personal:</td><td><asp:DropDownList CssClass="select2me" ID="DdlNominaPersonal" DataTextField="Nombre" DataValueField="CvePersonal" runat="server" Width="200px"> </asp:DropDownList></td></tr>
</table> </table>
<table border="0" id="TbIE" runat="server" visible="false"> <table border="0" id="TbIE" runat="server" visible="true">
<tr><td>Movimiento:</td><td><asp:DropDownList ID="DdlTipoTransaccion" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="TipoTransaccion" DataValueField="CveTipoTransaccion" ValidationGroup="GrpGuardar" Width="250px"></asp:DropDownList></td></tr> <tr><td>Movimiento:</td><td><asp:DropDownList ID="DdlTipoTransaccion" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="TipoTransaccion" DataValueField="CveTipoTransaccion" ValidationGroup="GrpGuardar" Width="250px"></asp:DropDownList></td></tr>
<tr><td>Cuenta Bancaria:</td><td><asp:DropDownList ID="DdlCuenta" CssClass="form-control input-sm select2me" Width="250px" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" ValidationGroup="GrpGuardar"></asp:DropDownList></td></tr> <tr><td>Cuenta Bancaria:</td><td><asp:DropDownList ID="DdlCuenta" CssClass="form-control input-sm select2me" Width="250px" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" ValidationGroup="GrpGuardar"></asp:DropDownList></td></tr>
<tr><td>Folio:</td><td><asp:TextBox ID="TxtFolio" runat="server" MaxLength="14" class="form-control input-sm" Width="70px"></asp:TextBox></td></tr> <tr><td>Folio:</td><td><asp:TextBox ID="TxtFolio" runat="server" MaxLength="14" class="form-control input-sm" Width="70px"></asp:TextBox></td></tr>

View File

@@ -51,6 +51,7 @@ Partial Class AC_RegNomina
CargaPresupuestos() CargaPresupuestos()
CargaMeta() CargaMeta()
CargaCombosIE()
TxtImporte.Enabled = False TxtImporte.Enabled = False
CreaDTDetalles() CreaDTDetalles()
BtnAgregar.Enabled = False BtnAgregar.Enabled = False
@@ -232,6 +233,10 @@ Partial Class AC_RegNomina
Dim total As Double = LbTotal.Text.ToDouble Dim total As Double = LbTotal.Text.ToDouble
LbTotal.Text = (total + dr("Importe").ToString.ToDouble).ToString.FormatoNumero LbTotal.Text = (total + dr("Importe").ToString.ToDouble).ToString.FormatoNumero
If RBLPago.selectedvalue = "1" Then
txttotal.text = LbTotal.Text.todecimal.FormatoNumero
End If
CboMeta.SelectedIndex = -1 CboMeta.SelectedIndex = -1
CboUnidadAdministrativa.Items.Clear() CboUnidadAdministrativa.Items.Clear()
CboFuenteFinanciamiento.Items.Clear() CboFuenteFinanciamiento.Items.Clear()
@@ -241,6 +246,8 @@ Partial Class AC_RegNomina
TxtImporte.Text = "" TxtImporte.Text = ""
TxtImporte.Enabled = False TxtImporte.Enabled = False
BtnAgregar.Enabled = False BtnAgregar.Enabled = False
Else Else
Alert("El importe supera el capital disponible. Por favor de revisar y modificar", TipoMensaje.MsgAdvertencia) Alert("El importe supera el capital disponible. Por favor de revisar y modificar", TipoMensaje.MsgAdvertencia)
End If End If
@@ -270,6 +277,9 @@ Partial Class AC_RegNomina
ChkDevengar.Checked = True : ChkEjercer.Checked = True : ChkPagar.Checked = True ChkDevengar.Checked = True : ChkEjercer.Checked = True : ChkPagar.Checked = True
ChkEjercer.Enabled = True : ChkPagar.Enabled = True ChkEjercer.Enabled = True : ChkPagar.Enabled = True
tbGeneral.Visible = True tbGeneral.Visible = True
TbIEPersonal.visible = False
PnlFiniquito.visible = True
CargaCombosIE()
Case "2" Case "2"
PnlNomina.Visible = False : PnlFiniquito.Visible = True PnlNomina.Visible = False : PnlFiniquito.Visible = True
ChkEjercer.Checked = False : ChkEjercer.Enabled = False ChkEjercer.Checked = False : ChkEjercer.Enabled = False
@@ -278,7 +288,7 @@ Partial Class AC_RegNomina
ChkDevengar.Checked = True ChkDevengar.Checked = True
trGasto.Visible = True trGasto.Visible = True
tbGeneral.Visible = True tbGeneral.Visible = True
TbIEPersonal.visible = True
DdlNominaPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("IdCtaContPersonal > 0") DdlNominaPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("IdCtaContPersonal > 0")
DdlNominaPersonal.DataBind() DdlNominaPersonal.DataBind()
TbIE.Visible = False TbIE.Visible = False
@@ -287,19 +297,7 @@ Partial Class AC_RegNomina
ChkDevengar.Checked = True : ChkEjercer.Checked = True : ChkPagar.Checked = True ChkDevengar.Checked = True : ChkEjercer.Checked = True : ChkPagar.Checked = True
trGasto.Visible = False trGasto.Visible = False
tbGeneral.Visible = False tbGeneral.Visible = False
CargaCombosIE()
DdlTipoTransaccion.Items.Clear()
DdlTipoTransaccion.DataSource = GlobalDTTipoTransacciones.FiltraParametros(String.Format("Tipo = '{0}'", If(RBLPago.SelectedValue = "3", "Ing", "Egs")))
DdlTipoTransaccion.DataBind()
DdlNominaPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("IdCtaContPersonal > 0")
DdlNominaPersonal.DataBind()
DdlCuenta.Items.Clear()
Dim dt As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros("CveTipoCuenta <> 1") ' quito las cajas chicas
DdlCuenta.DataSource = dt
DdlCuenta.DataBind()
TbIE.Visible = True
If RBLPago.SelectedValue = "4" Then If RBLPago.SelectedValue = "4" Then
trGasto.Visible = True trGasto.Visible = True
@@ -311,6 +309,23 @@ Partial Class AC_RegNomina
End Sub End Sub
Public Sub CargaCombosIE()
DdlTipoTransaccion.Items.Clear()
DdlTipoTransaccion.DataSource = GlobalDTTipoTransacciones.FiltraParametros(String.Format("Tipo = '{0}' and Estatus = 1", If(RBLPago.SelectedValue = "3", "Ing", "Egs")))
DdlTipoTransaccion.DataBind()
DdlNominaPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("IdCtaContPersonal > 0")
DdlNominaPersonal.DataBind()
DdlNominaPersonal.items.insert(0, New listitem("-", "-1"))
DdlCuenta.Items.Clear()
Dim dt As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros("CveTipoCuenta <> 1") ' quito las cajas chicas
DdlCuenta.DataSource = dt
DdlCuenta.DataBind()
TbIE.Visible = True
End Sub
Protected Sub DdlTipoTransaccion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoTransaccion.SelectedIndexChanged Protected Sub DdlTipoTransaccion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoTransaccion.SelectedIndexChanged
'Dim valor As Integer = DirectCast(sender, DropDownList).SelectedValue.ToEntero 'Dim valor As Integer = DirectCast(sender, DropDownList).SelectedValue.ToEntero
'Dim dr As DataRow = GlobalDTTipoTransacciones.FiltroPrimero(String.Format("CveTipoTransaccion = {0}", DdlTipoTransaccion.SelectedValue)) 'Egs o Ing 'Dim dr As DataRow = GlobalDTTipoTransacciones.FiltroPrimero(String.Format("CveTipoTransaccion = {0}", DdlTipoTransaccion.SelectedValue)) 'Egs o Ing
@@ -351,6 +366,8 @@ Partial Class AC_RegNomina
Dim Total As Decimal = DtDetalle.SUMD("Importe") Dim Total As Decimal = DtDetalle.SUMD("Importe")
Dim Fecha As Date = TxtFecha.Text.ToDate Dim Fecha As Date = TxtFecha.Text.ToDate
Dim Concepto As String = TxtConcepto.Text.Trim Dim Concepto As String = TxtConcepto.Text.Trim
Dim GeneraIE As Boolean = False
Dim IdCtaISPT As Integer = 640 Dim IdCtaISPT As Integer = 640
Dim IdCtaCreditoSalario As Integer = 635 Dim IdCtaCreditoSalario As Integer = 635
@@ -379,10 +396,15 @@ Partial Class AC_RegNomina
If dr IsNot Nothing Then If dr IsNot Nothing Then
IdCtaPersonal = dr("IdCtaContPersonal").ToString.ToEntero IdCtaPersonal = dr("IdCtaContPersonal").ToString.ToEntero
End If End If
Else
If Seleccion = "1" Then
CtaPuente = 0
GeneraIE = True
End If
End If End If
If Seleccion.Contiene("3", "4") Then If Seleccion.Contiene("1", "3", "4") Then
Dim dr As DataRow Dim dr As DataRow
dr = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveCuenta={0}", DdlCuenta.SelectedValue)) dr = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveCuenta={0}", DdlCuenta.SelectedValue))
@@ -440,57 +462,57 @@ Partial Class AC_RegNomina
If TieneError Then MensajeError = "Error Tipo 1" If TieneError Then MensajeError = "Error Tipo 1"
If Seleccion.Contiene("1", "2", "3") Then 'If Seleccion.Contiene("1", "2", "3") Then
Total = DtDetalle.SUMD("Importe") ' Total = DtDetalle.SUMD("Importe")
If Seleccion = "3" Then Total = TxtTotal.Text.ToDecimal ' If Seleccion = "3" Then Total = TxtTotal.Text.ToDecimal
Dim objACPI As New ClsAC() ' Dim objACPI As New ClsAC()
If objACPI.GetPresupuestoIngresos(CvePresupuestoIngreso, UsuarioActual.Empresa.EjercicioActual, True, UsuarioActual.CveEmpresa) Then ' If objACPI.GetPresupuestoIngresos(CvePresupuestoIngreso, UsuarioActual.Empresa.EjercicioActual, True, UsuarioActual.CveEmpresa) Then
If objACPI.DtResultados.Rows.Count > 0 Then ' If objACPI.DtResultados.Rows.Count > 0 Then
drt = objACPI.DtResultados.Rows(0) ' drt = objACPI.DtResultados.Rows(0)
If RBLPago.SelectedValue.Contiene("1", "2") Then ' If RBLPago.SelectedValue.Contiene("1", "2") Then
'se debe de registrar el ingreso ' 'se debe de registrar el ingreso
'DEVENGO EL INGRESO ' 'DEVENGO EL INGRESO
If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaPorEjecutar").ToString.ToEntero, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaPorEjecutar").ToString.ToEntero, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaDevengado").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaDevengado").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
'CARGO la deuda del cliente ' 'CARGO la deuda del cliente
'If Not objAC.AddMovimiento(IDPoliza, CtaCliente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' 'If Not objAC.AddMovimiento(IDPoliza, CtaCliente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
'abono, ' 'abono,
If Not objAC.AddMovimiento(IDPoliza, CtaCliente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, CtaCliente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaMatriz").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaMatriz").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
End If ' End If
If RBLPago.SelectedValue.Contiene("1", "3") Then ' If RBLPago.SelectedValue.Contiene("1", "3") Then
'RECAUDO EL INGRESO ' 'RECAUDO EL INGRESO
If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaDevengado").ToString.ToEntero, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaDevengado").ToString.ToEntero, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaRecaudado").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, drt("IdCuentaRecaudado").ToString.ToEntero, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
If Seleccion = "1" AndAlso Not objAC.AddMovimiento(IDPoliza, CtaPuente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Seleccion = "1" AndAlso Not objAC.AddMovimiento(IDPoliza, CtaPuente, False, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
If Not objAC.AddMovimiento(IDPoliza, CtaCliente, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True ' If Not objAC.AddMovimiento(IDPoliza, CtaCliente, True, Total, "", Concepto, 0, Fecha, "") Then TieneError = True
End If ' End If
Else ' Else
TieneError = True ' TieneError = True
End If ' End If
Else ' Else
TieneError = True ' TieneError = True
End If ' End If
objACPI.Dispose() ' objACPI.Dispose()
End If 'End If
If IdCtaPersonal > 0 Then If IdCtaPersonal > 0 Then
@@ -499,52 +521,54 @@ Partial Class AC_RegNomina
'cuando es el pago a personal, se carga, los demas casos se abona 'cuando es el pago a personal, se carga, los demas casos se abona
If Seleccion.Contiene("1", "2", "4") Then If Not objAC.AddMovimiento(IDPoliza, IdCtaPersonal, If(Seleccion = "4", False, True), Importe, "", Concepto, 0, Fecha, "") Then TieneError = True If Seleccion.Contiene("1", "2", "4") Then If Not objAC.AddMovimiento(IDPoliza, IdCtaPersonal, If(Seleccion = "4", False, True), Importe, "", Concepto, 0, Fecha, "") Then TieneError = True
CtaPuente = 0 ' para que no se inserte mas abajo CtaPuente = 0 ' para que no se inserte mas abajo
GeneraIE = True
End If
If Seleccion.Contiene("3", "4") Then If Seleccion.Contiene("1", "3", "4") AndAlso GeneraIE Then
'registro un IE 'registro un IE
ObjIE = New ClsBancos ObjIE = New ClsBancos
ObjIE.IniciaTransacSQL() ObjIE.IniciaTransacSQL()
Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL) Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL)
Dim CvePrePoliza = ObjMov.AddPrePolizas("Banc", 2, Importe, Importe, 1, Fecha, TxtConcepto.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Dim CvePrePoliza = ObjMov.AddPrePolizas("Banc/RegNomina", 2, Importe, Importe, 1, Fecha, TxtConcepto.Text.Trim, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim Obs As String = TxtConcepto.Text Dim Obs As String = TxtConcepto.Text
Dim Folio As String Dim Folio As String
Folio = TxtFolio.Text.Trim Folio = TxtFolio.Text.Trim
Dim CveConceptoCargo As Integer = 30 Dim CveConceptoCargo As Integer = 30
Dim CveConceptoAbono As Integer = 28 Dim CveConceptoAbono As Integer = 28
Total = TxtTotal.Text.ToDecimal Total = TxtTotal.Text.ToDecimal
If Seleccion = "4" Then Total = DtDetalle.SUMD("Importe") If Seleccion = "4" Then Total = DtDetalle.SUMD("Importe")
'cuando saco el egreso invierto los concepto 'cuando saco el egreso invierto los concepto
If Seleccion = "3" Then If Seleccion = "3" Then
CveConceptoCargo = 29 CveConceptoCargo = 29
CveConceptoAbono = 30 CveConceptoAbono = 30
End If ElseIf Seleccion = "1" Then
CveConceptoCargo = 95
CveConceptoAbono = 30
Obs = "NOMINA PAGADA"
End If
'lo envia como transferencia recibida 'lo envia como transferencia recibida
CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, Fecha, Folio, Obs, Total, 1, 1.0, Obs, "", True, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, Fecha, Folio, Obs, Total, 1, 1.0, Obs, "", True, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CveIE > 0 Then If CveIE > 0 Then
If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, Total, "", CveConceptoCargo, Obs, Fecha, 0, -1, CveIE, CvePersonal:=DdlNominaPersonal.SelectedValue.ToEntero, ImporteMX:=Total) Then If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, Total, "", CveConceptoCargo, Obs, Fecha, 0, -1, CveIE, CvePersonal:=DdlNominaPersonal.SelectedValue.ToEntero, ImporteMX:=Total) Then
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, Total, "", CveConceptoAbono, Obs, Fecha, 0, -1, CveIE, CvePersonal:=DdlNominaPersonal.SelectedValue.ToEntero, ImporteMX:=Total) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, Total, "", CveConceptoAbono, Obs, Fecha, 0, -1, CveIE, CvePersonal:=DdlNominaPersonal.SelectedValue.ToEntero, ImporteMX:=Total) Then
MsgError = "no se pudo insertar el detalle de la póliza 2" MsgError = "no se pudo insertar el detalle de la póliza 2"
End If
Else
MsgError = "no se pudo insertar el detalle de la póliza"
End If End If
ObjIE.UpdateIEPrePoliza(Fecha, objAC.Folio.ToString, IDPoliza, CvePrePoliza, CveIE, -1)
Else Else
TieneError = True MsgError = "no se pudo insertar el detalle de la póliza"
End If End If
'Registra el movimiento total ObjIE.UpdateIEPrePoliza(Fecha, objAC.Folio.ToString, IDPoliza, CvePrePoliza, CveIE, -1)
If Not objAC.AddMovimiento(IDPoliza, IdCtaBancaria, If(Seleccion = "3", False, True), Total, "", Concepto, 0, Fecha, "") Then TieneError = True Else
TieneError = True
End If End If
'Registra el movimiento total
If Not objAC.AddMovimiento(IDPoliza, IdCtaBancaria, If(Seleccion = "3", False, True), Total, "", Concepto, 0, Fecha, "") Then TieneError = True
End If End If
@@ -566,7 +590,6 @@ Partial Class AC_RegNomina
Importe = TxtISPT.Text.ToDouble - TxtCredSalario.Text.ToDouble Importe = TxtISPT.Text.ToDouble - TxtCredSalario.Text.ToDouble
If Importe <> 0 AndAlso Not objAC.AddMovimiento(IDPoliza, IdCtaDevolucionISPT, If(Importe > 0, False, True), Math.Abs(Importe), "", Concepto, 0, Fecha, "") Then TieneError = True If Importe <> 0 AndAlso Not objAC.AddMovimiento(IDPoliza, IdCtaDevolucionISPT, If(Importe > 0, False, True), Math.Abs(Importe), "", Concepto, 0, Fecha, "") Then TieneError = True
Else Else
TieneError = True TieneError = True
End If End If

View File

@@ -833,7 +833,7 @@ Public Class ClsAcumuladores
#Region "P O L I Z A - V I R T U A L" #Region "P O L I Z A - V I R T U A L"
Public Function AddPolizaVirtual(CveVenta As Integer, CveVentaDetalle As Integer, CvePS As Integer, Cantidad As Decimal, PU As Decimal, Descuento As Decimal, Total As Decimal, Public Function AddPolizaVirtual(CveVenta As Integer, CveVentaDetalle As Integer, CvePS As Integer, Cantidad As Decimal, PU As Decimal, Descuento As Decimal, Total As Decimal,
TipoServicio As Integer, TipoPoliza As Integer, CveModeloAuto As Integer, AnioVehiculo As Integer, TieneUsado As Boolean, FechaUsado As DateTime, TipoServicio As Integer, TipoPoliza As Integer, CveModeloAuto As Integer, AnioVehiculo As Integer, TieneUsado As Boolean, FechaUsado As DateTime,
CvePSUsado As Integer, CveBCIUsado As Integer) As Boolean CvePSUsado As Integer, CveBCIUsado As Integer, CveMarcaUsado As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
SqlDataAdapter("PA_Vta_PolizaVirtualAdd") SqlDataAdapter("PA_Vta_PolizaVirtualAdd")
With SqlAdapter.SelectCommand.Parameters With SqlAdapter.SelectCommand.Parameters
@@ -852,6 +852,7 @@ Public Class ClsAcumuladores
.Add("@FechaUsado", SqlDbType.DateTime).Value = FechaUsado .Add("@FechaUsado", SqlDbType.DateTime).Value = FechaUsado
.Add("@CvePSUsado", SqlDbType.Int).Value = CvePSUsado .Add("@CvePSUsado", SqlDbType.Int).Value = CvePSUsado
.Add("@CveBCIUsado", SqlDbType.Int).Value = CveBCIUsado .Add("@CveBCIUsado", SqlDbType.Int).Value = CveBCIUsado
.Add("@CveMarcaUsado", SqlDbType.Int).Value = CveMarcaUsado
End With End With
Try Try
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)

View File

@@ -806,7 +806,13 @@ Public Class ClsCRM
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)
Retorno = True Retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al eliminar el Acercamiento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) If ex.Message.Contains("CveVenta = ") Then
Dim CveVenta As String = ex.Message
CveVenta = CveVenta.Substring(11, 8)
Alert(String.Format("Este acercamiento esta ligado a una cotización <br/> <b> Cotización: </b> <a href='/Ventas/Ventas.aspx?CveVenta={0}'>{0}</a>", CveVenta), TipoMensaje.MsgAdvertencia)
Else
OnError("Ocurrió un error al eliminar el Acercamiento.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End If
End Try End Try
Return Retorno Return Retorno
End Function End Function

View File

@@ -7282,19 +7282,21 @@ Public Class ClsContPAQi
Return Retorno Return Retorno
End Function End Function
Public Function GetPolizas(Ejercicio As Integer, Periodo As Integer, TipoPoliza As Integer, SegmentoNegocio As Integer) As Boolean Public Function GetPolizas(Ejercicio As Integer, Periodo As Integer, TipoPoliza As Integer, SegmentoNegocio As Integer, Optional CveEmpresa As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
StrSQL.Clear() StrSQL.Clear()
StrSQL.Append(" SELECT P.Id, P.Fecha, T.Nombre AS TipoPol, P.Concepto, P.Cargos, P.Abonos, P.Folio ") StrSQL.Append(" SELECT P.Id, P.Fecha, T.Nombre AS TipoPol, P.Concepto, P.Cargos, P.Abonos, P.Folio, PP.CvePrepoliza ")
StrSQL.Append(" FROM [dbo].[Polizas] P ") StrSQL.Append(" FROM [dbo].[Polizas] P ")
StrSQL.Append(" LEFT JOIN TiposPolizas T ON T.Id = P.TipoPol ") StrSQL.Append(" LEFT JOIN TiposPolizas T ON T.Id = P.TipoPol ")
StrSQL.Append(" LEFT JOIN MovimientosPoliza M ON M.IdPoliza = P.Id ") StrSQL.Append(" LEFT JOIN MovimientosPoliza M ON M.IdPoliza = P.Id ")
StrSQL.Append(" LEFT JOIN [SERVIDOR].[Ventas].dbo.Conta_PrePolizas PP on P.Id = PP.IdPoliza")
StrSQL.Append(" WHERE P.Ejercicio = @Ejercicio ") StrSQL.Append(" WHERE P.Ejercicio = @Ejercicio ")
StrSQL.Append(" AND P.Periodo = @Periodo ") StrSQL.Append(" AND P.Periodo = @Periodo ")
StrSQL.Append(" AND (@TipoPoliza = -1 OR P.TipoPol = @TipoPoliza) ") StrSQL.Append(" AND (@TipoPoliza = -1 OR P.TipoPol = @TipoPoliza) ")
StrSQL.Append(" AND (@SegmentoNegocio = -1 OR M.IdSegNeg = @SegmentoNegocio) ") StrSQL.Append(" AND (@SegmentoNegocio = -1 OR M.IdSegNeg = @SegmentoNegocio) ")
StrSQL.Append(" GROUP BY P.Id, P.Fecha, T.Nombre, P.Concepto, P.Cargos, P.Abonos, P.Folio ") StrSQL.Append(" AND (PP.CveEmpresa = @CveEmpresa) ")
StrSQL.Append(" GROUP BY P.Id, P.Fecha, T.Nombre, P.Concepto, P.Cargos, P.Abonos, P.Folio, PP.CvePrepoliza ")
StrSQL.Append(" ORDER BY P.Folio ") StrSQL.Append(" ORDER BY P.Folio ")
SqlDataAdapter(StrSQL.ToString, CommandType.Text) SqlDataAdapter(StrSQL.ToString, CommandType.Text)
@@ -7305,6 +7307,8 @@ Public Class ClsContPAQi
.Add("@Periodo", SqlDbType.Int).Value = Periodo .Add("@Periodo", SqlDbType.Int).Value = Periodo
.Add("@TipoPoliza", SqlDbType.Int).Value = TipoPoliza .Add("@TipoPoliza", SqlDbType.Int).Value = TipoPoliza
.Add("@SegmentoNegocio", SqlDbType.Int).Value = SegmentoNegocio .Add("@SegmentoNegocio", SqlDbType.Int).Value = SegmentoNegocio
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With End With
Try Try
SqlAdapter.Fill(Data) SqlAdapter.Fill(Data)

View File

@@ -4543,7 +4543,7 @@ Public Class ClsContabilidad
Public Function UpdateCuenta(CveCuenta As Integer, Nombre As String, Tipo As String, CtaMayor As Integer, CveMoneda As Integer, Optional DigAgrupador As Integer = -1, Public Function UpdateCuenta(CveCuenta As Integer, Nombre As String, Tipo As String, CtaMayor As Integer, CveMoneda As Integer, Optional DigAgrupador As Integer = -1,
Optional CveAgrupadorSAT As Integer = -1, Optional NomIdioma As String = "", Optional CveConceptoAdmin As Integer = -1, Optional CveProveedor As Integer = -1, Optional CveAgrupadorSAT As Integer = -1, Optional NomIdioma As String = "", Optional CveConceptoAdmin As Integer = -1, Optional CveProveedor As Integer = -1,
Optional CveCliente As Integer = -1, Optional CveClasificacion As Integer = -1, Optional PorcentajeImpuesto As Decimal = -1, Optional CveCliente As Integer = -1, Optional CveClasificacion As Integer = -1, Optional PorcentajeImpuesto As Decimal = -1,
Optional CveBancoCuenta As Integer = -1, Optional CveAlmacen As Integer = -1, Optional Afectable As Integer = -1) As Boolean Optional CveBancoCuenta As Integer = -1, Optional CveAlmacen As Integer = -1, Optional Afectable As Integer = -1, Optional Codigo As String = "-1") As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Conta_UpdateCuentas") DataAdapter("PA_Conta_UpdateCuentas")
@@ -4565,6 +4565,8 @@ Public Class ClsContabilidad
.Add("@CveBancoCuenta", SqlDbType.Int).Value = CveBancoCuenta .Add("@CveBancoCuenta", SqlDbType.Int).Value = CveBancoCuenta
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen .Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@Afectable", SqlDbType.Int).Value = Afectable .Add("@Afectable", SqlDbType.Int).Value = Afectable
.Add("@Codigo", SqlDbType.VarChar).Value = Codigo
End With End With
Try Try
@@ -5726,7 +5728,7 @@ Public Class ClsContabilidad
Public Function AddCuentasAsignaciones(Optional CveConceptoContable As Integer = -1, Optional CveEmpresa As Integer = -1, Optional CveCuenta As Integer = -1, Optional IdCtaContable As Integer = -1, Public Function AddCuentasAsignaciones(Optional CveConceptoContable As Integer = -1, Optional CveEmpresa As Integer = -1, Optional CveCuenta As Integer = -1, Optional IdCtaContable As Integer = -1,
Optional CveProveedor As Integer = -1, Optional CveCliente As Integer = -1, Optional CvePersonal As Integer = -1, Optional CveClasificacion As Integer = -1, Optional CveProveedor As Integer = -1, Optional CveCliente As Integer = -1, Optional CvePersonal As Integer = -1, Optional CveClasificacion As Integer = -1,
Optional CveAlmacen As Integer = -1, Optional PorcentajeIVA As Decimal = -1, Optional CveConceptoNomina As Decimal = -1) As Boolean Optional CveAlmacen As Integer = -1, Optional PorcentajeIVA As Decimal = -1, Optional CveConceptoNomina As Decimal = -1, Optional CveBancoCuenta As Integer = -1) As Boolean
Dim Retorno = False Dim Retorno = False
DataAdapter("PA_Conta_CuentasAsignacionesAdd") DataAdapter("PA_Conta_CuentasAsignacionesAdd")
@@ -5743,6 +5745,7 @@ Public Class ClsContabilidad
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen .Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@PorcentajeIVA", SqlDbType.Decimal).Value = PorcentajeIVA .Add("@PorcentajeIVA", SqlDbType.Decimal).Value = PorcentajeIVA
.Add("@CveConceptoNomina", SqlDbType.Decimal).Value = CveConceptoNomina .Add("@CveConceptoNomina", SqlDbType.Decimal).Value = CveConceptoNomina
.Add("@CveBancoCuenta", SqlDbType.Int).Value = CveBancoCuenta
End With End With
Try Try
@@ -5777,7 +5780,7 @@ Public Class ClsContabilidad
Public Function UpdateCuentasAsignaciones(CveConceptoAsignacion As Integer, Optional CveConceptoContable As Integer = -1, Optional CveCuenta As Integer = -1, Public Function UpdateCuentasAsignaciones(CveConceptoAsignacion As Integer, Optional CveConceptoContable As Integer = -1, Optional CveCuenta As Integer = -1,
Optional IdCtaContable As Integer = -1, Optional CveProveedor As Integer = -1, Optional CveCliente As Integer = -1, Optional IdCtaContable As Integer = -1, Optional CveProveedor As Integer = -1, Optional CveCliente As Integer = -1,
Optional CvePersonal As Integer = -1, Optional CveClasificacion As Integer = -1, Optional CveAlmacen As Integer = -1, Optional CvePersonal As Integer = -1, Optional CveClasificacion As Integer = -1, Optional CveAlmacen As Integer = -1,
Optional PorcentajeIVA As Decimal = -1, Optional CveConceptoNomina As Decimal = -1) As Boolean Optional PorcentajeIVA As Decimal = -1, Optional CveConceptoNomina As Decimal = -1, Optional CveBancoCuenta As Integer = -1) As Boolean
Dim Retorno = False Dim Retorno = False
DataAdapter("PA_Conta_CuentasAsignacionesUpdate") DataAdapter("PA_Conta_CuentasAsignacionesUpdate")
@@ -5794,6 +5797,7 @@ Public Class ClsContabilidad
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen .Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@PorcentajeIVA", SqlDbType.Decimal).Value = PorcentajeIVA .Add("@PorcentajeIVA", SqlDbType.Decimal).Value = PorcentajeIVA
.Add("@CveConceptoNomina", SqlDbType.Decimal).Value = CveConceptoNomina .Add("@CveConceptoNomina", SqlDbType.Decimal).Value = CveConceptoNomina
.Add("@CveBancoCuenta", SqlDbType.Int).Value = CveBancoCuenta
End With End With
Try Try

View File

@@ -3232,6 +3232,32 @@ Public Class ClsInventarios
Return Retorno Return Retorno
End Function End Function
Public Function GetProductosDevolucion(CvePS As Integer, CveCliente As Integer, CveSubProyecto As Integer, FechaInicio As DateTime, FechaFin As DateTime, Serie As String, Lote As String, FechaCaducidad As DateTime, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_ProductosDevolucionAlmacen")
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePS", SqlDbType.Int).Value = CvePS
.Add("@CveCliente", SqlDbType.Int).Value = CveCliente
.Add("@CveSubProyecto", SqlDbType.Int).Value = CvePS
.Add("@FechaInicio", SqlDbType.DateTime).Value = FechaInicio
.Add("@FechaFin", SqlDbType.DateTime).Value = FechaFin
.Add("@Serie", SqlDbType.VarChar).Value = Serie
.Add("@Lote", SqlDbType.VarChar).Value = Lote
.Add("@FechaCaducidad", SqlDbType.DateTime).Value = FechaCaducidad
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener datos de devolución.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return Retorno
End Function
Public Function GetSaldoVentaDetalle(CveVenta As Integer, CveEmpresa As Integer) As Boolean Public Function GetSaldoVentaDetalle(CveVenta As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Vta_VentaDetalleSaldo") DataAdapter("PA_Vta_VentaDetalleSaldo")

View File

@@ -1437,7 +1437,7 @@ Public Class ClsMovimientos
Optional EstatusCliente As Integer = -1, Optional CveUsuarioConsulta As Integer = -1, Optional EstatusCliente As Integer = -1, Optional CveUsuarioConsulta As Integer = -1,
Optional CveBanco As Integer = -1, Optional CveCuenta As Integer = -1, Optional CveBanco As Integer = -1, Optional CveCuenta As Integer = -1,
Optional TipoCambio As Integer = -1, Optional TCEspecifico As Double = 0, Optional CveClienteClasificacion As Integer = -1, Optional TipoCambio As Integer = -1, Optional TCEspecifico As Double = 0, Optional CveClienteClasificacion As Integer = -1,
Optional EsDistribuidor As Integer = -1, Optional FechaAplicadoI As Date = Nothing, Optional FechaAplicadoF As Date = Nothing) As Boolean Optional EsDistribuidor As Integer = -1, Optional FechaAplicadoI As Date = MinFecha, Optional FechaAplicadoF As Date = MaxFecha) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Vta_RepRecuperacion") DataAdapter("PA_Vta_RepRecuperacion")
With SqlAdapter.SelectCommand.Parameters With SqlAdapter.SelectCommand.Parameters

View File

@@ -171,6 +171,23 @@ Public Class ClsNominas
#End Region #End Region
#Region "ClsNominas_Nominas" #Region "ClsNominas_Nominas"
Public Function RemoveFiniquito(CvePersonal As Integer, cveEmpresa As Integer, CvePersonalAltas As Integer) As Boolean
Dim retorno As Boolean = False
DTSet = New DataSet()
DataAdapter("PA_Nom_RemoveFiniquito", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
.Add("@CvePersonalAltas", SqlDbType.Int).Value = CvePersonalAltas
End With
Try
SqlAdapter.Fill(DTSet)
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al eliminar el finiquito.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function AddComprobantesEmitidos(ByVal cveEmpresa As Integer, ByVal folioFiscal As String, ByVal tipoDocto As String, ByVal importeTotal As Decimal, ByVal estatus As Integer, ByVal fecha As String, ByVal moneda As String, ByVal rFCReceptor As String, ByVal rutaXml As String, ByVal rFCEmisor As String, ByVal serie As String, ByVal folio As String) As Boolean Public Function AddComprobantesEmitidos(ByVal cveEmpresa As Integer, ByVal folioFiscal As String, ByVal tipoDocto As String, ByVal importeTotal As Decimal, ByVal estatus As Integer, ByVal fecha As String, ByVal moneda As String, ByVal rFCReceptor As String, ByVal rutaXml As String, ByVal rFCEmisor As String, ByVal serie As String, ByVal folio As String) As Boolean
Dim retorno As Boolean = False Dim retorno As Boolean = False
DataAdapter("PA_Vta_Sat_ComprobantesAdd", CommandType.StoredProcedure) DataAdapter("PA_Vta_Sat_ComprobantesAdd", CommandType.StoredProcedure)
@@ -198,6 +215,24 @@ Public Class ClsNominas
End Function End Function
Public Function ReportedePercepcionesDeduccionesGet(cveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime, CveTipoPeriodo As Integer) As Boolean
Dim retorno As Boolean = False
DTSet = New DataSet()
DataAdapter("[PA_RH_ReportedePercepcionesDeducciones]", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa
.Add("@FechaInicio", SqlDbType.Date).Value = FechaInicio
.Add("@FechaFin", SqlDbType.Date).Value = FechaFin
.Add("@TipoPeriodo", SqlDbType.Int).Value = CveTipoPeriodo
End With
Try
SqlAdapter.Fill(DTSet)
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de Percepciones.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return retorno
End Function
Public Function ReportedeincidenciasGET(cveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime, CveTipoPeriodo As Integer) As Boolean Public Function ReportedeincidenciasGET(cveEmpresa As Integer, FechaInicio As DateTime, FechaFin As DateTime, CveTipoPeriodo As Integer) As Boolean
Dim retorno As Boolean = False Dim retorno As Boolean = False
DTSet = New DataSet() DTSet = New DataSet()

View File

@@ -4681,6 +4681,7 @@ Public Class ClsPaginas
PaginaDict.Add("/Inventarios/EntregasPorRealizar.aspx".ToUpper(), 728) PaginaDict.Add("/Inventarios/EntregasPorRealizar.aspx".ToUpper(), 728)
PaginaDict.Add("/Inventarios/CatAlmacenClasificacionSecciones.aspx".ToUpper(), 764) PaginaDict.Add("/Inventarios/CatAlmacenClasificacionSecciones.aspx".ToUpper(), 764)
PaginaDict.Add("/Inventarios/ReconstruirCostos.aspx".ToUpper(), 764) PaginaDict.Add("/Inventarios/ReconstruirCostos.aspx".ToUpper(), 764)
PaginaDict.Add("/Inventarios/RecepcionDevolucion.aspx".ToUpper(), 696)
#End Region #End Region
@@ -6150,7 +6151,8 @@ Public Class ClsPaginas
params.Add(New CrystalParametro("ClienteTelefono", Vta.ClienteSucursal.TelefonoSucursal)) params.Add(New CrystalParametro("ClienteTelefono", Vta.ClienteSucursal.TelefonoSucursal))
Else Else
params.Add(New CrystalParametro("ClienteContactoMail", Vta.Cliente.MailCotizacion)) params.Add(New CrystalParametro("ClienteContactoMail", Vta.Cliente.MailCotizacion))
params.Add(New CrystalParametro("ClienteTelefono", If(Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.RFC = "XAXX010101000", Vta.TelefonoGenerico, Vta.Cliente.Telefono))) params.Add(New CrystalParametro("ClienteTelefono", If(Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.Telefono.Length > 6, Vta.Cliente.Telefono, Vta.TelefonoGenerico)))
End If End If
If UsuarioActual.CveEmpresa.Contiene(17) Then If UsuarioActual.CveEmpresa.Contiene(17) Then
@@ -6718,7 +6720,7 @@ Public Class ClsPaginas
params.Add(New ReportParameter("ClienteTelefono", Vta.ClienteSucursal.TelefonoSucursal)) params.Add(New ReportParameter("ClienteTelefono", Vta.ClienteSucursal.TelefonoSucursal))
ElseIf Vta.CveCliente.ToEntero > 0 Then ElseIf Vta.CveCliente.ToEntero > 0 Then
params.Add(New ReportParameter("ClienteContactoMail", Vta.Cliente.MailCotizacion)) params.Add(New ReportParameter("ClienteContactoMail", Vta.Cliente.MailCotizacion))
params.Add(New ReportParameter("ClienteTelefono", If(Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.Telefono.Length > 6, Vta.TelefonoGenerico, Vta.Cliente.Telefono))) params.Add(New ReportParameter("ClienteTelefono", If(Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.Telefono.Length > 6, Vta.Cliente.Telefono, Vta.TelefonoGenerico)))
End If End If
If UsuarioActual.CveEmpresa.Contiene(17) Then If UsuarioActual.CveEmpresa.Contiene(17) Then

View File

@@ -1450,6 +1450,22 @@ Public Class ClsProductosServicios
Return Retorno Return Retorno
End Function End Function
Public Function GetMarcasUsados(CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Gral_MarcasUsadosGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el Catálogo de Marcas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function
Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean

View File

@@ -1507,10 +1507,17 @@ Namespace Modelos
Row("CveVentaDetalle") = ObjVentas.CveVentaDetalle Row("CveVentaDetalle") = ObjVentas.CveVentaDetalle
If DtInventario IsNot Nothing Then If DtInventario IsNot Nothing Then
If DtInventario.Select($"CvePS={Row("CvePS").ToString.ToEntero}").Length > 0 Then 'If DtInventario.Select($"CvePS={Row("CvePS").ToString.ToEntero}").Length > 0 Then
Dim rowInv As DataRow = DtInventario.Select($"CvePS={Row("CvePS").ToString.ToEntero}")(0) ' Dim rowInv As DataRow = DtInventario.Select($"CvePS={Row("CvePS").ToString.ToEntero}")(0)
rowInv("CveVentaDetalle") = ObjVentas.CveVentaDetalle ' rowInv("CveVentaDetalle") = ObjVentas.CveVentaDetalle
End If 'End If
Try
Dim InvDr As DataRow = DtInventario.Select($"Consec = {Row("Consec").ToString()}")(0)
InvDr("CveVentaDetalle") = ObjVentas.CveVentaDetalle
Catch ex As Exception
End Try
End If End If
If DtRecepcionUsados IsNot Nothing Then If DtRecepcionUsados IsNot Nothing Then
@@ -1738,7 +1745,7 @@ Namespace Modelos
GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario) GuardarVentaPrePolizas(factura, ObjConta, TmpDTDetalle, CveNCaVincular, objContPaqi, ObjBancos, ObjVentas, ObjEventos:=ObjEventos, ObjInventario:=ObjInventario)
If ErrorList.Count = 0 Then If ErrorList.Count = 0 Then
'inventarios 'inventarios
GuardarVentaInventarios(factura, ObjInventario, ObjConta, ObjVentas, ObjAcum) GuardarVentaInventarios(Resp, factura, ObjInventario, ObjConta, ObjVentas, ObjAcum)
'GuardaRecepcionUsados(factura, ObjInventario, ObjConta) 'GuardaRecepcionUsados(factura, ObjInventario, ObjConta)
@@ -2142,7 +2149,7 @@ Namespace Modelos
For Each drow As DataRow In ObjFactura.DtPolizasVirtuales.Rows For Each drow As DataRow In ObjFactura.DtPolizasVirtuales.Rows
If ObjAcum.AddPolizaVirtual(ObjFactura.CveVenta, drow("CveVentaDetalle").ToString().ToEntero(), drow("CvePS").ToString.ToEntero, drow("Cantidad").ToString.ToDecimal, drow("PU").ToString.ToDecimal, drow("Descuento").ToString.ToDecimal, If ObjAcum.AddPolizaVirtual(ObjFactura.CveVenta, drow("CveVentaDetalle").ToString().ToEntero(), drow("CvePS").ToString.ToEntero, drow("Cantidad").ToString.ToDecimal, drow("PU").ToString.ToDecimal, drow("Descuento").ToString.ToDecimal,
drow("Total").ToString.ToDecimal, drow("TipoServicio").ToString.ToEntero, drow("TipoPoliza").ToString.ToEntero, drow("CveModeloAuto").ToString.ToEntero, drow("AnioVehiculo").ToString.ToEntero, CBool(drow("TieneUsado").ToString), drow("Total").ToString.ToDecimal, drow("TipoServicio").ToString.ToEntero, drow("TipoPoliza").ToString.ToEntero, drow("CveModeloAuto").ToString.ToEntero, drow("AnioVehiculo").ToString.ToEntero, CBool(drow("TieneUsado").ToString),
drow("FechaUsado").ToString().ToDateTime, drow("CvePSUsado").ToString.ToEntero, drow("CveBCIUsado").ToString.ToEntero) Then drow("FechaUsado").ToString().ToDateTime, drow("CvePSUsado").ToString.ToEntero, drow("CveBCIUsado").ToString.ToEntero, drow("CveMarcaUsado").ToString.ToEntero) Then
Else Else
Resultado = False Resultado = False
Exit For Exit For
@@ -3709,7 +3716,7 @@ Namespace Modelos
Return OcurrioError Return OcurrioError
End Function End Function
Private Function GuardarVentaInventarios(ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, ObjVentas As ClsVentas, ObjAcum As ClsAcumuladores) As Boolean Private Function GuardarVentaInventarios(ByRef Resp As MMensajeFactura, ByRef factura As Modelos.Factura, ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, ObjVentas As ClsVentas, ObjAcum As ClsAcumuladores) As Boolean
Dim OcurrioError As Boolean = False Dim OcurrioError As Boolean = False
If UsuarioActual.Empresa.UsaInventarios AndAlso factura.TipoDocto.Contiene("Ing", "Egs", "Rem") Then If UsuarioActual.Empresa.UsaInventarios AndAlso factura.TipoDocto.Contiene("Ing", "Egs", "Rem") Then
@@ -3751,6 +3758,24 @@ Namespace Modelos
End If End If
'SI ES UNA RNC DE CARGO GENERA EL MOVIMIENTO DE ALMACEN AQUI
If factura.TipoDocto = "RNC" AndAlso factura.Num3 = 10 Then
Dim CveMovimiento = GenerarMovimientoAlmacenDevolucionRNC(ObjInventario, factura, DtInventario, factura.CveAlmacen, factura.CveConceptoMovimiento, factura.CveMoneda, factura.CveVenta, "Modelos/RNC1")
If CveMovimiento <= 0 Then
OcurrioError = True
Else
If Resp IsNot Nothing Then
Resp.CveMovimientoUsado = CveMovimiento
If CveMovimiento > 0 Then
If ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa) Then
Resp.FolioUsado = ObjInventario.DtResultados.FiltroPrimeroValor("Folio")
End If
End If
End If
End If
End If
Return OcurrioError Return OcurrioError
End Function End Function
Private Function CuadrarFacturaMovimientos(MovDetalle As DataTable) As DataTable Private Function CuadrarFacturaMovimientos(MovDetalle As DataTable) As DataTable
@@ -4158,6 +4183,148 @@ Namespace Modelos
Return CveMovimientoInventario Return CveMovimientoInventario
End Function End Function
Private Function GenerarMovimientoAlmacenDevolucionRNC(ByRef ObjInventario As ClsInventarios, ByRef factura As Modelos.Factura, DtInventario As DataTable, CveAlmacen As Integer, CveConcepto As Integer, CveMoneda As Integer, CveVenta As Integer, Modulo As String, Optional MovimientoPrePoliza As Boolean = False, Optional ByRef ObjConta As ClsContabilidad = Nothing, Optional CveMovimientoRelacionado As Integer = -1) As Integer
Dim OcurrioError As Boolean = False
Dim CveMovimientoInventario As Integer = ObjInventario.AddMovimiento(CveAlmacen, CveConcepto, factura.CveMoneda, factura.Fecha, -1, factura.CveUsuario, factura.CveEmpresa, -1, factura.CveVenta, -1, -1, Modulo:=Modulo, CveMovimientoRelacionado:=CveMovimientoRelacionado)
If CveMovimientoInventario <= 0 Then
OcurrioError = True
ErrorList.Add("Ocurrió un error al agregar los Movimientos de salida al Inventario.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
Else
If CveMovimientoRelacionado > 0 Then
If ObjInventario.GetMovimientosDetalle(CveMovimientoRelacionado, UsuarioActual.CveEmpresa) Then
For Each Dr As DataRow In ObjInventario.DtResultados.Rows
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, Dr("Cantidad").ToString().ToDouble, Dr("CveUM").ToString().ToEntero(), Dr("CvePS").ToString().ToEntero(), Dr("PU").ToString().ToDecimal, CveAF:=Dr("CveAF").ToString().ToEntero(), Serie:=Dr("Serie").ToString(), CveMovimientoDetalleEntrada:=Dr("CveMovimientoDetalle").ToString().ToEntero(), 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
OcurrioError = True
ErrorList.Add("Ocurrió un Error al guardar los movimientos de entrada")
Exit For
End If
Next
End If
Else
Dim Mensaje As String = ""
Dim i As Integer = 0
Dim Cantidad As Decimal = 0
Dim PU As Decimal = 0
Dim CveUM As Integer = 0
Dim CvePS As Integer = 0
Dim AplicaSerie As Boolean
Dim AplicaLote As Boolean
Dim AplicaCaducidad As Boolean
Dim Serie As String = ""
Dim Lote As String = ""
Dim FechaCaducidad As DateTime = MinFecha
For Each Dr As DataRow In DtInventario.Rows
CvePS = Dr("CvePS").ToString.ToEntero
CveUM = Dr("CveUM").ToString.ToEntero
Cantidad = Dr("Cantidad").ToString.ToDecimal
PU = Dr("PU").ToString.ToDecimal
AplicaSerie = CBool(Dr("AplicaSerie"))
Serie = If(AplicaSerie, Dr("Serie").ToString, "")
AplicaLote = CBool(Dr("AplicaLote"))
Lote = If(AplicaLote, Dr("Lote").ToString, "")
AplicaCaducidad = CBool(Dr("AplicaCaducidad"))
FechaCaducidad = If(AplicaCaducidad, Dr("FechaCaducidad").ToString.ToDateTime, MinFecha)
If Dr("CveTipoInvPS").ToString.ToEntero = 5 AndAlso AplicaSerie AndAlso Serie = "" Then
OcurrioError = True
ErrorList.Add("Se deben especificar las Series de los productos de almacén")
Exit For
End If
If CvePS > 0 Then
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, Cantidad, CveUM, CvePS, PU, CveSeccionAlmacen:=-3, Serie:=Serie, Lote:=Lote, FechaCaducidad:=FechaCaducidad, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero) Then
OcurrioError = True
ErrorList.Add("Ocurrió un error al agregar los Movimientos de salida al Inventario.<br />")
Exit For
End If
Else
OcurrioError = True
ErrorList.Add("Ocurrió un error al agregar los Movimientos de salida al Inventario.<br />")
Exit For
End If
i = i + 1
Next
End If
'REGISTRO LA PREPOLIZA DE COSTO VS ALMACEN
If MovimientoPrePoliza AndAlso Not OcurrioError Then
Dim DtCostos As DataTable = Nothing
Dim ValorInventario As Decimal = 0
Dim TotalCosto As Decimal = 0
Dim TipoMovto68 As Boolean = True
Dim TipoMovto69 As Boolean = False
If CveConcepto.Contiene(18, 41) Then
TipoMovto68 = False
TipoMovto69 = True
End If
If ObjInventario.GetMovimientosDetalle(CveMovimientoInventario, UsuarioActual.CveEmpresa) Then
DtCostos = ObjInventario.DtResultados
TotalCosto = DtCostos.SUMD("Total").RoundSQL
Dim tmpCostos As DataTable = DtCostos.FiltraParametros("", "", {"CveClasificacion"})
Dim IdCtaContable As Integer = 0
Dim CveCuenta As Integer = 0
If tmpCostos.Rows.Count > 0 Then
Dim TotalCostoAcumulado As Decimal = 0
Dim cont As Integer = 1
'Se agrega movimiento separado por la cuenta de ventas (ER)
For Each RowInv As DataRow In tmpCostos.Rows
ValorInventario = DtCostos.SUMD("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").RoundSQL
TotalCostoAcumulado += ValorInventario
'cuando es el último movimiento y hay diferencias en los importes
If cont = tmpCostos.Rows.Count AndAlso TotalCosto <> TotalCostoAcumulado Then
ValorInventario = ValorInventario + (TotalCosto - TotalCostoAcumulado)
End If
'Concepto = String.Format("{0} - {1}", Row2("Clasificacion").ToString(), Row2("SubProyecto").ToString())
IdCtaContable = GlobalDTClasificaciones(factura.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero()
'CveCuenta = GlobalDTClasificaciones(factura.CveEmpresa).FiltroPrimeroValor("IdCuentaGastoSIG", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero()
'If ValorInventario <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(factura.CvePrePoliza, TipoMovto69, ValorInventario, factura.SerieFolio, 69, factura.SerieFolio, factura.Fecha, IdCtaContable, -1, CveVenta:=factura.CveVenta, CveCliente:=factura.CveCliente, CveSubProyecto:=factura.CveSubProyecto, CveClasificacion:=RowInv("CveClasificacion").ToString().ToEntero(), CveMovimientoAlmacen:=CveMovimientoInventario, ImporteMX:=ValorInventario, CveCuenta:=CveCuenta) Then
OcurrioError = True
End If
'End If
cont += 1
Next
End If
IdCtaContable = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCtaContable", String.Format("CveAlmacen = {0}", CveAlmacen)).ToEntero()
'If TotalCosto <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(factura.CvePrePoliza, TipoMovto68, TotalCosto, factura.SerieFolio, 68, factura.SerieFolio, factura.Fecha, IdCtaContable, -1, CveVenta:=factura.CveVenta, CveCliente:=factura.CveCliente, CveMovimientoAlmacen:=CveMovimientoInventario, ImporteMX:=TotalCosto, CveCuenta:=CveCuenta, CveSubProyecto:=factura.CveSubProyecto) Then
OcurrioError = True
End If
'End If
Else
OcurrioError = True
End If
factura.Inv_CveMovimiento = CveMovimientoInventario
factura.Inv_ValorInventario = ValorInventario
End If
End If
Return CveMovimientoInventario
End Function
Private Sub GuardarVentaEstimaciones(ByRef factura As Modelos.Factura, ObjContr As ClsContratos) Private Sub GuardarVentaEstimaciones(ByRef factura As Modelos.Factura, ObjContr As ClsContratos)
'debe de ser por contrato el movimiento 'debe de ser por contrato el movimiento
If factura.CveContratoSecciones.Length > 0 Then If factura.CveContratoSecciones.Length > 0 Then

View File

@@ -113,14 +113,14 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones</label> <label class="col-md-2">Observaciones</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<label class="col-md-2">Notificar</label> <label class="col-md-2">Notificar</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trCuentaDeposito" runat="server" visible="false"> <div class="row" id="trCuentaDeposito" runat="server" visible="false">

View File

@@ -157,7 +157,7 @@
<asp:Label class="col-md-2 truncate" ID="LblObservaciones" runat="server" Style="width: 130px;" Text="Observaciones "> </asp:Label> <asp:Label class="col-md-2 truncate" ID="LblObservaciones" runat="server" Style="width: 130px;" Text="Observaciones "> </asp:Label>
<div class="col-md-6"> <div class="col-md-6">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="100%" Rows="3" TextMode="MultiLine" CssClass="form-control input-sm" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="100%" Rows="3" TextMode="MultiLine" CssClass="form-control input-sm" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>

View File

@@ -140,43 +140,62 @@
<div class="col-md-2" runat="server" id="DivFaltante"> <div class="col-md-2" runat="server" id="DivFaltante">
<asp:CheckBox ID="ChkFaltante" runat="server" Text="Faltante/Sobrante"/> <asp:CheckBox ID="ChkFaltante" runat="server" Text="Faltante/Sobrante"/>
</div> </div>
<div class="col-md-3" id="DivComision" style="display: none"> <div class="col-md-2" id="DivComision" style="display: none">
<label style="width: 105px; ">Importe:</label> <label>Importe:</label>
<asp:TextBox runat="server" ID="TxtComision" Class=" input-sm " Width="75px"></asp:TextBox> <asp:TextBox runat="server" ID="TxtComision" Class=" input-sm " Width="75px"></asp:TextBox>
</div> </div>
<div class="col-md-1" id="DivIVA" style="display: none">
<label>IVA:</label>
<asp:TextBox runat="server" ID="TxtIVA" Class=" input-sm " Width="75px"></asp:TextBox>
</div>
<div class="col-md-3" style="display: none" id="divSubProyecto">
<label class="col-md-1 truncate" style="width: 110px; display: none" id="LblSubproyecto" >SubProyecto:</label>
<label class="col-md-1 truncate" style="width: 120px; display: none" id="LblSubproyecto" >SubProyecto:</label>
<div class="col-md-2" style="display: none" id="divSubProyecto">
<asp:DropDownList ID="DdlSubProyectoDeposito" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm select2me"> <asp:DropDownList ID="DdlSubProyectoDeposito" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
</asp:DropDownList> </asp:DropDownList>
</div> </div>
<label class="col-md-1 truncate" style="width: 120px; display: none" id="LblClasificacion">Clasificación:</label> <div class="col-md-4" style="display: none" id="divClasificacion">
<div class="col-md-2" style="display: none" id="divClasificacion">
<asp:DropDownList ID="DdlClasificacion" AutoPostBack="false" CssClass=" form-control input-sm select2me" runat="server" Width="100%" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion"> <label class="col-md-1 truncate" style="width: 110px;" id="LblClasificacion">Clasificación:</label>
<asp:DropDownList ID="DdlClasificacion" AutoPostBack="false" Class="table-group-action-input form-control input-inline input-small input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion">
</asp:DropDownList> </asp:DropDownList>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-2" runat="server" id="Div1"> <div class="col-md-2" runat="server" id="Div1">
<asp:CheckBox ID="ChkDescuento" runat="server" Text="Descuento"/> <asp:CheckBox ID="ChkDescuento" runat="server" Text="Descuento"/>
</div> </div>
<div class="col-md-3" id="DivDescuento" style="display: none"> <div class="col-md-3" id="DivDescuento" style="display: none">
<label style="width: 105px; ">Importe:</label> <label>Importe:</label>
<asp:TextBox runat="server" ID="TxtDescuento" Class=" input-sm " Width="75px"></asp:TextBox> <asp:TextBox runat="server" ID="TxtDescuento" Class=" input-sm " Width="75px"></asp:TextBox>
</div> </div>
<label class="col-md-1 truncate" style="width: 120px; display: none" id="LblSubproyectoDescuento" >SubProyecto:</label> <div class="col-md-3" style="display: none" id="divSubProyectoDescuento">
<div class="col-md-2" style="display: none" id="divSubProyectoDescuento"> <label class="col-md-1 truncate" style="width: 110px; display: none" id="LblSubproyectoDescuento" >SubProyecto:</label>
<asp:DropDownList ID="DdlSubProyectoDescuento" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm select2me"> <asp:DropDownList ID="DdlSubProyectoDescuento" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
</asp:DropDownList> </asp:DropDownList>
</div>
<div class="col-md-4" style="display: none" id="divClasificacionDescuento">
<label class="col-md-1 truncate" style="width: 110px;" id="LblClasificacionDescuento">Clasificación:</label>
<asp:DropDownList ID="DdlClasificacionDescuento" AutoPostBack="false" Class="table-group-action-input form-control input-inline input-small input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion">
</asp:DropDownList>
</div> </div>
<label class="col-md-1 truncate" style="width: 120px; display: none" id="LblClasificacionDescuento">Clasificación:</label>
<div class="col-md-2" style="display: none" id="divClasificacionDescuento">
<asp:DropDownList ID="DdlClasificacionDescuento" AutoPostBack="false" CssClass=" form-control input-sm select2me" runat="server" Width="100%" AppendDataBoundItems="true" DataTextField="Clasificacion" DataValueField="CveClasificacion">
</asp:DropDownList>
</div>
</div> </div>
<br /> <br />
@@ -253,16 +272,97 @@
var comision = 0; var comision = 0;
var descuento = 0; var descuento = 0;
var saldo = 0; var saldo = 0;
var IVA = 0
function FnSuma(chk, cantidad) { function FnSuma(chk, cantidad) {
var saldoInicial = ToDouble($('#C_lblValorTotal').text()); var saldoInicial = ToDouble($('#C_lblValorTotal').text());
var ValorTotalSeleccionado2 = 0;
$('#C_GvFacturas input[type=checkbox]').each(
function () {
if (this.checked) {
ValorTotalSeleccionado2 = ValorTotalSeleccionado2 + ToDouble(FormatoNumero($(this).val(), 2));
}
}
);
ValorTotalSeleccionado = ValorTotalSeleccionado2;
if (chk.checked == false) { if (chk.checked == false) {
cantidad = cantidad * -1; cantidad = cantidad * -1;
} }
saldoInicial = saldoInicial + cantidad; saldoInicial = saldoInicial + cantidad;
$('#C_lblValorTotal').text(FormatoNumero(saldoInicial, 2)); $('#C_lblValorTotal').text(FormatoNumero(saldoInicial, 2));
$('#C_lblValorTotalSeleccionado').text(FormatoNumero(saldoInicial, 2)); $('#C_lblValorTotalSeleccionado').text(FormatoNumero(ValorTotalSeleccionado, 2));
ValorTotalSeleccionado = saldoInicial debugger;
if ($('#C_ChkFaltante').attr('checked')) {
var txtcomision = ToDouble($('#C_TxtComision').val());
if (txtcomision != 0) {
var comisionNegativa = 0;
if (txtcomision < 0) {
comisionNegativa = txtcomision * -1;
}
if (comisionNegativa > saldo) {
$('#C_TxtComision').val(0);
comision = 0;
descuento = 0;
txtcomision = 0;
alert("No es posible poner un importe Faltante/Sobrante superior a lo seleccionado");
saldo = 0;
$('#C_lblValorTotal').text(FormatoNumero(ValorTotalSeleccionado, 2));
debugger;
} else {
//debugger;
}
}
var txtcomision = ToDouble($('#C_TxtIVA').val());
if (txtcomision != 0) {
var comisionNegativa = 0;
if (txtcomision < 0) {
comisionNegativa = txtcomision * -1;
}
if (comisionNegativa > saldo) {
$('#C_TxtIVA').val(0);
comision = 0;
descuento = 0;
txtcomision = 0;
alert("No es posible poner un importe IVA superior a lo seleccionado");
saldo = 0;
$('#C_lblValorTotal').text(FormatoNumero(ValorTotalSeleccionado, 2));
debugger;
} else {
//debugger;
}
}
}
if ($('#C_ChkDescuento').attr('checked')) {
var txtdescuento = ToDouble($('#C_TxtDescuento').val());
if (txtdescuento != 0) {
var DescuentoNegativa = 0;
if (txtdescuento < 0) {
DescuentoNegativa = txtdescuento * -1;
}
if (DescuentoNegativa > saldo) {
$('#C_TxtDescuento').val(0);
comision = 0;
descuento = 0;
txtdescuento = 0;
alert("No es posible poner un descuento superior a lo seleccionado");
saldo = 0;
$('#C_lblValorTotal').text(FormatoNumero(ValorTotalSeleccionado, 2));
debugger;
} else {
//saldo = ValorTotalSeleccionado + txtdescuento + comision;
//$('#C_lblValorTotal').text(FormatoNumero(saldo, 2));
//descuento = ToDouble($('#C_TxtDescuento').val())
//debugger;
}
}
}
} }
@@ -270,16 +370,15 @@
var comision2 = ToDouble($('#C_TxtComision').val()); var comision2 = ToDouble($('#C_TxtComision').val());
var comisionNegativa = 0; var comisionNegativa = 0;
if (comision2 < 0) { if (comision2 < 0) {
comisionNegativa = comision2 * -1 comisionNegativa = comision2 * -1;
} }
if (comisionNegativa > ValorTotalSeleccionado) { if (comisionNegativa > ValorTotalSeleccionado) {
$('#C_TxtComision').val(comision) $('#C_TxtComision').val(0)
alert("No es posible poner una comision superior a lo seleccionado") alert("No es posible poner una comision superior a lo seleccionado")
} else { } else {
saldo = ValorTotalSeleccionado + comision2 + descuento; saldo = ValorTotalSeleccionado + comision2 + descuento + IVA;
$('#C_lblValorTotal').text(FormatoNumero(saldo, 2)); $('#C_lblValorTotal').text(FormatoNumero(saldo, 2));
comision = ToDouble($('#C_TxtComision').val()) comision = ToDouble($('#C_TxtComision').val())
debugger;
} }
} }
@@ -288,16 +387,33 @@
var comision2 = ToDouble($('#C_TxtDescuento').val()); var comision2 = ToDouble($('#C_TxtDescuento').val());
var comisionNegativa = 0; var comisionNegativa = 0;
if (comision2 < 0) { if (comision2 < 0) {
comisionNegativa = comision2 * -1 comisionNegativa = comision2 * -1;
} }
if (comisionNegativa > ValorTotalSeleccionado) { if (comisionNegativa > ValorTotalSeleccionado) {
$('#C_TxtDescuento').val(descuento) $('#C_TxtDescuento').val(descuento)
alert("No es posible poner una comision superior a lo seleccionado") alert("No es posible poner un descuento superior a lo seleccionado")
} else { } else {
saldo = ValorTotalSeleccionado + comision2 + comision; saldo = ValorTotalSeleccionado + comision2 + comision + IVA;
$('#C_lblValorTotal').text(FormatoNumero(saldo, 2)); $('#C_lblValorTotal').text(FormatoNumero(saldo, 2));
descuento = ToDouble($('#C_TxtDescuento').val()) descuento = ToDouble($('#C_TxtDescuento').val())
debugger; }
}
function txtSumaIVA(txt) {
var comision2 = ToDouble($('#C_TxtIVA').val());
var comisionNegativa = 0;
if (comision2 < 0) {
comisionNegativa = comision2 * -1;
}
if (comisionNegativa > ValorTotalSeleccionado) {
$('#C_TxtIVA').val(descuento)
alert("No es posible poner un IVA superior a lo seleccionado")
} else {
saldo = ValorTotalSeleccionado + descuento + comision + comision2;
$('#C_lblValorTotal').text(FormatoNumero(saldo, 2));
IVA = ToDouble($('#C_TxtIVA').val())
} }
} }
@@ -309,12 +425,16 @@
$('#divSubProyecto').css("display", "block"); $('#divSubProyecto').css("display", "block");
$('#LblClasificacion').css("display", "block"); $('#LblClasificacion').css("display", "block");
$('#divClasificacion').css("display", "block"); $('#divClasificacion').css("display", "block");
$('#DivIVA').css("display", "block");
} else { } else {
$('#DivComision').css("display", "none"); $('#DivComision').css("display", "none");
$('#divSubProyecto').css("display", "none"); $('#LblSubproyecto').css("display", "none");
$('#divSubProyecto').css("display", "none"); $('#divSubProyecto').css("display", "none");
$('#LblClasificacion').css("display", "none"); $('#LblClasificacion').css("display", "none");
$('#divClasificacion').css("display", "none"); $('#divClasificacion').css("display", "none");
$('#DivIVA').css("display", "none");
} }
} }

View File

@@ -23,6 +23,8 @@ Partial Class Bancos_DepositosCaja
txtFechaF.Text = Now.ToShortDateString txtFechaF.Text = Now.ToShortDateString
TxtComision.Attributes.Add("onKeyUp", "txtSuma(event);") TxtComision.Attributes.Add("onKeyUp", "txtSuma(event);")
TxtDescuento.Attributes.Add("onKeyUp", "txtSumaDescuento(event);") TxtDescuento.Attributes.Add("onKeyUp", "txtSumaDescuento(event);")
TxtIVA.Attributes.Add("onKeyUp", "txtSumaIVA(event);")
CargaCuentas() CargaCuentas()
ChkFaltante.Attributes.Add("onclick", "CheckFaltante(this);") ChkFaltante.Attributes.Add("onclick", "CheckFaltante(this);")
@@ -88,6 +90,7 @@ Partial Class Bancos_DepositosCaja
Dim TotalImportePrePoliza As Decimal Dim TotalImportePrePoliza As Decimal
Dim Comision As Decimal = TxtComision.Text.ToDecimal Dim Comision As Decimal = TxtComision.Text.ToDecimal
Dim Descuento As Decimal = TxtDescuento.Text.ToDecimal Dim Descuento As Decimal = TxtDescuento.Text.ToDecimal
Dim IVA As Decimal = TxtIVA.Text.ToDecimal
For Each Gvr As GridViewRow In GvFacturas.Rows For Each Gvr As GridViewRow In GvFacturas.Rows
@@ -101,7 +104,7 @@ Partial Class Bancos_DepositosCaja
TotalImportePrePoliza = TotalImporte TotalImportePrePoliza = TotalImporte
If Comision <> 0 Then If Comision <> 0 Then
TotalImporte = TotalImporte + Comision + Descuento TotalImporte = TotalImporte + Comision + Descuento + IVA
'Comision = -(Comision) ' se inverte el valor, va cargada 'Comision = -(Comision) ' se inverte el valor, va cargada
'Descuento = -(Descuento) ' se inverte el valor, va cargada 'Descuento = -(Descuento) ' se inverte el valor, va cargada
If DdlSubProyectoDeposito.SelectedValue.ToEntero = -1 Or DdlClasificacion.SelectedValue.ToEntero = -1 Then If DdlSubProyectoDeposito.SelectedValue.ToEntero = -1 Or DdlClasificacion.SelectedValue.ToEntero = -1 Then
@@ -148,11 +151,11 @@ Partial Class Bancos_DepositosCaja
NuevaCvePrePoliza = ObjContabilidad.AddPrePolizas("Vta", 13, TotalImportePrePoliza, TotalImportePrePoliza, 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)
'Entrada a bancos 'Entrada a bancos
FolioIE = ObjBancos.GetNextFolio(DdlCuentaDeposito.SelectedValue.ToEntero, 8) FolioIE = ObjBancos.GetNextFolio(DdlCuentaDeposito.SelectedValue.ToEntero, 13)
If Not FolioIE > 0 Then If Not FolioIE > 0 Then
OcurrioError = True OcurrioError = True
End If End If
CveIEOrigen = 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) CveIEOrigen = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, 13, Fecha, FolioIE.ToString, "Depósito Bancario", TotalImporte, CveMoneda, 1, "Depósito Bancario", "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
documentos += String.Format("<a href='/Bancos/IE.aspx?CveIE={0}' target='_blank' class='Texto'>Depósito: {1}</a> &nbsp &nbsp <br/> ", CveIEOrigen, FolioIE) documentos += String.Format("<a href='/Bancos/IE.aspx?CveIE={0}' target='_blank' class='Texto'>Depósito: {1}</a> &nbsp &nbsp <br/> ", CveIEOrigen, FolioIE)
@@ -162,10 +165,20 @@ Partial Class Bancos_DepositosCaja
If ChkFaltante.Checked Then If ChkFaltante.Checked Then
CveSubProyecto = DdlSubProyectoDeposito.SelectedValue.ToEntero CveSubProyecto = DdlSubProyectoDeposito.SelectedValue.ToEntero
CveClasificacion = DdlClasificacion.SelectedValue.ToEntero CveClasificacion = DdlClasificacion.SelectedValue.ToEntero
If Comision <> 0 Then
If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Comision, DdlClasificacion.SelectedItem.Text, 51, DdlClasificacion.SelectedItem.Text, Fecha, IdCuentaBancariaOrigen, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, ImporteMX:=Comision * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Comision, DdlClasificacion.SelectedItem.Text, 51, DdlClasificacion.SelectedItem.Text, Fecha, IdCuentaBancariaOrigen, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, ImporteMX:=Comision * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then
OcurrioError = True OcurrioError = True
End If
End If End If
If IVA <> 0 Then
IVA = CDec(0.16)
If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, IVA, DdlClasificacion.SelectedItem.Text, 14, DdlClasificacion.SelectedItem.Text, Fecha, IdCuentaBancariaOrigen, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, ImporteMX:=Comision * TipoCambio, CveCuenta:=CveCuentaBancariaOrigen) Then
OcurrioError = True
End If
End If
End If End If
If ChkDescuento.Checked Then If ChkDescuento.Checked Then
@@ -253,6 +266,8 @@ Partial Class Bancos_DepositosCaja
Protected Sub GvFacturas_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvFacturas.RowDataBound Protected Sub GvFacturas_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvFacturas.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowType = DataControlRowType.DataRow Then
e.Row.FCCheckBox("ChkFactura").Attributes.Add("onclick", String.Format("FnSuma(this,{0});", e.Row.DBCampo("Importe"))) e.Row.FCCheckBox("ChkFactura").Attributes.Add("onclick", String.Format("FnSuma(this,{0});", e.Row.DBCampo("Importe")))
e.Row.FCCheckBox("ChkFactura").InputAttributes.Add("Value", e.Row.DBCampo("Importe"))
End If End If
End Sub End Sub

View File

@@ -185,7 +185,7 @@
<label>Observaciones:</label> <label>Observaciones:</label>
</div> </div>
<div class="col-md-9"> <div class="col-md-9">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static" Width="100%"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static" Width="100%"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>

View File

@@ -30,6 +30,9 @@
<li> <li>
<asp:HyperLink ID="HLModalActualizarTC" NavigateUrl="#" runat="server" Visible="false" data-toggle="modal" data-target="#ModalActualizarTC" Style="color: #686868;"><i class="fa fa-usd" style="color:#686868;"></i> Actualizar Tipo Cambio</asp:HyperLink> <asp:HyperLink ID="HLModalActualizarTC" NavigateUrl="#" runat="server" Visible="false" data-toggle="modal" data-target="#ModalActualizarTC" Style="color: #686868;"><i class="fa fa-usd" style="color:#686868;"></i> Actualizar Tipo Cambio</asp:HyperLink>
</li> </li>
<li>
<asp:HyperLink ID="HpLPrePoliza" NavigateUrl="#" runat="server" Visible="false" Style="color: #686868;"><i class="" style="color:#686868;"></i> PrePoliza</asp:HyperLink>
</li>
<%-- <li> <%-- <li>
<asp:LinkButton ID="LnkEmitirComplemento" runat="server" Style="color: #686868;" Visible="false"><i class="fa fa-file-text-o" style="color:#686868;"></i> Emitir Complemento de Pago</asp:LinkButton> <asp:LinkButton ID="LnkEmitirComplemento" runat="server" Style="color: #686868;" Visible="false"><i class="fa fa-file-text-o" style="color:#686868;"></i> Emitir Complemento de Pago</asp:LinkButton>
@@ -364,14 +367,14 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones: </label> <label class="col-md-2 control-label">Observaciones: </label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="100%" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="100%" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trNotificar" runat="server" visible="False"> <div class="row" id="trNotificar" runat="server" visible="False">
<label class="col-md-2 control-label">Notificar: </label> <label class="col-md-2 control-label">Notificar: </label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" runat="server" MaxLength="12" Width="100%" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" runat="server" MaxLength="100" Width="100%" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>

View File

@@ -863,6 +863,8 @@ Partial Class Bancos_IE
LblCuenta.Text = ObjIE.BancoNumCuentaMoneda LblCuenta.Text = ObjIE.BancoNumCuentaMoneda
ViewState("CvePrePoliza") = ObjIE.DtResultados.Rows(0)("CvePrePoliza").ToString.ToEntero ViewState("CvePrePoliza") = ObjIE.DtResultados.Rows(0)("CvePrePoliza").ToString.ToEntero
HpLPrePoliza.NavigateUrl = String.Format("/Contabilidad/RegPrePoliza.aspx?CvePrepoliza={0}", ViewState("CvePrePoliza"))
HpLPrePoliza.Visible = True
TxtFechaDocumento.Text = ObjIE.FechaDocumento.ToShortDateString TxtFechaDocumento.Text = ObjIE.FechaDocumento.ToShortDateString
TxtFolio.Text = ObjIE.Folio TxtFolio.Text = ObjIE.Folio
LblBeneficiario.Text = ObjIE.PagueseA LblBeneficiario.Text = ObjIE.PagueseA

View File

@@ -123,7 +123,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trCuentaDeposito" runat="server" visible="False"> <div class="row" id="trCuentaDeposito" runat="server" visible="False">

View File

@@ -114,7 +114,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-6"> <div class="col-md-6">
<asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>
@@ -241,7 +241,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-6"> <div class="col-md-6">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
<div class="col-md-2 input-icon"> <div class="col-md-2 input-icon">

View File

@@ -150,7 +150,7 @@
<label>Observaciones:</label> <label>Observaciones:</label>
</div> </div>
<div class="col-md-9"> <div class="col-md-9">
<asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>
@@ -336,7 +336,7 @@
<label>Observaciones:</label> <label>Observaciones:</label>
</div> </div>
<div class="col-md-9"> <div class="col-md-9">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>

View File

@@ -114,13 +114,13 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones:</label> <label class="col-md-2">Observaciones:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trNotificar" runat="server" visible="False"> <div class="row" id="trNotificar" runat="server" visible="False">
<label class="col-md-2">Notificar:</label> <label class="col-md-2">Notificar:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trCuentaDeposito" runat="server" visible="False"> <div class="row" id="trCuentaDeposito" runat="server" visible="False">

View File

@@ -206,7 +206,7 @@
<div class="row"> <div class="row">
<div class="col-xs-2">Observaciones:</div> <div class="col-xs-2">Observaciones:</div>
<div class="col-xs-10"> <div class="col-xs-10">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>

View File

@@ -196,7 +196,7 @@
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="100%" Rows="3" TextMode="MultiLine" ForeColor="Black"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="100%" Rows="3" TextMode="MultiLine" ForeColor="Black"></asp:TextBox>
</div> </div>
</div> </div>

View File

@@ -191,7 +191,7 @@
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="100%" Rows="3" TextMode="MultiLine" ForeColor="Black"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="100%" Rows="3" TextMode="MultiLine" ForeColor="Black"></asp:TextBox>
</div> </div>
</div> </div>

View File

@@ -104,7 +104,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-6"> <div class="col-md-6">
<asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservacionesPrestamo" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObsPrestamo" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>
@@ -226,7 +226,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-6"> <div class="col-md-6">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
</div> </div>

View File

@@ -166,7 +166,7 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones:</label> <label class="col-md-2 control-label">Observaciones:</label>
<div class="col-md-7"> <div class="col-md-7">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" CssClass="form-control input-sm" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>
<div class="col-md-2 input-icon"> <div class="col-md-2 input-icon">

View File

@@ -250,14 +250,14 @@
<div class="row"> <div class="row">
<label class="col-md-2 control-label">Observaciones: </label> <label class="col-md-2 control-label">Observaciones: </label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="100%" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="100%" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trNotificar" runat="server" visible="False"> <div class="row" id="trNotificar" runat="server" visible="False">
<label class="col-md-2 control-label">Notificar: </label> <label class="col-md-2 control-label">Notificar: </label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" runat="server" MaxLength="12" Width="100%" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" runat="server" MaxLength="100" Width="100%" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>

View File

@@ -359,7 +359,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones</label> <label class="col-md-2">Observaciones</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtObservaciones" runat="server" CssClass="form-control input-sm" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" CssClass="form-control input-sm" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>

View File

@@ -111,7 +111,7 @@
</div> </div>
<label class="col-md-1">Observaciones:</label> <label class="col-md-1">Observaciones:</label>
<div class="col-md-7"> <div class="col-md-7">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
<br /> <br />
</div> </div>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -231,7 +231,10 @@
Decodes the payload and signature from the JWE parts. Decodes the payload and signature from the JWE parts.
</summary> </summary>
<param name="tokenParts">Parts of the JWE including the header.</param> <param name="tokenParts">Parts of the JWE including the header.</param>
<remarks>Assumes Header has already been set.</remarks> <remarks>
Assumes Header has already been set.
According to the JWE documentation (https://tools.ietf.org/html/rfc7516#section-2), it is possible for the EncryptedKey, InitializationVector, and AuthenticationTag to be empty strings.
</remarks>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.DecodeJws(System.String[])"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.DecodeJws(System.String[])">
<summary> <summary>
@@ -240,17 +243,41 @@
<param name="tokenParts">Parts of the JWS including the header.</param> <param name="tokenParts">Parts of the JWS including the header.</param>
<remarks>Assumes Header has already been set.</remarks> <remarks>Assumes Header has already been set.</remarks>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.GetClaim(System.String)">
<summary>
Gets a <see cref="T:System.Security.Claims.Claim"/> representing the { key, 'value' } pair corresponding to the provided <paramref name="key"/>.
</summary>
<remarks>If the key has no corresponding value, this method will throw.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.GetPayloadValue``1(System.String)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.GetPayloadValue``1(System.String)">
<summary> <summary>
Gets the 'value' corresponding to the provided key from the JWT payload { key, 'value' }. Gets the 'value' corresponding to the provided key from the JWT payload { key, 'value' }.
</summary> </summary>
<remarks>If the key has no corresponding value, returns null. </remarks> <remarks>If the key has no corresponding value, this method will throw. </remarks>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.TryGetClaim(System.String,System.Security.Claims.Claim@)">
<summary>
Tries to get the <see cref="T:System.Security.Claims.Claim"/> representing the { key, 'value' } pair corresponding to the provided <paramref name="key"/>.
</summary>
<remarks>If the key has no corresponding value, returns false. Otherwise returns true. </remarks>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.TryGetPayloadValue``1(System.String,``0@)">
<summary>
Tries to get the 'value' corresponding to the provided key from the JWT payload { key, 'value' }.
</summary>
<remarks>If the key has no corresponding value, returns false. Otherwise returns true. </remarks>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.GetHeaderValue``1(System.String)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.GetHeaderValue``1(System.String)">
<summary> <summary>
Gets the 'value' corresponding to the provided key from the JWT header { key, 'value' }. Gets the 'value' corresponding to the provided key from the JWT header { key, 'value' }.
</summary> </summary>
<remarks>If the key has no corresponding value, returns null. </remarks> <remarks>If the key has no corresponding value, this method will throw. </remarks>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.TryGetHeaderValue``1(System.String,``0@)">
<summary>
Tries to get the value corresponding to the provided key from the JWT header { key, 'value' }.
</summary>
<remarks>If the key has no corresponding value, returns false. Otherwise returns true. </remarks>
</member> </member>
<member name="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler"> <member name="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler">
<summary> <summary>
@@ -258,6 +285,13 @@
See: http://tools.ietf.org/html/rfc7519 and http://www.rfc-editor.org/info/rfc7515. See: http://tools.ietf.org/html/rfc7519 and http://www.rfc-editor.org/info/rfc7515.
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.Base64UrlEncodedUnsignedJWSHeader">
<summary>
Gets the Base64Url encoded string representation of the following JWT header:
{ <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Alg"/>, <see cref="F:Microsoft.IdentityModel.Tokens.SecurityAlgorithms.None"/> }.
</summary>
<return>The Base64Url encoded string representation of the unsigned JWT header.</return>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.TokenType"> <member name="P:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.TokenType">
<summary> <summary>
Gets the type of the <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/>. Gets the type of the <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/>.
@@ -287,14 +321,64 @@
</summary> </summary>
<returns>'true', indicating this instance can validate a <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/>.</returns> <returns>'true', indicating this instance can validate a <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/>.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String)">
<summary>
Creates an unsigned JWS (Json Web Signature).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<returns>A JWS in Compact Serialization Format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates an unsigned JWS (Json Web Signature).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null.</exception>
<returns>A JWS in Compact Serialization Format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials)">
<summary> <summary>
Creates a JWS (Json Web Signature). Creates a JWS (Json Web Signature).
</summary> </summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param> <param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWS.</param> <param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWS.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<returns>A JWS in Compact Serialization Format.</returns> <returns>A JWS in Compact Serialization Format.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates a JWS (Json Web Signature).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWS.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenException">if <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Alg"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Kid"/>
<see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.X5t"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Enc"/>, and/or <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Zip"/>
are present inside of <paramref name="additionalHeaderClaims"/>.</exception>
<returns>A JWS in Compact Serialization Format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(Microsoft.IdentityModel.Tokens.SecurityTokenDescriptor)">
<summary>
Creates a JWS(Json Web Signature).
</summary>
<param name="tokenDescriptor">A <see cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDescriptor"/> that contains details of contents of the token.</param>
<returns>A JWS in Compact Serialization Format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials)">
<summary>
Creates a JWE (Json Web Encryption).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<returns>A JWE in compact serialization format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials)">
<summary> <summary>
Creates a JWE (Json Web Encryption). Creates a JWE (Json Web Encryption).
@@ -302,6 +386,35 @@
<param name="payload">A string containing JSON which represents the JWT token payload.</param> <param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param> <param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param> <param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<returns>A JWE in compact serialization format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates a JWE (Json Web Encryption).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the outer JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenException">if <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Alg"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Kid"/>
<see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.X5t"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Enc"/>, and/or <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Zip"/>
are present inside of <paramref name="additionalHeaderClaims"/>.</exception>
<returns>A JWE in compact serialization format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String)">
<summary>
Creates a JWE (Json Web Encryption).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<param name="compressionAlgorithm">Defines the compression algorithm that will be used to compress the JWT token payload.</param>
<returns>A JWE in compact serialization format.</returns> <returns>A JWE in compact serialization format.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String)">
@@ -312,6 +425,29 @@
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param> <param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param> <param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<param name="compressionAlgorithm">Defines the compression algorithm that will be used to compress the JWT token payload.</param> <param name="compressionAlgorithm">Defines the compression algorithm that will be used to compress the JWT token payload.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="compressionAlgorithm"/> is null.</exception>
<returns>A JWE in compact serialization format.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateToken(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates a JWE (Json Web Encryption).
</summary>
<param name="payload">A string containing JSON which represents the JWT token payload.</param>
<param name="signingCredentials">Defines the security key and algorithm that will be used to sign the JWT.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the JWT.</param>
<param name="compressionAlgorithm">Defines the compression algorithm that will be used to compress the JWT token payload.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the outer JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="payload"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="signingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="compressionAlgorithm"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenException">if <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Alg"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Kid"/>
<see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.X5t"/>, <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Enc"/>, and/or <see cref="F:Microsoft.IdentityModel.JsonWebTokens.JwtHeaderParameterNames.Zip"/>
are present inside of <paramref name="additionalHeaderClaims"/>.</exception>
<returns>A JWE in compact serialization format.</returns> <returns>A JWE in compact serialization format.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CompressToken(System.String,System.String)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CompressToken(System.String,System.String)">
@@ -319,22 +455,19 @@
Compress a JWT token string. Compress a JWT token string.
</summary> </summary>
<param name="token"></param> <param name="token"></param>
<param name="algorithm"></param> <param name="compressionAlgorithm"></param>
<exception cref="T:System.ArgumentNullException">if 'token' is null.</exception> <exception cref="T:System.ArgumentNullException">if <paramref name="token"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if 'algorithm' is null.</exception> <exception cref="T:System.ArgumentNullException">if <paramref name="compressionAlgorithm"/> is null.</exception>
<exception cref="T:System.NotSupportedException">if the compression algorithm is not supported.</exception> <exception cref="T:System.NotSupportedException">if the compression algorithm is not supported.</exception>
<returns>Compressed JWT token bytes.</returns> <returns>Compressed JWT token bytes.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.DecompressToken(System.Byte[],System.String)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.CreateClaimsIdentity(Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
Decompress JWT token bytes. Creates a <see cref="T:System.Security.Claims.ClaimsIdentity"/> from a <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/>.
</summary> </summary>
<param name="tokenBytes"></param> <param name="jwtToken">The <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/> to use as a <see cref="T:System.Security.Claims.Claim"/> source.</param>
<param name="algorithm"></param> <param name="validationParameters"> Contains parameters for validating the token.</param>
<exception cref="T:System.ArgumentNullException">if 'tokenBytes' is null.</exception> <returns>A <see cref="T:System.Security.Claims.ClaimsIdentity"/> containing the <see cref="P:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken.Claims"/>.</returns>
<exception cref="T:System.ArgumentNullException">if 'algorithm' is null.</exception>
<exception cref="T:System.NotSupportedException">if the decompression algorithm is not supported.</exception>
<returns>Decompressed JWT token</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.DecryptToken(Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.DecryptToken(Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
@@ -343,21 +476,78 @@
<param name="jwtToken">the JWE that contains the cypher text.</param> <param name="jwtToken">the JWE that contains the cypher text.</param>
<param name="validationParameters">contains crypto material.</param> <param name="validationParameters">contains crypto material.</param>
<returns>the decoded / cleartext contents of the JWE.</returns> <returns>the decoded / cleartext contents of the JWE.</returns>
<exception cref="T:System.ArgumentNullException">if 'jwtToken' is null.</exception> <exception cref="T:System.ArgumentNullException">if <paramref name="jwtToken"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if 'validationParameters' is null.</exception> <exception cref="T:System.ArgumentNullException">if <paramref name="validationParameters"/> is null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenException">if 'jwtToken.Enc' is null or empty.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenException">if '<paramref name="jwtToken"/> .Enc' is null or empty.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecompressionFailedException">if decompression failed.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecompressionFailedException">if decompression failed.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionKeyNotFoundException">if 'jwtToken.Kid' is not null AND decryption fails.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionKeyNotFoundException">if '<paramref name="jwtToken"/> .Kid' is not null AND decryption fails.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecryptionFailedException">if the JWE was not able to be decrypted.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecryptionFailedException">if the JWE was not able to be decrypted.</exception>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ResolveIssuerSigningKey(Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.EncryptToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials)">
<summary> <summary>
Returns a <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use when validating the signature of a token. Encrypts a JWS.
</summary> </summary>
<param name="jwtToken">The <see cref="T:Microsoft.IdentityModel.JsonWebTokens.JsonWebToken"/> that is being validated.</param> <param name="innerJwt">A 'JSON Web Token' (JWT) in JWS Compact Serialization Format.</param>
<param name="validationParameters">A <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationParameters"/> required for validation.</param> <param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the <paramref name="innerJwt"/>.</param>
<returns>Returns a <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use for signature validation.</returns> <exception cref="T:System.ArgumentNullException">if <paramref name="innerJwt"/> is null or empty.</exception>
<remarks>If key fails to resolve, then null is returned</remarks> <exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentException">if both <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.CryptoProviderFactory"/> and <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/>.<see cref="T:Microsoft.IdentityModel.Tokens.CryptoProviderFactory"/> are null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if the CryptoProviderFactory being used does not support the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if unable to create a token encryption provider for the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if encryption fails using the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if not using one of the supported content encryption key (CEK) algorithms: 128, 384 or 512 AesCbcHmac (this applies in the case of key wrap only, not direct encryption).</exception>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.EncryptToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Encrypts a JWS.
</summary>
<param name="innerJwt">A 'JSON Web Token' (JWT) in JWS Compact Serialization Format.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the <paramref name="innerJwt"/>.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the outer JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="innerJwt"/> is null or empty.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null.</exception>
<exception cref="T:System.ArgumentException">if both <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.CryptoProviderFactory"/> and <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/>.<see cref="T:Microsoft.IdentityModel.Tokens.CryptoProviderFactory"/> are null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if the CryptoProviderFactory being used does not support the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if unable to create a token encryption provider for the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if encryption fails using the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if not using one of the supported content encryption key (CEK) algorithms: 128, 384 or 512 AesCbcHmac (this applies in the case of key wrap only, not direct encryption).</exception>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.EncryptToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String)">
<summary>
Encrypts a JWS.
</summary>
<param name="innerJwt">A 'JSON Web Token' (JWT) in JWS Compact Serialization Format.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the <paramref name="innerJwt"/>.</param>
<param name="algorithm">Defines the compression algorithm that will be used to compress the 'innerJwt'.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="innerJwt"/> is null or empty.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="algorithm"/> is null or empty.</exception>
<exception cref="T:System.ArgumentException">if both <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.CryptoProviderFactory"/> and <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/>.<see cref="T:Microsoft.IdentityModel.Tokens.CryptoProviderFactory"/> are null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if the CryptoProviderFactory being used does not support the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if unable to create a token encryption provider for the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenCompressionFailedException">if compression using <paramref name="algorithm"/> fails.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if encryption fails using the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if not using one of the supported content encryption key (CEK) algorithms: 128, 384 or 512 AesCbcHmac (this applies in the case of key wrap only, not direct encryption).</exception>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.EncryptToken(System.String,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Encrypts a JWS.
</summary>
<param name="innerJwt">A 'JSON Web Token' (JWT) in JWS Compact Serialization Format.</param>
<param name="encryptingCredentials">Defines the security key and algorithm that will be used to encrypt the <paramref name="innerJwt"/>.</param>
<param name="algorithm">Defines the compression algorithm that will be used to compress the 'innerJwt'.</param>
<param name="additionalHeaderClaims">Defines the dictionary containing any custom header claims that need to be added to the outer JWT token header.</param>
<exception cref="T:System.ArgumentNullException">if <paramref name="innerJwt"/> is null or empty.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="encryptingCredentials"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="algorithm"/> is null or empty.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="additionalHeaderClaims"/> is null or empty.</exception>
<exception cref="T:System.ArgumentException">if both <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.CryptoProviderFactory"/> and <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/>.<see cref="T:Microsoft.IdentityModel.Tokens.CryptoProviderFactory"/> are null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if the CryptoProviderFactory being used does not support the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if unable to create a token encryption provider for the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenCompressionFailedException">if compression using 'algorithm' fails.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if encryption fails using the <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Enc"/> (algorithm), <see cref="P:Microsoft.IdentityModel.Tokens.EncryptingCredentials.Key"/> pair.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if not using one of the supported content encryption key (CEK) algorithms: 128, 384 or 512 AesCbcHmac (this applies in the case of key wrap only, not direct encryption).</exception>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ResolveTokenDecryptionKey(System.String,Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ResolveTokenDecryptionKey(System.String,Microsoft.IdentityModel.JsonWebTokens.JsonWebToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
@@ -395,14 +585,14 @@
</summary> </summary>
<param name="token">A 'JSON Web Token' (JWT) in JWS or JWE Compact Serialization Format.</param> <param name="token">A 'JSON Web Token' (JWT) in JWS or JWE Compact Serialization Format.</param>
<param name="validationParameters">A <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationParameters"/> required for validation.</param> <param name="validationParameters">A <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationParameters"/> required for validation.</param>
<returns>A <see cref="T:Microsoft.IdentityModel.JsonWebTokens.TokenValidationResult"/></returns> <returns>A <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationResult"/></returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ValidateSignature(System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ValidateSignature(System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
Validates the JWT signature. Validates the JWT signature.
</summary> </summary>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ValidateSignature(System.Byte[],System.Byte[],Microsoft.IdentityModel.Tokens.SecurityKey,System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JsonWebTokenHandler.ValidateSignature(System.Byte[],System.Byte[],Microsoft.IdentityModel.Tokens.SecurityKey,System.String,Microsoft.IdentityModel.Tokens.SecurityToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
Obtains a <see cref="T:Microsoft.IdentityModel.Tokens.SignatureProvider"/> and validates the signature. Obtains a <see cref="T:Microsoft.IdentityModel.Tokens.SignatureProvider"/> and validates the signature.
</summary> </summary>
@@ -410,6 +600,7 @@
<param name="signature">Signature to compare against.</param> <param name="signature">Signature to compare against.</param>
<param name="key"><See cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use.</param> <param name="key"><See cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use.</param>
<param name="algorithm">Crypto algorithm to use.</param> <param name="algorithm">Crypto algorithm to use.</param>
<param name="securityToken">The <see cref="T:Microsoft.IdentityModel.Tokens.SecurityToken"/> being validated.</param>
<param name="validationParameters">Priority will be given to <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.CryptoProviderFactory"/> over <see cref="P:Microsoft.IdentityModel.Tokens.SecurityKey.CryptoProviderFactory"/>.</param> <param name="validationParameters">Priority will be given to <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.CryptoProviderFactory"/> over <see cref="P:Microsoft.IdentityModel.Tokens.SecurityKey.CryptoProviderFactory"/>.</param>
<returns>'true' if signature is valid.</returns> <returns>'true' if signature is valid.</returns>
</member> </member>
@@ -544,7 +735,6 @@
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Actort"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Actort">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Acr"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Acr">
@@ -574,12 +764,12 @@
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Birthdate"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Birthdate">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.CHash"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.CHash">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#HybridIDToken
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.AtHash"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.AtHash">
@@ -589,7 +779,7 @@
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Email"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Email">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Exp"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Exp">
@@ -599,17 +789,17 @@
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Gender"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Gender">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.FamilyName"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.FamilyName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.GivenName"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.GivenName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Iat"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Iat">
@@ -627,14 +817,18 @@
http://tools.ietf.org/html/rfc7519#section-4 http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Name">
<summary>
https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary>
</member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.NameId"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.NameId">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Nonce"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Nonce">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#AuthRequest
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Nbf"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Nbf">
@@ -642,9 +836,18 @@
http://tools.ietf.org/html/rfc7519#section-4 http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.PhoneNumber">
<summary>
https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary>
</member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.PhoneNumberVerified">
<summary>
https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary>
</member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Prn"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Prn">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Sid"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Sid">
@@ -659,17 +862,70 @@
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Typ"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Typ">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://tools.ietf.org/html/rfc7519#section-5
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.UniqueName"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.UniqueName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Website"> <member name="F:Microsoft.IdentityModel.JsonWebTokens.JwtRegisteredClaimNames.Website">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 </summary>
</member>
<member name="T:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters">
<summary>
Represents the parameters needed to decrypt a JSON Web Token
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.Alg">
<summary>
Gets or sets signature algorithm that was used to create the signature.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.AuthenticationTag">
<summary>
Gets or sets the AuthenticationTag from the original raw data of this instance when it was created.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.Ciphertext">
<summary>
Gets or sets the Ciphertext from the original raw data of this instance when it was created.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.DecompressionFunction">
<summary>
Gets or sets the function used to attempt decompression with.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.Enc">
<summary>
Gets or sets the encryption algorithm (Enc) of the token.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.EncodedHeader">
<summary>
Gets the EncodedHeader from the original raw data of this instance when it was created.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.EncodedToken">
<summary>
Gets or sets the EncodedHeader from the original raw data of this instance when it was created.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.InitializationVector">
<summary>
Gets or sets the InitializationVector from the original raw data of this instance when it was created.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.Keys">
<summary>
Gets or sets the collection of <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>s to attempt to decrypt with.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters.Zip">
<summary>
Gets or sets the 'value' of the 'zip' claim.
</summary> </summary>
</member> </member>
<member name="T:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities"> <member name="T:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities">
@@ -696,6 +952,37 @@
<returns>The bse64urlendcoded signature over the bytes obtained from UTF8Encoding.GetBytes( 'input' ).</returns> <returns>The bse64urlendcoded signature over the bytes obtained from UTF8Encoding.GetBytes( 'input' ).</returns>
<exception cref="T:System.ArgumentNullException">'input' or 'signingCredentials' is null.</exception> <exception cref="T:System.ArgumentNullException">'input' or 'signingCredentials' is null.</exception>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.CreateEncodedSignature(System.String,Microsoft.IdentityModel.Tokens.SigningCredentials,System.Boolean)">
<summary>
Produces a signature over the 'input'.
</summary>
<param name="input">String to be signed</param>
<param name="signingCredentials">The <see cref="T:Microsoft.IdentityModel.Tokens.SigningCredentials"/> that contain crypto specs used to sign the token.</param>
<param name="cacheProvider">should the <see cref="T:Microsoft.IdentityModel.Tokens.SignatureProvider"/> be cached.</param>
<returns>The bse64urlendcoded signature over the bytes obtained from UTF8Encoding.GetBytes( 'input' ).</returns>
<exception cref="T:System.ArgumentNullException">'input' or 'signingCredentials' is null.</exception>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.DecompressToken(System.Byte[],System.String)">
<summary>
Decompress JWT token bytes.
</summary>
<param name="tokenBytes"></param>
<param name="algorithm"></param>
<exception cref="T:System.ArgumentNullException">if <paramref name="tokenBytes"/> is null.</exception>
<exception cref="T:System.ArgumentNullException">if <paramref name="algorithm"/> is null.</exception>
<exception cref="T:System.NotSupportedException">if the decompression <paramref name="algorithm"/> is not supported.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecompressionFailedException">if decompression using <paramref name="algorithm"/> fails.</exception>
<returns>Decompressed JWT token</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.DecryptJwtToken(Microsoft.IdentityModel.Tokens.SecurityToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters,Microsoft.IdentityModel.JsonWebTokens.JwtTokenDecryptionParameters)">
<summary>
Decrypts a Json Web Token.
</summary>
<param name="jwtToken">The Json Web Token</param>
<param name="validationParameters">The validation parameters containing cryptographic material.</param>
<param name="decryptionParameters">The decryption parameters container.</param>
<returns>The decrypted, and if the 'zip' claim is set, decompressed string representation of the token.</returns>
</member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.GenerateKeyBytes(System.Int32)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.GenerateKeyBytes(System.Int32)">
<summary> <summary>
Generates key bytes. Generates key bytes.
@@ -706,7 +993,7 @@
Gets all decryption keys. Gets all decryption keys.
</summary> </summary>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.GetDateTime(System.String,Newtonsoft.Json.Linq.JObject)"> <member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.GetDateTime(System.String,Microsoft.IdentityModel.Json.Linq.JObject)">
<summary> <summary>
Gets the DateTime using the number of seconds from 1970-01-01T0:0:0Z (UTC) Gets the DateTime using the number of seconds from 1970-01-01T0:0:0Z (UTC)
</summary> </summary>
@@ -717,20 +1004,20 @@
<exception cref="T:System.FormatException">If the value of the claim cannot be parsed into a long.</exception> <exception cref="T:System.FormatException">If the value of the claim cannot be parsed into a long.</exception>
<returns>The DateTime representation of a claim.</returns> <returns>The DateTime representation of a claim.</returns>
</member> </member>
<member name="M:Microsoft.IdentityModel.JsonWebTokens.JwtTokenUtilities.ResolveTokenSigningKey(System.String,System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary>
Returns a <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use when validating the signature of a token.
</summary>
<param name="kid">The <see cref="T:System.String"/> kid field of the token being validated</param>
<param name="x5t">The <see cref="T:System.String"/> x5t field of the token being validated</param>
<param name="validationParameters">A <see cref="T:Microsoft.IdentityModel.Tokens.TokenValidationParameters"/> required for validation.</param>
<returns>Returns a <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use for signature validation.</returns>
<remarks>If key fails to resolve, then null is returned</remarks>
</member>
<member name="T:Microsoft.IdentityModel.JsonWebTokens.LogMessages"> <member name="T:Microsoft.IdentityModel.JsonWebTokens.LogMessages">
<summary> <summary>
Log messages and codes Log messages and codes
</summary> </summary>
</member> </member>
<member name="T:Microsoft.IdentityModel.JsonWebTokens.TokenValidationResult">
<summary>
A class which contains the result of a token validation operation.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.JsonWebTokens.TokenValidationResult.SecurityToken">
<summary>
The validated security token.
</summary>
</member>
</members> </members>
</doc> </doc>

View File

@@ -151,6 +151,36 @@
Minimum log level to log events. Default is Warning. Minimum log level to log events. Default is Warning.
</summary> </summary>
</member> </member>
<member name="T:Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil">
<summary>
Provides a way to add and remove telemetry data.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.ClientSku">
<summary>
Get the string that represents the client SKU.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.ClientVer">
<summary>
Get the string that represents the client version.
</summary>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.AddTelemetryData(System.String,System.String)">
<summary>
Adds a key and its value to the collection of telemetry data.
</summary>
<param name="key"> The name of the telemetry.</param>
<param name="value"> The value of the telemetry.</param>
<returns> true if the key is successfully added; otherwise, false.</returns>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelTelemetryUtil.RemoveTelemetryData(System.String)">
<summary>
Removes a key and its value from the collection of telemetry data.
</summary>
<param name="key"> The name of the telemetry.</param>
<returns> true if the key is successfully removed; otherwise, false.</returns>
</member>
<member name="T:Microsoft.IdentityModel.Logging.LogHelper"> <member name="T:Microsoft.IdentityModel.Logging.LogHelper">
<summary> <summary>
Helper class for logging. Helper class for logging.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -201,6 +201,16 @@
<param name="signingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.SigningCredentials"/> used when creating a JWS Compact JSON.</param> <param name="signingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.SigningCredentials"/> used when creating a JWS Compact JSON.</param>
<param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param> <param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.SigningCredentials,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
<summary>
Initializes a new instance of <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/>.
With the Header Parameters:
<para>{ { typ, JWT }, { alg, SigningCredentials.Algorithm } }</para>
</summary>
<param name="signingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.SigningCredentials"/> used when creating a JWS Compact JSON.</param>
<param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param>
<param name="tokenType"> will be added as the value for the 'typ' claim in the header. If it is null or empty <see cref="F:System.IdentityModel.Tokens.Jwt.JwtConstants.HeaderType"/> will be used as token type</param>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.String})"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.String})">
<summary> <summary>
Initializes a new instance of <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/>. Initializes a new instance of <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/>.
@@ -209,7 +219,18 @@
</summary> </summary>
<param name="encryptingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.EncryptingCredentials"/> used when creating a JWS Compact JSON.</param> <param name="encryptingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.EncryptingCredentials"/> used when creating a JWS Compact JSON.</param>
<param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param> <param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param>
<exception cref="T:System.ArgumentNullException">If 'signingCredentials' is null.</exception> <exception cref="T:System.ArgumentNullException">If 'encryptingCredentials' is null.</exception>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
<summary>
Initializes a new instance of <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/>.
With the Header Parameters:
<para>{ { typ, JWT }, { alg, SigningCredentials.Algorithm } }</para>
</summary>
<param name="encryptingCredentials"><see cref="P:System.IdentityModel.Tokens.Jwt.JwtHeader.EncryptingCredentials"/> used when creating a JWS Compact JSON.</param>
<param name="outboundAlgorithmMap">provides a mapping for the 'alg' value so that values are within the JWT namespace.</param>
<param name="tokenType"> provides the token type</param>
<exception cref="T:System.ArgumentNullException">If 'encryptingCredentials' is null.</exception>
</member> </member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtHeader.Alg"> <member name="P:System.IdentityModel.Tokens.Jwt.JwtHeader.Alg">
<summary> <summary>
@@ -262,6 +283,18 @@
Gets the thumbprint of the certificate used to sign the token Gets the thumbprint of the certificate used to sign the token
</summary> </summary>
</member> </member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtHeader.X5c">
<summary>
Gets the certificate used to sign the token
</summary>
<remarks>If the 'x5c' claim is not found, null is returned.</remarks>
</member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtHeader.Zip">
<summary>
Gets the 'value' of the 'zip' claim { zip, 'value' }.
</summary>
<remarks>If the 'zip' claim is not found, null is returned.</remarks>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.Base64UrlDeserialize(System.String)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtHeader.Base64UrlDeserialize(System.String)">
<summary> <summary>
Deserializes Base64UrlEncoded JSON into a <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> instance. Deserializes Base64UrlEncoded JSON into a <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> instance.
@@ -388,26 +421,52 @@
<summary> <summary>
Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> class with claims added for each parameter specified. Default string comparer <see cref="P:System.StringComparer.Ordinal"/>. Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> class with claims added for each parameter specified. Default string comparer <see cref="P:System.StringComparer.Ordinal"/>.
</summary> </summary>
<param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added.</param> <param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added, overwriting any 'iss' claim in 'claims' if present.</param>
<param name="audience">If this value is not null, a { aud, 'audience' } claim will be added</param> <param name="audience">If this value is not null, a { aud, 'audience' } claim will be added, appending to any 'aud' claims in 'claims' if present.</param>
<param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param> <param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param>
<param name="notBefore">If notbefore.HasValue is 'true' a { nbf, 'value' } claim is added.</param> <param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added, overwriting any 'nbf' claim in 'claims' if present.</param>
<param name="expires">If expires.HasValue is 'true' a { exp, 'value' } claim is added.</param> <param name="expires">If expires.HasValue a { exp, 'value' } claim is added, overwriting any 'exp' claim in 'claims' if present.</param>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Security.Claims.Claim},System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Security.Claims.Claim},System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
<summary> <summary>
Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> class with claims added for each parameter specified. Default string comparer <see cref="P:System.StringComparer.Ordinal"/>. Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> class with claims added for each parameter specified. Default string comparer <see cref="P:System.StringComparer.Ordinal"/>.
</summary> </summary>
<param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added.</param> <param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added, overwriting any 'iss' claim in 'claims' if present.</param>
<param name="audience">If this value is not null, a { aud, 'audience' } claim will be added</param> <param name="audience">If this value is not null, a { aud, 'audience' } claim will be added, appending to any 'aud' claims in 'claims' if present.</param>
<param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param> <param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param>
<param name="notBefore">If notbefore.HasValue is 'true' a { nbf, 'value' } claim is added.</param> <param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added, overwriting any 'nbf' claim in 'claims' if present.</param>
<param name="expires">If expires.HasValue is 'true' a { exp, 'value' } claim is added.</param> <param name="expires">If expires.HasValue a { exp, 'value' } claim is added, overwriting any 'exp' claim in 'claims' if present.</param>
<param name="issuedAt">If issuedAt.HasValue is 'true' a { iat, 'value' } claim is added.</param> <param name="issuedAt">If issuedAt.HasValue is 'true' a { iat, 'value' } claim is added, overwriting any 'iat' claim in 'claims' if present.</param>
<remarks>Comparison is set to <see cref="P:System.StringComparer.Ordinal"/> <remarks>Comparison is set to <see cref="P:System.StringComparer.Ordinal"/>
<para>The 4 parameters: 'issuer', 'audience', 'notBefore', 'expires' take precednece over <see cref="T:System.Security.Claims.Claim"/>(s) in 'claims'. The values in 'claims' will be overridden.</para></remarks> <para>The 4 parameters: 'issuer', 'audience', 'notBefore', 'expires' take precedence over <see cref="T:System.Security.Claims.Claim"/>(s) in 'claims'. The values will be overridden.</para></remarks>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notbefore'.</exception> <exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notbefore'.</exception>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Security.Claims.Claim},System.Collections.Generic.IDictionary{System.String,System.Object},System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
<summary>
Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> class with claims added for each parameter specified. Default string comparer <see cref="P:System.StringComparer.Ordinal"/>.
</summary>
<param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added, overwriting any 'iss' claim in 'claims' and 'claimCollection' if present.</param>
<param name="audience">If this value is not null, a { aud, 'audience' } claim will be added, appending to any 'aud' claims in 'claims' or 'claimCollection' if present.</param>
<param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param>
<param name="claimsCollection">If both <paramref name="claims"/> and <paramref name="claimsCollection"/> are not null then the values in claims will be combined with the values in claimsCollection. The values found in claimCollection take precedence over those found in claims, so any duplicate
values will be overridden.</param>
<param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added, overwriting any 'nbf' claim in 'claims' and 'claimcollection' if present.</param>
<param name="expires">If expires.HasValue a { exp, 'value' } claim is added, overwriting any 'exp' claim in 'claims' and 'claimcollection' if present.</param>
<param name="issuedAt">If issuedAt.HasValue is 'true' a { iat, 'value' } claim is added, overwriting any 'iat' claim in 'claims' and 'claimcollection' if present.</param>
<remarks>Comparison is set to <see cref="P:System.StringComparer.Ordinal"/>
<para>The 4 parameters: 'issuer', 'audience', 'notBefore', 'expires' take precedence over <see cref="T:System.Security.Claims.Claim"/>(s) in 'claims' and 'claimcollection'. The values will be overridden.</para></remarks>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notbefore'.</exception>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.AddFirstPriorityClaims(System.String,System.String,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
<summary>
Adds Nbf, Exp, Iat, Iss and Aud claims to payload
</summary>
<param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added, overwriting any 'iss' claim in <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> instance.</param>
<param name="audience">If this value is not null, a { aud, 'audience' } claim will be added, appending to any 'aud' claims in <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> instance.</param>
<param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added, overwriting any 'nbf' claim in <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> instance.</param>
<param name="expires">If expires.HasValue a { exp, 'value' } claim is added, overwriting any 'exp' claim in <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> instance.</param>
<param name="issuedAt">If issuedAt.HasValue is 'true' a { iat, 'value' } claim is added, overwriting any 'iat' claim in <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> instance.</param>
</member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtPayload.Actort"> <member name="P:System.IdentityModel.Tokens.Jwt.JwtPayload.Actort">
<summary> <summary>
Gets the 'value' of the 'actor' claim { actort, 'value' }. Gets the 'value' of the 'actor' claim { actort, 'value' }.
@@ -504,6 +563,12 @@
</summary> </summary>
<remarks>If the 'expiration' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks> <remarks>If the 'expiration' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks>
</member> </member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtPayload.IssuedAt">
<summary>
Gets the 'value' of the 'issued at' claim { iat, 'value' } converted to a <see cref="T:System.DateTime"/> assuming 'value' is seconds since UnixEpoch (UTC 1970-01-01T0:0:0Z).
</summary>
<remarks>If the 'issued at' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks>
</member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtPayload.Claims"> <member name="P:System.IdentityModel.Tokens.Jwt.JwtPayload.Claims">
<summary> <summary>
Gets a <see cref="T:System.Collections.Generic.IEnumerable`1"/><see cref="T:System.Security.Claims.Claim"/> for each JSON { name, value }. Gets a <see cref="T:System.Collections.Generic.IEnumerable`1"/><see cref="T:System.Security.Claims.Claim"/> for each JSON { name, value }.
@@ -526,7 +591,14 @@
<param name="claims">For each <see cref="T:System.Security.Claims.Claim"/> a JSON pair { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param> <param name="claims">For each <see cref="T:System.Security.Claims.Claim"/> a JSON pair { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param>
<remarks> <remarks>
<para>Any <see cref="T:System.Security.Claims.Claim"/> in the <see cref="T:System.Collections.Generic.IEnumerable`1"/> that is null, will be ignored.</para></remarks> <para>Any <see cref="T:System.Security.Claims.Claim"/> in the <see cref="T:System.Collections.Generic.IEnumerable`1"/> that is null, will be ignored.</para></remarks>
<exception cref="T:System.ArgumentNullException">'claims' is null.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="claims"/> is null.</exception>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.AddDictionaryClaims(System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Adds claims from dictionary.
</summary>
<param name="claimsCollection"> A dictionary of claims.</param>
<remark> If a key is already present in target dictionary, its value is overridden by the value of the key in claimsCollection.</remark>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.GetDateTime(System.String)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtPayload.GetDateTime(System.String)">
<summary> <summary>
@@ -577,7 +649,6 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Actort"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Actort">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Acr"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Acr">
@@ -607,12 +678,12 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Birthdate"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Birthdate">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.CHash"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.CHash">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#HybridIDToken
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.AtHash"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.AtHash">
@@ -622,7 +693,7 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Email"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Email">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Exp"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Exp">
@@ -632,17 +703,17 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Gender"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Gender">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.FamilyName"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.FamilyName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.GivenName"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.GivenName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Iat"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Iat">
@@ -660,14 +731,18 @@
http://tools.ietf.org/html/rfc7519#section-4 http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Name">
<summary>
https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims
</summary>
</member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.NameId"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.NameId">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Nonce"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Nonce">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 https://openid.net/specs/openid-connect-core-1_0.html#AuthRequest
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Nbf"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Nbf">
@@ -677,7 +752,6 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Prn"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Prn">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Sid"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Sid">
@@ -692,17 +766,15 @@
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Typ"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Typ">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4 http://tools.ietf.org/html/rfc7519#section-5
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.UniqueName"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.UniqueName">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Website"> <member name="F:System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Website">
<summary> <summary>
http://tools.ietf.org/html/rfc7519#section-4
</summary> </summary>
</member> </member>
<member name="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"> <member name="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken">
@@ -768,11 +840,11 @@
<summary> <summary>
Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> class specifying optional parameters. Initializes a new instance of the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> class specifying optional parameters.
</summary> </summary>
<param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added.</param> <param name="issuer">If this value is not null, a { iss, 'issuer' } claim will be added, overwriting any 'iss' claim in 'claims' if present.</param>
<param name="audience">If this value is not null, a { aud, 'audience' } claim will be added</param> <param name="audience">If this value is not null, a { aud, 'audience' } claim will be added, appending to any 'aud' claims in 'claims' if present.</param>
<param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param> <param name="claims">If this value is not null then for each <see cref="T:System.Security.Claims.Claim"/> a { 'Claim.Type', 'Claim.Value' } is added. If duplicate claims are found then a { 'Claim.Type', List&lt;object&gt; } will be created to contain the duplicate values.</param>
<param name="expires">If expires.HasValue a { exp, 'value' } claim is added.</param> <param name="expires">If expires.HasValue a { exp, 'value' } claim is added, overwriting any 'exp' claim in 'claims' if present.</param>
<param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added.</param> <param name="notBefore">If notbefore.HasValue a { nbf, 'value' } claim is added, overwriting any 'nbf' claim in 'claims' if present.</param>
<param name="signingCredentials">The <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.SigningCredentials"/> that will be used to sign the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>. See <see cref="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.SigningCredentials)"/> for details pertaining to the Header Parameter(s).</param> <param name="signingCredentials">The <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.SigningCredentials"/> that will be used to sign the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>. See <see cref="M:System.IdentityModel.Tokens.Jwt.JwtHeader.#ctor(Microsoft.IdentityModel.Tokens.SigningCredentials)"/> for details pertaining to the Header Parameter(s).</param>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notbefore'.</exception> <exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notbefore'.</exception>
</member> </member>
@@ -826,7 +898,7 @@
<member name="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.Payload"> <member name="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.Payload">
<summary> <summary>
Gets the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> associated with this instance. Gets the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> associated with this instance.
Note that if this JWT is nested ( <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.InnerToken"/> != null, this property represnts the payload of the most inner token. Note that if this JWT is nested ( <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.InnerToken"/> != null, this property represents the payload of the most inner token.
This property can be null if the content type of the most inner token is unrecognized, in that case This property can be null if the content type of the most inner token is unrecognized, in that case
the content of the token is the string returned by PlainText property. the content of the token is the string returned by PlainText property.
</summary> </summary>
@@ -937,6 +1009,12 @@
</summary> </summary>
<remarks>If the 'expiration' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks> <remarks>If the 'expiration' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks>
</member> </member>
<member name="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.IssuedAt">
<summary>
Gets the 'value' of the 'issued at' claim { iat, 'value' } converted to a <see cref="T:System.DateTime"/> assuming 'value' is seconds since UnixEpoch (UTC 1970-01-01T0:0:0Z).
</summary>
<remarks>If the 'issued at' claim is not found, then <see cref="F:System.DateTime.MinValue"/> is returned.</remarks>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.ToString"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.ToString">
<summary> <summary>
Serializes the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> and <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> Serializes the <see cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> and <see cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/>
@@ -1139,6 +1217,27 @@
<returns>A Base64UrlEncoded string in 'Compact Serialization Format'.</returns> <returns>A Base64UrlEncoded string in 'Compact Serialization Format'.</returns>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception> <exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateEncodedJwt(System.String,System.String,System.Security.Claims.ClaimsIdentity,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime},Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates a JWT in 'Compact Serialization Format'.
</summary>
<param name="issuer">The issuer of the token.</param>
<param name="audience">The audience for this token.</param>
<param name="subject">The source of the <see cref="T:System.Security.Claims.Claim"/>(s) for this token.</param>
<param name="notBefore">Translated into 'epoch time' and assigned to 'nbf'.</param>
<param name="expires">Translated into 'epoch time' and assigned to 'exp'.</param>
<param name="issuedAt">Translated into 'epoch time' and assigned to 'iat'.</param>
<param name="signingCredentials">Contains cryptographic material for signing.</param>
<param name="encryptingCredentials">Contains cryptographic material for encrypting.</param>
<param name="claimCollection">A collection of (key,value) pairs representing <see cref="T:System.Security.Claims.Claim"/>(s) for this token.</param>
<remarks>If <see cref="P:System.Security.Claims.ClaimsIdentity.Actor"/> is not null, then a claim { actort, 'value' } will be added to the payload. <see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateActorValue(System.Security.Claims.ClaimsIdentity)"/> for details on how the value is created.
<para>See <seealso cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> for details on how the HeaderParameters are added to the header.</para>
<para>See <seealso cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> for details on how the values are added to the payload.</para>
<para>Each <see cref="T:System.Security.Claims.Claim"/> in the <paramref name="subject"/> will map <see cref="P:System.Security.Claims.Claim.Type"/> by applying <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.OutboundClaimTypeMap"/>. Modifying <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.OutboundClaimTypeMap"/> could change the outbound JWT.</para>
</remarks>
<returns>A Base64UrlEncoded string in 'Compact Serialization Format'.</returns>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateJwtSecurityToken(Microsoft.IdentityModel.Tokens.SecurityTokenDescriptor)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateJwtSecurityToken(Microsoft.IdentityModel.Tokens.SecurityTokenDescriptor)">
<summary> <summary>
Creates a Json Web Token (JWT). Creates a Json Web Token (JWT).
@@ -1169,6 +1268,30 @@
<returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>.</returns> <returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>.</returns>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception> <exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateJwtSecurityToken(System.String,System.String,System.Security.Claims.ClaimsIdentity,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime},Microsoft.IdentityModel.Tokens.SigningCredentials,Microsoft.IdentityModel.Tokens.EncryptingCredentials,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Creates a <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>
</summary>
<param name="issuer">The issuer of the token.</param>
<param name="audience">The audience for this token.</param>
<param name="subject">The source of the <see cref="T:System.Security.Claims.Claim"/>(s) for this token.</param>
<param name="notBefore">The notbefore time for this token.</param>
<param name="expires">The expiration time for this token.</param>
<param name="issuedAt">The issue time for this token.</param>
<param name="signingCredentials">Contains cryptographic material for generating a signature.</param>
<param name="encryptingCredentials">Contains cryptographic material for encrypting the token.</param>
<param name="claimCollection">A collection of (key,value) pairs representing <see cref="T:System.Security.Claims.Claim"/>(s) for this token.</param>
<remarks>If <see cref="P:System.Security.Claims.ClaimsIdentity.Actor"/> is not null, then a claim { actort, 'value' } will be added to the payload. <see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateActorValue(System.Security.Claims.ClaimsIdentity)"/> for details on how the value is created.
<para>See <seealso cref="T:System.IdentityModel.Tokens.Jwt.JwtHeader"/> for details on how the HeaderParameters are added to the header.</para>
<para>See <seealso cref="T:System.IdentityModel.Tokens.Jwt.JwtPayload"/> for details on how the values are added to the payload.</para>
<para>Each <see cref="T:System.Security.Claims.Claim"/> on the <paramref name="subject"/> added will have <see cref="P:System.Security.Claims.Claim.Type"/> translated according to the mapping found in
<see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.OutboundClaimTypeMap"/>. Adding and removing to <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.OutboundClaimTypeMap"/> will affect the name component of the Json claim.</para>
<para><see cref="M:Microsoft.IdentityModel.Tokens.SigningCredentials.#ctor(Microsoft.IdentityModel.Tokens.SecurityKey,System.String)"/> is used to sign <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.RawData"/>.</para>
<para><see cref="M:Microsoft.IdentityModel.Tokens.EncryptingCredentials.#ctor(Microsoft.IdentityModel.Tokens.SecurityKey,System.String,System.String)"/> is used to encrypt <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.RawData"/> or <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.RawPayload"/> .</para>
</remarks>
<returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>.</returns>
<exception cref="T:System.ArgumentException">If 'expires' &lt;= 'notBefore'.</exception>
</member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateJwtSecurityToken(System.String,System.String,System.Security.Claims.ClaimsIdentity,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime},Microsoft.IdentityModel.Tokens.SigningCredentials)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CreateJwtSecurityToken(System.String,System.String,System.Security.Claims.ClaimsIdentity,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime},Microsoft.IdentityModel.Tokens.SigningCredentials)">
<summary> <summary>
Creates a <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> Creates a <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/>
@@ -1204,7 +1327,7 @@
<param name="token">A 'JSON Web Token' (JWT) in JWS or JWE Compact Serialization Format.</param> <param name="token">A 'JSON Web Token' (JWT) in JWS or JWE Compact Serialization Format.</param>
<returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/></returns> <returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/></returns>
<exception cref="T:System.ArgumentNullException">'token' is null or empty.</exception> <exception cref="T:System.ArgumentNullException">'token' is null or empty.</exception>
<exception cref="T:System.ArgumentException">'token.Length' $gt; <see cref="P:Microsoft.IdentityModel.Tokens.TokenHandler.MaximumTokenSizeInBytes"/>.</exception> <exception cref="T:System.ArgumentException">'token.Length' is greater than <see cref="P:Microsoft.IdentityModel.Tokens.TokenHandler.MaximumTokenSizeInBytes"/>.</exception>
<exception cref="T:System.ArgumentException"><see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CanReadToken(System.String)"/></exception> <exception cref="T:System.ArgumentException"><see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CanReadToken(System.String)"/></exception>
<remarks><para>If the 'token' is in JWE Compact Serialization format, only the protected header will be deserialized.</para> <remarks><para>If the 'token' is in JWE Compact Serialization format, only the protected header will be deserialized.</para>
This method is unable to decrypt the payload. Use <see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters,Microsoft.IdentityModel.Tokens.SecurityToken@)"/>to obtain the payload.</remarks> This method is unable to decrypt the payload. Use <see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters,Microsoft.IdentityModel.Tokens.SecurityToken@)"/>to obtain the payload.</remarks>
@@ -1239,7 +1362,7 @@
<param name="validatedToken">The <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> that was validated.</param> <param name="validatedToken">The <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> that was validated.</param>
<exception cref="T:System.ArgumentNullException"><paramref name="token"/> is null or whitespace.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="token"/> is null or whitespace.</exception>
<exception cref="T:System.ArgumentNullException"><paramref name="validationParameters"/> is null.</exception> <exception cref="T:System.ArgumentNullException"><paramref name="validationParameters"/> is null.</exception>
<exception cref="T:System.ArgumentException"><paramref name="token"/>.Length $gt; MamimumTokenSizeInBytes.</exception> <exception cref="T:System.ArgumentException"><paramref name="token"/>.Length is greater than <see cref="P:Microsoft.IdentityModel.Tokens.TokenHandler.MaximumTokenSizeInBytes"/>.</exception>
<exception cref="T:System.ArgumentException"><paramref name="token"/> does not have 3 or 5 parts.</exception> <exception cref="T:System.ArgumentException"><paramref name="token"/> does not have 3 or 5 parts.</exception>
<exception cref="T:System.ArgumentException"><see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CanReadToken(System.String)"/> returns false.</exception> <exception cref="T:System.ArgumentException"><see cref="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.CanReadToken(System.String)"/> returns false.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecryptionFailedException"><paramref name="token"/> was a JWE was not able to be decrypted.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenDecryptionFailedException"><paramref name="token"/> was a JWE was not able to be decrypted.</exception>
@@ -1257,7 +1380,7 @@
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenReplayDetectedException"><paramref name="token"/> is found in the cache.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenReplayDetectedException"><paramref name="token"/> is found in the cache.</exception>
<returns> A <see cref="T:System.Security.Claims.ClaimsPrincipal"/> from the JWT. Does not include claims found in the JWT header.</returns> <returns> A <see cref="T:System.Security.Claims.ClaimsPrincipal"/> from the JWT. Does not include claims found in the JWT header.</returns>
<remarks> <remarks>
Many of the exceptions listed above are not thrown directly from this method. See <see cref="T:Microsoft.IdentityModel.Tokens.Validators"/> to examin the call graph. Many of the exceptions listed above are not thrown directly from this method. See <see cref="T:Microsoft.IdentityModel.Tokens.Validators"/> to examine the call graph.
</remarks> </remarks>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateTokenPayload(System.IdentityModel.Tokens.Jwt.JwtSecurityToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateTokenPayload(System.IdentityModel.Tokens.Jwt.JwtSecurityToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
@@ -1286,7 +1409,7 @@
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.InnerToken"/> is set and <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.EncryptingCredentials"/> is not set.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenEncryptionFailedException">if <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.InnerToken"/> is set and <see cref="P:System.IdentityModel.Tokens.Jwt.JwtSecurityToken.EncryptingCredentials"/> is not set.</exception>
<returns>A JWE or JWS in 'Compact Serialization Format'.</returns> <returns>A JWE or JWS in 'Compact Serialization Format'.</returns>
</member> </member>
<member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateSignature(System.Byte[],System.Byte[],Microsoft.IdentityModel.Tokens.SecurityKey,System.String,Microsoft.IdentityModel.Tokens.TokenValidationParameters)"> <member name="M:System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateSignature(System.Byte[],System.Byte[],Microsoft.IdentityModel.Tokens.SecurityKey,System.String,Microsoft.IdentityModel.Tokens.SecurityToken,Microsoft.IdentityModel.Tokens.TokenValidationParameters)">
<summary> <summary>
Obtains a <see cref="T:Microsoft.IdentityModel.Tokens.SignatureProvider"/> and validates the signature. Obtains a <see cref="T:Microsoft.IdentityModel.Tokens.SignatureProvider"/> and validates the signature.
</summary> </summary>
@@ -1294,6 +1417,7 @@
<param name="signature">Signature to compare against.</param> <param name="signature">Signature to compare against.</param>
<param name="key"><See cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use.</param> <param name="key"><See cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/> to use.</param>
<param name="algorithm">Crypto algorithm to use.</param> <param name="algorithm">Crypto algorithm to use.</param>
<param name="securityToken">The <see cref="T:Microsoft.IdentityModel.Tokens.SecurityToken"/> being validated.</param>
<param name="validationParameters">Priority will be given to <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.CryptoProviderFactory"/> over <see cref="P:Microsoft.IdentityModel.Tokens.SecurityKey.CryptoProviderFactory"/>.</param> <param name="validationParameters">Priority will be given to <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.CryptoProviderFactory"/> over <see cref="P:Microsoft.IdentityModel.Tokens.SecurityKey.CryptoProviderFactory"/>.</param>
<returns>'true' if signature is valid.</returns> <returns>'true' if signature is valid.</returns>
</member> </member>
@@ -1306,8 +1430,14 @@
<exception cref="T:System.ArgumentNullException">If 'jwt' is null or whitespace.</exception> <exception cref="T:System.ArgumentNullException">If 'jwt' is null or whitespace.</exception>
<exception cref="T:System.ArgumentNullException">If 'validationParameters' is null.</exception> <exception cref="T:System.ArgumentNullException">If 'validationParameters' is null.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenValidationException">If a signature is not found and <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.RequireSignedTokens"/> is true.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenValidationException">If a signature is not found and <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.RequireSignedTokens"/> is true.</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenSignatureKeyNotFoundException">If the 'token' has a key identifier and none of the <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>(s) provided result in a validated signature. <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenSignatureKeyNotFoundException">
This can indicate that a key refresh is required.</exception> If the 'token' has a key identifier and none of the <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>(s) provided result in a validated signature.
This can indicate that a key refresh is required.
</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenUnableToValidateException">
If the 'token' has a key identifier and none of the <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>(s) provided result in a validated signature as well as the token
had validation errors or lifetime or issuer. This is not intended to be a signal to refresh keys.
</exception>
<exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenInvalidSignatureException">If after trying all the <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>(s), none result in a validated signature AND the 'token' does not have a key identifier.</exception> <exception cref="T:Microsoft.IdentityModel.Tokens.SecurityTokenInvalidSignatureException">If after trying all the <see cref="T:Microsoft.IdentityModel.Tokens.SecurityKey"/>(s), none result in a validated signature AND the 'token' does not have a key identifier.</exception>
<returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> that has the signature validated if token was signed.</returns> <returns>A <see cref="T:System.IdentityModel.Tokens.Jwt.JwtSecurityToken"/> that has the signature validated if token was signed.</returns>
<remarks><para>If the 'token' is signed, the signature is validated even if <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.RequireSignedTokens"/> is false.</para> <remarks><para>If the 'token' is signed, the signature is validated even if <see cref="P:Microsoft.IdentityModel.Tokens.TokenValidationParameters.RequireSignedTokens"/> is false.</para>

View File

@@ -176,59 +176,62 @@ public partial class CRM_CatEmpresasCRM : ClsPaginas
string Correo = row["Correo"].ToString(); string Correo = row["Correo"].ToString();
int CveMedioCaptacion = -1; int CveMedioCaptacion = -1;
if (ObjCRM.GetMedioCaptacion(UsuarioActual.CveEmpresa)) if (MedioCaptacion != "" || Agente != "") {
{
DataRow MediosCaptacion = ObjCRM.DtResultados.FiltroPrimero(String.Format("MedioCaptacion = '{0}'",MedioCaptacion)); if (ObjCRM.GetMedioCaptacion(UsuarioActual.CveEmpresa))
if(MediosCaptacion != null)
{ {
CveMedioCaptacion = MediosCaptacion["CveMedioCaptacion"].ToString().ToEntero(); DataRow MediosCaptacion = ObjCRM.DtResultados.FiltroPrimero(String.Format("MedioCaptacion = '{0}'",MedioCaptacion));
if(MediosCaptacion != null)
{
CveMedioCaptacion = MediosCaptacion["CveMedioCaptacion"].ToString().ToEntero();
}else
{
Alert(String.Format("El medio de captación '{0}' no fue encontrado", MedioCaptacion), ModExtensiones.TipoMensaje.MsgAdvertencia);
TieneError = true;
break;
}
}
int CveVendedor = -1;
DataRow Vendedor = get_GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("Vendedor = '{0}'",Agente));
if (Vendedor != null)
{
CveVendedor = Vendedor["CveVendedor"].ToString().ToEntero();
}else }else
{ {
Alert(String.Format("El medio de captación '{0}' no fue encontrado", MedioCaptacion), ModExtensiones.TipoMensaje.MsgAdvertencia); Alert(String.Format("El vendedor '{0}' no fue encontrado", Agente), ModExtensiones.TipoMensaje.MsgAdvertencia);
TieneError = true; TieneError = true;
break; break;
} }
}
int CveVendedor = -1; int CveSubProyecto = -1;
DataRow Vendedor = get_GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("Vendedor = '{0}'",Agente)); DataRow SubProyecto = get_GlobalDTSubProyectos(-1,CveEmpresa:UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("SubProyecto = '{0}'",Sucursal));
if (Vendedor != null) if(SubProyecto != null)
{ {
CveVendedor = Vendedor["CveVendedor"].ToString().ToEntero(); CveSubProyecto = SubProyecto["CveSubProyecto"].ToString().ToEntero();
}else }else
{ {
Alert(String.Format("El vendedor '{0}' no fue encontrado", MedioCaptacion), ModExtensiones.TipoMensaje.MsgAdvertencia); Alert(String.Format("El SubProyecto '{0}'", Sucursal), ModExtensiones.TipoMensaje.MsgAdvertencia);
TieneError = true; TieneError = true;
break; break;
} }
int CveSubProyecto = -1; int CveGiro = -1;
DataRow SubProyecto = get_GlobalDTSubProyectos(-1,CveEmpresa:UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("SubProyecto = '{0}'",Sucursal)); DataRow GiroDt = get_GlobalDTClienteClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("ClienteClasificacion = '{0}'", Giro));
if(SubProyecto != null) if (GiroDt != null)
{ {
CveSubProyecto = SubProyecto["CveSubProyecto"].ToString().ToEntero(); CveGiro = GiroDt["CveClienteClasificacion"].ToString().ToEntero();
}else }
{ else
Alert(String.Format("El SubProyecto '{0}'", Sucursal), ModExtensiones.TipoMensaje.MsgAdvertencia); {
TieneError = true; Alert(String.Format("El Giro de Empresa '{0}', No está especificado", Giro), ModExtensiones.TipoMensaje.MsgAdvertencia);
break; TieneError = true;
} break;
}
int CveGiro = -1; TieneError = (!(ObjCRM.AddEmpresaCRM(NombreEmpresa, RFC, CveMedioCaptacion, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, -1, CveVendedor, CveSubProyecto, Mail, CveGiro) > 0));
DataRow GiroDt = get_GlobalDTClienteClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("ClienteClasificacion = '{0}'", Giro));
if (GiroDt != null)
{
CveGiro = GiroDt["CveClienteClasificacion"].ToString().ToEntero();
}
else
{
Alert(String.Format("El Giro de Empresa '{0}', No está especificado", Giro), ModExtensiones.TipoMensaje.MsgAdvertencia);
TieneError = true;
break;
}
TieneError = (!(ObjCRM.AddEmpresaCRM(NombreEmpresa, RFC, CveMedioCaptacion, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, -1, CveVendedor, CveSubProyecto, Mail, CveGiro) > 0));
}
} }
if (TieneError) if (TieneError)

View File

@@ -88,8 +88,8 @@
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoPrceso2" runat="server" Width="50%" DataTextField="TipoProceso" DataValueField="CveTipoProceso" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-sm select2me" OnSelectedIndexChanged="DdlTipoProcesos_Change" AutoPostBack="true"/> <asp:DropDownList ID="DdlTipoProceso2" runat="server" Width="50%" DataTextField="TipoProceso" DataValueField="CveTipoProceso" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-sm select2me" OnSelectedIndexChanged="DdlTipoProcesos_Change" AutoPostBack="true"/>
<label for="<%=DdlTipoPrceso2.ClientID.ToString()%>">Tipo Proceso:</label> <label for="<%=DdlTipoProceso2.ClientID.ToString()%>">Tipo Proceso:</label>
</div> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">

View File

@@ -571,10 +571,10 @@ public partial class CRM_EmpresaCRM : ClsPaginas
ClsCRM ObjCRM = new ClsCRM(); ClsCRM ObjCRM = new ClsCRM();
if (ObjCRM.GetTipoProceso(UsuarioActual.CveEmpresa)) if (ObjCRM.GetTipoProceso(UsuarioActual.CveEmpresa))
{ {
DdlTipoPrceso2.DataSource = ObjCRM.DtResultados; DdlTipoProceso2.DataSource = ObjCRM.DtResultados;
DdlTipoPrceso2.Items.Insert(0, new ListItem("Seleccione","-1")); DdlTipoProceso2.Items.Insert(0, new ListItem("Seleccione","-1"));
} }
DdlTipoPrceso2.DataBind(); DdlTipoProceso2.DataBind();
ObjCRM.Dispose(); ObjCRM.Dispose();
} }
@@ -583,7 +583,7 @@ public partial class CRM_EmpresaCRM : ClsPaginas
ClsCRM ObjCRM = new ClsCRM(); ClsCRM ObjCRM = new ClsCRM();
if (ObjCRM.GetMedioCaptacion(UsuarioActual.CveEmpresa, -1)) if (ObjCRM.GetMedioCaptacion(UsuarioActual.CveEmpresa, -1))
{ {
DdlMedioCaptacion.DataSource = ObjCRM.DtResultados.FiltraParametros(String.Format("CveTipoProceso = {0}", DdlTipoPrceso2.SelectedValue)); DdlMedioCaptacion.DataSource = ObjCRM.DtResultados.FiltraParametros(String.Format("CveTipoProceso = {0}", DdlTipoProceso2.SelectedValue));
DdlMedioCaptacion.Items.Insert(0, new ListItem("Seleccione ", "-1")); DdlMedioCaptacion.Items.Insert(0, new ListItem("Seleccione ", "-1"));
DdlMedioCaptacionAcercamiento.Items.Clear(); DdlMedioCaptacionAcercamiento.Items.Clear();
DdlMedioCaptacionAcercamiento.DataSource = ObjCRM.DtResultados; DdlMedioCaptacionAcercamiento.DataSource = ObjCRM.DtResultados;
@@ -638,7 +638,7 @@ public partial class CRM_EmpresaCRM : ClsPaginas
TxtNombreEmpresa.Text = ObjCRM.DtResultados.FiltroPrimeroValor("Empresa"); TxtNombreEmpresa.Text = ObjCRM.DtResultados.FiltroPrimeroValor("Empresa");
TxtRFC.Text = ObjCRM.DtResultados.FiltroPrimeroValor("RFC"); TxtRFC.Text = ObjCRM.DtResultados.FiltroPrimeroValor("RFC");
DdlTipoPrceso2.SelectedValue = ObjCRM.DtResultados.FiltroPrimeroValor("CveTipoProceso"); DdlTipoProceso2.SelectedValueExist(ObjCRM.DtResultados.FiltroPrimeroValor("CveTipoProceso"));
CargaMetodosCaptacion(); CargaMetodosCaptacion();
TxtCorreoEmpresaCRM.Text = ObjCRM.DtResultados.FiltroPrimeroValor("Correo"); TxtCorreoEmpresaCRM.Text = ObjCRM.DtResultados.FiltroPrimeroValor("Correo");
DdlMedioCaptacion.SelectedValueExist(ObjCRM.DtResultados.FiltroPrimeroValor("CveMedioCaptacion")); DdlMedioCaptacion.SelectedValueExist(ObjCRM.DtResultados.FiltroPrimeroValor("CveMedioCaptacion"));

View File

@@ -3944,7 +3944,7 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-8" style="width: 100%; text-align: left"> <div class="col-md-8" style="width: 100%; text-align: left">
<asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="97%" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Width="97%" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
<br /> <br />

View File

@@ -136,10 +136,15 @@
if (document.getElementById("hdnEsThickbox").value == "S") { if (document.getElementById("hdnEsThickbox").value == "S") {
parent.CargaProveedor(c); parent.CargaProveedor(c);
parent.tb_remove(); parent.tb_remove();
window.close();
parent.$('#ajax').modal('hide');
} }
else { else {
window.opener.CargaProveedor(c); window.opener.CargaProveedor(c);
window.close(); window.close();
parent.$('#ajax').modal('hide');
} }
} }
function IrOI(c) { function IrOI(c) {

View File

@@ -1457,7 +1457,8 @@ Partial Class Compras_Proveedores
#Region "LL E N A R - C O M B O S" #Region "LL E N A R - C O M B O S"
Private Sub CargaResponsable() Private Sub CargaResponsable()
DdlCveUsuarioResponsable.DataSource = GlobalDTUsuarioResponsable.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) 'DdlCveUsuarioResponsable.DataSource = GlobalDTUsuarioResponsable.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa, DistinctColumns:={"CveUsuario", "Nombre"})
DdlCveUsuarioResponsable.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", DistinctColumns:={"CveUsuario", "Nombre"})
DdlCveUsuarioResponsable.DataBind() DdlCveUsuarioResponsable.DataBind()
End Sub End Sub
Private Sub CargaClasificacionProveedor() Private Sub CargaClasificacionProveedor()

View File

@@ -295,7 +295,7 @@
<tr style="background-color: #DAEAFA;"> <tr style="background-color: #DAEAFA;">
<td>Observaciones</td> <td>Observaciones</td>
<td colspan="3"> <td colspan="3">
<asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</td> </td>
</tr> </tr>

View File

@@ -234,7 +234,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones</label> <label class="col-md-2">Observaciones</label>
<div class="col-md-7"> <div class="col-md-7">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Width="400px" Rows="3" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
<asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" /> <asp:HiddenField ID="HdnObs" runat="server" ClientIDMode="Static" />
</div> </div>

View File

@@ -33,12 +33,12 @@
<div class="row"> <div class="row">
<label class="col-md-1">Ejercicio: </label> <label class="col-md-1">Ejercicio: </label>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlEjercicio" runat="server" CssClass="form-control input-sm" DataTextField="Ejercicio" DataValueField="Ejercicio" AutoPostBack="true"></asp:DropDownList> <asp:DropDownList ID="DdlEjercicio" runat="server" CssClass="form-control input-sm" DataTextField="Ejercicio" DataValueField="Ejercicio" AutoPostBack="false"></asp:DropDownList>
</div> </div>
<label class="col-md-1">Periodo: </label> <label class="col-md-1">Periodo: </label>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlPeriodo" runat="server" CssClass="form-control input-sm" AutoPostBack="true"> <asp:DropDownList ID="DdlPeriodo" runat="server" CssClass="form-control input-sm" AutoPostBack="false">
<asp:ListItem Text="Enero" Value="1"></asp:ListItem> <asp:ListItem Text="Enero" Value="1"></asp:ListItem>
<asp:ListItem Text="Febrero" Value="2"></asp:ListItem> <asp:ListItem Text="Febrero" Value="2"></asp:ListItem>
<asp:ListItem Text="Marzo" Value="3"></asp:ListItem> <asp:ListItem Text="Marzo" Value="3"></asp:ListItem>
@@ -56,7 +56,7 @@
<label class="col-md-1">Tipo Póliza: </label> <label class="col-md-1">Tipo Póliza: </label>
<div class="col-md-1"> <div class="col-md-1">
<asp:DropDownList ID="DdlTipoPoliza" runat="server" CssClass="form-control input-sm" DataTextField="Ejercicio" DataValueField="Ejercicio" AutoPostBack="true"> <asp:DropDownList ID="DdlTipoPoliza" runat="server" CssClass="form-control input-sm" DataTextField="Ejercicio" DataValueField="Ejercicio" AutoPostBack="false">
<asp:ListItem Text="Todas" Value="-1"></asp:ListItem> <asp:ListItem Text="Todas" Value="-1"></asp:ListItem>
<asp:ListItem Text="Ingresos" Value="1"></asp:ListItem> <asp:ListItem Text="Ingresos" Value="1"></asp:ListItem>
<asp:ListItem Text="Egresos" Value="2"></asp:ListItem> <asp:ListItem Text="Egresos" Value="2"></asp:ListItem>
@@ -171,6 +171,14 @@
</ItemTemplate> </ItemTemplate>
<ItemStyle Width="100px"></ItemStyle> <ItemStyle Width="100px"></ItemStyle>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="PrePoliza" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:HyperLink ID="HplPrepoliza" CssClass="Texto" Target="_blank" NavigateUrl='<%# Eval("CvePrePoliza", "/Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}")%>' runat="server" ToolTip="Ir PrePoliza"><i class="fa fa-arrow-right" style="color:#686868;"></i></asp:HyperLink>
</ItemTemplate>
<ItemStyle Width="100px"></ItemStyle>
</asp:TemplateField>
</Columns> </Columns>
<HeaderStyle CssClass="Titulos"></HeaderStyle> <HeaderStyle CssClass="Titulos"></HeaderStyle>
</asp:GridView> </asp:GridView>

View File

@@ -49,7 +49,7 @@ Partial Class Contabilidad_FiltraPolizas
Dim Periodo As Integer = DdlPeriodo.SelectedValue.ToString().ToEntero() Dim Periodo As Integer = DdlPeriodo.SelectedValue.ToString().ToEntero()
Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
If ObjConta.GetPolizas(Ejercicio, Periodo, DdlTipoPoliza.SelectedValue.ToEntero(), DdlSegmentoNeg.SelectedValue.ToEntero()) Then If ObjConta.GetPolizas(Ejercicio, Periodo, DdlTipoPoliza.SelectedValue.ToEntero(), DdlSegmentoNeg.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa) Then
DtDatos = ObjConta.DtResultados DtDatos = ObjConta.DtResultados
Gv.DataSource = ObjConta.DtResultados Gv.DataSource = ObjConta.DtResultados
'If DdlTipoPoliza.SelectedValue.ToEntero > 0 Then 'If DdlTipoPoliza.SelectedValue.ToEntero > 0 Then

View File

@@ -67,27 +67,21 @@
<asp:Label ID="LblEncabezado" runat="server" Text=" Registro de Póliza"></asp:Label> <asp:Label ID="LblEncabezado" runat="server" Text=" Registro de Póliza"></asp:Label>
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<li> <li>
<asp:LinkButton ID="LnkExcel" runat="server" Visible="true" data-target="#DivCargaExcel"><i class="fa fa-ad-excel" style="font-weight:bold;"></i> Cargar Excel</asp:LinkButton> <asp:LinkButton ID="LnkExcel" runat="server" Visible="true" data-target="#DivCargaExcel"><i class="fa fa-file-excel-o" style="font-weight:bold;"></i> Cargar Excel</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkComplementoPago" runat="server" Visible="false" OnClick="LnkComplementoPago_Click" Style="color: #686868;"><i class="fa fa-money" style="color:#686868;"></i> Crear Complemento de Pago</asp:LinkButton> <asp:LinkButton ID="LnkComplementoPago" runat="server" Visible="false" OnClick="LnkComplementoPago_Click" Style="color: #686868;"><i class="fa fa-money" style="color:#686868;"></i> Crear Complemento de Pago</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkImprimirPDF" runat="server" Visible="false" OnClick="LnkImprimirPDF_Click" Style="color: #686868;"><i class="fa fa-ad-pdf" style="color:#686868;"></i> Imprmir PDF's</asp:LinkButton> <asp:LinkButton ID="LnkImprimirPDF" runat="server" Visible="false" OnClick="LnkImprimirPDF_Click" Style="color: #686868;"><i class="fa fa-file-pdf-o" style="color:#686868;"></i> Paquete Egresos</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkComprobante" runat="server" Visible="false" data-toggle="modal" data-target="#ModalUpload" Style="color: #686868;"><i class="fa fa-ad-pdf" style="color:#686868;"></i> Cargar Comprobante</asp:LinkButton> <asp:LinkButton ID="LnkComprobante" runat="server" Visible="false" data-toggle="modal" data-target="#ModalUpload" Style="color: #686868;"><i class="fa fa-upload" style="color:#686868;"></i> Cargar Comprobante</asp:LinkButton>
</li> </li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkImprimirPDF" />
<asp:PostBackTrigger ControlID="LnkComprobante" />
</Triggers>
</asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server"> <asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
@@ -148,7 +142,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones:</label> <label class="col-md-2">Observaciones:</label>
<div class="col-md-5"> <div class="col-md-5">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
<label class="col-md-1">Movimiento:</label> <label class="col-md-1">Movimiento:</label>
@@ -163,7 +157,7 @@
<div class="row" id="trNotificar" runat="server" visible="False"> <div class="row" id="trNotificar" runat="server" visible="False">
<label class="col-md-2">Notificar:</label> <label class="col-md-2">Notificar:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>
@@ -625,7 +619,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones:</label> <label class="col-md-2">Observaciones:</label>
<div class="col-md-8"> <div class="col-md-8">
<asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -189,7 +189,14 @@ Partial Class ContabilidadC_RegPrePoliza
End Set End Set
End Property End Property
Public Property TipoPoliza As String
Get
Return CType(ViewState("TipoPoliza"), String)
End Get
Set(value As String)
ViewState("TipoPoliza") = value
End Set
End Property
#End Region #End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
@@ -441,6 +448,9 @@ Partial Class ContabilidadC_RegPrePoliza
TxtFechaDocumento.Text = dr("Fecha") TxtFechaDocumento.Text = dr("Fecha")
TxtConcepto.Text = dr("Concepto") TxtConcepto.Text = dr("Concepto")
DivDatosPoliza.Visible = True DivDatosPoliza.Visible = True
TipoPoliza = DdlTipoPoliza.SelectedItem.Text
Folio = dr("FolioPoliza").ToString
If UsuarioActual.CveRol = 1 OrElse UsuarioActual.TienePermisoProceso(221) Then If UsuarioActual.CveRol = 1 OrElse UsuarioActual.TienePermisoProceso(221) Then
DivAgregarConceptos.Visible = True DivAgregarConceptos.Visible = True
@@ -534,11 +544,10 @@ Partial Class ContabilidadC_RegPrePoliza
If CveConceptoContable.Contiene(68) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", e.Row.DBCampo("CveMovimientoAlmacen")) If CveConceptoContable.Contiene(68) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", e.Row.DBCampo("CveMovimientoAlmacen"))
If CveConceptoContable.Contiene(30, 204) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE")) If CveConceptoContable.Contiene(30, 204) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE"))
If CveConceptoContable.Contiene(30) AndAlso UsuarioActual.CveRol = 1 Then If CveConceptoContable.Contiene(30) Then
LnkImprimirPDF.Visible = True LnkImprimirPDF.Visible = True
LnkComprobante.Visible = True LnkComprobante.Visible = True
CveIE = e.Row.DBCampo("CveIE").ToString.ToEntero CveIE = e.Row.DBCampo("CveIE").ToString.ToEntero
End If End If
'e.Row.FCHyperLink("HlReferencia").NavigateUrl = CveConceptoContable 'e.Row.FCHyperLink("HlReferencia").NavigateUrl = CveConceptoContable
@@ -840,6 +849,8 @@ Partial Class ContabilidadC_RegPrePoliza
dr("MultipleSubProyecto") = drt("MultipleSubProyecto") dr("MultipleSubProyecto") = drt("MultipleSubProyecto")
dr("PorcentajeImpuesto") = drt("PorcentajeImpuesto") dr("PorcentajeImpuesto") = drt("PorcentajeImpuesto")
dr("CveCuenta") = drt("CveCuenta") dr("CveCuenta") = drt("CveCuenta")
dr("FolioPoliza") = drt("FolioPoliza")
DtMovimientos.Rows.Add(dr) DtMovimientos.Rows.Add(dr)
@@ -920,7 +931,6 @@ Partial Class ContabilidadC_RegPrePoliza
If e.Row.DataKey("CveConcepto").ToEntero.Contiene(30) Then If e.Row.DataKey("CveConcepto").ToEntero.Contiene(30) Then
e.Row.FCLinkButton("ImgBancos").Visible = True e.Row.FCLinkButton("ImgBancos").Visible = True
If CveTipoTransaccion > 0 And CveCuenta > 0 And Folio.Length > 0 And ImporteDocumento > 0 And Beneficiario.Length > 0 Then If CveTipoTransaccion > 0 And CveCuenta > 0 And Folio.Length > 0 And ImporteDocumento > 0 And Beneficiario.Length > 0 Then
e.Row.FCLinkButton("ImgBancos").CssClass = "btn btn-circle btn-sm green" e.Row.FCLinkButton("ImgBancos").CssClass = "btn btn-circle btn-sm green"
End If End If
@@ -1755,96 +1765,113 @@ Partial Class ContabilidadC_RegPrePoliza
End Sub End Sub
Protected Sub LnkImprimirPDF_Click(sender As Object, e As EventArgs) Protected Sub LnkImprimirPDF_Click(sender As Object, e As EventArgs)
Dim pdf() As Byte
Dim filtro() As String = {"CveCompra", "CveIE", "CveConceptoContable"} Dim filtro() As String = {"CveCompra", "CveIE", "CveConceptoContable"}
Dim filtroComplemento() As String = {"CveIE"} Dim filtroComplemento() As String = {"CveIE"}
Dim Pathpdf As New List(Of String) Dim Pathpdf As New List(Of String)
Dim nombre As String = "recibo"
Dim pdfs = New List(Of Byte()) Dim pdfs = New List(Of Byte())
Dim Path As String Dim Path As String
Dim Factura() As Byte
Dim dt As DataTable = DtMovimientos.FiltraParametros("", "", filtro) Dim dt As DataTable = DtMovimientos.FiltraParametros("", "", filtro)
Dim ObjCompra As New ClsCompras Dim ObjCompra As New ClsCompras
Dim ObjIE As New ClsBancos() Dim ObjIE As New ClsBancos()
Dim i As Integer = 0 Dim pathPoliza As String = ""
Dim pathPoliza As String Dim TieneComprobante As Boolean
Try Try
TieneComprobante = VerificarComprobante()
If TieneComprobante Then
Path = ImprimirPolizaPDF(IdPoliza)
pathPoliza = Path
If File.Exists(Path) Then
Pathpdf.Add(Path)
End If
Path = ImprimirPolizaPDF(IdPoliza) For Each Row As DataRow In dt.Rows
pathPoliza = Path If Row("CveConceptoContable").ToString.ToEntero = 30 Then
If File.Exists(Path) Then If Row("CveIE").ToString.ToEntero > 0 Then
Pathpdf.Add(Path) If ObjIE.GetBancosIE(Row("CveIE").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
End If If ObjIE.DtResultados.Rows.Count > 0 Then
Path = String.Format("{0}IE\{1}", UsuarioActual.Empresa.Ruta, ObjIE.Comprobante.ToString)
For Each Row As DataRow In dt.Rows If File.Exists(Path) Then
If Row("CveConceptoContable").ToString.ToEntero = 30 Then Dim formato As String = System.IO.Path.GetExtension(Path)
If Row("CveIE").ToString.ToEntero > 0 Then If formato.ToLower.Contiene(".jpg", ".png", ".jpeg") Then
If ObjIE.GetBancosIE(Row("CveIE").ToString.ToEntero, UsuarioActual.CveEmpresa) Then Dim ComprobantePDF As String = String.Format("{0}\{1}\comprobante.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick)
If ObjIE.DtResultados.Rows.Count > 0 Then Using crea_archivo = New iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 18, 18, 18, 18)
Path = String.Format("{0}IE\{1}", UsuarioActual.Empresa.Ruta, ObjIE.Comprobante.ToString) PdfWriter.GetInstance(crea_archivo, New FileStream(ComprobantePDF, FileMode.Create))
If File.Exists(Path) Then crea_archivo.Open()
Dim formato As String = System.IO.Path.GetExtension(Path) Dim image As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(Path)
If formato.ToLower.Contiene(".jpg", ".png", ".jpeg") Then If image.Height > image.Width Then
Dim ComprobantePDF As String = String.Format("{0}\{1}\comprobante.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick) Dim percentage As Double = 0.0F
Using crea_archivo = New iTextSharp.text.Document percentage = 700 / image.Height
PdfWriter.GetInstance(crea_archivo, New FileStream(ComprobantePDF, FileMode.Create)) image.ScalePercent(percentage * 100)
crea_archivo.Open() Else
Dim image As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(Path) Dim percentage As Double = 0.0F
crea_archivo.Add(image) percentage = 540 / image.Width
End Using image.ScalePercent(percentage * 100)
Pathpdf.Add(ComprobantePDF) End If
crea_archivo.Add(image)
Else End Using
Pathpdf.Add(Path) Pathpdf.Add(ComprobantePDF)
Else
Pathpdf.Add(Path)
End If
End If End If
End If End If
End If End If
End If End If
End If End If
End If If Row("CveConceptoContable").ToString.ToEntero.Contiene(17, 309, 312, 308) Then
If Row("CveConceptoContable").ToString.ToEntero.Contiene(17, 309, 312) Then If ObjCompra.GetCompras(Row("CveCompra").ToString.ToEntero, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
If ObjCompra.GetCompras(Row("CveCompra").ToString.ToEntero, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then If ObjCompra.DtResultados IsNot Nothing AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = ObjCompra.DtResultados.Rows(0)
Dim RFC As String = dr("RFC").ToString
Dim CveFactura As String = dr("CveFactura").ToString
Path = String.Format("{0}Compras\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, RFC, CveFactura)
If File.Exists(Path) Then
Pathpdf.Add(Path)
End If
End If
End If
End If
Next
dt = DtMovimientos.FiltraParametros("", "", filtroComplemento)
For Each Row As DataRow In dt.Rows
If ObjCompra.GetCompraComplementoPago(-1, UsuarioActual.CveEmpresa, Row("CveIE").ToString.ToEntero) Then
Console.WriteLine(Row("CveIE").ToString)
If ObjCompra.DtResultados IsNot Nothing AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then If ObjCompra.DtResultados IsNot Nothing AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = ObjCompra.DtResultados.Rows(0) Dim dr As DataRow = ObjCompra.DtResultados.Rows(0)
Dim RFC As String = dr("RFC").ToString Dim RFC As String = dr("RFCde").ToString
Dim CveFactura As String = dr("CveFactura").ToString Dim CveFactura As String = dr("CveFactura").ToString
Path = String.Format("{0}Compras\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, RFC, CveFactura) Console.WriteLine(RFC & CveFactura)
If File.Exists(Path) Then If CveFactura <> "" Then
Path = String.Format("{0}Compras\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, RFC, CveFactura)
Pathpdf.Add(Path) Console.WriteLine(Path)
If File.Exists(Path) Then
Pathpdf.Add(Path)
End If
End If End If
End If End If
End If End If
End If Next
Next
dt = DtMovimientos.FiltraParametros("", "", filtroComplemento) MergePdfFiles(Pathpdf.ToArray)
For Each Row As DataRow In dt.Rows If File.Exists(pathPoliza) Then
If ObjCompra.GetCompraComplementoPago(-1, UsuarioActual.CveEmpresa, Row("CveIE").ToString.ToEntero) Then Directory.Delete(String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, Tick), True)
If ObjCompra.DtResultados IsNot Nothing AndAlso ObjCompra.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = ObjCompra.DtResultados.Rows(0)
Dim RFC As String = dr("RFCde").ToString
Dim CveFactura As String = dr("CveFactura").ToString
If CveFactura <> "" Then
Path = String.Format("{0}Compras\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, RFC, CveFactura)
If File.Exists(Path) Then
Pathpdf.Add(Path)
End If
End If
End If
End If End If
Next
MergePdfFiles(Pathpdf.ToArray) Else
If File.Exists(pathPoliza) Then Alert("No se tiene cargado comprobante de pago", TipoMensaje.MsgAdvertencia)
Directory.Delete(String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, Tick), True)
End If End If
Catch ex As Exception Catch ex As Exception
Alert("Error") Alert("Error al descargar el paquete", TipoMensaje.MsgError)
End Try End Try
ObjCompra.Dispose()
ObjIE.Dispose()
End Sub End Sub
Private Function ImprimirPolizaPDF(IdPoliza As Integer) As String Private Function ImprimirPolizaPDF(IdPoliza As Integer) As String
Dim ObjConta As New ClsContabilidad Dim ObjConta As New ClsContabilidad
@@ -1857,50 +1884,36 @@ Partial Class ContabilidadC_RegPrePoliza
'If ObjPoliza.GetPoliza(IdPoliza, -1, -1, -1, -1) AndAlso ObjPoliza.DtResultados.Rows.Count > 0 Then 'If ObjPoliza.GetPoliza(IdPoliza, -1, -1, -1, -1) AndAlso ObjPoliza.DtResultados.Rows.Count > 0 Then
If ObjConta.GetPrePolizasDetalle(CvePrePoliza) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.GetPrePolizasDetalle(CvePrePoliza) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
Try Dim dtVC As DataTable
Dim dr As DataRow
dtVC = ObjConta.DtResultados
Dim dtVC As DataTable dr = dtVC.Rows(0)
Dim dr As DataRow Dim ruta As String = ""
dtVC = ObjConta.DtResultados params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
dr = dtVC.Rows(0) params.Add(New ReportParameter("TipoPoliza", dr("TipoPoliza").ToString))
Dim ruta As String = "" params.Add(New ReportParameter("Finicio", dr("Fecha").ToString.ToDate.ToShortDateString))
params.Add(New ReportParameter("FFin", dr("Fecha").ToString.ToDate.ToShortDateString))
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("Fecha", dr("Fecha").ToString.ToDate.ToShortDateString))
params.Add(New ReportParameter("TipoPoliza", dr("CveTipoPoliza").ToString)) 'params.Add(New ReportParameter("Nombre", dr("Cuenta").ToString))
params.Add(New ReportParameter("Finicio", dr("Fecha").ToString.ToDate.ToShortDateString)) 'params.Add(New ReportParameter("Cuenta", dr("Codigo").ToString))
params.Add(New ReportParameter("FFin", dr("Fecha").ToString.ToDate.ToShortDateString)) params.Add(New ReportParameter("Numero", dr("FolioPoliza").ToString))
params.Add(New ReportParameter("Fecha", dr("Fecha").ToString.ToDate.ToShortDateString)) params.Add(New ReportParameter("Moneda", ""))
'params.Add(New ReportParameter("Nombre", dr("Cuenta").ToString)) params.Add(New ReportParameter("CodigoPostal", ""))
'params.Add(New ReportParameter("Cuenta", dr("Codigo").ToString)) If UsuarioActual.CveEmpresa = 119 Then
params.Add(New ReportParameter("Numero", dr("FolioPoliza").ToString)) params.Add(New ReportParameter("UsuarioRegistro", GlobalDTUsuarios(dr("CveUsuario").ToString.ToEntero).FiltroPrimeroValor("Nombre")))
params.Add(New ReportParameter("Moneda", "")) End If
params.Add(New ReportParameter("CodigoPostal", "")) If Archivo.Exists Then
ruta = UsuarioActual.Empresa.Ruta & "Formatos/Polizas.rdlc"
If UsuarioActual.CveEmpresa = 119 Then Else
params.Add(New ReportParameter("UsuarioRegistro", GlobalDTUsuarios(dr("CveUsuario").ToString.ToEntero).FiltroPrimeroValor("Nombre"))) ruta = "Empresas/Grales/Formatos/Polizas.rdlc"
End If End If
Bytes = StreamPDF(ruta, dtVC, params, "ppoliza")
If Archivo.Exists Then If Not File.Exists(String.Format("{0}{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString)) Then
ruta = UsuarioActual.Empresa.Ruta & "Formatos/Polizas.rdlc" DirectoryExistsCreate(String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, Tick))
Else File.WriteAllBytes(String.Format("{0}\{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString), Bytes)
ruta = "Empresas/Grales/Formatos/Polizas.rdlc" End If
End If
Bytes = StreamPDF(ruta, dtVC, params, "ppoliza")
If Not File.Exists(String.Format("{0}{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString)) Then
DirectoryExistsCreate(String.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, Tick))
File.WriteAllBytes(String.Format("{0}\{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString), Bytes)
End If
Return String.Format("{0}\{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString)
Catch ex As Exception
Alert("ggg")
End Try
End If End If
Return String.Format("{0}\{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString)
ObjConta.Dispose() ObjConta.Dispose()
End Function End Function
@@ -1926,7 +1939,7 @@ Partial Class ContabilidadC_RegPrePoliza
reader = New iTextSharp.text.pdf.PdfReader(fileName) reader = New iTextSharp.text.pdf.PdfReader(fileName)
pageCount = reader.NumberOfPages pageCount = reader.NumberOfPages
pdfDoc = New iTextSharp.text.Document(reader.GetPageSizeWithRotation(1), 18, 18, 18, 18) pdfDoc = New iTextSharp.text.Document(reader.GetPageSizeWithRotation(1), 18, 18, 18, 18)
writer = PdfWriter.GetInstance(pdfDoc, New FileStream(String.Format("{0}\{1}\Salida.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick), FileMode.Create)) writer = PdfWriter.GetInstance(pdfDoc, New FileStream(String.Format("{0}\{1}\{2}-{3}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, TipoPoliza, Folio), FileMode.Create))
With pdfDoc With pdfDoc
.Open() .Open()
@@ -1959,7 +1972,7 @@ Partial Class ContabilidadC_RegPrePoliza
pdfDoc.Close() pdfDoc.Close()
Dim Archivo As New System.IO.FileInfo(String.Format("{0}\{1}\Salida.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick)) Dim Archivo As New System.IO.FileInfo(String.Format("{0}\{1}\{2}-{3}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, TipoPoliza, Folio))
If Archivo.Exists Then If Archivo.Exists Then
HttpContext.Current.Response.Clear() HttpContext.Current.Response.Clear()
@@ -1967,10 +1980,11 @@ Partial Class ContabilidadC_RegPrePoliza
HttpContext.Current.Response.ContentType = "application/octet-stream" HttpContext.Current.Response.ContentType = "application/octet-stream"
HttpContext.Current.Response.AppendHeader("Content-disposition", String.Format("attachment; filename={0}", Archivo.Name)) HttpContext.Current.Response.AppendHeader("Content-disposition", String.Format("attachment; filename={0}", Archivo.Name))
HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString()) HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
HttpContext.Current.Response.TransmitFile(String.Format("{0}\{1}\Salida.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick)) HttpContext.Current.Response.TransmitFile(String.Format("{0}\{1}\{2}-{3}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, TipoPoliza, Folio))
Response.Flush() ' send it to the client to download Response.Flush() ' send it to the client to download
HttpContext.Current.Response.SuppressContent = True HttpContext.Current.Response.SuppressContent = True
HttpContext.Current.ApplicationInstance.CompleteRequest() HttpContext.Current.ApplicationInstance.CompleteRequest()
Response.End()
End If End If
result = True result = True
@@ -2308,5 +2322,36 @@ Partial Class ContabilidadC_RegPrePoliza
End Sub End Sub
Private Function VerificarComprobante() As Boolean
Dim filtro() As String = {"CveCompra", "CveIE", "CveConceptoContable"}
Dim Path As String
Dim dt As DataTable = DtMovimientos.FiltraParametros("", "", filtro)
Dim ObjIE As New ClsBancos()
Dim TieneComprobante As Boolean = False
For Each Row As DataRow In dt.FiltraParametros("CveConceptoContable = 30").Rows
If ObjIE.GetBancosIE(Row("CveIE").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
If ObjIE.DtResultados.Rows.Count > 0 Then
Path = String.Format("{0}IE\{1}", UsuarioActual.Empresa.Ruta, ObjIE.Comprobante.ToString)
If File.Exists(Path) Then
TieneComprobante = True
Exit For
Else
TieneComprobante = False
Exit For
End If
Else
TieneComprobante = False
Exit For
End If
End If
Next
ObjIE.Dispose()
Return TieneComprobante
End Function
End Class End Class

View File

@@ -67,16 +67,17 @@
<asp:Label ID="LblEncabezado" runat="server" Text=" Registro de Póliza"></asp:Label> <asp:Label ID="LblEncabezado" runat="server" Text=" Registro de Póliza"></asp:Label>
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<li> <li>
<asp:LinkButton ID="LnkExcel" runat="server" Visible="true" data-target="#DivCargaExcel"><i class="far fa-file-excel" style="font-weight:bold;"></i> Cargar Excel</asp:LinkButton> <asp:LinkButton ID="LnkExcel" runat="server" Visible="true" data-target="#DivCargaExcel"><i class="far fa-file-excel" style="font-weight:bold;"></i> Cargar Excel</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkComplementoPago" runat="server" Visible="false" OnClick="LnkComplementoPago_Click" Style="color: #686868;"><i class="fa fa-money" style="color:#686868;"></i> Crear Complemento de Pago</asp:LinkButton> <asp:LinkButton ID="LnkComplementoPago" runat="server" Visible="false" OnClick="LnkComplementoPago_Click" Style="color: #686868;"><i class="fa fa-money" style="color:#686868;"></i> Crear Complemento de Pago</asp:LinkButton>
</li> </li>
</ContentTemplate> <li>
</asp:UpdatePanel> <asp:LinkButton ID="LnkImprimirPDF" runat="server" Visible="false" OnClick="LnkImprimirPDF_Click" Style="color: #686868;"><i class="fa fa-file-pdf-o" style="color:#686868;"></i> Imprimir Poliza</asp:LinkButton>
</li>
<asp:UpdatePanel runat="server"> <asp:UpdatePanel runat="server">
<ContentTemplate> <ContentTemplate>
@@ -144,7 +145,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones:</label> <label class="col-md-2">Observaciones:</label>
<div class="col-md-5"> <div class="col-md-5">
<asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
<label class="col-md-1">Movimiento:</label> <label class="col-md-1">Movimiento:</label>
@@ -158,7 +159,7 @@
<div class="row" id="trNotificar" runat="server" visible="False"> <div class="row" id="trNotificar" runat="server" visible="False">
<label class="col-md-2">Notificar:</label> <label class="col-md-2">Notificar:</label>
<div class="col-md-10"> <div class="col-md-10">
<asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="12" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNotificarA" CssClass="form-control input-sm" runat="server" MaxLength="100" Width="400px" Rows="2" TextMode="MultiLine" ClientIDMode="Static"></asp:TextBox>
</div> </div>
</div> </div>
<div class="row" id="trCuentaDeposito" runat="server" visible="False"> <div class="row" id="trCuentaDeposito" runat="server" visible="False">
@@ -662,7 +663,7 @@
<div class="row"> <div class="row">
<label class="col-md-2">Observaciones:</label> <label class="col-md-2">Observaciones:</label>
<div class="col-md-8"> <div class="col-md-8">
<asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="12" Rows="3" TextMode="MultiLine"></asp:TextBox> <asp:TextBox ID="TxtDocumentoObservaciones" CssClass="form-control input-sm" runat="server" MaxLength="500" Rows="3" TextMode="MultiLine"></asp:TextBox>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -5,6 +5,9 @@ Imports Extensiones
Imports System.Linq Imports System.Linq
Imports System.Web.Services Imports System.Web.Services
Imports GemBox.Spreadsheet Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Imports System.IO
Imports iTextSharp.text.pdf
Partial Class ContabilidadC_RegPrePolizaS Partial Class ContabilidadC_RegPrePolizaS
Inherits ClsPaginas Inherits ClsPaginas
@@ -159,11 +162,47 @@ Partial Class ContabilidadC_RegPrePolizaS
ViewState("IndiceGrid") = value ViewState("IndiceGrid") = value
End Set End Set
End Property End Property
Public Property IdPoliza As Integer
Get
Return CType(ViewState("IdPoliza"), Integer)
End Get
Set(value As Integer)
ViewState("IdPoliza") = value
End Set
End Property
Public Property Tick As String
Get
Return CType(ViewState("Tick"), String)
End Get
Set(value As String)
ViewState("Tick") = value
End Set
End Property
Public Property CveIE As Integer
Get
Return CType(ViewState("CveIE"), Integer)
End Get
Set(value As Integer)
ViewState("CveIE") = value
End Set
End Property
Public Property TipoPoliza As String
Get
Return CType(ViewState("TipoPoliza"), String)
End Get
Set(value As String)
ViewState("TipoPoliza") = value
End Set
End Property
#End Region #End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then If Not Page.IsPostBack Then
Tick = DateTime.Now.Ticks.ToString
CveMoneda = 1 CveMoneda = 1
ViewState("CvePrePoliza") = 0 ViewState("CvePrePoliza") = 0
ViewState("CvePeriodo") = "0" ViewState("CvePeriodo") = "0"
@@ -175,6 +214,8 @@ Partial Class ContabilidadC_RegPrePolizaS
Observaciones = "-1" Observaciones = "-1"
Beneficiario = "-1" Beneficiario = "-1"
Actualizar = False Actualizar = False
IdPoliza = -1
If IfNull(Request("Tipo"), "").ToString = "NOMPROV" Then If IfNull(Request("Tipo"), "").ToString = "NOMPROV" Then
DivTipoGasto.Visible = True DivTipoGasto.Visible = True
@@ -366,6 +407,8 @@ Partial Class ContabilidadC_RegPrePolizaS
TxtFechaDocumento.Text = dr("Fecha") TxtFechaDocumento.Text = dr("Fecha")
TxtConcepto.Text = dr("Concepto") TxtConcepto.Text = dr("Concepto")
DivDatosPoliza.Visible = True DivDatosPoliza.Visible = True
TipoPoliza = DdlTipoPoliza.SelectedItem.Text
Folio = dr("FolioPoliza").ToString
If UsuarioActual.CveRol = 1 OrElse UsuarioActual.TienePermisoProceso(221) Then If UsuarioActual.CveRol = 1 OrElse UsuarioActual.TienePermisoProceso(221) Then
'DivAgregarConceptos.Visible = True 'DivAgregarConceptos.Visible = True
@@ -393,11 +436,14 @@ Partial Class ContabilidadC_RegPrePolizaS
If dr("FolioPoliza").ToString.ToEntero > 0 Then If dr("FolioPoliza").ToString.ToEntero > 0 Then
divContabilizada.Visible = True divContabilizada.Visible = True
LblFolio.Text = dr("FolioPoliza").ToString LblFolio.Text = dr("FolioPoliza").ToString
Folio = dr("FolioPoliza").ToString
End If End If
Else Else
If dr("IdPoliza").ToString.ToEntero > 0 Then If dr("IdPoliza").ToString.ToEntero > 0 Then
HplContabilizada.NavigateUrl = String.Format("RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza")) HplContabilizada.NavigateUrl = String.Format("RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
divContabilizada.Visible = True divContabilizada.Visible = True
IdPoliza = dr("IdPoliza").ToString.ToEntero
ElseIf TxtTotalCargos.Text.ToDouble = TxtTotalAbonos.Text.ToDouble Then ElseIf TxtTotalCargos.Text.ToDouble = TxtTotalAbonos.Text.ToDouble Then
'sino está contabilizada, se activa el botón 'sino está contabilizada, se activa el botón
BtnContabilizar.Visible = True BtnContabilizar.Visible = True
@@ -472,6 +518,11 @@ Partial Class ContabilidadC_RegPrePolizaS
If CveConceptoContable.Contiene(68) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", e.Row.DBCampo("CveMovimientoAlmacen")) If CveConceptoContable.Contiene(68) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", e.Row.DBCampo("CveMovimientoAlmacen"))
If CveConceptoContable.Contiene(30, 204) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE")) If CveConceptoContable.Contiene(30, 204) Then e.Row.FCHyperLink("HlReferencia").NavigateUrl = String.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE"))
If CveConceptoContable.Contiene(30) Then
LnkImprimirPDF.Visible = True
CveIE = e.Row.DBCampo("CveIE").ToString.ToEntero
End If
'e.Row.FCHyperLink("HlReferencia").NavigateUrl = CveConceptoContable 'e.Row.FCHyperLink("HlReferencia").NavigateUrl = CveConceptoContable
End If End If
@@ -689,6 +740,8 @@ Partial Class ContabilidadC_RegPrePolizaS
dr("CvePersonal") = drt("CvePersonal") dr("CvePersonal") = drt("CvePersonal")
dr("CveClasificacion") = -1 dr("CveClasificacion") = -1
dr("MultipleSubProyecto") = drt("MultipleSubProyecto") dr("MultipleSubProyecto") = drt("MultipleSubProyecto")
dr("FolioPoliza") = drt("FolioPoliza")
DtMovimientos.Rows.Add(dr) DtMovimientos.Rows.Add(dr)
Next Next
@@ -1951,5 +2004,54 @@ Partial Class ContabilidadC_RegPrePolizaS
End Sub End Sub
#End Region #End Region
#Region "Paquete Egresos"
Protected Sub LnkImprimirPDF_Click(sender As Object, e As EventArgs)
ImprimirPolizaPDF(IdPoliza)
End Sub
Private Function ImprimirPolizaPDF(IdPoliza As Integer) As String
Dim ObjConta As New ClsContabilidad
'Dim ObjPoliza As New ClsContPAQi(UsuarioActual.Empresa)
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/Polizas.rdlc", UsuarioActual.Empresa.Ruta))
Dim params As New List(Of ReportParameter)
Dim Bytes As Byte() = Nothing
'If ObjPoliza.GetPoliza(IdPoliza, -1, -1, -1, -1) AndAlso ObjPoliza.DtResultados.Rows.Count > 0 Then
If ObjConta.GetPrePolizasDetalle(CvePrePoliza) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
Dim dtVC As DataTable
Dim dr As DataRow
dtVC = ObjConta.DtResultados
dr = dtVC.Rows(0)
Dim ruta As String = ""
params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("TipoPoliza", dr("TipoPoliza").ToString))
params.Add(New ReportParameter("Finicio", dr("Fecha").ToString.ToDate.ToShortDateString))
params.Add(New ReportParameter("FFin", dr("Fecha").ToString.ToDate.ToShortDateString))
params.Add(New ReportParameter("Fecha", dr("Fecha").ToString.ToDate.ToShortDateString))
'params.Add(New ReportParameter("Nombre", dr("Cuenta").ToString))
'params.Add(New ReportParameter("Cuenta", dr("Codigo").ToString))
params.Add(New ReportParameter("Numero", dr("FolioPoliza").ToString))
params.Add(New ReportParameter("Moneda", ""))
params.Add(New ReportParameter("CodigoPostal", ""))
If UsuarioActual.CveEmpresa = 119 Then
params.Add(New ReportParameter("UsuarioRegistro", GlobalDTUsuarios(dr("CveUsuario").ToString.ToEntero).FiltroPrimeroValor("Nombre")))
End If
If Archivo.Exists Then
ruta = UsuarioActual.Empresa.Ruta & "Formatos/Polizas.rdlc"
Else
ruta = "Empresas/Grales/Formatos/Polizas.rdlc"
End If
ImprimirbytesPDF(StreamPDF(ruta, dtVC, params, "ppoliza"), String.Format("{0}-{1}", TipoPoliza, dr("FolioPoliza").ToString), "PDF", True)
End If
Return String.Format("{0}\{1}\{2}.pdf", AppDomain.CurrentDomain.BaseDirectory, Tick, IdPoliza.ToString)
ObjConta.Dispose()
End Function
#End Region
End Class End Class

View File

@@ -216,6 +216,7 @@
<asp:BoundField HeaderText="IVA" DataField="IVA" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="IVA" DataField="IVA" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="%IVA" DataField="PorcentajeIVA" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="%IVA" DataField="PorcentajeIVA" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="IVA ND" DataField="IVANoDeducible" DataFormatString="{0:#,###,###.##}" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="IVA ND" DataField="IVANoDeducible" DataFormatString="{0:#,###,###.##}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="IVA <br/>Importación " HtmlEncode="False" DataField="IvaExentoImpo" Visible="false" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="IEPS" DataField="IEPS" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="IEPS" DataField="IEPS" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:TemplateField ItemStyle-HorizontalAlign="Right"> <asp:TemplateField ItemStyle-HorizontalAlign="Right">
<HeaderTemplate> <HeaderTemplate>

View File

@@ -53,7 +53,6 @@ public partial class Contabilidad_RepIVA : ClsPaginas
if (!IsPostBack) if (!IsPostBack)
{ {
InicializaValores(); InicializaValores();
} }
} }
@@ -61,8 +60,9 @@ public partial class Contabilidad_RepIVA : ClsPaginas
{ {
TipoCambio = 1; TipoCambio = 1;
TCEspecifico = -1; TCEspecifico = -1;
txtFechaI.Text = $"01/{DateTime.Now.Month}/{DateTime.Now.Year}"; DateTime FF = DateTime.Now.AddMonths(-1);
txtFechaF.Text = DateTime.Now.ToShortDateString(); txtFechaI.Text = $"01/{FF.Month}/{FF.Year}";
txtFechaF.Text = FF.ToShortDateString();
LnkAccionesDIOT.Visible = true; LnkAccionesDIOT.Visible = true;
@@ -104,6 +104,8 @@ public partial class Contabilidad_RepIVA : ClsPaginas
LblMsgAcreditable.Text = "La información presenta importes en negativo, estos no se incluirán en el archivo generado para DIOT"; LblMsgAcreditable.Text = "La información presenta importes en negativo, estos no se incluirán en el archivo generado para DIOT";
} }
GvA.Columns[11].Visible = DtIVAAcreditable.SUM("IvaExentoImpo") > 0; // sino tiene valor la columna de importación de oculta
if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) if (ObjCont.GetRepIVAAcumulado(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), Conciliado, 3, DdlCuenta.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
{ {

View File

@@ -304,7 +304,7 @@ Partial Class Contabilidad2_CatCuentas
End If End If
TxtCuenta.Enabled = True
Guardar.Visible = True Guardar.Visible = True
updatos.Visible = True updatos.Visible = True
updatos.Update() updatos.Update()
@@ -330,7 +330,7 @@ Partial Class Contabilidad2_CatCuentas
If ObjConta.UpdateCuenta(IDSelected.ToEntero, Tnombre.Text, DTcuenta.SelectedValue.ToString, DcuentaMayor.SelectedValue.ToString.ToEntero, DdlMoneda.SelectedValue.ToEntero, If ObjConta.UpdateCuenta(IDSelected.ToEntero, Tnombre.Text, DTcuenta.SelectedValue.ToString, DcuentaMayor.SelectedValue.ToString.ToEntero, DdlMoneda.SelectedValue.ToEntero,
TxtDigAgrup.Text.ToString.ToEntero, DdlAgrupadorSAT.SelectedValue.ToEntero, TxtNomIngles.Text.ToString, CveConceptoAdmin:=CveConceptoAdmin, TxtDigAgrup.Text.ToString.ToEntero, DdlAgrupadorSAT.SelectedValue.ToEntero, TxtNomIngles.Text.ToString, CveConceptoAdmin:=CveConceptoAdmin,
CveProveedor:=CveProveedor, CveCliente:=CveCliente, CveClasificacion:=CveClasificacion, PorcentajeImpuesto:=PorcentajeImpuesto, CveProveedor:=CveProveedor, CveCliente:=CveCliente, CveClasificacion:=CveClasificacion, PorcentajeImpuesto:=PorcentajeImpuesto,
CveBancoCuenta:=CveBancoCuenta, CveAlmacen:=CveAlmacen) Then CveBancoCuenta:=CveBancoCuenta, CveAlmacen:=CveAlmacen, Codigo:=TxtCuenta.Text.Replace("-", "")) Then
If UsuarioActual.Empresa.TipoContabilidad = 2 Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
Dim ObjContaEmpresa As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjContaEmpresa As New ClsContPAQi(UsuarioActual.Empresa)
@@ -658,10 +658,10 @@ Partial Class Contabilidad2_CatCuentas
Case 3 Case 3
pnlOpcion2.Visible = True pnlOpcion2.Visible = True
pnlOpcion3.Visible = True pnlOpcion3.Visible = True
If DdlClasificacion.Items.Count < 2 Then 'If DdlClasificacion.Items.Count < 2 Then
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
DdlClasificacion.DataBind() DdlClasificacion.DataBind()
End If 'End If
Case 4 Case 4
pnlOpcion4.Visible = True pnlOpcion4.Visible = True
Case 5 Case 5

View File

@@ -24,7 +24,7 @@
<asp:UpdatePanel runat="server" ID="UpDatos" UpdateMode="Conditional"> <asp:UpdatePanel runat="server" ID="UpDatos" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:GridView runat="server" ID="GvDatos" EmptyDataText="No se encontraron Motivo de Baja Registrados" ToolTip="Listado de Motivo de Baja" CssClass="table table-striped table-advance table-hover ScrollAD" <asp:GridView runat="server" ID="GvDatos" EmptyDataText="No se encontraron Motivo de Baja Registrados" ToolTip="Listado de Motivo de Baja" CssClass="table table-striped table-advance table-hover ScrollAD"
DataKeyNames="CveCuentaAsignacion,CveConceptoContable,CveCuenta,IdCuenta,CveProveedor,CveCliente,CvePersonal,CveClasificacion,CveAlmacen,PorcentajeIVA,CveConceptoNomina" AutoGenerateColumns="False" DataKeyNames="CveCuentaAsignacion,CveConceptoContable,CveCuenta,IdCuenta,CveProveedor,CveCliente,CvePersonal,CveClasificacion,CveAlmacen,PorcentajeIVA,CveConceptoNomina,CveBancoCuenta" AutoGenerateColumns="False"
Style="margin-top: -10px; text-align: center;width:100%" GridLines="None"> Style="margin-top: -10px; text-align: center;width:100%" GridLines="None">
<Columns> <Columns>
<asp:BoundField DataField="ConceptoContable" HeaderText="Concepto Contable" ItemStyle-HorizontalAlign="Left"/> <asp:BoundField DataField="ConceptoContable" HeaderText="Concepto Contable" ItemStyle-HorizontalAlign="Left"/>
@@ -87,6 +87,10 @@
<label for="<%= DdlClientes.ClientID.ToString()%>">Cliente: </label><br /> <label for="<%= DdlClientes.ClientID.ToString()%>">Cliente: </label><br />
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlClientes" Width="90%" data-metodo="getcliente" runat="server" DataTextField="NombreComercial" DataValueField="CveCliente" CssStyle="width: 100%;"></ADS:Dropdownlost> <ADS:Dropdownlost CssClassDdl="select2me" ID="DdlClientes" Width="90%" data-metodo="getcliente" runat="server" DataTextField="NombreComercial" DataValueField="CveCliente" CssStyle="width: 100%;"></ADS:Dropdownlost>
</div> </div>
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlCuentaBancaria" CssClass="form-control input-sm select2me js-cuenta-programmatic select2me" runat="server" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" Width="240px" ValidationGroup="GrpModulo"></asp:DropDownList>
<label for="<%= DdlCuentaBancaria.ClientID.ToString()%>">Cuenta Bancaria: </label>
</div>
</div> </div>
<div class="col-md-1" style="width:50%;text-align:left"> <div class="col-md-1" style="width:50%;text-align:left">
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">

View File

@@ -42,7 +42,7 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
If ObjConta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then If ObjConta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then
DdlCuenta.DataSource = ObjConta.DtResultados DdlCuenta.DataSource = ObjConta.DtResultados
End If End If
ObjConta.Dispose()
DdlProveedor.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) DdlProveedor.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa)
DdlClientes.setEsWebService(True) DdlClientes.setEsWebService(True)
@@ -53,8 +53,15 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
DdlAlmacen.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa) DdlAlmacen.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa)
ObjConta.Dispose()
Dim ObjBancos As New ClsBancos
If ObjBancos.GetBancosCuentas(-1, CveEmpresa:=UsuarioActual.CveEmpresa) Then
DdlCuentaBancaria.DataSource = ObjBancos.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
End If
ObjBancos.Dispose()
DdlCuentaBancaria.DataBind()
DdlCconceptosContables.DataBind() DdlCconceptosContables.DataBind()
DdlCuenta.DataBind() DdlCuenta.DataBind()
DdlProveedor.DataBind() DdlProveedor.DataBind()
@@ -62,6 +69,7 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
DdlClasificacion.DataBind() DdlClasificacion.DataBind()
DdlAlmacen.DataBind() DdlAlmacen.DataBind()
DdlCuentaBancaria.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlConceptoNomina.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlConceptoNomina.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlCconceptosContables.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlCconceptosContables.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlCuenta.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlCuenta.Items.Insert(0, New ListItem("Seleccione", "-1"))
@@ -71,16 +79,20 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
End Sub End Sub
Protected Sub ActualizaModulo(sender As Object, e As EventArgs) Protected Sub ActualizaModulo(sender As Object, e As EventArgs)
LimpiarDatos()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
CveConceptoAsignacion = GvRow.DataKey("CveCuentaAsignacion").ToEntero CveConceptoAsignacion = GvRow.DataKey("CveCuentaAsignacion").ToEntero
DdlCconceptosContables.SelectedValue = GvRow.DataKey("CveConceptoContable").ToEntero DdlCconceptosContables.SelectedValue = GvRow.DataKey("CveConceptoContable").ToEntero
DdlCuenta.SelectedValue = GvRow.DataKey("CveCuenta").ToEntero DdlCuenta.SelectedValue = GvRow.DataKey("CveCuenta").ToEntero
DdlConceptoNomina.SelectedValueexist(GvRow.DataKey("CveConceptoNomina").ToEntero) DdlConceptoNomina.SelectedValueExist(GvRow.DataKey("CveConceptoNomina").ToEntero)
DdlProveedor.SelectedValue = GvRow.DataKey("CveProveedor").ToEntero DdlProveedor.SelectedValue = GvRow.DataKey("CveProveedor").ToEntero
DdlClasificacion.SelectedValue = GvRow.DataKey("CveClasificacion").ToEntero DdlClasificacion.SelectedValue = GvRow.DataKey("CveClasificacion").ToEntero
DdlAlmacen.SelectedValue = GvRow.DataKey("CveAlmacen").ToEntero DdlAlmacen.SelectedValue = GvRow.DataKey("CveAlmacen").ToEntero
TxtIdCuentaContable.Text = GvRow.DataKey("IdCuenta") TxtIdCuentaContable.Text = GvRow.DataKey("IdCuenta")
TxtPorcentajeIVA.Text = GvRow.DataKey("PorcentajeIVA") TxtPorcentajeIVA.Text = GvRow.DataKey("PorcentajeIVA")
DdlCuentaBancaria.SelectedValueExist(GvRow.DataKey("CveBancoCuenta"))
Dim CveCliente As Integer = GvRow.DataKey("CveCliente").ToEntero Dim CveCliente As Integer = GvRow.DataKey("CveCliente").ToEntero
Dim CvePersonal As Integer = GvRow.DataKey("CvePersonal").ToEntero Dim CvePersonal As Integer = GvRow.DataKey("CvePersonal").ToEntero
@@ -121,6 +133,14 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
End Sub End Sub
Protected Sub BtnAgregarMotivoD_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click Protected Sub BtnAgregarMotivoD_Click(sender As Object, e As EventArgs) Handles BtnAgregarMotivoD.Click
LimpiarDatos()
LbAgregar.Text = "Agregar"
UpModalModulos.Update()
RegistraScript("$('#ModalCat').modal();")
End Sub
Private Sub LimpiarDatos()
CveConceptoAsignacion = -1 CveConceptoAsignacion = -1
DdlCconceptosContables.SelectedValue = -1 DdlCconceptosContables.SelectedValue = -1
DdlCuenta.SelectedValue = -1 DdlCuenta.SelectedValue = -1
@@ -128,6 +148,7 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
DdlClasificacion.SelectedValue = -1 DdlClasificacion.SelectedValue = -1
DdlAlmacen.SelectedValue = -1 DdlAlmacen.SelectedValue = -1
DdlConceptoNomina.SelectedValue = -1 DdlConceptoNomina.SelectedValue = -1
DdlCuentaBancaria.SelectedValueExist("-1")
TxtIdCuentaContable.Text = "" TxtIdCuentaContable.Text = ""
TxtPorcentajeIVA.Text = "" TxtPorcentajeIVA.Text = ""
DdlClientes.ddl.DataSource = "" DdlClientes.ddl.DataSource = ""
@@ -136,9 +157,6 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
DdlPersonal.ddl.DataSource = "" DdlPersonal.ddl.DataSource = ""
DdlPersonal.ddl.DataBind() DdlPersonal.ddl.DataBind()
DdlPersonal.setEsWebService(True) DdlPersonal.setEsWebService(True)
LbAgregar.Text = "Agregar"
UpModalModulos.Update()
RegistraScript("$('#ModalCat').modal();")
End Sub End Sub
Protected Sub LbAgregar_Click(sender As Object, e As EventArgs) Handles LbAgregar.Click Protected Sub LbAgregar_Click(sender As Object, e As EventArgs) Handles LbAgregar.Click
@@ -147,13 +165,13 @@ Partial Class Contabilidad2_CatCuentasAsignaciones
If LbAgregar.Text = "Agregar" Then If LbAgregar.Text = "Agregar" Then
If Not ObjConta.AddCuentasAsignaciones(DdlCconceptosContables.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlCuenta.SelectedValue.ToEntero, TxtIdCuentaContable.Text.ToEntero, If Not ObjConta.AddCuentasAsignaciones(DdlCconceptosContables.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlCuenta.SelectedValue.ToEntero, TxtIdCuentaContable.Text.ToEntero,
DdlProveedor.SelectedValue.ToEntero, DdlClientes.SelectedValue.ToEntero, DdlPersonal.SelectedValue.ToEntero, DdlProveedor.SelectedValue.ToEntero, DdlClientes.SelectedValue.ToEntero, DdlPersonal.SelectedValue.ToEntero,
DdlClasificacion.SelectedValue.ToEntero, DdlAlmacen.SelectedValue.ToEntero, TxtPorcentajeIVA.Text.ToDecimal) Then DdlClasificacion.SelectedValue.ToEntero, DdlAlmacen.SelectedValue.ToEntero, TxtPorcentajeIVA.Text.ToDecimal, CveBancoCuenta:=DdlCuentaBancaria.SelectedValue.ToEntero) Then
ErrorString = "Error al agregar" ErrorString = "Error al agregar"
End If End If
ElseIf LbAgregar.Text = "Actualizar" Then ElseIf LbAgregar.Text = "Actualizar" Then
If Not ObjConta.UpdateCuentasAsignaciones(CveConceptoAsignacion, DdlCconceptosContables.SelectedValue.ToEntero, DdlCuenta.SelectedValue.ToEntero, TxtIdCuentaContable.Text.ToEntero, If Not ObjConta.UpdateCuentasAsignaciones(CveConceptoAsignacion, DdlCconceptosContables.SelectedValue.ToEntero, DdlCuenta.SelectedValue.ToEntero, TxtIdCuentaContable.Text.ToEntero,
DdlProveedor.SelectedValue.ToEntero, DdlClientes.SelectedValue.ToEntero, DdlPersonal.SelectedValue.ToEntero, DdlProveedor.SelectedValue.ToEntero, DdlClientes.SelectedValue.ToEntero, DdlPersonal.SelectedValue.ToEntero,
DdlClasificacion.SelectedValue.ToEntero, DdlAlmacen.SelectedValue.ToEntero, TxtPorcentajeIVA.Text.ToDecimal) Then DdlClasificacion.SelectedValue.ToEntero, DdlAlmacen.SelectedValue.ToEntero, TxtPorcentajeIVA.Text.ToDecimal, CveBancoCuenta:=DdlCuentaBancaria.SelectedValue.ToEntero) Then
ErrorString = "Error al actualizar" ErrorString = "Error al actualizar"
End If End If
End If End If

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns:cl="http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition"> <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<AutoRefresh>0</AutoRefresh> <AutoRefresh>0</AutoRefresh>
<DataSources> <DataSources>
<DataSource Name="DataSet1"> <DataSource Name="DataSet1">
@@ -171,7 +171,6 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -461,7 +460,6 @@
</Style> </Style>
</Textbox> </Textbox>
<ColSpan>7</ColSpan> <ColSpan>7</ColSpan>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell /> <TablixCell />
@@ -553,7 +551,6 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -774,7 +771,6 @@
<PaddingBottom>1pt</PaddingBottom> <PaddingBottom>1pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -885,40 +881,40 @@
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
<CellContents> <CellContents>
<Textbox Name="Cargo2"> <Textbox Name="Cargo">
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
<Paragraphs> <Paragraphs>
<Paragraph> <Paragraph>
<TextRuns> <TextRuns>
<TextRun> <TextRun>
<Value>= Fields!Cargo.Value</Value> <Value>=Fields!Cargo.Value</Value>
<Style> <Style>
<FontFamily>calibri</FontFamily> <FontFamily>calibri</FontFamily>
<FontSize>8pt</FontSize> <FontSize>8pt</FontSize>
<Format>#,0.00</Format> <Format>#,0.00</Format>
<Language>es-MX</Language> <Language>es-MX</Language>
</Style> </Style>
</TextRun> </TextRun>
</TextRuns> </TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Cargo</rd:DefaultName>
<Visibility>
<Hidden>=iif(Fields!TipoMovto.Value = "1", true, false)</Hidden>
</Visibility>
<Style> <Style>
<TextAlign>Right</TextAlign> <Border>
<Style>None</Style>
</Border>
<PaddingLeft>1pt</PaddingLeft>
<PaddingRight>1pt</PaddingRight>
<PaddingTop>1pt</PaddingTop>
<PaddingBottom>1pt</PaddingBottom>
</Style> </Style>
</Paragraph> </Textbox>
</Paragraphs>
<Visibility>
<Hidden>=iif(Fields!TipoMovto.Value ="0",False,True)</Hidden>
</Visibility>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>1pt</PaddingLeft>
<PaddingRight>1pt</PaddingRight>
<PaddingTop>1pt</PaddingTop>
<PaddingBottom>1pt</PaddingBottom>
<rd:FormatSymbolCulture>es-MX</rd:FormatSymbolCulture>
</Style>
</Textbox>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -929,7 +925,7 @@
<Paragraph> <Paragraph>
<TextRuns> <TextRuns>
<TextRun> <TextRun>
<Value>= Fields!Abono.Value</Value> <Value>=Fields!Abono.Value</Value>
<Style> <Style>
<FontFamily>calibri</FontFamily> <FontFamily>calibri</FontFamily>
<FontSize>8pt</FontSize> <FontSize>8pt</FontSize>
@@ -946,7 +942,7 @@
</Paragraphs> </Paragraphs>
<rd:DefaultName>Abono</rd:DefaultName> <rd:DefaultName>Abono</rd:DefaultName>
<Visibility> <Visibility>
<Hidden>=iif(Fields!TipoMovto.Value ="1",False,True)</Hidden> <Hidden>=iif(Fields!TipoMovto.Value = "0", true, false)</Hidden>
</Visibility> </Visibility>
<Style> <Style>
<Border> <Border>
@@ -959,6 +955,7 @@
<rd:FormatSymbolCulture>es-MX</rd:FormatSymbolCulture> <rd:FormatSymbolCulture>es-MX</rd:FormatSymbolCulture>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
</TablixCells> </TablixCells>
@@ -996,7 +993,6 @@
<PaddingBottom>1pt</PaddingBottom> <PaddingBottom>1pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -1071,7 +1067,7 @@
<TablixCell /> <TablixCell />
<TablixCell> <TablixCell>
<CellContents> <CellContents>
<Textbox Name="Textbox113"> <Textbox Name="Textbox6">
<CanGrow>true</CanGrow> <CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
<Paragraphs> <Paragraphs>
@@ -1091,7 +1087,7 @@
</Style> </Style>
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox113</rd:DefaultName> <rd:DefaultName>Textbox6</rd:DefaultName>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1211,7 +1207,6 @@
<PaddingBottom>1pt</PaddingBottom> <PaddingBottom>1pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell>
@@ -1546,7 +1541,6 @@
</Style> </Style>
</Textbox> </Textbox>
<ColSpan>3</ColSpan> <ColSpan>3</ColSpan>
<rd:Selected>true</rd:Selected>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell /> <TablixCell />
@@ -2052,6 +2046,7 @@
<Prompt>ReportParameter1</Prompt> <Prompt>ReportParameter1</Prompt>
</ReportParameter> </ReportParameter>
</ReportParameters> </ReportParameters>
<Code> <Code>
REM Reset Page Number: REM Reset Page Number:
Shared offset As Integer Shared offset As Integer

View File

@@ -125,7 +125,7 @@
<Width>0.72729cm</Width> <Width>0.72729cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>3.00271cm</Width> <Width>2.63229cm</Width>
</TablixColumn> </TablixColumn>
</TablixColumns> </TablixColumns>
<TablixRows> <TablixRows>
@@ -2435,51 +2435,10 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<ColSpan>2</ColSpan>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell> <TablixCell />
<CellContents>
<Textbox Name="Textbox231">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value />
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox231</rd:DefaultName>
<Style>
<Border>
<Style>None</Style>
</Border>
<TopBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>1pt</Width>
</TopBorder>
<BottomBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>1pt</Width>
</BottomBorder>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell> <TablixCell>
<CellContents> <CellContents>
<Textbox Name="Textbox227"> <Textbox Name="Textbox227">
@@ -4148,7 +4107,7 @@
<DataSetName>DataSet1</DataSetName> <DataSetName>DataSet1</DataSetName>
<Left>0.07625cm</Left> <Left>0.07625cm</Left>
<Height>10.12999cm</Height> <Height>10.12999cm</Height>
<Width>20.53293cm</Width> <Width>20.16251cm</Width>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -4156,13 +4115,13 @@
</Style> </Style>
</Tablix> </Tablix>
</ReportItems> </ReportItems>
<Height>6.69045in</Height> <Height>4.06545in</Height>
<Style /> <Style />
</Body> </Body>
<Width>8.11385in</Width> <Width>7.96802in</Width>
<Page> <Page>
<PageFooter> <PageFooter>
<Height>0.68792cm</Height> <Height>0.55135cm</Height>
<PrintOnFirstPage>true</PrintOnFirstPage> <PrintOnFirstPage>true</PrintOnFirstPage>
<PrintOnLastPage>true</PrintOnLastPage> <PrintOnLastPage>true</PrintOnLastPage>
<ReportItems> <ReportItems>

View File

@@ -1946,7 +1946,7 @@
<Paragraph> <Paragraph>
<TextRuns> <TextRuns>
<TextRun> <TextRun>
<Value>=iif(Parameters!ClienteContactoMail.Value = "","","Teléfono: ")</Value> <Value>=iif(Parameters!ClienteTelefono.Value = "","","Teléfono: ")</Value>
<Style> <Style>
<FontFamily>calibri</FontFamily> <FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight> <FontWeight>Bold</FontWeight>
@@ -3927,6 +3927,97 @@
<PrintOnFirstPage>true</PrintOnFirstPage> <PrintOnFirstPage>true</PrintOnFirstPage>
<PrintOnLastPage>true</PrintOnLastPage> <PrintOnLastPage>true</PrintOnLastPage>
<ReportItems> <ReportItems>
<Textbox Name="Textbox74">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Fecha Impresión:</Value>
<Style>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
<TextRun>
<Value>=Globals!ExecutionTime</Value>
<Style>
<FontSize>8pt</FontSize>
<Format>g</Format>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox8</rd:DefaultName>
<Top>0.00882cm</Top>
<Left>0.12568cm</Left>
<Height>0.46771cm</Height>
<Width>6.86562cm</Width>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox75">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Usuario Imprimio:</Value>
<Style>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
<TextRun>
<Value>=Parameters!UsuarioImprimio.Value</Value>
<Style>
<FontSize>8pt</FontSize>
<Format>g</Format>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox8</rd:DefaultName>
<Top>0.01927cm</Top>
<Left>9.07541cm</Left>
<Height>0.46771cm</Height>
<Width>6.86562cm</Width>
<ZIndex>1</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox48"> <Textbox Name="Textbox48">
<CanGrow>true</CanGrow> <CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
@@ -3948,55 +4039,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox35</rd:DefaultName> <rd:DefaultName>Textbox35</rd:DefaultName>
<Top>0.01763cm</Top> <Top>0.00882cm</Top>
<Left>18.52109cm</Left> <Left>18.54098cm</Left>
<Height>0.50624cm</Height> <Height>0.50624cm</Height>
<Width>2.5cm</Width> <Width>2.5cm</Width>
<Style> <ZIndex>2</ZIndex>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox74">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Fecha Impresión:</Value>
<Style>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
<TextRun>
<Value>=Now.ToString("dd/MM/yyyy hh:mm tt")</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox8</rd:DefaultName>
<Top>0.01763cm</Top>
<Left>0.1715cm</Left>
<Height>0.46771cm</Height>
<Width>6.86562cm</Width>
<ZIndex>1</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -4634,6 +4681,7 @@
<Prompt>ReportParameter1</Prompt> <Prompt>ReportParameter1</Prompt>
</ReportParameter> </ReportParameter>
</ReportParameters> </ReportParameters>
<EmbeddedImages> <EmbeddedImages>
<EmbeddedImage Name="ID2"> <EmbeddedImage Name="ID2">
<MIMEType>image/png</MIMEType> <MIMEType>image/png</MIMEType>

View File

@@ -1297,7 +1297,7 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName> <rd:DefaultName>Textbox5</rd:DefaultName>
<Top>7.37059cm</Top> <Top>7.18009cm</Top>
<Left>0.28014cm</Left> <Left>0.28014cm</Left>
<Height>0.05496cm</Height> <Height>0.05496cm</Height>
<Width>20.88652cm</Width> <Width>20.88652cm</Width>
@@ -1313,67 +1313,6 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<Textbox Name="Textbox1">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Parameters!Observaciones.Value</Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>=iif(CDbl(Parameters!Kilometraje.Value) &lt; 0, "","Kilometraje: "&amp; Parameters!Kilometraje.Value)</Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>="&lt;b&gt;Próxima Rotación y Balanceo: &lt;/b&gt;" &amp; FormatDateTime(CDate(Parameters!Fecha.Value).AddMonths(6), DateFormat.ShortDate) &amp; " &lt;b&gt;Próxima Alineacion: &lt;/b&gt;" &amp; FormatDateTime(CDate(Parameters!Fecha.Value).AddMonths(6), DateFormat.ShortDate)</Value>
<MarkupType>HTML</MarkupType>
<Style>
<FontFamily>calibri</FontFamily>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox1</rd:DefaultName>
<Top>7.46082cm</Top>
<Left>2.01402cm</Left>
<Height>0.51608cm</Height>
<Width>19.15264cm</Width>
<ZIndex>3</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox4"> <Textbox Name="Textbox4">
<CanGrow>true</CanGrow> <CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
@@ -1421,7 +1360,7 @@
<Left>4.32565cm</Left> <Left>4.32565cm</Left>
<Height>2.70968cm</Height> <Height>2.70968cm</Height>
<Width>7.93893cm</Width> <Width>7.93893cm</Width>
<ZIndex>4</ZIndex> <ZIndex>3</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1501,7 +1440,7 @@
<Left>12.68838cm</Left> <Left>12.68838cm</Left>
<Height>2.70968cm</Height> <Height>2.70968cm</Height>
<Width>5.11312cm</Width> <Width>5.11312cm</Width>
<ZIndex>5</ZIndex> <ZIndex>4</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1535,7 +1474,7 @@
<Left>18.23008cm</Left> <Left>18.23008cm</Left>
<Height>0.96018cm</Height> <Height>0.96018cm</Height>
<Width>2.79101cm</Width> <Width>2.79101cm</Width>
<ZIndex>6</ZIndex> <ZIndex>5</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>Solid</Style> <Style>Solid</Style>
@@ -1571,7 +1510,7 @@
<Left>18.23008cm</Left> <Left>18.23008cm</Left>
<Height>0.6cm</Height> <Height>0.6cm</Height>
<Width>2.79101cm</Width> <Width>2.79101cm</Width>
<ZIndex>7</ZIndex> <ZIndex>6</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>Solid</Style> <Style>Solid</Style>
@@ -1622,7 +1561,7 @@
<Left>18.23008cm</Left> <Left>18.23008cm</Left>
<Height>0.86903cm</Height> <Height>0.86903cm</Height>
<Width>2.79101cm</Width> <Width>2.79101cm</Width>
<ZIndex>8</ZIndex> <ZIndex>7</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>Solid</Style> <Style>Solid</Style>
@@ -1713,7 +1652,7 @@
<Left>0.28014cm</Left> <Left>0.28014cm</Left>
<Height>1.09007cm</Height> <Height>1.09007cm</Height>
<Width>9.71199cm</Width> <Width>9.71199cm</Width>
<ZIndex>9</ZIndex> <ZIndex>8</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1793,7 +1732,7 @@
<Left>10.06268cm</Left> <Left>10.06268cm</Left>
<Height>0.7927cm</Height> <Height>0.7927cm</Height>
<Width>9.71199cm</Width> <Width>9.71199cm</Width>
<ZIndex>10</ZIndex> <ZIndex>9</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1905,7 +1844,7 @@
<Paragraph> <Paragraph>
<TextRuns> <TextRuns>
<TextRun> <TextRun>
<Value>=iif(Parameters!ClienteContactoMail.Value = "","","Teléfono: ")</Value> <Value>=iif(Parameters!ClienteTelefono.Value = "","","Teléfono: ")</Value>
<Style> <Style>
<FontFamily>calibri</FontFamily> <FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight> <FontWeight>Bold</FontWeight>
@@ -1974,7 +1913,7 @@
<Left>0.25136cm</Left> <Left>0.25136cm</Left>
<Height>0.74611cm</Height> <Height>0.74611cm</Height>
<Width>13.82025cm</Width> <Width>13.82025cm</Width>
<ZIndex>11</ZIndex> <ZIndex>10</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2007,7 +1946,7 @@
<Left>14.07729cm</Left> <Left>14.07729cm</Left>
<Height>0.57354cm</Height> <Height>0.57354cm</Height>
<Width>2.90753cm</Width> <Width>2.90753cm</Width>
<ZIndex>12</ZIndex> <ZIndex>11</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2045,7 +1984,7 @@
<Left>1.74571cm</Left> <Left>1.74571cm</Left>
<Height>1.05328cm</Height> <Height>1.05328cm</Height>
<Width>17.71415cm</Width> <Width>17.71415cm</Width>
<ZIndex>13</ZIndex> <ZIndex>12</ZIndex>
<Visibility> <Visibility>
<Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20345,1,0), "DsOC") &gt; 0),false,true)</Hidden> <Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20345,1,0), "DsOC") &gt; 0),false,true)</Hidden>
</Visibility> </Visibility>
@@ -2184,7 +2123,7 @@
<Left>0.22108cm</Left> <Left>0.22108cm</Left>
<Height>2.03224cm</Height> <Height>2.03224cm</Height>
<Width>20.79751cm</Width> <Width>20.79751cm</Width>
<ZIndex>14</ZIndex> <ZIndex>13</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2214,7 +2153,7 @@
<Left>0.24983cm</Left> <Left>0.24983cm</Left>
<Height>0.05496cm</Height> <Height>0.05496cm</Height>
<Width>20.88652cm</Width> <Width>20.88652cm</Width>
<ZIndex>15</ZIndex> <ZIndex>14</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2268,7 +2207,7 @@
<Left>17.09066cm</Left> <Left>17.09066cm</Left>
<Height>0.64028cm</Height> <Height>0.64028cm</Height>
<Width>3.90165cm</Width> <Width>3.90165cm</Width>
<ZIndex>16</ZIndex> <ZIndex>15</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2435,7 +2374,7 @@
<Left>0.16383cm</Left> <Left>0.16383cm</Left>
<Height>2.44366cm</Height> <Height>2.44366cm</Height>
<Width>15.5106cm</Width> <Width>15.5106cm</Width>
<ZIndex>17</ZIndex> <ZIndex>16</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2470,7 +2409,7 @@
<Left>6.21617in</Left> <Left>6.21617in</Left>
<Height>0.17708in</Height> <Height>0.17708in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>18</ZIndex> <ZIndex>17</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2505,7 +2444,7 @@
<Left>6.21616in</Left> <Left>6.21616in</Left>
<Height>0.17966in</Height> <Height>0.17966in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>19</ZIndex> <ZIndex>18</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2540,7 +2479,7 @@
<Left>6.21616in</Left> <Left>6.21616in</Left>
<Height>0.18819in</Height> <Height>0.18819in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>20</ZIndex> <ZIndex>19</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2575,7 +2514,7 @@
<Left>6.22658in</Left> <Left>6.22658in</Left>
<Height>0.17119in</Height> <Height>0.17119in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>21</ZIndex> <ZIndex>20</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2611,7 +2550,7 @@
<Left>6.237in</Left> <Left>6.237in</Left>
<Height>0.19596in</Height> <Height>0.19596in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>22</ZIndex> <ZIndex>21</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2647,7 +2586,7 @@
<Left>7.16224in</Left> <Left>7.16224in</Left>
<Height>0.17708in</Height> <Height>0.17708in</Height>
<Width>0.98426in</Width> <Width>0.98426in</Width>
<ZIndex>23</ZIndex> <ZIndex>22</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2682,7 +2621,7 @@
<Left>7.16224in</Left> <Left>7.16224in</Left>
<Height>0.17966in</Height> <Height>0.17966in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>24</ZIndex> <ZIndex>23</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2717,7 +2656,7 @@
<Left>7.17266in</Left> <Left>7.17266in</Left>
<Height>0.18819in</Height> <Height>0.18819in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>25</ZIndex> <ZIndex>24</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2753,7 +2692,7 @@
<Left>7.17266in</Left> <Left>7.17266in</Left>
<Height>0.17119in</Height> <Height>0.17119in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>26</ZIndex> <ZIndex>25</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2789,7 +2728,7 @@
<Left>7.18308in</Left> <Left>7.18308in</Left>
<Height>0.19596in</Height> <Height>0.19596in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>27</ZIndex> <ZIndex>26</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2819,7 +2758,7 @@
<Left>0.10579cm</Left> <Left>0.10579cm</Left>
<Height>0.05496cm</Height> <Height>0.05496cm</Height>
<Width>20.88652cm</Width> <Width>20.88652cm</Width>
<ZIndex>28</ZIndex> <ZIndex>27</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2858,7 +2797,127 @@
<Left>0.19008cm</Left> <Left>0.19008cm</Left>
<Height>0.40655cm</Height> <Height>0.40655cm</Height>
<Width>12.88812cm</Width> <Width>12.88812cm</Width>
<ZIndex>28</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Image Name="Image1">
<Source>Embedded</Source>
<Value>ID2</Value>
<Sizing>FitProportional</Sizing>
<Top>0.29668cm</Top>
<Left>1.15361cm</Left>
<Height>2.413cm</Height>
<Width>2.75323cm</Width>
<ZIndex>29</ZIndex> <ZIndex>29</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Image>
<Textbox Name="Textbox1">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Parameters!Observaciones.Value</Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>=iif(Parameters!Kilometraje.Value = "-1", "","Kilometraje: "&amp; Parameters!Kilometraje.Value)</Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value xml:space="preserve"> </Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>="&lt;b&gt;Próxima Rotación y Balanceo: &lt;/b&gt;" &amp; FormatDateTime(CDate(Parameters!Fecha.Value).AddMonths(6), DateFormat.ShortDate) &amp; " &lt;b&gt;Próxima Alineacion: &lt;/b&gt;" &amp; FormatDateTime(CDate(Parameters!Fecha.Value).AddMonths(6), DateFormat.ShortDate)</Value>
<MarkupType>HTML</MarkupType>
<Style>
<FontFamily>calibri</FontFamily>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox1</rd:DefaultName>
<Top>7.20863cm</Top>
<Left>1.16095cm</Left>
<Height>0.62233cm</Height>
<Width>9.17089cm</Width>
<ZIndex>30</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox27">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Acepto ajuste </Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontSize>12pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
<TextRun>
<Value>_______________________</Value>
<Style>
<FontFamily>calibri</FontFamily>
<FontSize>12pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox1</rd:DefaultName>
<Top>7.38663cm</Top>
<Left>10.47295cm</Left>
<Height>0.64039cm</Height>
<Width>9.53276cm</Width>
<ZIndex>31</ZIndex>
<Visibility>
<Hidden>=IIF((Sum(IIF(UCase(Fields!Clasificacion.Value) = "AJUSTE" , 1, 0), "DsOC") &gt; 0),false,true)</Hidden>
</Visibility>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -3580,6 +3639,12 @@
<AllowBlank>true</AllowBlank> <AllowBlank>true</AllowBlank>
<Prompt>ReportParameter1</Prompt> <Prompt>ReportParameter1</Prompt>
</ReportParameter> </ReportParameter>
<ReportParameter Name="QRDescarga">
<DataType>String</DataType>
<Nullable>true</Nullable>
<AllowBlank>true</AllowBlank>
<Prompt>ReportParameter1</Prompt>
</ReportParameter>
</ReportParameters> </ReportParameters>
<EmbeddedImages> <EmbeddedImages>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -39,23 +39,22 @@ Partial Class GPS_PuntosDeInteres
End Sub End Sub
Private Sub CargaDatos() Private Sub CargaDatos()
Dim gps As New ClsGPS Dim ObjGPS As New ClsGPS
If gps.PuntoDeInteresGrupoGet(-1, 1) Then If ObjGPS.PuntoDeInteresGrupoGet(UsuarioActual.CveCliente, 1) Then
GvGrupos.DataSource = gps.DtResultados GvGrupos.DataSource = ObjGPS.DtResultados
Else
GvGrupos.DataSource = Nothing
End If End If
If gps.PuntoDeInteresGet(-1, UsuarioActual.CveCliente, 1, -1) Then
GvPuntos.DataSource = gps.DtResultados If ObjGPS.PuntoDeInteresGet(-1, UsuarioActual.CveCliente, 1, -1) Then
GVPuntosInteres.DataSource = gps.DtResultados GvPuntos.DataSource = ObjGPS.DtResultados
Else GVPuntosInteres.DataSource = ObjGPS.DtResultados
GvPuntos.DataSource = Nothing
GVPuntosInteres.DataSource = Nothing
End If End If
gps.Dispose()
ObjGPS.Dispose()
GvGrupos.DataBind() GvGrupos.DataBind()
GvPuntos.DataBind() GvPuntos.DataBind()
GVPuntosInteres.DataBind() GVPuntosInteres.DataBind()
UpEditar.Update() UpEditar.Update()
End Sub End Sub
@@ -65,7 +64,6 @@ Partial Class GPS_PuntosDeInteres
End If End If
End Sub End Sub
Protected Sub BtnAgregarPunto_Click(sender As Object, e As EventArgs) Handles BtnAgregarPunto.Click Protected Sub BtnAgregarPunto_Click(sender As Object, e As EventArgs) Handles BtnAgregarPunto.Click
Dim GPS As New ClsGPS Dim GPS As New ClsGPS
GPS.IniciaTransacSQL() GPS.IniciaTransacSQL()
@@ -110,7 +108,7 @@ Partial Class GPS_PuntosDeInteres
Alert("Es necesario seleccionar un grupo de puntos", TipoMensaje.MsgAdvertencia) Alert("Es necesario seleccionar un grupo de puntos", TipoMensaje.MsgAdvertencia)
Exit Sub Exit Sub
End If End If
If GPS.PuntoDeInteresGet(-1, -1, 1, HdnGrupo.Value.ToEntero) AndAlso GPS.DtResultados.Rows.Count > 0 Then If GPS.PuntoDeInteresGet(-1, UsuarioActual.CveCliente, 1, HdnGrupo.Value.ToEntero) AndAlso GPS.DtResultados.Rows.Count > 0 Then
Dim ruta As String = "" Dim ruta As String = ""
For Each row As DataRow In GPS.DtResultados.Rows For Each row As DataRow In GPS.DtResultados.Rows
ruta += row("Punto").ToString.Replace("POINT (", "").Replace(")", ",") ruta += row("Punto").ToString.Replace("POINT (", "").Replace(")", ",")

View File

@@ -53,7 +53,7 @@
margin-bottom: 10px; margin-bottom: 10px;
} }
#iw-container .iw-title { #iw-container .iw-title {
font-family: 'Open Sans Condensed', sans-serif; font-family: 'Open Sans Condensed', sans-serif;
font-size: 22px; font-size: 22px;
font-weight: 400; font-weight: 400;
@@ -62,9 +62,9 @@
color: white; color: white;
margin: 0; margin: 0;
border-radius: 2px 2px 0 0; border-radius: 2px 2px 0 0;
} }
#iw-container .iw-content { #iw-container .iw-content {
font-size: 13px; font-size: 13px;
line-height: 18px; line-height: 18px;
font-weight: 400; font-weight: 400;
@@ -73,7 +73,7 @@
max-height: 140px; max-height: 140px;
overflow-y: auto; overflow-y: auto;
overflow-x: hidden; overflow-x: hidden;
} }
.iw-content img { .iw-content img {
float: right; float: right;
@@ -176,18 +176,20 @@
<div class="modal-body"> <div class="modal-body">
<ul class="list-inline" style="font-size: 12px; margin-top: 15px; margin-left: 0px; margin-bottom: 20px;"> <ul class="list-inline" style="font-size: 12px; margin-top: 15px; margin-left: 0px; margin-bottom: 20px;">
<li>Fecha Inicio: <li>Fecha Inicio:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy hh:mm" >
<asp:TextBox ID="txtFechaI" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox> <div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy hh:mm">
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator> <asp:TextBox ID="txtFechaI" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator4" Width="350px"></ajax:ValidatorCalloutExtender> <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
</div> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator4" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</li> </li>
<li>Fecha Fin: <li>Fecha Fin:
<div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy">
<asp:TextBox ID="txtFechaF" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox> <div class="input-group input-sm date date-picker " data-date-format="dd/mm/yyyy">
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator> <asp:TextBox ID="txtFechaF" runat="server" CssClass="form-control input-sm ADDateTimePicker" CausesValidation="true" MaxLength="18" Width="132px "></asp:TextBox>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator5" Width="350px"></ajax:ValidatorCalloutExtender> <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor seleccione uno." ValidationGroup="GrpFechas"></asp:RequiredFieldValidator>
</div> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator5" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</li> </li>
</ul> </ul>
<div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right" align="left"> <div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right" align="left">
@@ -203,7 +205,7 @@
<asp:CheckBox runat="server" ID="chkSelectAll" CssClass="ChkAllClickGR" /> <asp:CheckBox runat="server" ID="chkSelectAll" CssClass="ChkAllClickGR" />
</HeaderTemplate> </HeaderTemplate>
<ItemTemplate> <ItemTemplate>
<asp:CheckBox runat="server" ID="chkGR" CssClass="ChkAllGR" /> <asp:CheckBox runat="server" ID="chkGR" CssClass="ChkAllGR" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:BoundField DataField="PuntoDeInteres" ItemStyle-Width="45%" HeaderText="Punto De Interés" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="PuntoDeInteres" ItemStyle-Width="45%" HeaderText="Punto De Interés" ItemStyle-HorizontalAlign="Left" />
@@ -257,13 +259,36 @@
</div> </div>
<div class="modal-body"> <div class="modal-body">
<asp:UpdatePanel runat="server" UpdateMode="conditional" ID="UpdatePanel3"> <asp:UpdatePanel runat="server" UpdateMode="conditional" ID="UpdatePanel3">
<Triggers>
<asp:PostBackTrigger ControlID="LnkImprimirEXCELVisita" />
</Triggers>
<ContentTemplate> <ContentTemplate>
<div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right" align="left"> <div class="row">
<div style="margin-right: 15px"> <div class="col-md-3">
<input type="text" id="TxtBusquedaHist" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVHistorico.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" /> <asp:Label runat="server" Text="Punto de Interés:"></asp:Label>
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVHistorico.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a> <br />
<b>
<asp:Label ID="LblPU" runat="server" Text=""></asp:Label></b>
</div>
<div class="col-md-4">
<asp:Label runat="server" Text="Vehículo:"></asp:Label>
<br />
<b>
<asp:Label ID="LblUnidad" runat="server" Text=""></asp:Label></b>
</div>
<div class="col-md-1">
<asp:LinkButton ID="LnkImprimirEXCELVisita" runat="server" OnClick="LnkImprimirEXCELVisita_Click" CssClass="btn btn-circle btn-sm green"><i class='fa fa-file-excel-o' aria-hidden='true'></i></asp:LinkButton>
</div>
<div class="col-md-4">
<div class="row" style="margin-left: 0px; margin-top: 5px; margin-bottom: 5px; text-align: right" align="left">
<div style="margin-right: 15px">
<input type="text" id="TxtBusquedaHist" class="form-control input-sm" onkeyup="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVHistorico.ClientID) %>" style="display: inline-block; margin-right: -20px; width: 150px;" />
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVHistorico.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
</div>
</div> </div>
</div> </div>
<asp:GridView ID="GVHistorico" runat="server" GridLines="None" DataKeyNames="CveDispositivoEvento" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-heightfijo="100" data-height="100" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros"> <asp:GridView ID="GVHistorico" runat="server" GridLines="None" DataKeyNames="CveDispositivoEvento" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-heightfijo="100" data-height="100" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros">
<Columns> <Columns>
<asp:BoundField DataField="Conductor" ItemStyle-Width="35%" HeaderStyle-HorizontalAlign="center" HeaderText="Conductor" ItemStyle-HorizontalAlign="left" /> <asp:BoundField DataField="Conductor" ItemStyle-Width="35%" HeaderStyle-HorizontalAlign="center" HeaderText="Conductor" ItemStyle-HorizontalAlign="left" />
@@ -307,8 +332,9 @@
<Columns> <Columns>
<asp:BoundField DataField="Vehiculo" ItemStyle-Width="30%" HeaderText="Vehículo" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="Vehiculo" ItemStyle-Width="30%" HeaderText="Vehículo" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="PuntoDeInteres" ItemStyle-Width="30%" HeaderText="Punto De Interes" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="PuntoDeInteres" ItemStyle-Width="30%" HeaderText="Punto De Interes" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="Visitas" ItemStyle-Width="20%" DataFormatString="{0} Visitas" HeaderText="Visitas" ItemStyle-HorizontalAlign="Center" /> <asp:BoundField DataField="Visitas" ItemStyle-Width="10%" DataFormatString="{0} Visitas" HeaderText="Visitas" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="UltimaVisita" ItemStyle-Width="20%" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Ultima Visita" ItemStyle-HorizontalAlign="Center" /> <asp:BoundField DataField="UltimaVisita" ItemStyle-Width="20%" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Ultima Visita" ItemStyle-HorizontalAlign="Center" />
<asp:HyperLinkField HeaderText="Posición" Text="Ver en google maps" ItemStyle-Width="10%" DataNavigateUrlFields="LigaMapa" Target="_blank" />
</Columns> </Columns>
<PagerSettings Mode="NextPrevious" Visible="true" Position="Top" /> <PagerSettings Mode="NextPrevious" Visible="true" Position="Top" />
</asp:GridView> </asp:GridView>

View File

@@ -3,6 +3,7 @@
Imports Extensiones Imports Extensiones
Imports System.Data Imports System.Data
Imports Microsoft.Reporting.WebForms Imports Microsoft.Reporting.WebForms
Imports GemBox.Spreadsheet
Partial Class GPS_RepPuntosDeInteres Partial Class GPS_RepPuntosDeInteres
Inherits ClsPaginas Inherits ClsPaginas
@@ -24,6 +25,14 @@ Partial Class GPS_RepPuntosDeInteres
ViewState("DtDatosReporte") = value ViewState("DtDatosReporte") = value
End Set End Set
End Property End Property
Private Property DtVisitas As DataTable
Get
Return If(IsNothing(ViewState("DtVisitas")), Nothing, CType(ViewState("DtVisitas"), DataTable))
End Get
Set(value As DataTable)
ViewState("DtVisitas") = value
End Set
End Property
#End Region #End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
@@ -32,6 +41,7 @@ Partial Class GPS_RepPuntosDeInteres
End If End If
End Sub End Sub
Private Sub CargaDatos() Private Sub CargaDatos()
DtDatosReporte = Nothing
txtFechaF.Text = Now.ToString("dd/MM/yyyy") txtFechaF.Text = Now.ToString("dd/MM/yyyy")
txtFechaI.Text = Now.AddDays(-7).ToString("dd/MM/yyyy") txtFechaI.Text = Now.AddDays(-7).ToString("dd/MM/yyyy")
@@ -66,6 +76,11 @@ Partial Class GPS_RepPuntosDeInteres
End Sub End Sub
Private Sub ReportePuntos(Dispositivos As String) Private Sub ReportePuntos(Dispositivos As String)
'LIMPIAR REPORTE
If DtDatosReporte IsNot Nothing Then
DtDatosReporte.Dispose()
DtDatosReporte = Nothing
End If
Dim FechaI, FechaF As Date Dim FechaI, FechaF As Date
Dim SBBody As New StringBuilder Dim SBBody As New StringBuilder
@@ -83,11 +98,15 @@ Partial Class GPS_RepPuntosDeInteres
Try Try
For Each row As GridViewRow In GvPuntos.Rows For Each row As GridViewRow In GvPuntos.Rows
SBBody.Clear() SBBody.Clear()
If row.FCCheckBox("chkGR").Checked Then If row.FCCheckBox("chkGR").Checked Then
If ObjGPS.RepPuntosGet(row.DataKey("CvePuntoDeInteres").ToEntero, Dispositivos, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, UsuarioActual.CveCliente) Then If ObjGPS.RepPuntosGet(row.DataKey("CvePuntoDeInteres").ToEntero, Dispositivos, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, UsuarioActual.CveCliente) Then
DtDatosReporte = ObjGPS.DtResultados.Copy() If DtDatosReporte IsNot Nothing Then
GvBarra.DataSource = DtDatosReporte DtDatosReporte.Merge(ObjGPS.DtResultados)
Else
DtDatosReporte = ObjGPS.DtResultados.Copy()
End If
Coords = SQLToGmaps(row.DataKey("Punto").ToString, "POINT") Coords = SQLToGmaps(row.DataKey("Punto").ToString, "POINT")
SBBody.Append($"<div>") SBBody.Append($"<div>")
@@ -98,7 +117,7 @@ Partial Class GPS_RepPuntosDeInteres
SBBody.Append($"<div><table>") SBBody.Append($"<div><table>")
For Each Cve As String In DispositivosLista For Each Cve As String In DispositivosLista
If ObjGPS.DtResultados.FiltraParametros($"CveDispositivo = {Cve} ").Rows.Count > 0 Then If ObjGPS.DtResultados.FiltraParametros($"CveDispositivo = {Cve} ").Rows.Count > 0 Then
SBBody.Append($"<tr><td><b>{ObjGPS.DtResultados.FiltroPrimeroValor("Vehiculo", $"CveDispositivo = {Cve}")}:</b> <a onclick=""CargaGV({Cve}, {row.DataKey("CvePuntoDeInteres")} )"">{ObjGPS.DtResultados.FiltroPrimeroValor("Visitas", $"CveDispositivo = {Cve}")} visitas<a></td></tr>") SBBody.Append($"<tr><td><b>{ObjGPS.DtResultados.FiltroPrimeroValor("Vehiculo", $"CveDispositivo = {Cve}")}:</b> <a onclick=""CargaGV({Cve}, {row.DataKey("CvePuntoDeInteres")})"">{ObjGPS.DtResultados.FiltroPrimeroValor("Visitas", $"CveDispositivo = {Cve}")} visitas<a></td></tr>")
SBBody.Append($"<tr><td>Última Visita: {ObjGPS.DtResultados.FiltroPrimeroValor("UltimaVisita", $"CveDispositivo = {Cve}")}</td></tr>") SBBody.Append($"<tr><td>Última Visita: {ObjGPS.DtResultados.FiltroPrimeroValor("UltimaVisita", $"CveDispositivo = {Cve}")}</td></tr>")
End If End If
Next Next
@@ -111,7 +130,11 @@ Partial Class GPS_RepPuntosDeInteres
RegistraScript($"CreaCirculo({Coords},'{Color}');CreaMarcador({Coords},'{row.DataKey("PuntoDeInteres")}','{SBBody.ToString}');", row.DataKey("CvePuntoDeInteres")) RegistraScript($"CreaCirculo({Coords},'{Color}');CreaMarcador({Coords},'{row.DataKey("PuntoDeInteres")}','{SBBody.ToString}');", row.DataKey("CvePuntoDeInteres"))
End If End If
End If End If
Next Next
GvBarra.DataSource = DtDatosReporte
GvBarra.DataBind()
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al consultar los puntos de interes", ex) OnError("Ocurrió un error al consultar los puntos de interes", ex)
End Try End Try
@@ -162,13 +185,32 @@ Partial Class GPS_RepPuntosDeInteres
Protected Sub BtnCargarGV_Click(sender As Object, e As EventArgs) Handles BtnCargarGV.Click Protected Sub BtnCargarGV_Click(sender As Object, e As EventArgs) Handles BtnCargarGV.Click
Dim GPS As New ClsGPS DtVisitas = Nothing
If GPS.RepPuntosDetalleGet(HdnPunto.Value.ToEntero, HdnDispositivo.Value.ToEntero, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, UsuarioActual.CveCliente) Then
GVHistorico.DataSource = GPS.DtResultados.FiltraParametros("CveEvento = 106") Dim ObjGPS As New ClsGPS
Else Try
GVHistorico.DataSource = Nothing Dim PuntoInteres As String = "", Vehiculo As String = ""
End If
GPS.Dispose() If ObjGPS.PuntoDeInteresGet(HdnPunto.Value.ToEntero, UsuarioActual.CveCliente, 1, -1) Then
PuntoInteres = ObjGPS.DtResultados.FiltroPrimeroValor("PuntoDeInteres")
End If
Vehiculo = GlobalDTDispositivos(UsuarioActual.CveCliente).FiltroPrimeroValor("NoEconomico", $"CveDispositivo={HdnDispositivo.Value.ToEntero}")
LblPU.Text = PuntoInteres
LblUnidad.Text = Vehiculo
If ObjGPS.RepPuntosDetalleGet(HdnPunto.Value.ToEntero, HdnDispositivo.Value.ToEntero, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, UsuarioActual.CveCliente) Then
DtVisitas = ObjGPS.DtResultados.FiltraParametros("CveEvento = 106")
GVHistorico.DataSource = DtVisitas
Else
GVHistorico.DataSource = Nothing
End If
Catch ex As Exception
OnError("Ocurrió un error al cargar las visitas", ex)
End Try
ObjGPS.Dispose()
GVHistorico.DataBind() GVHistorico.DataBind()
UpdatePanel3.Update() UpdatePanel3.Update()
RegistraScript("$('#dvHistorico').modal()") RegistraScript("$('#dvHistorico').modal()")
@@ -192,21 +234,215 @@ Partial Class GPS_RepPuntosDeInteres
End Sub End Sub
Public Sub EnviarReporteProgramado(Format As String) Public Sub EnviarReporteProgramado(Format As String)
Dim RutaReporte = "Empresas/Grales/ReportesProgramados/RPTPuntosInteres.rdlc"
Dim NombreReporte = "ReportePuntosInteres"
Try If Format = "EXCEL" Then
Dim RptParametro As New List(Of ReportParameter) Dim filtros As String = $"Fecha Inicio: {txtFechaI.Text}, Fecha Fin: {txtFechaF.Text}"
RptParametro.Add(New ReportParameter("FechaInicio", txtFechaI.Text))
RptParametro.Add(New ReportParameter("FechaFin", txtFechaF.Text))
RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToShortDateString))
Dim retorno = StreamPDF(RutaReporte, DtDatosReporte, RptParametro, $"{NombreReporte}{Date.Now.ToShortDateString}", Format, MR:=Nothing, RDSName:="DsOC") Dim DtImprimir As DataTable = DtDatosReporte.Copy()
DtImprimir.Columns.Remove(DtImprimir.Columns("CveDispositivo"))
DtImprimir.Columns("PuntoDeInteres").SetOrdinal(0)
DtImprimir.Columns("Vehiculo").SetOrdinal(1)
DtImprimir.Columns("UltimaVisita").SetOrdinal(2)
DtImprimir.Columns("Visitas").SetOrdinal(3)
DtImprimir.Columns("PuntoDeInteres").ColumnName = "Punto de Interés"
DtImprimir.Columns("Vehiculo").ColumnName = "Vehículo"
DtImprimir.Columns("UltimaVisita").ColumnName = "Última Visita"
ImprimirExcelG(DtImprimir, "ReportePuntosInteres.xlsx", "Reporte de Puntos de Interés", filtros, NombreHoja:="ReportePuntosInteres")
Else
Dim RutaReporte = "Empresas/Grales/ReportesProgramados/RPTPuntosInteres.rdlc"
Dim NombreReporte = "ReportePuntosInteres"
Try
Dim Nombre As String = ""
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(UsuarioActual.CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus:=-1) Then Nombre = ObjClientes.DtResultados.FiltroPrimeroValor("Nombre")
ObjClientes.Dispose()
Dim RptParametro As New List(Of ReportParameter)
RptParametro.Add(New ReportParameter("FechaInicio", txtFechaI.Text))
RptParametro.Add(New ReportParameter("FechaFin", txtFechaF.Text))
RptParametro.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
RptParametro.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToShortDateString))
RptParametro.Add(New ReportParameter("Cliente", Nombre))
'Dim MR = New ReportViewer
'MR.LocalReport.EnableHyperlinks = True
'MR.HyperlinkTarget = "_blank"
Dim retorno = StreamPDF(RutaReporte, DtDatosReporte, 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
End If
End Sub
Protected Sub LnkImprimirEXCELVisita_Click(sender As Object, e As EventArgs)
Dim filtros As String = $"Punto de Interés: {LblPU.Text}, Vehículo: {LblUnidad.Text}"
Dim DtImprimir As DataTable = DtVisitas.Copy()
DtImprimir.Columns.Remove(DtImprimir.Columns("CveDispositivoEvento"))
DtImprimir.Columns.Remove(DtImprimir.Columns("CveEvento"))
DtImprimir.Columns.Remove(DtImprimir.Columns("FechaEvento"))
DtImprimir.Columns("FechaEntrada").ColumnName = "Fecha Visita"
DtImprimir.Columns("Duracion").ColumnName = "Duración (min)"
ImprimirExcelG(DtImprimir, "HistorialVistas.xlsx", "Historial de vistas", filtros, NombreHoja:="Historial")
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,
.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
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
Dim Nombre As String = ""
Dim ObjClientes As New ClsClientes
If ObjClientes.GetClientes(UsuarioActual.CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, -1, Estatus:=-1) Then Nombre = ObjClientes.DtResultados.FiltroPrimeroValor("Nombre")
ObjClientes.Dispose()
RangoNombreEmpresa.Value = 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)
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
End Sub End Sub
End Class End Class

View File

@@ -2745,6 +2745,11 @@ Partial Class Inventarios_EntregaAlmacen
ValidaVirtual = False ValidaVirtual = False
End If End If
'SI NO APLICA VIRTUAL EN LOS PRODUCTOS NO VALIDA
If CveAlmacenVirtual > 0 AndAlso DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count = 0 Then
ValidaVirtual = False
End If
If DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count > 0 AndAlso CveAlmacenVirtual > 0 AndAlso CveConceptoMovimientoVirtual > 0 Then If DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count > 0 AndAlso CveAlmacenVirtual > 0 AndAlso CveConceptoMovimientoVirtual > 0 Then
CveMovimientoVirtual = ObjInventario.AddMovimiento(CveAlmacenVirtual, CveConceptoMovimientoVirtual, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1, CveMovimientoVirtual = ObjInventario.AddMovimiento(CveAlmacenVirtual, CveConceptoMovimientoVirtual, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVentaSurtir, -1, -1,
Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveMovimientoRelacionado:=CveMovimientoRelacionadoVirtual, Modulo:="RE/G6") Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveMovimientoRelacionado:=CveMovimientoRelacionadoVirtual, Modulo:="RE/G6")

View File

@@ -369,15 +369,19 @@ Partial Class Inventarios_Kardex
Private Sub Imprimir(Optional reporte As String = "PDF") Private Sub Imprimir(Optional reporte As String = "PDF")
Dim DtKardex As DataTable = Nothing Dim DtKardex As DataTable = Nothing
DtKardex = CargarKardex(ddlProducto2.SelectedValue.ToEntero) If ddlProducto2.SelectedValue.ToEntero > 0 Then
If (Not IsNothing(DtKardex)) Then DtKardex = CargarKardex(ddlProducto2.SelectedValue.ToEntero)
Dim params As New List(Of ReportParameter) If (Not IsNothing(DtKardex)) Then
If IO.File.Exists(String.Format("{0}/Formatos/Kardex.rdlc", UsuarioActual.Empresa.Ruta)) Then Dim params As New List(Of ReportParameter)
ImprimirPDF(String.Format("Empresas/{0}/Formatos/Kardex.rdlc", UsuarioActual.CveEmpresa), DtKardex, params, "ReporteKardex", reporte) If IO.File.Exists(String.Format("{0}/Formatos/Kardex.rdlc", UsuarioActual.Empresa.Ruta)) Then
Else ImprimirPDF(String.Format("Empresas/{0}/Formatos/Kardex.rdlc", UsuarioActual.CveEmpresa), DtKardex, params, "ReporteKardex", reporte)
ImprimirPDF("Empresas/Grales/Formatos/Kardex.rdlc", DtKardex, params, "Reporte Kardex", reporte) Else
ImprimirPDF("Empresas/Grales/Formatos/Kardex.rdlc", DtKardex, params, "Reporte Kardex", reporte)
End If
DtKardex.Dispose()
End If End If
DtKardex.Dispose() Else
Alert("No hay informacion cargada", TipoMensaje.MsgAdvertencia)
End If End If
End Sub End Sub
@@ -385,61 +389,65 @@ Partial Class Inventarios_Kardex
GenerarPDF() GenerarPDF()
End Sub End Sub
Private Sub GenerarPDF(Optional Formato As String = "PDF") Private Sub GenerarPDF(Optional Formato As String = "PDF")
Dim Movimientos As New ClsInventarios If ddlProducto2.SelectedValue.ToEntero > 0 Then
Dim CvePS As Integer = ddlProducto2.SelectedValue.ToEntero Dim Movimientos As New ClsInventarios
Dim Entrada As Boolean = cbEntrada.Checked Dim CvePS As Integer = ddlProducto2.SelectedValue.ToEntero
Dim Salida As Boolean = cbSalida.Checked Dim Entrada As Boolean = cbEntrada.Checked
Dim Salida As Boolean = cbSalida.Checked
Dim FechaI As String = If(TxtFechaI.Text <> "" AndAlso TxtFechaI.Text <> "__/__/____", TxtFechaI.Text, "-1") Dim FechaI As String = If(TxtFechaI.Text <> "" AndAlso TxtFechaI.Text <> "__/__/____", TxtFechaI.Text, "-1")
Dim FechaF As String = If(TxtFechaF.Text <> "" AndAlso TxtFechaF.Text <> "__/__/____", TxtFechaF.Text, "-1") Dim FechaF As String = If(TxtFechaF.Text <> "" AndAlso TxtFechaF.Text <> "__/__/____", TxtFechaF.Text, "-1")
Dim CveAlmacen As Integer = ddlAlmacen.SelectedValue.ToEntero Dim CveAlmacen As Integer = ddlAlmacen.SelectedValue.ToEntero
Dim Almacen = If(ddlAlmacen.SelectedValue = "-1", "", $"&emsp;<b>Almacén:</b>&nbsp;{ddlAlmacen.SelectedItem.Text}") Dim Almacen = If(ddlAlmacen.SelectedValue = "-1", "", $"&emsp;<b>Almacén:</b>&nbsp;{ddlAlmacen.SelectedItem.Text}")
Dim UM = If(DdlUnidadMedida.SelectedValue = "-1", "", $"&emsp;<b>Unidad de Medida:</b>&nbsp;{DdlUnidadMedida.SelectedItem.Text}") Dim UM = If(DdlUnidadMedida.SelectedValue = "-1", "", $"&emsp;<b>Unidad de Medida:</b>&nbsp;{DdlUnidadMedida.SelectedItem.Text}")
Dim FechaIn As String = If(TxtFechaI.Text = "", "", $"&emsp;<b>Fecha Inicio:</b>&nbsp;{TxtFechaI.Text}") Dim FechaIn As String = If(TxtFechaI.Text = "", "", $"&emsp;<b>Fecha Inicio:</b>&nbsp;{TxtFechaI.Text}")
Dim FechaFn As String = If(TxtFechaF.Text = "", "", $"&emsp;<b>Fecha Fin:</b>&nbsp;{TxtFechaF.Text}") Dim FechaFn As String = If(TxtFechaF.Text = "", "", $"&emsp;<b>Fecha Fin:</b>&nbsp;{TxtFechaF.Text}")
Dim EntradaSalida As String = "" Dim EntradaSalida As String = ""
If cbEntrada.Checked And cbSalida.Checked Then If cbEntrada.Checked And cbSalida.Checked Then
EntradaSalida = "&emsp;Entradas y Salidas" EntradaSalida = "&emsp;Entradas y Salidas"
ElseIf cbEntrada.Checked And cbSalida.Checked = False Then ElseIf cbEntrada.Checked And cbSalida.Checked = False Then
EntradaSalida = "&emsp;Solo Entradas" EntradaSalida = "&emsp;Solo Entradas"
ElseIf cbEntrada.Checked = False And cbSalida.Checked Then ElseIf cbEntrada.Checked = False And cbSalida.Checked Then
EntradaSalida = "&emsp;Solo Salidas" EntradaSalida = "&emsp;Solo Salidas"
End If End If
Dim CveTiposAlmacen = "" Dim CveTiposAlmacen = ""
For Each item As ListItem In CBLTiposAlmacen.Items For Each item As ListItem In CBLTiposAlmacen.Items
CveTiposAlmacen += If(item.Selected, $"{item.Value},", "") CveTiposAlmacen += If(item.Selected, $"{item.Value},", "")
Next Next
Dim Serie As String = If(TxtSerie.Text <> "", TxtSerie.Text, "-1") Dim Serie As String = If(TxtSerie.Text <> "", TxtSerie.Text, "-1")
Dim SerieAgrupado As String = If(TxtSerie.Text = "", "", $"<b>Existencia y costos calculada por numero de serie:</b>&nbsp;{TxtSerie.Text} ") Dim SerieAgrupado As String = If(TxtSerie.Text = "", "", $"<b>Existencia y costos calculada por numero de serie:</b>&nbsp;{TxtSerie.Text} ")
If Movimientos.GetKardex(Entrada, Salida, CvePS, FechaI, FechaF, CveAlmacen, CveTiposAlmacen.Substring(0, CveTiposAlmacen.Length - 1), DdlUnidadMedida.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkAgruparAlmacen.Checked, Serie) Then If Movimientos.GetKardex(Entrada, Salida, CvePS, FechaI, FechaF, CveAlmacen, CveTiposAlmacen.Substring(0, CveTiposAlmacen.Length - 1), DdlUnidadMedida.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkAgruparAlmacen.Checked, Serie) Then
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) Dim Imagen As 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) Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
Dim dt As DataTable = Movimientos.DtResultados Dim dt As DataTable = Movimientos.DtResultados
Dim params As New List(Of ReportParameter) Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("FechaInicio", FechaI)) params.Add(New ReportParameter("FechaInicio", FechaI))
params.Add(New ReportParameter("FechaFin", FechaF)) params.Add(New ReportParameter("FechaFin", FechaF))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
params.Add(New ReportParameter("Producto", ddlProducto2.SelectedText)) params.Add(New ReportParameter("Producto", ddlProducto2.SelectedText))
params.Add(New ReportParameter("AgrupadoPor", $"<b>Agrupado Por:</b>&nbsp;{SerieAgrupado}{EntradaSalida}{Almacen}{UM}{FechaIn}{FechaFn}")) params.Add(New ReportParameter("AgrupadoPor", $"<b>Agrupado Por:</b>&nbsp;{SerieAgrupado}{EntradaSalida}{Almacen}{UM}{FechaIn}{FechaFn}"))
If Imagen.Exists Then If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri)) params.Add(New ReportParameter("LogoPath", logouri))
Else
params.Add(New ReportParameter("LogoPath", ""))
End If
ImprimirPDF("Empresas/Grales/Formatos/RepKardex.rdlc", dt, params, "ReporteKardex", Formato)
Else Else
params.Add(New ReportParameter("LogoPath", "")) Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If End If
ImprimirPDF("Empresas/Grales/Formatos/RepKardex.rdlc", dt, params, "ReporteKardex", Formato)
Else Else
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) Alert("Debes seleccionar un Producto/Servicio", TipoMensaje.MsgAdvertencia)
End If End If
End Sub End Sub
@@ -450,7 +458,7 @@ Partial Class Inventarios_Kardex
Protected Sub LnkEditarFecha_Click(sender As Object, e As EventArgs) Protected Sub LnkEditarFecha_Click(sender As Object, e As EventArgs)
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow) Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
CveMovimiento = gvRow.DataKey("CveMovimiento").ToEntero CveMovimiento = gvRow.DataKey("CveMovimiento").ToEntero
TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-ddTHH:mm") TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-ddTHH: mm")
RegistraScript("$('#DModalEditarFecha').modal()") RegistraScript("$('#DModalEditarFecha').modal()")
UpModalEditarFecha.Update() UpModalEditarFecha.Update()
End Sub End Sub

View File

@@ -0,0 +1,376 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RecepcionDevolucion.aspx.vb" Inherits="Inventarios_RecepcionDevolucion" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
table > tbody > .SubTotales, table > tbody > .SubTotales:hover, table > tbody > .SubTotales:nth-of-type(odd) {
background: #CCCCCC !important;
}
table > tbody > .SubTotalesB, table > tbody > .SubTotalesB:hover, table > tbody > .SubTotalesB:nth-of-type(odd) {
background: #DDD !important;
}
.SegundoNivel, .SegundoNivel:hover {
background-color: rgba(172, 195, 222, 0.65) !important;
}
.select2 .select2-selection__rendered {
line-height: 1;
color: #111;
}
.select2 .select2-selection--multiple {
box-sizing: border-box;
cursor: pointer;
display: block;
min-height: 20px;
user-select: none;
-webkit-user-select: none;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
margin-top: 10px;
}
.select2-selection__rendered {
margin-top: 0px;
height: 25px;
}
.select2-selection {
margin-top: 0px;
height: 31px;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
border: none;
outline: 0;
}
#chartdiv {
width: 100%;
height: 500px;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Devolución desde almacen
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel runat="server" ID="UppAcciones" UpdateMode="Conditional">
<ContentTemplate>
<li>
<asp:LinkButton runat="server" ID="LnkAgregarProducto" CssClass="" data-toggle="tooltip" data-placement="left" OnClick="LnkAgregarProducto_Click" Text="<i class='fa fa-plus'></i> Agregar Producto">
</asp:LinkButton>
</li>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpGenerales" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-4">
<div class="portlet smmallpadding light bordered infomov" style="width: 100%">
<div class="portlet-title">
<div class="tools">
<a href="javascript;" data-idchekbox="<%= chkexpand.ClientID%>" class=" <%= IIf(chkexpand.Checked = True, "collapse", "expand")%>"></a>
<asp:CheckBox ID="chkexpand" Checked="true" CssClass="hidden" runat="server" />
</div>
<div class="caption uppercase" style="position: relative;">
<i class="fa fa-info-circle"></i>Información del movimiento
</div>
</div>
<div class="portlet-body" <%= IIf(chkexpand.Checked = True, "", "style='display:none;'")%>>
<div id="tbEncabezado" runat="server" class="rowpadding" visible="true">
<div class="row">
<label class="col-md-3 truncate">Cliente:</label>
<div class="col-md-9">
<ADS:Dropdownlost ID="DdlCliente" runat="server" DataValueField="CveCliente" DataTextField="NombreComercial" CssClassDdl="select2me" Width="100%" CssStyle="width: 100%;"></ADS:Dropdownlost>
</div>
</div>
<div class="row">
<label class="col-md-3 truncate">SubProyecto:</label>
<div class="col-md-9">
<asp:DropDownList ID="DdlSubProyecto" runat="server" Width="100%" DataTextField="SubProyecto" DataValueField="CveSubProyecto" OnSelectedIndexChanged="DdlSubProyecto_SelectedIndexChanged" AutoPostBack="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
<asp:ListItem Selected="True" Text="Todas" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="RFVSubProyecto" Display="None" ValidationGroup="GrpGuardar" runat="server" ControlToValidate="DdlSubProyecto" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Sub Proyecto''</b> es necesario, por favor seleccione uno."></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender7" runat="server" HighlightCssClass="vco" TargetControlID="RFVSubProyecto" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<label class="col-md-3 truncate">Almacén:</label>
<div class="col-md-9">
<asp:DropDownList ID="DdlAlmacen" runat="server" CssClass="form-control input-sm select2me" DataTextField="Almacen" DataValueField="CveAlmacen" Width="100%"></asp:DropDownList>
<asp:RequiredFieldValidator InitialValue="-1" ID="RfvAlmacen" Display="None" ValidationGroup="GrpGuardar" runat="server" ControlToValidate="DdlAlmacen" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Almacen''</b> es necesario, por favor seleccione uno."></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RfvAlmacen" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row" id="DivFactura" runat="server" visible="false">
<label class="col-md-3 truncate">Factura:</label>
<div class="col-md-9">
<asp:DropDownList ID="DdlFactura" runat="server" Width="100%" DataTextField="Venta" DataValueField="CveVenta" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
<asp:ListItem Selected="True" Text="Todas" Value="-1"></asp:ListItem>
</asp:DropDownList>
<%--<asp:HyperLink ID="HLFactura" runat="server" Text=""></asp:HyperLink>--%>
</div>
</div>
<div class="row">
<label class="col-md-3 truncate">
Observaciones:
</label>
<div class="col-md-9">
<asp:TextBox ID="TxtObservaciones" TextMode="MultiLine" Rows="2" CssClass="form-control input-sm" runat="server" MaxLength="232"></asp:TextBox>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="portlet light xspadding bordered ">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Productos a devolver</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div class="tools">
<a href="javascript:;" class="collapse"></a>
</div>
</div>
<div class="portlet-body form-horizontal form-row-sepe formnombottom">
<%--GV DATOS--%>
<asp:GridView ID="GvDatos" runat="server" EmptyDataText="Aun no hay registros." AutoGenerateColumns="False" ShowFooter="True" ShowHeader="true" ShowHeaderWhenEmpty="True" OnRowDeleting="GvDatos_RowDeleting"
DataKeyNames="Consec" HeaderStyle-CssClass="Titulos" CssClass="table table-striped table-hover Widthall ScrollAD gvInventario mysmallbtn" data-heighterror="450" data-freezerows="1" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Cantidad" DataField="CantidadDevuelta" DataFormatString="{0:#,##0.######}" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" />
<asp:BoundField HeaderText="Cant. Venta" DataField="CantidadVenta" DataFormatString="{0:#,##0.######}" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" />
<asp:HyperLinkField HeaderText="Factura" Target="_blank" DataTextField="Venta" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="7.5%" />
<asp:HyperLinkField HeaderText="Producto o Servicio" Target="_blank" DataTextField="PS" DataNavigateUrlFields="CvePS" DataNavigateUrlFormatString="/Ventas/ProductosServicios.aspx?CvePS={0}" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Unidad" DataField="UnidadMedida" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" />
<asp:BoundField HeaderText="Serie" DataField="Serie" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="7.5%" />
<asp:BoundField HeaderText="Lote" DataField="Lote" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="7.5%" />
<asp:BoundField HeaderText="Fecha Caducidad" DataField="FechaCaducidad" DataFormatString="{0:dd/MM/yyy}" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="7.5%" />
<asp:BoundField HeaderText="Sección" DataField="SeccionAlmacen" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" />
<asp:BoundField HeaderText="Total" DataField="Total" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" ItemStyle-Width="7.5%" />
<asp:TemplateField HeaderText="" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:LinkButton ID="lnkRemove" runat="server" CssClass="btn btn-circle btn-xs red" Text="<i class='icon-trash'></i>" CommandName="Delete" OnClientClick="return confirm('¿Desea borrar el registro?')"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
<asp:HiddenField runat="server" ClientIDMode="Static" ID="HdnCantidadMovimiento" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div style="width: 100%; text-align: center;">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" ValidationGroup="GrpGuardar" Text="Guardar" CssClass="btn btn-primary" OnClick="BtnGuardar_Click" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div id="DivModalAgregar" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<asp:UpdatePanel ID="UpModalAgregar" class="modal-content rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" id="HTituloDispostivo" runat="server">Agregar Producto</h4>
</div>
<div class="modal-body" style="width: 1000px;">
<div class="row">
<div class="col-md-12">
<div class="portlet light xspadding bordered">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Buscar productos vendidos </span>
</div>
<div class="tools">
<a href="javascript;" class="collapse" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body form">
<div class="row">
<div class="col-md-12">
<div class="portlet solid grey-cascade portlet-filter" id="idnecesaria">
<div class="portlet-title portlet-filterT smalltitle">
<div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" OnClick="BtnConsultar_Click" ValidationGroup="GrpConsulta" />
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row">
<label class="col-md-1 truncate">Producto:</label>
<div class="col-md-6">
<ADS:Dropdownlost ID="DdlPS" runat="server" DataValueField="CvePS" DataTextField="PSCodigo" CssClassDdl="select2me" Width="100%" CssStyle="width: 100%;"></ADS:Dropdownlost>
</div>
<div class="col-md-1"></div>
</div>
</div>
</div>
<div class="portlet-body" style="display: none">
<div class="row">
<label class="col-md-1 truncate">Fecha Inicio:</label>
<div class="col-md-2">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="width: 100% !important; padding: 0px;">
<asp:TextBox ID="TxtFechaI" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaI" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="TxtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaI" runat="server" TargetControlID="TxtFechaI" PopupButtonID="LnkFechaI" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFCFechaI" runat="server" ControlToValidate="TxtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaI" runat="server" ControlToValidate="TxtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RFCFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender3" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<label class="col-md-2 truncate">Fecha Fin:</label>
<div class="col-md-2">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="width: 100% !important; padding: 0px;">
<asp:TextBox ID="TxtFechaF" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="TxtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaF" runat="server" TargetControlID="TxtFechaF" PopupButtonID="LnkFechaF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Fin''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Fin''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender4" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender5" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<label class="col-md-1 truncate" style="width: 90px;">Aplica Serie:</label>
<div class="col-md-1" style="padding-right: 30px; width: 20px;">
<asp:CheckBox ID="ChkAplicaSerie" CssClass="md-checksd" runat="server" Text="" AutoPostBack="true" OnCheckedChanged="ChkAplicaSerie_CheckedChanged" />
</div>
</div>
<div class="row">
<label class="col-md-1 truncate">Aplica Lote:</label>
<div class="col-md-1">
<asp:CheckBox ID="ChkAplicaLote" CssClass="md-checksd" runat="server" Text="" AutoPostBack="true" OnCheckedChanged="ChkAplicaLote_CheckedChanged" />
</div>
<div class="col-md-1"></div>
<label class="col-md-2 truncate">Aplica Caducidad:</label>
<div class="col-md-1">
<asp:CheckBox ID="ChkAplicaCaducidad" CssClass="md-checksd" runat="server" Text="" AutoPostBack="true" OnCheckedChanged="ChkAplicaCaducidad_CheckedChanged" />
</div>
<div class="col-md-1"></div>
<label class="col-md-1 truncate" id="lblSerie" runat="server" visible="false">Serie:</label>
<div id="DivSerie" runat="server" visible="false" class="col-md-2">
<asp:TextBox ID="TxtSerie" CssClass="form-control input-sm" Width="100%" runat="server"></asp:TextBox>
</div>
</div>
<div class="row">
<label class="col-md-1 truncate" id="lblLote" runat="server" visible="false">Lote:</label>
<div id="DivLote" runat="server" visible="false" class="col-md-2">
<asp:TextBox ID="TxtLote" CssClass="form-control input-sm" Width="100%" runat="server"></asp:TextBox>
</div>
<label class="col-md-2 truncate" id="lblCaducidad" runat="server" visible="false">Fecha Caducidad:</label>
<div id="DivCaducidad" runat="server" visible="false" class="col-md-2">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="width: 100% !important; padding: 0px;">
<asp:TextBox ID="TxtFechaCaducidad" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="LnkCaducidad" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaFEjec" runat="server" TargetControlID="TxtFechaCaducidad" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaCaducidad" runat="server" TargetControlID="TxtFechaCaducidad" PopupButtonID="LnkCaducidad" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RFVCaducidad" runat="server" ControlToValidate="TxtFechaCaducidad" Display="None" ErrorMessage="El campo <b>''Fecha Caducidad''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpConsulta"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CVCaducidad" runat="server" ControlToValidate="TxtFechaCaducidad" Display="None" ErrorMessage="El campo <b>''Fecha Caducidad''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpConsulta"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCOFechaFEjec1" runat="server" HighlightCssClass="vco" TargetControlID="RFVCaducidad" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="VCOFechaFEjec2" runat="server" HighlightCssClass="vco" TargetControlID="CVCaducidad" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<asp:GridView ID="GvPSAgregar" runat="server" AutoGenerateColumns="False" GridLines="None"
DataKeyNames="CveVenta,CveVentaDetalle,Cantidad,SerieFolio,CveUM,UnidadMedida,CvePS,PS,PU,CveClasificacion,CveSeccionAlmacen,SeccionAlmacen,Serie,Lote,FechaCaducidad,CveAlmacen" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" data-heighterror="400" EmptyDataText="No se encontraron registros">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="ChkAplicar" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cantidad">
<ItemTemplate>
<asp:TextBox ID="TxtCantidad" runat="server" Text='<%#Eval("Cantidad", "{0:N2}").ToString%>' MaxLength="12" Width="46px" Height="24px"></asp:TextBox>
<asp:RangeValidator ID="RVCant" runat="server" Type="Double" MinimumValue="0" MaximumValue='<%#Eval("Cantidad").ToString%>' ErrorMessage="Cantidad Excedida" ControlToValidate="TxtCantidad" Display="None" ValidationGroup="VGAplicarRNC"></asp:RangeValidator>
<ajax:ValidatorCalloutExtender ID="VCECantidad3" runat="server" HighlightCssClass="vco" TargetControlID="RVCant" Width="300px"></ajax:ValidatorCalloutExtender>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="Producto" DataField="PS" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Sección" DataField="SeccionAlmacen" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Serie" DataField="Serie" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Lote" DataField="Lote" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Fecha Caducidad" DataField="FechaCaducidad" DataFormatString="{0:d}" ItemStyle-HorizontalAlign="Center" />
</Columns>
</asp:GridView>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:LinkButton ID="LnkModalAgregarUsado" runat="server" CssClass="btn btn-success" Text="Agregar" OnClick="LnkModalAgregarUsado_Click"></asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
<asp:Button ID="BtnRefrescarPagina" runat="server" ClientIDMode="Static" Text="Refrescar" Style="display: none;" />
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script type="text/javascript">
function BtnRefrescarPagina() {
$('#BtnRefrescarPagina').click();
}
</script>
</asp:Content>

View File

@@ -0,0 +1,879 @@
Option Strict On
Option Explicit On
Imports System.Data
Imports Extensiones
Partial Class Inventarios_RecepcionDevolucion
Inherits ClsPaginas
#Region "P R O P I E D A D E S"
Private Property ObjRemisionNC As Modelos.Factura
Get
Return CType(ViewState("ObjRemisionNC"), Modelos.Factura)
End Get
Set(value As Modelos.Factura)
ViewState("ObjRemisionNC") = value
End Set
End Property
Public Property DtMovimientos As DataTable
Get
Return CType(ViewState("DtMovimientos"), DataTable)
End Get
Set(value As DataTable)
ViewState("DtMovimientos") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
InicializaValores()
End If
End Sub
Protected Sub CreaDT()
Dim dt As New DataTable
Dim column As DataColumn = New DataColumn("Consec")
column.DataType = GetType(Integer)
With column
.AutoIncrement = True
.AutoIncrementSeed = 1
.AutoIncrementStep = 1
End With
dt.Columns.Add(column)
dt.Columns.Add("CantidadDevuelta", GetType(Decimal))
dt.Columns.Add("CantidadVenta", GetType(Decimal))
dt.Columns.Add("CveVentaDetalle", GetType(Integer))
dt.Columns.Add("CveVenta", GetType(Integer))
dt.Columns.Add("Venta", GetType(String))
dt.Columns.Add("CveUM", GetType(Integer))
dt.Columns.Add("UnidadMedida", GetType(String))
dt.Columns.Add("CvePS", GetType(Integer))
dt.Columns.Add("PS", GetType(String))
dt.Columns.Add("PU", GetType(Decimal))
dt.Columns.Add("Total", GetType(Decimal))
dt.Columns.Add("CveClasificacion", GetType(Integer))
dt.Columns.Add("CveSeccionAlmacen", GetType(Integer))
dt.Columns.Add("SeccionAlmacen", GetType(String))
dt.Columns.Add("Serie", GetType(String))
dt.Columns.Add("Lote", GetType(String))
dt.Columns.Add("FechaCaducidad", GetType(DateTime))
dt.Columns.Add("Observaciones", GetType(String))
DtMovimientos = dt.Clone()
End Sub
Private Sub InicializaValores()
Dim StrAlmacenes As String = "CveTipoAlmacen IN (1)"
If (UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1") Then
DdlCliente.setEsWebService(True)
DdlCliente.Attributes.Add("data-metodo", "getcliente")
DdlCliente.SelectedText = "Todos"
DdlCliente.SelectedValue = "-1"
Else
DdlCliente.setEsWebService(False)
DdlCliente.ddl.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
DdlCliente.ddl.DataBind()
DdlCliente.ddl.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros(StrAlmacenes) 'GlobalDTAlmacen(UsuarioActual.CveEmpresa)
DdlAlmacen.DataBind()
DdlAlmacen.Items.Insert(0, New ListItem("Seleccione ", "-1"))
DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen)
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, CveEstatus:=1)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione ", "-1"))
TxtFechaI.Text = $"01/{Now.Month}/{Now.Year}"
TxtFechaF.Text = Now.ToString("dd/MM/yyyy")
GvDatos.DataSource = Nothing
GvDatos.DataBind()
LimpiarDatos()
CargaPS(-1, DdlPS, AplicaAlmacen:=False)
CreaDT()
UpGenerales.Update()
End Sub
Protected Sub DdlSubProyecto_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim StrAlmacenes As String = $"CveTipoAlmacen IN (1) AND CveSubProyecto={DdlSubProyecto.SelectedValue.ToEntero()}"
DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros(StrAlmacenes) 'GlobalDTAlmacen(UsuarioActual.CveEmpresa)
DdlAlmacen.DataBind()
DdlAlmacen.Items.Insert(0, New ListItem("Seleccione ", "-1"))
DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen)
UpGenerales.Update()
End Sub
Protected Sub LnkAgregarProducto_Click(sender As Object, e As EventArgs)
Dim CveCliente As Integer = DdlCliente.SelectedValue.ToEntero()
Dim CveSubProyecto As Integer = DdlSubProyecto.SelectedValue.ToEntero()
If CveCliente <= 0 Then
Alert("Debe seleccionar un cliente", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If CveSubProyecto <= 0 Then
Alert("Debe seleccionar un sub proyecto", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
LimpiarDatos()
RegistraScript("$('#DivModalAgregar').modal('show');")
End Sub
Private Sub LimpiarDatos()
GvPSAgregar.DataSource = Nothing
GvPSAgregar.DataBind()
ChkAplicaSerie.Checked = False
ChkAplicaLote.Checked = False
ChkAplicaCaducidad.Checked = False
ChkAplicaSerie_CheckedChanged(ChkAplicaSerie, EventArgs.Empty)
ChkAplicaLote_CheckedChanged(ChkAplicaSerie, EventArgs.Empty)
ChkAplicaCaducidad_CheckedChanged(ChkAplicaSerie, EventArgs.Empty)
End Sub
Private Sub CargaPS(CveClasificacion As Integer, Objeto As ADServerControl.Dropdownlost, Optional AplicaAlmacen As Boolean = True, Optional CveMarca As Integer = -1)
Objeto.setEsWebService(UsuarioActual.Empresa.Funcionalidad(141).ToString = "1")
If Not UsuarioActual.Empresa.Funcionalidad(141).ToString = "1" Then
Objeto.ddl.Items.Clear()
Objeto.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=CveClasificacion, Estatus:=1, AplicaParaVenta:=1)
Objeto.ddl.DataBind()
Objeto.ddl.Items.Insert(0, New ListItem("*** Actualizar listado de Productos o Servicios ***", "-2"))
Objeto.ddl.Items.Insert(0, New ListItem("Seleccione el Producto", "-1"))
Else
Objeto.Attributes.Add("data-cvesubproyecto", "-1")
Objeto.ddlWS.Attributes.Add("data-cveclasificacion", "-1")
Objeto.ddlWS.Attributes.Add("data-aplicaparaventa", "1")
If AplicaAlmacen Then
Objeto.ddlWS.Attributes.Add("data-pagina", "ventas/ventas")
Else
Objeto.ddlWS.Attributes.Add("data-pagina", "-1")
End If
Objeto.ddlWS.Attributes.Add("data-aplicaparaventa", "1")
Objeto.ddlWS.Attributes.Add("data-cvemarca", CveMarca.ToString)
Objeto.ddlWS.Attributes.Add("data-Estatus", "1")
End If
End Sub
Protected Sub ChkAplicaSerie_CheckedChanged(sender As Object, e As EventArgs)
lblSerie.Visible = ChkAplicaSerie.Checked
DivSerie.Visible = ChkAplicaSerie.Checked
UpModalAgregar.Update()
End Sub
Protected Sub ChkAplicaLote_CheckedChanged(sender As Object, e As EventArgs)
lblLote.Visible = ChkAplicaLote.Checked
DivLote.Visible = ChkAplicaLote.Checked
UpModalAgregar.Update()
End Sub
Protected Sub ChkAplicaCaducidad_CheckedChanged(sender As Object, e As EventArgs)
lblCaducidad.Visible = ChkAplicaCaducidad.Checked
DivCaducidad.Visible = ChkAplicaCaducidad.Checked
UpModalAgregar.Update()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
Dim CvePS As Integer = DdlPS.SelectedValue.ToEntero()
Dim CveCliente As Integer = DdlCliente.SelectedValue.ToEntero()
Dim CveSubProyecto As Integer = DdlSubProyecto.SelectedValue.ToEntero()
If CvePS <= 0 Then
Alert("Debe seleccionar un producto", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If CveCliente <= 0 Then
Alert("Debe seleccionar un cliente", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If CveSubProyecto <= 0 Then
Alert("Debe seleccionar un sub proyecto", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim FechaI As DateTime = TxtFechaI.Text.ToDateTime()
Dim FechaF As DateTime = TxtFechaF.Text.ToDateTime()
Dim Serie As String = If(ChkAplicaSerie.Checked, TxtSerie.Text.Trim, "-1")
Dim Lote As String = If(ChkAplicaLote.Checked, TxtLote.Text.Trim, "-1")
Dim FechaCaducidad As DateTime = If(ChkAplicaCaducidad.Checked, TxtFechaCaducidad.Text.ToDateTime, MinFecha)
Dim ObjInv As New ClsInventarios
Try
If ObjInv.GetProductosDevolucion(CvePS, CveCliente, CveSubProyecto, FechaI, FechaF, Serie, Lote, FechaCaducidad, UsuarioActual.CveEmpresa) Then
GvPSAgregar.DataSource = ObjInv.DtResultados
End If
Catch ex As Exception
OnError("Ocurrio un error al obtener los datos de devolución", ex)
End Try
ObjInv.Dispose()
GvPSAgregar.DataBind()
UpModalAgregar.Update()
End Sub
Protected Sub GvPSAgregar_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvPSAgregar.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("CvePS").ToEntero() <= 0 Then
e.Row.CssClass = "Totales"
e.Row.FCCheckBox("ChkAplicar").Visible = False
e.Row.FCTextBox("TxtCantidad").Visible = False
End If
End If
End Sub
Protected Sub LnkModalAgregarUsado_Click(sender As Object, e As EventArgs)
If DtMovimientos IsNot Nothing Then
For Each GvRow As GridViewRow In GvPSAgregar.Rows
If GvRow.RowType = DataControlRowType.DataRow Then
If GvRow.FCCheckBox("ChkAplicar").Checked Then
Dim RowDevolucion As DataRow = DtMovimientos.NewRow
RowDevolucion("CantidadDevuelta") = GvRow.FCTextBox("TxtCantidad").Text.ToDecimal()
RowDevolucion("CantidadVenta") = GvRow.DataKey("Cantidad").ToDecimal()
RowDevolucion("CveVentaDetalle") = GvRow.DataKey("CveVentaDetalle").ToEntero()
RowDevolucion("CveVenta") = GvRow.DataKey("CveVenta").ToEntero()
RowDevolucion("Venta") = GvRow.DataKey("SerieFolio")
RowDevolucion("CveUM") = GvRow.DataKey("CveUM").ToEntero()
RowDevolucion("UnidadMedida") = GvRow.DataKey("UnidadMedida")
RowDevolucion("CvePS") = GvRow.DataKey("CvePS").ToEntero()
RowDevolucion("PS") = GvRow.DataKey("PS")
RowDevolucion("PU") = GvRow.DataKey("PU").ToDecimal()
RowDevolucion("Total") = (GvRow.FCTextBox("TxtCantidad").Text.ToDecimal() * GvRow.DataKey("PU").ToDecimal())
RowDevolucion("CveClasificacion") = GvRow.DataKey("CveClasificacion").ToEntero()
RowDevolucion("CveSeccionAlmacen") = GvRow.DataKey("CveSeccionAlmacen").ToEntero()
RowDevolucion("SeccionAlmacen") = GvRow.DataKey("SeccionAlmacen")
RowDevolucion("Serie") = GvRow.DataKey("Serie")
RowDevolucion("Lote") = GvRow.DataKey("Lote")
RowDevolucion("FechaCaducidad") = If(String.IsNullOrEmpty(GvRow.DataKey("FechaCaducidad")), Nothing, GvRow.DataKey("FechaCaducidad").ToDateTime())
RowDevolucion("Observaciones") = ""
'If GvRow.DataKey("CveAlmacen").ToEntero() > 0 AndAlso DdlAlmacen.SelectedValue.ToEntero() <= 0 Then
' DdlAlmacen.SelectedValueExist(GvRow.DataKey("CveAlmacen"))
'End If
DtMovimientos.Rows.Add(RowDevolucion)
End If
End If
Next
GvDatos.DataSource = DtMovimientos
GvDatos.DataBind()
If DtMovimientos.Rows.Count > 0 Then
DivFactura.Visible = True
DdlFactura.DataSource = DtMovimientos.FiltraParametros("", DistinctColumns:={"CveVenta", "Venta"})
DdlFactura.DataBind()
End If
End If
UpDatos.Update()
UpGenerales.Update()
RegistraScript("$('#DivModalAgregar').modal('hide');")
End Sub
#Region "C R E A R - R N C"
Private Sub CreaRemisionNC(CveCliente As Integer, CveSubProyecto As Integer)
If ObjRemisionNC IsNot Nothing Then
ObjRemisionNC.Dispose()
ObjRemisionNC = Nothing
End If
Me.ObjRemisionNC = New Modelos.Factura(UsuarioActual)
Me.ObjRemisionNC.TipoMensajeRespuesta = Modelos.TipoMensajeRespuesta.HTML
Me.ObjRemisionNC.Serie = "-1"
Me.ObjRemisionNC.Folio = -1 'Folio.ToEntero()
Me.ObjRemisionNC.Version = "3.3"
Me.ObjRemisionNC.FolioFiscal = ""
Me.ObjRemisionNC.CveUsuario = UsuarioActual.CveUsuario
Me.ObjRemisionNC.CveEmpresa = UsuarioActual.CveEmpresa
Me.ObjRemisionNC.ConvertirPesos = False
Me.ObjRemisionNC.CveVentaPadre = DdlFactura.SelectedValue.ToEntero()
Dim ObjVentasPadre As New ClsVentas
If ObjVentasPadre.GetVenta(Me.ObjRemisionNC.CveVentaPadre, UsuarioActual.CveEmpresa) AndAlso ObjVentasPadre.DtResultados.Rows.Count > 0 Then
Me.ObjRemisionNC.CveMoneda = ObjVentasPadre.DtResultados.FiltroPrimeroValor("CveMoneda").ToString().ToEntero()
End If
ObjVentasPadre.Dispose()
If Me.ObjRemisionNC.CveMoneda = 1 Then
Me.ObjRemisionNC.TipoCambio = 1
Else
Me.ObjRemisionNC.TipoCambio = GlobalTipoCambio(Now).ToDecimal()
End If
Me.ObjRemisionNC.Moneda = GlobalDTMonedas.FiltroPrimeroValor("Moneda", String.Format("CveMoneda = {0} ", Me.ObjRemisionNC.CveMoneda))
Me.ObjRemisionNC.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", String.Format("CveMoneda = {0} ", Me.ObjRemisionNC.CveMoneda))
Me.ObjRemisionNC.TipoDocto = "RNC"
Me.ObjRemisionNC.RefDocto = ""
Me.ObjRemisionNC.CveMesa = -1
Me.ObjRemisionNC.Fecha = Now
Me.ObjRemisionNC.CvePrePoliza = -1
Me.ObjRemisionNC.FechaPago = Now
Me.ObjRemisionNC.MotivoDescuento = ""
Me.ObjRemisionNC.FechaEjecucion = Now
Me.ObjRemisionNC.UsuarioCreo = UsuarioActual.Usuario
Me.ObjRemisionNC.CveCondicionEntrega = -1
Me.ObjRemisionNC.CondicionEntrega = ""
Me.ObjRemisionNC.NumeroCuenta = ""
Me.ObjRemisionNC.CondicionesPago = 0
Me.ObjRemisionNC.FormaPago = 0
Me.ObjRemisionNC.PedidoContrato = ""
Me.ObjRemisionNC.NumeroContrato = ""
Me.ObjRemisionNC.DescripcionContrato = ""
Me.ObjRemisionNC.CveCorte = -1
Me.ObjRemisionNC.TipoDocumento = "Remisión"
'NUM 1- CARGO 2- BONIFICACION
Me.ObjRemisionNC.Num1 = 0
'NUM 0- USADO 1- AJUSTE/GARANTIA
Me.ObjRemisionNC.Num2 = 0
'ES PARA GENERAR DEVOLUCION
Me.ObjRemisionNC.Num3 = 10
Me.ObjRemisionNC.Alfa1 = ""
Me.ObjRemisionNC.Alfa2 = ""
Me.ObjRemisionNC.Alfa3 = ""
Me.ObjRemisionNC.CveContrato = -1
Me.ObjRemisionNC.ConvertirPesos = False
Me.ObjRemisionNC.CveSubProyecto = CveSubProyecto
Me.ObjRemisionNC.CveSubProyectoCobranza = CveSubProyecto
Me.ObjRemisionNC.CveSubProyectoEjecucion = CveSubProyecto
Me.ObjRemisionNC.SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1).FiltroPrimero(String.Format("CveSubProyecto = {0}", CveSubProyecto)))
Me.ObjRemisionNC.SubProyectoMatriz = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1"))
'CLIENTE
Me.ObjRemisionNC.CveCliente = CveCliente
Me.ObjRemisionNC.SetCliente()
Me.ObjRemisionNC.CveAlmacen = -1
Dim ObjCliente As New ClsClientes
If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa, -1, TipoCliente:=-1) Then
If ObjCliente.DtResultados.Rows.Count > 0 Then
Me.ObjRemisionNC.CveFormaPago33 = ObjCliente.CveFormaPago33
Me.ObjRemisionNC.FormaPago33 = GlobalDTVtaFormaPago.FiltroPrimeroValor("FormaPago", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
Me.ObjRemisionNC.FormaPagoSAT33 = GlobalDTVtaFormaPago.FiltroPrimeroValor("ClaveFormaPagoSAT", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
Me.ObjRemisionNC.CveMetodoPago33 = ObjCliente.CveMetodoPago33
Me.ObjRemisionNC.MetodoPago33 = GlobalDTVtaMetodoPago.FiltroPrimeroValor("MetodoPago", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
Me.ObjRemisionNC.ClaveMetodoPagoSAT = GlobalDTVtaMetodoPago.FiltroPrimeroValor("ClaveMetodoPagoSAT", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
Me.ObjRemisionNC.CveUsoCFDI = ObjCliente.CveUsoCFDI
Me.ObjRemisionNC.UsoCFDI = GlobalDTSATUsosCFDI.FiltroPrimeroValor("Descripcion", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
Me.ObjRemisionNC.ClaveUsoCFDI = GlobalDTSATUsosCFDI.FiltroPrimeroValor("UsoCFDI", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
Me.ObjRemisionNC.CveMetodoPago = ObjCliente.CveMetodoPago33
If GlobalDTMetodosPago.FiltraParametros(String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33)).Rows.Count > 0 Then
Me.ObjRemisionNC.MetodoPago = GlobalDTMetodosPago.FiltraParametros(String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33)).Rows(0)("MetodoPago").ToString
Else
Me.ObjRemisionNC.CveMetodoPago = 1
Me.ObjRemisionNC.MetodoPago = "Efectivo"
End If
If UsuarioActual.CveEmpresa = 119 Then
Me.ObjRemisionNC.FormaPago = 20 'POR DEFINIR AND (@CveMetodoPago33 = 3 AND @CveFormaPago33 <> 20)
If Me.ObjRemisionNC.CveMetodoPago33 = 3 Then
Me.ObjRemisionNC.CveFormaPago33 = 20
End If
End If
End If
End If
If ObjCliente.GetSucursales(CveCliente) Then
If ObjCliente.DtResultados.Rows.Count > 0 Then
Me.ObjRemisionNC.CveClienteSucursal = If(String.IsNullOrEmpty(ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'")), -1, ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'").ToEntero())
Else
Me.ObjRemisionNC.CveClienteSucursal = -1
End If
End If
ObjCliente.Dispose()
'DETALLES
Me.ObjRemisionNC.DtDetalle = CreaDTDetalleRNC()
CargaDTDetalleRNC()
'VALIDA PROMOCIONES Y EXISTENCIAS
Dim ObjVentas As New ClsVentas
If ObjVentas.GetPromocionesPS(-1, Now, CveSubProyecto, Me.ObjRemisionNC.CveCliente, Me.ObjRemisionNC.CveVendedor, 1, UsuarioActual.CveEmpresa) Then
Me.ObjRemisionNC.DtPromociones = ObjVentas.DtResultados.Copy()
End If
ObjVentas.Dispose()
Me.ObjRemisionNC.Observaciones = TxtObservaciones.Text
Me.ObjRemisionNC.OrdenCompra = ""
Me.ObjRemisionNC.PedidoContrato = ""
Me.ObjRemisionNC.ObservacionesAlmacen = ""
'If TmpDTPolizaVirtual IsNot Nothing Then
' Me.ObjRemisionNC.DtPolizasVirtuales = TmpDTPolizaVirtual
'End If
End Sub
Private Function AddPSRNC(ByRef TmpDT As DataTable, Cantidad As Decimal, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, CvePS As Integer, PS As String, Obs As String,
PU As Decimal, Descuento As Decimal,
CveProyecto As Integer, Proyecto As String, CveSubProyecto As Integer, SubProyecto As String,
Optional Serie As String = "", Optional TiempoEntrega As String = "", Optional EntregaDirecta As Integer = 0,
Optional CveContratoDetalle As Integer = 0, Optional CveVentaDetalle As Integer = 0, Optional CveMovimientoDetallePedido As Integer = 0,
Optional CveOrdenCompraDetalle As Integer = 0, Optional CveVentaDetalleRemision As Integer = 0, Optional CveVentaDetalleCotizacion As Integer = 0,
Optional CuentaPredial As String = "", Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional EsCargo As Boolean = False, Optional PorcentajeIVA As Decimal = 0D, Optional CveTamaño As Integer = 0) As Boolean
Dim Retorno As Boolean = False
If Not CvePS > 0 Then
Alert("Ocurrió un error al cargar la información del producto a agregar. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
Return False
End If
If (Obs.Length + PS.Length > 1000) Then
Alert(String.Format("El Nombre y observación del producto tiene longitud de {0} caracteres y excede los 1000 caracteres permitidos.", Obs.Length + PS.Length), TipoMensaje.MsgAdvertencia)
Return False
End If
Dim Row As DataRow = Nothing
Dim TotalCalculableImpuestos As Decimal = 0D, TotalCalculableImpuestosIVA = 0D
PU = Math.Round(PU, 6) ' el precio unitario puede llevar hasta 6 decimales permitidos
Row = TmpDT.NewRow()
Row("CveProyecto") = CveProyecto
Row("Proyecto") = Proyecto
Row("CveSubProyecto") = CveSubProyecto
Row("SubProyecto") = SubProyecto
Row("Serie") = Serie
Row("TiempoEntrega") = TiempoEntrega
Row("Orden") = TmpDT.Rows.Count + 1
Row("Cantidad") = Cantidad
Row("CveUM") = CveUM
Row("UM") = UM
Row("CveClasificacion") = CveClasificacion
Row("Clasificacion") = Clasificacion
Row("CvePS") = CvePS
Row("Obs") = Obs
Dim DrPS As DataRow = Nothing
DrPS = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") ' Estado = -1
If DrPS Is Nothing Then
Alert("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.", TipoMensaje.MsgAdvertencia)
Return False
End If
'verifica si tiene ventaminima
If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString.ToDecimal > 0 Then
'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15...
If Cantidad Mod DrPS("VentaMinima").ToString.ToDecimal <> 0 Then
Alert(String.Format("El producto se vende solo en cantidades de {0}", DrPS("VentaMinima").ToString))
Return False
End If
End If
TotalCalculableImpuestos = ((Cantidad * (PU)) - Descuento)
TotalCalculableImpuestosIVA = TotalCalculableImpuestos * (1 + DrPS("IEPSPorcentaje").ToString().ToDecimal)
Row("PU") = PU
Row("Codigo") = DrPS("Codigo")
Row("NoIdentificacion") = DrPS("Codigo")
Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria")
Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana")
Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion")
Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion")
Row("Consec") = TmpDT.Rows.Count + 1
Row("PS") = DrPS("PS")
Row("CodigoPS") = DrPS("PSCodigo").ToString
Row("CveTipoPS") = DrPS("CveTipoPS")
Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario")
Row("CveTamaño") = DrPS("CveTamaño")
If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion")
If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion")
If DrPS("IVA").ToString().Contiene("-1", "") Then
Row("PorcentajeIVA") = PorcentajeIVA
Else
Row("PorcentajeIVA") = DrPS("IVA")
End If
Row("IVA") = Row("PorcentajeIVA")
Row("ImporteIVA") = Math.Round(Row("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestosIVA, 2)
Row("ImporteRetIVA") = 0D
Row("ImporteRetISR") = 0D
Row("PorcentajeRetIVA") = 0D
Row("PorcentajeRetISR") = 0D
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
Row("ImporteIEPS") = Math.Round(DrPS("IEPSPorcentaje").ToString.ToDecimal * TotalCalculableImpuestos, 2)
Row("IEPS") = Row("ImporteIEPS")
Row("Descuento") = Math.Round(Descuento, 2)
Row("TipoDescuento") = 0
Row("Total") = (Cantidad * PU)
Row("TotalImporte") = Math.Round(Cantidad * PU, 2)
Row("SATClaveProdServ") = DrPS("SATClavePS")
Row("SATClaveUM") = DrPS("SATClaveUnidadMedida")
Row("EntregaDirecta") = EntregaDirecta
'Contratos
Row("CveContratoDetalle") = CveContratoDetalle
Row("CveVentaDetalle") = CveVentaDetalle
Row("CveMovimientoDetallePedido") = CveMovimientoDetallePedido
Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle
Row("CveVentaDetalleRemision") = CveVentaDetalleRemision
Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion
Row("CveVentaDetallePedido2") = CveVentaDetallePedido2
Row("CuentaPredial") = CuentaPredial
Row("EsCargo") = EsCargo
Row("CveTamaño") = CveTamaño
'RECARGAR GV
TmpDT.Rows.Add(Row)
TmpDT.AcceptChanges()
Retorno = True
Return Retorno
End Function
Protected Function CreaDTDetalleRNC() As DataTable
Dim TmpDT = New DataTable
TmpDT.Columns.Add("CveVenta", GetType(Integer))
TmpDT.Columns.Add("Consec", GetType(Integer))
TmpDT.Columns.Add("Cantidad", GetType(Decimal))
TmpDT.Columns.Add("Codigo", GetType(String))
TmpDT.Columns.Add("CveUM", GetType(Integer))
TmpDT.Columns.Add("UM", GetType(String))
TmpDT.Columns.Add("SATClaveUM", GetType(String))
TmpDT.Columns.Add("CveClasificacion", GetType(Integer))
TmpDT.Columns.Add("Clasificacion", GetType(String))
TmpDT.Columns.Add("CvePS", GetType(Integer))
TmpDT.Columns.Add("PS", GetType(String))
TmpDT.Columns.Add("CodigoPS", GetType(String))
TmpDT.Columns.Add("SATClaveProdServ", GetType(String))
TmpDT.Columns.Add("NoIdentificacion", GetType(String))
TmpDT.Columns.Add("CveTipoPS", GetType(Integer))
TmpDT.Columns.Add("CveTipoInvPS", GetType(Integer))
TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("CuentaPredial", GetType(String))
TmpDT.Columns.Add("Obs", GetType(String))
TmpDT.Columns.Add("TiempoEntrega", GetType(String))
TmpDT.Columns.Add("PU", GetType(Decimal))
TmpDT.Columns.Add("IVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteIVA", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeIVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteRetIVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteRetISR", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeRetIVA", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeRetISR", GetType(Decimal))
TmpDT.Columns.Add("ImporteIEPS", GetType(Decimal))
TmpDT.Columns.Add("IEPS", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeIEPS", GetType(Decimal))
TmpDT.Columns.Add("Descuento", GetType(Decimal))
TmpDT.Columns.Add("TipoDescuento", GetType(Integer))
TmpDT.Columns.Add("TotalImporte", GetType(Decimal))
TmpDT.Columns.Add("Total", GetType(Decimal))
'Para uso del módulo contable
TmpDT.Columns.Add("AsientoContableVentas", GetType(Integer))
TmpDT.Columns.Add("IdCtaContVentas", GetType(Integer))
TmpDT.Columns.Add("AplicaParaConcepto", GetType(Boolean))
TmpDT.Columns.Add("CveProyecto", GetType(Integer))
TmpDT.Columns.Add("Proyecto", GetType(String))
TmpDT.Columns.Add("CveSubProyecto", GetType(Integer))
TmpDT.Columns.Add("SubProyecto", GetType(String))
TmpDT.Columns.Add("CveVentaDetallePadre", GetType(Integer))
'TipoDescuento: 1 = Descuento * PU; 2 = Descuento por Total del concepto
TmpDT.Columns.Add("CvePresupuestoIngreso", GetType(Integer))
TmpDT.Columns.Add("CveFuenteRecaudacion", GetType(Integer))
'Contratos
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
'Remisiones a Facturas
TmpDT.Columns.Add("CveVentaDetalle", GetType(Integer))
TmpDT.Columns.Add("CveVentaDetalleRemision", GetType(Integer))
TmpDT.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer))
'Pedido2 a Facturas
TmpDT.Columns.Add("CveVentaDetallePedido2", GetType(Integer))
TmpDT.Columns.Add("Origen", GetType(Integer))
'Ordenes Servicio
TmpDT.Columns.Add("CveOS", GetType(Integer))
TmpDT.Columns.Add("CveOSDetalle", GetType(Integer))
TmpDT.Columns.Add("SeFacturara", GetType(Integer))
TmpDT.Columns.Add("Folio", GetType(Integer))
TmpDT.Columns.Add("Estatus", GetType(String))
'Ordenamiento
TmpDT.Columns.Add("Orden", GetType(Integer))
TmpDT.Columns.Add("TipoDocto", GetType(String))
'OC
TmpDT.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer))
TmpDT.Columns.Add("CantidadFacturadaRem", GetType(Decimal))
TmpDT.Columns.Add("CantidadFacturadaCot", GetType(Decimal))
TmpDT.Columns.Add("CantidadFacturadaPed2", GetType(Decimal))
TmpDT.Columns.Add("CantidadInventario", GetType(Decimal))
TmpDT.Columns.Add("ClaveSATFraccionArancelaria", GetType(String))
TmpDT.Columns.Add("ClaveSATUnidadAduana", GetType(String))
TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String))
TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String))
TmpDT.Columns.Add("CveTamaño", GetType(Integer))
TmpDT.Columns.Add("EsCargo", GetType(Boolean))
Return TmpDT
End Function
Protected Sub CargaDTDetalleRNC()
'CvePS = Dr("CvePS").ToString.ToEntero
'CveUM = Dr("CveUM").ToString.ToEntero
'Cantidad = Dr("Cantidad").ToString.ToDecimal
'PU = Dr("PU").ToString.ToDecimal
'AplicaSerie = CBool(Dr("AplicaSerie"))
'Serie = If(AplicaSerie, Dr("Serie").ToString, "-1")
'AplicaLote = CBool(Dr("AplicaLote"))
'Lote = If(AplicaSerie, Dr("Lote").ToString, "-1")
'AplicaCaducidad = CBool(Dr("AplicaCaducidad"))
'FechaCaducidad = If(AplicaCaducidad, Dr("FechaCaducidad").ToString.ToDateTime, MinFecha)
'If Dr("CveTipoInvPS").ToString.ToEntero = 5 AndAlso AplicaSerie AndAlso Serie = "" Then
' OcurrioError = True
' ErrorList.Add("Se deben especificar las Series de los productos de almacén")
' Exit For
'End If
Dim DtInventario As DataTable = New DataTable
Dim column As DataColumn = New DataColumn("Consec")
column.DataType = GetType(Integer)
With column
.AutoIncrement = True
.AutoIncrementSeed = 1
.AutoIncrementStep = 1
End With
DtInventario.Columns.Add(column)
DtInventario.Columns.Add("Cantidad", GetType(Decimal))
DtInventario.Columns.Add("CveVentaDetalle", GetType(Integer))
DtInventario.Columns.Add("CvePS", GetType(Integer))
DtInventario.Columns.Add("CveUM", GetType(Integer))
DtInventario.Columns.Add("PU", GetType(Decimal))
DtInventario.Columns.Add("CveTipoInvPS", GetType(Integer))
DtInventario.Columns.Add("AplicaSerie", GetType(Boolean))
DtInventario.Columns.Add("Serie", GetType(String))
DtInventario.Columns.Add("AplicaLote", GetType(Boolean))
DtInventario.Columns.Add("Lote", GetType(String))
DtInventario.Columns.Add("AplicaCaducidad", GetType(Boolean))
DtInventario.Columns.Add("FechaCaducidad", GetType(DateTime))
For Each Row As DataRow In DtMovimientos.Rows
Dim Cantidad As Decimal = Row("CantidadDevuelta").ToString().ToDecimal()
Dim PU As Decimal = Row("PU").ToString().ToDecimal()
Dim SubTotal As Decimal = Cantidad * PU
Dim CveUnidadMedida As Integer = 0
Dim CveClasificacion As Integer = 0
Dim UnidadMedida As String = ""
Dim Clasificacion As String = ""
Dim PS As String = ""
Dim PorcentajeIVA As Decimal = 0
Dim CvePS As Integer = Row("CvePS").ToString().ToEntero()
If CvePS > 0 Then
Dim Dr As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).Rows(0)
Dim DrSubProyecto As DataRow = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveSubProyecto = {0}", ObjRemisionNC.CveSubProyecto))
If Dr IsNot Nothing AndAlso DrSubProyecto IsNot Nothing Then
CveUnidadMedida = Dr("CveUnidadMedida").ToString.ToEntero
CveClasificacion = Dr("CveClasificacion").ToString.ToEntero
PS = Dr("PSCodigo").ToString
UnidadMedida = Dr("UnidadMedida").ToString
Clasificacion = Dr("Clasificacion").ToString
PorcentajeIVA = DrSubProyecto("IVA").ToString().ToDecimal
If AddPSRNC(ObjRemisionNC.DtDetalle, Cantidad, CveUnidadMedida, UnidadMedida, CveClasificacion, Clasificacion, CvePS, PS, "", PU, 0, -1, "", ObjRemisionNC.CveSubProyecto, ObjRemisionNC.SubProyecto.SubProyecto, PorcentajeIVA:=PorcentajeIVA, CveTamaño:=-1, CveVentaDetalle:=Row("CveVentaDetalle").ToString().ToEntero()) Then
Dim RowInventario As DataRow = DtInventario.NewRow
RowInventario("Cantidad") = Cantidad
RowInventario("CveVentaDetalle") = -1
RowInventario("CvePS") = CvePS
RowInventario("CveUM") = CveUnidadMedida
RowInventario("PU") = PU
RowInventario("CveTipoInvPS") = 0
RowInventario("AplicaSerie") = Not String.IsNullOrEmpty(Row("Serie").ToString())
RowInventario("Serie") = Row("Serie")
RowInventario("AplicaLote") = Not String.IsNullOrEmpty(Row("Lote").ToString())
RowInventario("Lote") = Row("Lote")
Dim AplicaCaducidad = If(String.IsNullOrEmpty(Row("FechaCaducidad").ToString()), False, If(Row("FechaCaducidad").ToString().ToDateTime() <= MinFecha, False, True))
RowInventario("AplicaCaducidad") = AplicaCaducidad
RowInventario("FechaCaducidad") = Row("FechaCaducidad")
DtInventario.Rows.Add(RowInventario)
End If
End If
Else
Alert("No se pudo cargar el producto", TipoMensaje.MsgError)
End If
Next
Dim TotalImporte As Decimal = ObjRemisionNC.DtDetalle.SUM("TotalImporte").ToDecimal()
Dim ImporteIVA As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteIVA").ToDecimal()
Dim ImporteRetIVA As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteRetIVA").ToDecimal()
Dim ImporteRetISR As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteRetISR").ToDecimal()
Dim ImporteIEPS As Decimal = ObjRemisionNC.DtDetalle.SUM("ImporteIEPS").ToDecimal()
Dim Descuento As Decimal = ObjRemisionNC.DtDetalle.SUM("Descuento").ToDecimal()
Dim Amortizacion As Decimal = 0
Dim Total As Decimal = (TotalImporte + ImporteIVA + ImporteIEPS) - (ImporteRetIVA + ImporteRetISR + Descuento + Amortizacion)
'DETALLES
ObjRemisionNC.SubTotal = TotalImporte
ObjRemisionNC.Descuento = Descuento
ObjRemisionNC.Amortizacion = Amortizacion
ObjRemisionNC.IVA = ImporteIVA
ObjRemisionNC.RetIVA = ImporteRetIVA
ObjRemisionNC.RetISR = ImporteRetISR
ObjRemisionNC.IEPS = ImporteIEPS
ObjRemisionNC.Total = Total
ObjRemisionNC.TotalOtrosConceptos = 0
ObjRemisionNC.ObservacionesMovimiento = TxtObservaciones.Text
ObjRemisionNC.DtInventario = DtInventario
'Select Case DtMovimientos.FiltroPrimeroValor("CveConcepto").ToEntero()
' Case 40
' ObjRemisionNC.CveConceptoMovimiento = 41 ' DEVOLUCION DEL CLIENTE
' Case 3
' ObjRemisionNC.CveConceptoMovimiento = 18 ' DEVOLUCION DEL CLIENTE
'End Select
ObjRemisionNC.CveAlmacen = DdlAlmacen.SelectedValue.ToEntero()
Dim CveTipoAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=ObjRemisionNC.CveAlmacen).FiltroPrimeroValor("CveTipoAlmacen").ToEntero
Select Case CveTipoAlmacen
Case 10
ObjRemisionNC.CveConceptoMovimiento = 41 ' DEVOLUCION DIRECTA DEL CLIENTE
Case Else
ObjRemisionNC.CveConceptoMovimiento = 18 ' DEVOLUCION DEL CLIENTE
End Select
End Sub
#End Region
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
Dim CveCliente As Integer = DdlCliente.SelectedValue.ToEntero()
Dim CveSubProyecto As Integer = DdlSubProyecto.SelectedValue.ToEntero()
Dim CveAlmacen As Integer = DdlAlmacen.SelectedValue.ToEntero()
If CveCliente <= 0 Then
Alert("Debe seleccionar un cliente", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If CveSubProyecto <= 0 Then
Alert("Debe seleccionar un sub proyecto", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If CveAlmacen <= 0 Then
Alert("Debe seleccionar un almacen", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
If DtMovimientos Is Nothing OrElse DtMovimientos.Rows.Count = 0 Then
Alert("No hay producto para devolver", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Try
CreaRemisionNC(CveCliente, CveSubProyecto)
If ObjRemisionNC IsNot Nothing Then
Dim Resp = ObjRemisionNC.EmitirFactura(False)
If Resp.Mensajes.Count > 0 AndAlso Resp.CveVenta > 0 Then
Dim Msg As New StringBuilder
If Resp.CveVenta > 0 Then
If Resp IsNot Nothing Then
For Each mensaje2 As String In Resp.Mensajes
Msg.AppendFormat("<br>{0}", mensaje2)
Next
End If
End If
Msg.AppendFormat("<br/>El Movimiento se registro con el Folio: <b><a href='/Inventarios/EntradasSalidas.aspx?CveMovimiento={1}' target='_blank'>{0}</a></b>", Resp.FolioUsado, Resp.CveMovimientoUsado)
Msg.AppendFormat("<br/><br/> <a class=""Texto"" target='_blank' href=""/Compras/PopUpVerFactura.aspx?P={0}"">Imprimir Movimiento</a> ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", Resp.CveMovimientoUsado)))
Alert(Msg.ToString(), If(Resp.TieneError, TipoMensaje.MsgError, TipoMensaje.MsgInformacion), JSBtnAceptar:="BtnRefrescarPagina();", ShowCloseButton:=False)
ElseIf Resp.Mensajes.Count <= 0 AndAlso Resp.CveVenta <= 0 Then
Alert("Ocurrió un error al guardar", TipoMensaje.MsgError)
ElseIf Resp.Mensajes.Count >= 0 AndAlso Resp.CveVenta <= 0 Then
For Each Mensaje In Resp.Mensajes
Alert(Mensaje, If(Resp.TieneError, TipoMensaje.MsgError, TipoMensaje.MsgInformacion), If(Resp.TieneError, "", Resp.LigaPV), ShowCloseButton:=False)
Next
End If
End If
Catch ex As Exception
OnError("Ocurrió un error al guardar", ex)
End Try
End Sub
Protected Sub GvDatos_RowDeleting(sender As Object, e As GridViewDeleteEventArgs)
Dim GvRow As GridViewRow = GvDatos.Rows(e.RowIndex)
If DtMovimientos IsNot Nothing Then
Dim ConsecEliminar As Integer = GvRow.DataKey("Consec").ToEntero()
If ConsecEliminar > 0 Then
Dim RowEliminar = DtMovimientos.Select($"Consec={ConsecEliminar}")
If RowEliminar IsNot Nothing AndAlso RowEliminar.Length > 0 AndAlso RowEliminar.Length = 1 Then
RowEliminar(0).Delete()
End If
End If
GvDatos.DataSource = DtMovimientos
GvDatos.DataBind()
End If
UpDatos.Update()
End Sub
End Class

View File

@@ -377,6 +377,11 @@ Partial Class Inventarios_ResguardoMaterial
'End If 'End If
'dtt.Dispose() 'dtt.Dispose()
End If End If
Else
ThSeccion.Visible = False
TrSeccion.Visible = False
DdlSeccionAlmacen.Items.Clear()
End If End If
'activa lote 'activa lote
If CBool(drp("AplicaLote")) Then If CBool(drp("AplicaLote")) Then
@@ -453,11 +458,11 @@ Partial Class Inventarios_ResguardoMaterial
Dim Valido As Boolean = True Dim Valido As Boolean = True
Dim cantidadd As Double = txtCantidad.Text.ToDouble Dim cantidadd As Double = txtCantidad.Text.ToDouble
Dim Existencia As Double = GetExistencias(PSSelected, DdlUnidad.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacen.SelectedValue.ToEntero, If(TxtnSerie.Visible, TxtnSerie.Text, "-1").ToString) Dim Existencia As Double = GetExistencias(PSSelected, DdlUnidad.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacen.SelectedValue.ToEntero, If(TxtnSerie.Visible, TxtnSerie.Text, "-1").ToString)
If Existencia - txtCantidad.Text.ToDouble < 0 Then If Existencia - txtCantidad.Text.ToDouble - DtMovimientos.SUM("Cantidad", $"CvePS = {PSSelected} ") < 0 Then
If Existencia <= 0 Then If Existencia <= 0 Then
Alert("No hay existencia del producto", TipoMensaje.MsgAdvertencia) Alert("No hay existencia del producto", TipoMensaje.MsgAdvertencia)
Else Else
Alert(String.Format("Solo hay en existencia: {0}", Existencia), TipoMensaje.MsgAdvertencia) Alert(String.Format("Solo hay en existencia: {0}", Existencia - DtMovimientos.SUM("Cantidad", $"CvePS = {PSSelected} ")), TipoMensaje.MsgAdvertencia)
If Not UsuarioActual.TienePermisoProceso(114) Then If Not UsuarioActual.TienePermisoProceso(114) Then
cantidadd = Existencia cantidadd = Existencia
End If End If
@@ -496,6 +501,22 @@ Partial Class Inventarios_ResguardoMaterial
DdlClasificacion.SelectedValue = "-1" DdlClasificacion.SelectedValue = "-1"
txtCantidad.Text = "" txtCantidad.Text = ""
TxtObservacionesdetalle.Text = "" TxtObservacionesdetalle.Text = ""
ThCaducidad.Visible = False
TrCaducidad.Visible = False
TxtCaducidad.Text = ""
ThLote.Visible = False
TrLote.Visible = False
TxtLote.Text = ""
ThSerie.Visible = False
TrSerie.Visible = False
TxtnSerie.Visible = False
TxtnSerie.Text = ""
ThSeccion.Visible = False
TrSeccion.Visible = False
DdlSeccionAlmacen.Items.Clear()
End Sub End Sub
#End Region #End Region

View File

@@ -383,7 +383,7 @@ Partial Class Inventarios_TrasladoSolicitud
RegistraScript(String.Format("$('#{0}').modal();", "ModalPS")) RegistraScript(String.Format("$('#{0}').modal();", "ModalPS"))
End Sub End Sub
Private Sub BtnAgregarPS_Click(sender As Object, e As EventArgs) Handles BtnAgregarPS.Click Private Sub BtnAgregarPS_Click(sender As Object, e As EventArgs) Handles BtnAgregarPS.Click
Dim Existencia As Boolean
If Not DdlProductoServicio.SelectedValue.ToEntero > 0 Then If Not DdlProductoServicio.SelectedValue.ToEntero > 0 Then
Alert("Tiene que seleccionar un producto.", TipoMensaje.MsgAdvertencia) Alert("Tiene que seleccionar un producto.", TipoMensaje.MsgAdvertencia)
Exit Sub Exit Sub
@@ -419,8 +419,8 @@ Partial Class Inventarios_TrasladoSolicitud
End Sub End Sub
Private Function AddPSTemporal() As Boolean Private Function AddPSTemporal() As Boolean
Dim Row As DataRow = TempDT.NewRow() Dim Row As DataRow = TempDT.NewRow()
Dim Lote As String Dim Lote As String = "-1"
Dim FechaCaducidad As Date Dim FechaCaducidad As Date = MinFecha
Row("Cantidad") = TxtCantidad.Text.Trim.ToDouble Row("Cantidad") = TxtCantidad.Text.Trim.ToDouble
Row("CvePS") = DdlProductoServicio.SelectedValue.ToEntero Row("CvePS") = DdlProductoServicio.SelectedValue.ToEntero
Row("CodigoPS") = DdlProductoServicio.SelectedText Row("CodigoPS") = DdlProductoServicio.SelectedText
@@ -465,7 +465,7 @@ Partial Class Inventarios_TrasladoSolicitud
If Existencia = 0 Then If Existencia = 0 Then
Alert("No hay existencia del producto", TipoMensaje.MsgAdvertencia) Alert("No hay existencia del producto", TipoMensaje.MsgAdvertencia)
Else Else
Alert($"No hay existencia suficiente del producto. Solo hay en existencia: {Existencia}", TipoMensaje.MsgAdvertencia) Alert($"No hay existencia suficiente del producto. Solo hay en existencia: {Existencia - TempDT.SUM("Cantidad", $"CvePS = {DdlProductoServicio.SelectedValue.ToEntero} AND CveUM = {DdlUM.SelectedValue.ToEntero}")}", TipoMensaje.MsgAdvertencia)
End If End If
Return False Return False
End If End If
@@ -580,6 +580,8 @@ Partial Class Inventarios_TrasladoSolicitud
RowTemp("CveUM") = row.DataKey("CveUM").ToEntero RowTemp("CveUM") = row.DataKey("CveUM").ToEntero
RowTemp("UnidadMedida") = row.DataKey("UM") RowTemp("UnidadMedida") = row.DataKey("UM")
RowTemp("Observaciones") = "" RowTemp("Observaciones") = ""
RowTemp("Lote") = "-1"
RowTemp("FechaCaducidad") = MinFecha
'RowTemp("CveDireccionEnvio") = DdlDireccionEnvio.SelectedValue 'RowTemp("CveDireccionEnvio") = DdlDireccionEnvio.SelectedValue
'RowTemp("DireccionEnvio") = IIf(DdlDireccionEnvio.SelectedValue = "-1", "", DdlDireccionEnvio.SelectedItem) 'RowTemp("DireccionEnvio") = IIf(DdlDireccionEnvio.SelectedValue = "-1", "", DdlDireccionEnvio.SelectedItem)
RowTemp("CveContratoDetalle") = row.DataKey("CveContratoDetalle") RowTemp("CveContratoDetalle") = row.DataKey("CveContratoDetalle")
@@ -1005,7 +1007,7 @@ Partial Class Inventarios_TrasladoSolicitud
If Existencia = 0 Then If Existencia = 0 Then
Alert($"No hay existencia del producto: {CodigoPS}", TipoMensaje.MsgAdvertencia) Alert($"No hay existencia del producto: {CodigoPS}", TipoMensaje.MsgAdvertencia)
Else Else
Alert($"No hay existencia suficiente del producto: {CodigoPS}, Solo hay en existencia: {Existencia}", TipoMensaje.MsgAdvertencia) Alert($"No hay existencia suficiente del producto: {CodigoPS}, Solo hay en existencia: {Existencia - TempDT.SUM("Cantidad", $"CvePS = {RowTemp("CvePS").ToString.ToEntero} AND CveUM = {RowTemp("CveUM").ToString.ToEntero}")}", TipoMensaje.MsgAdvertencia)
End If End If
End If End If
TempDT.Rows.Add(RowTemp) TempDT.Rows.Add(RowTemp)

View File

@@ -70,12 +70,15 @@
<asp:LinkButton ID="LnkAutorizar" Visible="false" OnClick="LnkAutorizar_Click" runat="server"><i class='material-icons'>done_all</i>Autorizar</asp:LinkButton> <asp:LinkButton ID="LnkAutorizar" Visible="false" OnClick="LnkAutorizar_Click" runat="server"><i class='material-icons'>done_all</i>Autorizar</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkTimbrar" Visible="false" OnClick="LnkTimbrar_Click" runat="server"><i class="fa fa-bell"></i>Timbrar</asp:LinkButton> <asp:LinkButton ID="LnkTimbrar" Visible="false" OnClick="LnkTimbrar_Click" runat="server"><i class="fa fa-bell"></i>Timbrar</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkFormatoRenuncia" OnClick="LnkFormatoRenuncia_Click" runat="server"><i class="fa fa-bell"></i>Formato Finiquito</asp:LinkButton> <asp:LinkButton ID="LnkFormatoRenuncia" OnClick="LnkFormatoRenuncia_Click" runat="server"><i class="fa fa-bell"></i>Formato Finiquito</asp:LinkButton>
</li> </li>
</ContentTemplate> </ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID ="LnkFormatoRenuncia" />
</Triggers>
</asp:UpdatePanel> </asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server"> <asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
@@ -84,135 +87,137 @@
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<div class="row "> <div class="row ">
<div class="col-sm-6 "> <div class="col-sm-6 ">
<%--class="col-md-6 col-md-offset-3 col-sm-10 col-sm-offset-1"--%> <%--class="col-md-6 col-md-offset-3 col-sm-10 col-sm-offset-1"--%>
<div class="portlet light xspadding bordered" id="pnldl"> <div class="portlet light xspadding bordered" id="pnldl">
<div class="portlet-title"> <div class="portlet-title">
<div class="caption "> <div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i> <i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Datos del Empleado</span> <span class="caption-subject bold uppercase font-yellow-gold">Datos del Empleado</span>
</div> </div>
<div class="tools"> <div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a> <a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div> </div>
</div>
<div class="portlet-body dtosEmpleado">
<div class="row ">
<div class="col-sm-3">
<span class="bold">Codigo:</span>
<br />
<asp:HyperLink ID="HypCodigo" CssClass="LinkEmpleado TextLink" Text="--" runat="server"></asp:HyperLink>
</div> </div>
<div class="col-sm-9"> <div class="portlet-body dtosEmpleado">
<span class="bold">Empleado:</span> <div class="row ">
<br /> <div class="col-sm-3">
<asp:HyperLink ID="HypEmpleado" CssClass="LinkEmpleado TextLink" Text="--" runat="server"></asp:HyperLink> <span class="bold">Codigo:</span>
</div> <br />
</div> <asp:HyperLink ID="HypCodigo" CssClass="LinkEmpleado TextLink" Text="--" runat="server"></asp:HyperLink>
<div class="row "> </div>
<div class="col-sm-3 "> <div class="col-sm-9">
<span class="bold">Fecha alta:</span> <span class="bold">Empleado:</span>
<br /> <br />
<asp:Label ID="LblFechaAlta" runat="server" Text="--"></asp:Label> <asp:HyperLink ID="HypEmpleado" CssClass="LinkEmpleado TextLink" Text="--" runat="server"></asp:HyperLink>
</div> </div>
<div class="col-sm-5"> </div>
<span class="bold">Puesto:</span> <div class="row ">
<br /> <div class="col-sm-3 ">
<asp:Label ID="LblPuesto" runat="server" Text="--"></asp:Label> <span class="bold">Fecha alta:</span>
</div> <br />
<div class="col-sm-4"> <asp:Label ID="LblFechaAlta" runat="server" Text="--"></asp:Label>
<span class="bold">Salario:</span> </div>
<br /> <div class="col-sm-5">
<asp:Label ID="LblSalario" runat="server" Text="--"></asp:Label> <span class="bold">Puesto:</span>
</div> <br />
</div> <asp:Label ID="LblPuesto" runat="server" Text="--"></asp:Label>
<div class="row "> </div>
</div> <div class="col-sm-4">
</div> <span class="bold">Salario:</span>
</div> <br />
</div> <asp:Label ID="LblSalario" runat="server" Text="--"></asp:Label>
</div>
<div class="col-sm-6 "> </div>
<%--class="col-md-6 col-md-offset-3 col-sm-10 col-sm-offset-1"--%> <div class="row ">
<div class="portlet light xspadding bordered" id="pnlfiniqito"> </div>
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Información finiquito</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkGuardarDatos" OnClick="LnkGuardarDatos_Click" ValidationGroup="GrpGuardar" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
</div> </div>
</div> </div>
</div> </div>
<div class="portlet-body dtosEmpleado">
<div class="col-sm-6 ">
<%--class="col-md-6 col-md-offset-3 col-sm-10 col-sm-offset-1"--%>
<div class="portlet light xspadding bordered" id="pnlfiniqito">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Información finiquito</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<asp:LinkButton ID="LnkSimular" OnClick="LnkSimular_Click" ValidationGroup="GrpGuardar" CssClass="btn yellow-gold" runat="server">Simular</asp:LinkButton>
<asp:LinkButton ID="LnkCancelar" Visible="false" OnClick="LnkCancelar_Click" ValidationGroup="GrpGuardarcan" CssClass="btn btn-danger" runat="server">Cancelar</asp:LinkButton>
<asp:LinkButton ID="LnkGuardarDatos" OnClick="LnkGuardarDatos_Click" ValidationGroup="GrpGuardar" CssClass="btn btn-primary" runat="server">Guardar</asp:LinkButton>
</div>
</div>
</div>
<div class="portlet-body dtosEmpleado">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group form-md-line-input input-iconright"> <div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlMotivoBaja" runat="server" AppendDataBoundItems="True" DataTextField="MotivoBaja" DataValueField="CveMotivoBaja" Width="100%" <asp:DropDownList ID="DdlMotivoBaja" runat="server" AppendDataBoundItems="True" DataTextField="MotivoBaja" DataValueField="CveMotivoBaja" Width="100%"
CssClass="form-control select2me" ValidationGroup="GrpGuardar"> CssClass="form-control select2me" ValidationGroup="GrpGuardar">
<asp:ListItem Selected="True" Text="Sin asignar Motivo de baja" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Sin asignar Motivo de baja" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvMotivoBaja" runat="server" ControlToValidate="DdlMotivoBaja" CssClass=" dnone" InitialValue="-1" <asp:RequiredFieldValidator ID="RfvMotivoBaja" runat="server" ControlToValidate="DdlMotivoBaja" CssClass=" dnone" InitialValue="-1"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Seleccione el <b>''motivo''</b>." ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Seleccione el <b>''motivo''</b>."
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Motivo de Baja: " AssociatedControlID="DdlMotivoBaja"></asp:Label> <asp:Label runat="server" Text="Motivo de Baja: " AssociatedControlID="DdlMotivoBaja"></asp:Label>
</div>
<ajax:ValidatorCalloutExtender ID="vcoMotivoBaja" runat="server" HighlightCssClass="vco" TargetControlID="RfvMotivoBaja" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright" style="width: 120px; display: inline-block">
<asp:TextBox ID="TxtFechaBaja" runat="server" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtFechaBaja" runat="server" ControlToValidate="TxtFechaBaja" CssClass="dnone"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> es necesario "
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<asp:Label runat="server" Text="Fecha de Baja: " AssociatedControlID="TxtFechaBaja"></asp:Label>
<ajax:MaskedEditExtender ID="MKEFechaBaja" runat="server" TargetControlID="TxtFechaBaja" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" BehaviorID="_content_MKEFechaBaja" Century="2000" CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""></ajax:MaskedEditExtender>
<ajax:CalendarExtender ID="CEFechaBaja" runat="server" TargetControlID="TxtFechaBaja" PopupButtonID="ImgFechaBaja" PopupPosition="BottomRight" BehaviorID="_content_CEFechaBaja"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaBaja" runat="server" ControlToValidate="TxtFechaBaja" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar" Visible="False"></asp:CompareValidator>
</div>
<span class="input-group-btn " style="display: inline-block">
<asp:LinkButton ID="ImgFechaBaja" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:ValidatorCalloutExtender ID="vcoTxtFechaBaja" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtFechaBaja" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-3">
¿es liquidación?<br />
<asp:CheckBox ID="ChkesLiquidacion" CssClass="chksino" Text=" " runat="server" />
</div>
<div class="col-md-1">
</div>
</div> </div>
<ajax:ValidatorCalloutExtender ID="vcoMotivoBaja" runat="server" HighlightCssClass="vco" TargetControlID="RfvMotivoBaja" Width="350px"></ajax:ValidatorCalloutExtender> <div class="row">
</div> <div class="col-md-4">
<div class="col-md-4"> <div class="form-group form-md-line-input input-iconright">
<div class="form-group form-md-line-input input-iconright" style="width: 120px; display: inline-block"> <asp:TextBox ID="TxtAntiguedad" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:TextBox ID="TxtFechaBaja" runat="server" CausesValidation="True" CssClass="form-control"></asp:TextBox> <asp:Label runat="server" Text="Antiguedad: " AssociatedControlID="TxtAntiguedad"></asp:Label>
<asp:RequiredFieldValidator ID="RfvTxtFechaBaja" runat="server" ControlToValidate="TxtFechaBaja" CssClass="dnone" </div>
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> es necesario " </div>
ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <div class="col-md-4">
<asp:Label runat="server" Text="Fecha de Baja: " AssociatedControlID="TxtFechaBaja"></asp:Label> <div class="form-group form-md-line-input input-iconright">
<ajax:MaskedEditExtender ID="MKEFechaBaja" runat="server" TargetControlID="TxtFechaBaja" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left" BehaviorID="_content_MKEFechaBaja" Century="2000" CultureAMPMPlaceholder="" CultureCurrencySymbolPlaceholder="" CultureDateFormat="" CultureDatePlaceholder="" CultureDecimalPlaceholder="" CultureThousandsPlaceholder="" CultureTimePlaceholder=""></ajax:MaskedEditExtender> <asp:TextBox ID="TxtDiasTransAnio" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<ajax:CalendarExtender ID="CEFechaBaja" runat="server" TargetControlID="TxtFechaBaja" PopupButtonID="ImgFechaBaja" PopupPosition="BottomRight" BehaviorID="_content_CEFechaBaja"></ajax:CalendarExtender> <asp:Label runat="server" Text="Dias trans. en el año: " AssociatedControlID="TxtDiasTransAnio"></asp:Label>
<asp:CompareValidator ID="CVFechaBaja" runat="server" ControlToValidate="TxtFechaBaja" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha de Baja''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar" Visible="False"></asp:CompareValidator> </div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtSalarioMinimo" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:Label runat="server" Text="Salario minimo: " AssociatedControlID="TxtSalarioMinimo"></asp:Label>
</div>
</div>
</div> </div>
<span class="input-group-btn " style="display: inline-block"> <%--<div class="form-group form-md-line-input input-iconright">
<asp:LinkButton ID="ImgFechaBaja" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:ValidatorCalloutExtender ID="vcoTxtFechaBaja" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtFechaBaja" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-3">
¿es liquidación?<br />
<asp:CheckBox ID="ChkesLiquidacion" CssClass="chksino" Text=" " runat="server" />
</div>
<div class="col-md-1">
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtAntiguedad" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:Label runat="server" Text="Antiguedad: " AssociatedControlID="TxtAntiguedad"></asp:Label>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtDiasTransAnio" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:Label runat="server" Text="Dias trans. en el año: " AssociatedControlID="TxtDiasTransAnio"></asp:Label>
</div>
</div>
<div class="col-md-4">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtSalarioMinimo" runat="server" Enabled="false" Text="--" CausesValidation="True" CssClass="form-control"></asp:TextBox>
<asp:Label runat="server" Text="Salario minimo: " AssociatedControlID="TxtSalarioMinimo"></asp:Label>
</div>
</div>
</div>
<%--<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlTipoPeriodo" runat="server" AppendDataBoundItems="true" Width="100%" CssClass="form-control select2me" AutoPostBack="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" OnSelectedIndexChanged="DdlTipoPeriodo_SelectedIndexChanged"> <asp:DropDownList ID="DdlTipoPeriodo" runat="server" AppendDataBoundItems="true" Width="100%" CssClass="form-control select2me" AutoPostBack="true" DataTextField="TipoPeriodo" DataValueField="CveTipoPeriodo" OnSelectedIndexChanged="DdlTipoPeriodo_SelectedIndexChanged">
<asp:ListItem Selected="True" Text="Ordinario" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Ordinario" Value="-1"></asp:ListItem>
<asp:ListItem Text="Extraordinario" Value="6"></asp:ListItem> <asp:ListItem Text="Extraordinario" Value="6"></asp:ListItem>
@@ -225,184 +230,229 @@
</asp:DropDownList> </asp:DropDownList>
<asp:Label runat="server" Text="Período:" AssociatedControlID="DdlPeriodo"></asp:Label> <asp:Label runat="server" Text="Período:" AssociatedControlID="DdlPeriodo"></asp:Label>
</div>--%> </div>--%>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="portlet light xspadding bordered" id="pnlNomina">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Finiquito (Ordinario)</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<%--<a onclick="$('#C_BtnImprimirsobrerecibo').click()" class="btn btn-default">Imprimir</a>--%>
</div> </div>
</div> </div>
</div> </div>
<div class="portlet-body ">
<asp:GridView ID="GvFinOrdinario" runat="server" AutoGenerateColumns="False" CssClass="table table-striped table-hover Widthall GvConceptos"
Style="text-align: center;" GridLines="None" OnRowDataBound="GvConceptos_RowDataBound" ShowHeaderWhenEmpty="true"
DataKeyNames="ConceptoP,CveConceptoP,ImporteP,ValorP,EstatusP,ConceptoD,CveConceptoD,ImporteD,isOnlyBisibleP,isOnlyBisibleD,EstatusD,ValorD,isEditedD,isEditedP">
<Columns>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConcepto" runat="server" Text='<%# Eval("ConceptoP") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConcepto" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoP") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorP" runat="server" Text='<%# Eval("ValorP", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporte" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConceptoD" runat="server" Text='<%# Eval("ConceptoD") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConceptoD" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoD") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorD" runat="server" Text='<%# Eval("ValorD", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporteD" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="SearchADHeader" />
</asp:GridView>
</div>
</div> </div>
</div>
<div class="col-sm-6">
<div class="portlet light xspadding bordered" id="pnlFiniquito"> <div class="row">
<div class="portlet-title"> <div class="col-sm-6">
<div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Finiquito (Indemnización)</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<%--<a onclick="$('#C_BtnImprimirsobrerecibo').click()" class="btn btn-default">Imprimir</a>--%>
</div>
</div>
</div>
<div class="portlet-body ">
<asp:GridView ID="GVFinIndemnizacion" runat="server" AutoGenerateColumns="False" CssClass="table table-striped table-hover Widthall GvConceptos"
Style="text-align: center;" GridLines="None" OnRowDataBound="GvConceptos_RowDataBound" ShowHeaderWhenEmpty="true"
DataKeyNames="ConceptoP,CveConceptoP,ImporteP,ValorP,EstatusP,ConceptoD,CveConceptoD,ImporteD,isOnlyBisibleP,isOnlyBisibleD,EstatusD,ValorD,isEditedD,isEditedP">
<Columns>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConcepto" runat="server" Text='<%# Eval("ConceptoP") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConcepto" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoP") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorP" runat="server" Text='<%# Eval("ValorP", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporte" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConceptoD" runat="server" Text='<%# Eval("ConceptoD") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConceptoD" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoD") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorD" runat="server" Text='<%# Eval("ValorD", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporteD" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="SearchADHeader" />
</asp:GridView>
</div>
</div>
</div>
</div>
<div id="ModalEmpleados" class="modal ADS fade " role="dialog" data-backdrop="static" data-keyboard="false"> <div class="portlet light xspadding bordered" id="pnlNomina">
<div class="portlet-title">
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UpModalEmpleados" UpdateMode="Conditional"> <div class="caption ">
<ContentTemplate> <i class="fa fa-bookmark font-yellow-gold"></i>
<div class="modal-dialog"> <span class="caption-subject bold uppercase font-yellow-gold">Finiquito (Ordinario)</span>
<div class="modal-content"> </div>
<div class="modal-header "> <div class="tools">
<h4 class="modal-title">Seleccione un empleado</h4> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div> <a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
<div class="modal-body"> </div>
<div class="form-group form-md-line-input input-iconright"> <div class="actions">
<asp:DropDownList ID="DdlPersonal" DataTextField="Nombre" DataValueField="CvePersonal" runat="server" Width="100%" AppendDataBoundItems="true" CssClass="form-control select2me"> <div class="btn-group">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <%--<a onclick="$('#C_BtnImprimirsobrerecibo').click()" class="btn btn-default">Imprimir</a>--%>
</asp:DropDownList> </div>
<asp:Label runat="server" Text="Empleado: " AssociatedControlID="DdlPersonal"></asp:Label>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="portlet-body ">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate> <asp:GridView ID="GvFinOrdinario" runat="server" AutoGenerateColumns="False" CssClass="table table-striped table-hover Widthall GvConceptos"
<asp:LinkButton ID="LnkCampiarEmpleado" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpSeleccionarEmpleado" OnClick="LnkCampiarEmpleado_Click"> Aceptar</asp:LinkButton> Style="text-align: center;" GridLines="None" OnRowDataBound="GvConceptos_RowDataBound" ShowHeaderWhenEmpty="true"
<asp:Literal ID="LtlEmpleadoCancelar" Visible="false" runat="server"> <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button></asp:Literal> DataKeyNames="ConceptoP,CveConceptoP,ImporteP,ValorP,EstatusP,ConceptoD,CveConceptoD,ImporteD,isOnlyBisibleP,isOnlyBisibleD,EstatusD,ValorD,isEditedD,isEditedP">
</ContentTemplate> <Columns>
</asp:UpdatePanel> <asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConcepto" runat="server" Text='<%# Eval("ConceptoP") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConcepto" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoP") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorP" runat="server" Text='<%# Eval("ValorP", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporte" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<asp:LinkButton ID="LnkImportexCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConceptoD" runat="server" Text='<%# Eval("ConceptoD") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConceptoD" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoD") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorD" runat="server" Text='<%# Eval("ValorD", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporteD" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<asp:LinkButton ID="LnkImporteDxCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="SearchADHeader" />
</asp:GridView>
</div> </div>
</div> </div>
</div> </div>
<div class="col-sm-6">
<div class="portlet light xspadding bordered" id="pnlFiniquito">
<div class="portlet-title">
<div class="caption ">
<i class="fa fa-bookmark font-yellow-gold"></i>
<span class="caption-subject bold uppercase font-yellow-gold">Finiquito (Indemnización)</span>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
<div class="actions">
<div class="btn-group">
<%--<a onclick="$('#C_BtnImprimirsobrerecibo').click()" class="btn btn-default">Imprimir</a>--%>
</div>
</div>
</div>
<div class="portlet-body ">
<asp:GridView ID="GVFinIndemnizacion" runat="server" AutoGenerateColumns="False" CssClass="table table-striped table-hover Widthall GvConceptos"
Style="text-align: center;" GridLines="None" OnRowDataBound="GvConceptos_RowDataBound" ShowHeaderWhenEmpty="true"
DataKeyNames="ConceptoP,CveConceptoP,ImporteP,ValorP,EstatusP,ConceptoD,CveConceptoD,ImporteD,isOnlyBisibleP,isOnlyBisibleD,EstatusD,ValorD,isEditedD,isEditedP">
<Columns>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConcepto" runat="server" Text='<%# Eval("ConceptoP") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConcepto" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoP") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorP" runat="server" Text='<%# Eval("ValorP", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporte" runat="server" Text='<%# Eval("ImporteP", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporte" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<asp:LinkButton ID="LnkImportexCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Concepto">
<ItemTemplate>
<asp:Label ID="LtlConceptoD" runat="server" Text='<%# Eval("ConceptoD") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkConceptoD" OnClick="LnkConcepto_Click" runat="server" Text='<%# Eval("ConceptoD") %>'></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="37%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Valor">
<ItemTemplate>
<asp:Label ID="LtlValorD" runat="server" Text='<%# Eval("ValorD", "{0:##,###.##}") %>' Style="word-break: break-all;"></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Label ID="LtlImporteD" runat="server" Text='<%# Eval("ImporteD", "${0:N}") %>' Style="word-break: break-all;"></asp:Label>
<asp:LinkButton ID="LnkImporteD" OnClick="LnkConcepto_Click" runat="server"></asp:LinkButton>
<asp:LinkButton ID="LnkImporteDxCalculo" OnClick="LnkImportexCalculo_Click" runat="server" CssClass="btn btn-circle btn-sm btn-xs red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea eliminar el importe fijo?" data-btn-ok-label="si"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" Width="13%" />
</asp:TemplateField>
</Columns>
<HeaderStyle CssClass="SearchADHeader" />
</asp:GridView>
</div>
</div>
</div>
</div>
<div id="ModalUpConcepto" class="modal ADS fade" role="dialog">
<asp:UpdatePanel class="modal-dialog " runat="server" ID="UPpanelModalUpConcepto" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">Modificar o agregar concepto :
<asp:Label ID="LblConceptoMod" runat="server" Text=""></asp:Label></h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:Label runat="server" AssociatedControlID="DdlmcConceptos" Enabled="false" Text="Concepto"></asp:Label>
<asp:DropDownList ID="DdlmcConceptos" CssClass="select2me form-control" Width="100%" DataValueField="CveConcepto" DataTextField="CodigoConcepto" OnSelectedIndexChanged="DdlmcConceptos_SelectedIndexChanged" AutoPostBack=" true" runat="server">
<asp:ListItem Value="-1" Text="Seleccione"></asp:ListItem>
</asp:DropDownList>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtmcImporte" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtmcImporte" Enabled="false" Text="Importe"></asp:Label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="TxtmcImporteGrabado" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtmcImporteGrabado" Enabled="false" Text="Gravado"></asp:Label>
<i></i>
</div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox CssClass="form-control" ID="Txtmcvalor" runat="server" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="Txtmcvalor" Enabled="false" Text="Valor"></asp:Label>
<i></i>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
<asp:Button ID="BtnAceptarMC" CssClass="btn btn-primary" OnClick="BtnAceptarMC_Click" runat="server" Text="Aceptar" />
</div>
</div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
<div id="ModalEmpleados" class="modal ADS fade " role="dialog" data-backdrop="static" data-keyboard="false">
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UpModalEmpleados" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header ">
<h4 class="modal-title">Seleccione un empleado</h4>
</div>
<div class="modal-body">
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlPersonal" DataTextField="Nombre" DataValueField="CvePersonal" runat="server" Width="100%" AppendDataBoundItems="true" CssClass="form-control select2me">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:Label runat="server" Text="Empleado: " AssociatedControlID="DdlPersonal"></asp:Label>
</div>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:LinkButton ID="LnkCampiarEmpleado" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpSeleccionarEmpleado" OnClick="LnkCampiarEmpleado_Click"> Aceptar</asp:LinkButton>
<asp:Literal ID="LtlEmpleadoCancelar" Visible="false" runat="server"> <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button></asp:Literal>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>

View File

@@ -118,6 +118,7 @@ public partial class Nomina_Finiquito : ClsPaginas
} }
private void CargaPersonal() private void CargaPersonal()
{ {
LnkCancelar.Visible = false;
using (ClsRH ObjPersonal = new ClsRH()) using (ClsRH ObjPersonal = new ClsRH())
{ {
if (ObjPersonal.GetPersonal(CvePersonal, UsuarioActual.CveEmpresa) && ObjPersonal.DtResultados.Rows.Count > 0) if (ObjPersonal.GetPersonal(CvePersonal, UsuarioActual.CveEmpresa) && ObjPersonal.DtResultados.Rows.Count > 0)
@@ -141,7 +142,11 @@ public partial class Nomina_Finiquito : ClsPaginas
CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero(); CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero();
if (CvePeriodoIndemnizacion > 0) if (CvePeriodoIndemnizacion > 0)
{ {
loadsobrerecibo(); LnkCancelar.Visible = true;
using (ClsNominas onom = new ClsNominas())
{
loadsobrerecibo(onom);
}
} }
} }
CamposCalculados(); CamposCalculados();
@@ -185,61 +190,78 @@ public partial class Nomina_Finiquito : ClsPaginas
} }
return retorno; return retorno;
} }
protected void LnkImportexCalculo_Click(object sender, EventArgs e)
{
int SRCveConcepto = ((LinkButton)sender).CommandArgument.ToEntero();
//CvePeriodoSeleccionado
//SRCvePersonal
if (SRCveConcepto > 0)
{
using (ClsNominas onom = new ClsNominas())
{
if (onom.DeleteNom_NominasDetalles(SRCveConcepto, CvePersonal, CvePeriodoIndemnizacion))
{
Alert("el importe sera tomado del calculo y no del valor fijo");
}
}
}
}
protected void LnkConcepto_Click(object sender, EventArgs e) protected void LnkConcepto_Click(object sender, EventArgs e)
{ {
Alert("x"); int SRCveConcepto = ((LinkButton)sender).CommandArgument.ToEntero();
//SRCveConcepto = ((LinkButton)sender).CommandArgument.ToEntero(); string SRTipoConcepto = ((LinkButton)sender).CommandArgument;
//SRTipoConcepto = ((LinkButton)sender).CommandArgument; #region carga conceptos
//#region carga conceptos DataTable dtCon;
//DataTable dtCon; if (SRCveConcepto > 0)
//if (SRCveConcepto > 0) {
//{ DataRow drow = dtConceptos.FiltroPrimero(string.Format("CveConcepto={0}", SRCveConcepto));
// DataRow drow = dtConceptos.FiltroPrimero(string.Format("CveConcepto={0}", SRCveConcepto)); if (drow != null)
// if (drow != null) {
// { SRTipoConcepto = drow["Tipo"].ToString();
// SRTipoConcepto = drow["Tipo"].ToString(); }
// } else
// else {
// { SRCveConcepto = 0;
// SRCveConcepto = 0; SRTipoConcepto = "D";
// SRTipoConcepto = "D"; }
// } }
//}
//if (SRTipoConcepto == "P") if (SRTipoConcepto == "P")
//{ {
// dtCon = dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 ").Copy(); dtCon = dtConceptos.FiltraParametros("Tipo ='P' AND EsPadre = 1 ").Copy(); //AND CveSistema <>12'
//} }
//else else
//{ {
// dtCon = dtConceptos.FiltraParametros("Tipo ='D' AND EsPadre = 1 ").Copy(); dtCon = dtConceptos.FiltraParametros("Tipo ='D' AND EsPadre = 1 ").Copy();
// SRTipoConcepto = "D"; SRTipoConcepto = "D";
//} }
//dtCon.Columns.Add(new DataColumn("CodigoConcepto")); dtCon.Columns.Add(new DataColumn("CodigoConcepto"));
//foreach (DataRow trow in dtCon.Rows) foreach (DataRow trow in dtCon.Rows)
//{ {
// trow["CodigoConcepto"] = string.Format("{0} - {1}", trow["Codigo"], trow["Concepto"]); trow["CodigoConcepto"] = string.Format("{0} - {1}", trow["Codigo"], trow["Concepto"]);
//} }
//dtCon.AcceptChanges(); dtCon.AcceptChanges();
//DataRow row = dtCon.NewRow(); DataRow row = dtCon.NewRow();
//row["CveConcepto"] = "-1"; row["CveConcepto"] = "-1";
//row["CodigoConcepto"] = "Seleccione"; row["CodigoConcepto"] = "Seleccione";
//dtCon.Rows.InsertAt(row, 0); dtCon.Rows.InsertAt(row, 0);
//#endregion #endregion
//DdlmcConceptos.DataSource = dtCon; DdlmcConceptos.DataSource = dtCon;
//DdlmcConceptos.DataBind(); DdlmcConceptos.DataBind();
//if (SRCveConcepto > 0) if (SRCveConcepto > 0)
//{ {
// DdlmcConceptos.SelectedValueExist(SRCveConcepto); DdlmcConceptos.SelectedValueExist(SRCveConcepto);
//} }
//PnlConceptoPersonal.Visible = false;
//DdlmcConceptos_SelectedIndexChanged(DdlmcConceptos, null); //DdlmcConceptos_SelectedIndexChanged(DdlmcConceptos, null);
//RegistraScript(string.Format("$('#ModalUpConcepto').on('shown.bs.modal', function () {{$('#{0}').trigger('focus')}});$('#ModalUpConcepto').modal();", TxtmcImporte.ClientID)); RegistraScript(string.Format("$('#ModalUpConcepto').on('shown.bs.modal', function () {{$('#{0}').trigger('focus')}});$('#ModalUpConcepto').modal();", TxtmcImporte.ClientID));
//UPpanelModalUpConcepto.Update(); UPpanelModalUpConcepto.Update();
} }
int CveConceptoPolgvc, CveConceptoDolgvc; int CveConceptoPolgvc, CveConceptoDolgvc;
protected void GvConceptos_RowDataBound(object sender, GridViewRowEventArgs e) protected void GvConceptos_RowDataBound(object sender, GridViewRowEventArgs e)
{ {
@@ -272,6 +294,10 @@ public partial class Nomina_Finiquito : ClsPaginas
LinkButton LnkImporte = e.Row.FCLinkButton("LnkImporte"); LinkButton LnkImporte = e.Row.FCLinkButton("LnkImporte");
Label LtlImporteD = e.Row.FCLabel("LtlImporteD"); Label LtlImporteD = e.Row.FCLabel("LtlImporteD");
LinkButton LnkImporteD = e.Row.FCLinkButton("LnkImporteD"); LinkButton LnkImporteD = e.Row.FCLinkButton("LnkImporteD");
LinkButton LnkImportexCalculo = e.Row.FCLinkButton("LnkImportexCalculo");
LinkButton LnkImporteDxCalculo = e.Row.FCLinkButton("LnkImporteDxCalculo");
//isEditedD //isEditedD
if (isOnlyBisibleP == 1) if (isOnlyBisibleP == 1)
{ {
@@ -306,6 +332,10 @@ public partial class Nomina_Finiquito : ClsPaginas
} }
LnkImporte.CommandArgument = (CveConcepto > 0 ? CveConcepto.ToString() : "P"); LnkImporte.CommandArgument = (CveConcepto > 0 ? CveConcepto.ToString() : "P");
LnkImporteD.CommandArgument = (CveConceptoD > 0 ? CveConceptoD.ToString() : "D"); LnkImporteD.CommandArgument = (CveConceptoD > 0 ? CveConceptoD.ToString() : "D");
LnkImportexCalculo.CommandArgument = LnkImporte.CommandArgument;
LnkImporteDxCalculo.CommandArgument = LnkImporteD.CommandArgument;
LnkImportexCalculo.Visible = isEditedP;
LnkImporteDxCalculo.Visible = isEditedD;
LnkImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : "")); LnkImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
LnkImporteD.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : "")); LnkImporteD.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
@@ -323,11 +353,115 @@ public partial class Nomina_Finiquito : ClsPaginas
LnkImporte.Visible = !LtlImporte.Visible; LnkImporte.Visible = !LtlImporte.Visible;
LnkImporteD.Visible = !LtlImporteD.Visible; LnkImporteD.Visible = !LtlImporteD.Visible;
LinkButton LnkConceptoO = e.Row.FCLinkButton("LnkConceptoO");
LinkButton LnkImporteO = e.Row.FCLinkButton("LnkImporteO");
if (LnkConceptoO != null)
{
LnkConceptoO.Visible = false;
LnkImporteO.Visible = false;
if (e.Row.DBCampo("ImporteO").ToDecimal() == 0)
{
e.Row.FCLabel("LtlConceptoO").Visible = false;
e.Row.FCLabel("LtlImporteO").Visible = false;
if (e.Row.DataKey("isOnlyBisibleO").ToEntero() == 1)
{
e.Row.CssClass = string.Format("{0} isOnlyBisibleO", e.Row.CssClass);
}
}
}
CveConceptoPolgvc = CveConcepto; CveConceptoPolgvc = CveConcepto;
CveConceptoDolgvc = CveConceptoD; CveConceptoDolgvc = CveConceptoD;
} }
} }
//int CveConceptoPolgvc, CveConceptoDolgvc;
//protected void GvConceptos_RowDataBound(object sender, GridViewRowEventArgs e)
//{
// if (e.Row.RowType == DataControlRowType.DataRow)
// {
// if (e.Row.RowIndex == 0)
// {
// CveConceptoPolgvc = 1;
// CveConceptoDolgvc = 1;
// }
// // Datakeys
// // Concepto,CveConcepto,Importe,Estatus,ConceptoD,CveConceptoD,ImporteD,EstatusD
// int CveConcepto = e.Row.DataKey("CveConceptoP").ToEntero();
// int CveConceptoD = e.Row.DataKey("CveConceptoD").ToEntero();
// // Dim Importe As Decimal = e.Row.DataKey("Importe").ToDecimal()
// // Dim ImporteD As Decimal = e.Row.DataKey("ImporteD").ToDecimal()
// int Estatus = e.Row.DataKey("EstatusP").ToEntero();
// int EstatusD = e.Row.DataKey("EstatusD").ToEntero();
// int isOnlyBisibleP = e.Row.DataKey("isOnlyBisibleP").ToEntero();
// int isOnlyBisibleD = e.Row.DataKey("isOnlyBisibleD").ToEntero();
// bool isEditedP = e.Row.DataKey("isEditedP").ToEntero() > 0;
// bool isEditedD = e.Row.DataKey("isEditedD").ToEntero() > 0;
// //isEditedD
// // Controles
// Label LtlConcepto = e.Row.FCLabel("LtlConcepto");
// LinkButton LnkConcepto = e.Row.FCLinkButton("LnkConcepto");
// Label LtlConceptoD = e.Row.FCLabel("LtlConceptoD");
// LinkButton LnkConceptoD = e.Row.FCLinkButton("LnkConceptod");
// Label LtlImporte = e.Row.FCLabel("LtlImporte");
// LinkButton LnkImporte = e.Row.FCLinkButton("LnkImporte");
// Label LtlImporteD = e.Row.FCLabel("LtlImporteD");
// LinkButton LnkImporteD = e.Row.FCLinkButton("LnkImporteD");
// //isEditedD
// if (isOnlyBisibleP == 1)
// {
// e.Row.CssClass = string.Format("{0} isOnlyBisibleP", e.Row.CssClass);
// }
// if (isOnlyBisibleD == 1)
// {
// e.Row.CssClass = string.Format("{0} isOnlyBisibleD", e.Row.CssClass);
// }
// if (isEditedP)
// {
// e.Row.CssClass = string.Format("{0} isEditedP", e.Row.CssClass);
// }
// if (isEditedD)
// {
// e.Row.CssClass = string.Format("{0} isEditedD", e.Row.CssClass);
// }
// if (Estatus == -1) { LtlConcepto.Visible = false; }
// else if (Estatus > 0) { LtlImporte.Visible = false; }
// if (EstatusD == -1) { LtlConceptoD.Visible = false; }
// else if (EstatusD > 0) { LtlImporteD.Visible = false; }
// LtlImporte.Visible = false;
// LtlImporteD.Visible = false;
// if (Estatus < -1 | EstatusD < -1)
// {
// e.Row.CssClass = "ConceptosTotales";
// LtlImporte.Visible = true;
// LtlImporteD.Visible = true;
// }
// LnkImporte.CommandArgument = (CveConcepto > 0 ? CveConcepto.ToString() : "P");
// LnkImporteD.CommandArgument = (CveConceptoD > 0 ? CveConceptoD.ToString() : "D");
// LnkImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
// LnkImporteD.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
// if (CveConcepto == 0 && (Estatus == 0 || Estatus == -1 || Estatus == -3)) { LtlImporte.Text = ""; }
// if (CveConceptoD == 0 && (EstatusD == 0 || EstatusD == -1)) { LtlImporteD.Text = ""; }
// LnkConcepto.Visible = !LtlConcepto.Visible;
// LnkConceptoD.Visible = !LtlConceptoD.Visible;
// LnkImporte.Visible = !LtlImporte.Visible;
// LnkImporteD.Visible = !LtlImporteD.Visible;
// CveConceptoPolgvc = CveConcepto;
// CveConceptoDolgvc = CveConceptoD;
// }
//}
protected void LnkTimbrar_Click(object sender, EventArgs e) protected void LnkTimbrar_Click(object sender, EventArgs e)
{ {
@@ -344,14 +478,17 @@ public partial class Nomina_Finiquito : ClsPaginas
{ Alert(Msg, TipoMensaje.MsgAdvertencia); } { Alert(Msg, TipoMensaje.MsgAdvertencia); }
else else
{ {
ClsNominas ObjPeriodo = new ClsNominas(); using (ClsNominas ObjPeriodo = new ClsNominas())
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); {
ObjPeriodo.Dispose();
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
loadsobrerecibo(ObjPeriodo);
}
//ObjPeriodo.Dispose();
//Alert("Se ha timbrado correctamente"); //Alert("Se ha timbrado correctamente");
Alert("El finiquito se ha timbrado satisfactoriamente"); Alert("El finiquito se ha timbrado satisfactoriamente");
LnkTimbrar.Visible = false; LnkTimbrar.Visible = false; UPDatos.Update();
loadsobrerecibo(); UPDatos.Update();
} }
@@ -361,6 +498,217 @@ public partial class Nomina_Finiquito : ClsPaginas
protected void LnkFormatoRenuncia_Click(object sender, EventArgs e) protected void LnkFormatoRenuncia_Click(object sender, EventArgs e)
{ {
DataTable dtper = dtConceptos.FiltraParametros("Tipo IN ('P') AND EsPadre = 1 AND SoloVisible =0");
DataTable dtded = dtConceptos.FiltraParametros("Tipo IN ('D') AND EsPadre = 1 AND SoloVisible =0");
dtper.Columns.Add("BorradoLogico", typeof(int));
dtded.Columns.Add("BorradoLogico", typeof(int));
foreach (DataRow row in dtper.Rows)
{
int BorradoLogico = 0;
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
if (!(dtempleados.SUM(string.Format("[V_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal)) != 0))
{
BorradoLogico = 1;
}
row["BorradoLogico"] = BorradoLogico;
}
dtper.AcceptChanges();
foreach (DataRow row in dtded.Rows)
{
int BorradoLogico = 0;
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
if (!(dtempleados.SUM(string.Format("[V_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal)) != 0))
{
BorradoLogico = 1;
}
row["BorradoLogico"] = BorradoLogico;
}
dtded.AcceptChanges();
dtper = dtper.FiltraParametros("BorradoLogico=0");
dtded = dtded.FiltraParametros("BorradoLogico=0");
int maxper = dtper.Rows.Count;
int maxded = dtded.Rows.Count;
int i = 0;
List<NConcepto> lconc = new List<NConcepto>();
for (i = 0; i < maxper || i < maxded; i++)
{
NConcepto nConcepto = new NConcepto();
DataRow row;
if (maxper > i)
{
row = dtper.Rows[i];
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
string Concepto = row["Concepto"].ToString();
string Codigo = row["Codigo"].ToString();
//bool visible = (dtempleados.SUM(string.Format("[V_{0}]", CveConcepto)) > 0);
double Importe = dtempleados.SUM(string.Format("[V_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal));
nConcepto.CveConceptoP = CveConcepto;
nConcepto.ConceptoP = Concepto;
nConcepto.NoConceptoP = Codigo;
nConcepto.ImporteP = Importe;
nConcepto.ValorP = dtempleados.SUM(string.Format("[VAL_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal));
}
if (maxded > i)
{
row = dtded.Rows[i];
int CveConcepto = row["CveConcepto"].ToString().ToEntero();
string Concepto = row["Concepto"].ToString();
string Codigo = row["Codigo"].ToString();
//bool visible = (dtempleados.SUM(string.Format("[V_{0}]", CveConcepto)) > 0);
double Importe = dtempleados.SUM(string.Format("[V_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal));
nConcepto.CveConceptoD = CveConcepto;
nConcepto.ConceptoD = Concepto;
nConcepto.NoConceptoD = Codigo;
nConcepto.ImporteD = Importe;
nConcepto.ValorD = dtempleados.SUM(string.Format("[VAL_{0}]", CveConcepto), string.Format("CvePersonal = {0}", CvePersonal));
}
lconc.Add(nConcepto);
}
lconc.Add(new NConcepto());
NConcepto SubTotales = new NConcepto();
SubTotales.CveConceptoP = 0;
SubTotales.ConceptoP = "Total Percepciones";
SubTotales.EstatusP = -2;
SubTotales.ImporteP = dtempleados.SUM("SumaPercepciones", string.Format("CvePersonal = {0}", CvePersonal));
///Alert(SubTotales.ImporteP.ToString());
SubTotales.CveConceptoD = 0;
SubTotales.ConceptoD = "Total Deducciones";
SubTotales.EstatusD = -2;
SubTotales.ImporteD = dtempleados.SUM("SumaDeducciones", string.Format("CvePersonal = {0}", CvePersonal));
NConcepto Totales = new NConcepto();
Totales.CveConceptoD = 0;
Totales.ConceptoD = "Total";
Totales.EstatusD = -3;
Totales.ImporteD = dtempleados.SUM("Total", string.Format("CvePersonal = {0}", CvePersonal));
lconc.Add(SubTotales);
lconc.Add(Totales);
DataTable dtCon = new DataTable();
dtCon.Columns.Add(new DataColumn("NoConceptoP", typeof(string)));
dtCon.Columns.Add(new DataColumn("ConceptoP", typeof(string)));
dtCon.Columns.Add(new DataColumn("LabelValorP", typeof(string)));
dtCon.Columns.Add(new DataColumn("CveConceptoP", typeof(int)));
dtCon.Columns.Add(new DataColumn("ImporteP", typeof(double)));
dtCon.Columns.Add(new DataColumn("ValorP", typeof(double)));
dtCon.Columns.Add(new DataColumn("EstatusP", typeof(int)));
dtCon.Columns.Add(new DataColumn("isEditedP", typeof(int)));
dtCon.Columns.Add(new DataColumn("isOnlyBisibleP", typeof(int)));
dtCon.Columns.Add(new DataColumn("NoConceptoD", typeof(string)));
dtCon.Columns.Add(new DataColumn("ConceptoD", typeof(string)));
dtCon.Columns.Add(new DataColumn("LabelValorD", typeof(string)));
dtCon.Columns.Add(new DataColumn("CveConceptoD", typeof(int)));
dtCon.Columns.Add(new DataColumn("ImporteD", typeof(double)));
dtCon.Columns.Add(new DataColumn("ValorD", typeof(double)));
dtCon.Columns.Add(new DataColumn("EstatusD", typeof(int)));
dtCon.Columns.Add(new DataColumn("isEditedD", typeof(int)));
dtCon.Columns.Add(new DataColumn("isOnlyBisibleD", typeof(int)));
foreach (NConcepto itc in lconc)
{
DataRow dr = dtCon.NewRow();
dr["NoConceptoP"] = itc.NoConceptoP;
dr["ConceptoP"] = itc.ConceptoP;
dr["LabelValorP"] = itc.LabelValorP;
dr["CveConceptoP"] = itc.CveConceptoP;
dr["ImporteP"] = itc.ImporteP;
dr["ValorP"] = itc.ValorP;
dr["EstatusP"] = itc.EstatusP;
dr["isEditedP"] = itc.isEditedP;
dr["isOnlyBisibleP"] = itc.isOnlyBisibleP;
dr["NoConceptoD"] = itc.NoConceptoD;
dr["ConceptoD"] = itc.ConceptoD;
dr["LabelValorD"] = itc.LabelValorD;
dr["CveConceptoD"] = itc.CveConceptoD;
dr["ImporteD"] = itc.ImporteD;
dr["ValorD"] = itc.ValorD;
dr["EstatusD"] = itc.EstatusD;
dr["isEditedD"] = itc.isEditedD;
dr["isOnlyBisibleD"] = itc.isOnlyBisibleD;
dtCon.Rows.Add(dr);
}
dtCon.AcceptChanges();
List<Microsoft.Reporting.WebForms.ReportDataSource> lrds = new List<Microsoft.Reporting.WebForms.ReportDataSource>();
Microsoft.Reporting.WebForms.ReportDataSource rds = new Microsoft.Reporting.WebForms.ReportDataSource();
rds.Name = "DataSet1";
rds.Value = dtCon;// lconc;
lrds.Add(rds);
List<Microsoft.Reporting.WebForms.ReportParameter> parametros = new List<Microsoft.Reporting.WebForms.ReportParameter>();
string CodigoEmpleado = "";
string NombreCompleto = "";
string RFC = "";
string CURP = "";
string TipoPeriodo = "";
string NSS = "";
string DiasLaborados = "";
string DiasFaltados = "";
string DiasVacaciones = "";
string FechaInicio = "";
string FechaFin = "";
string DiasRetardos = "";
string DiasIncapacidad = "";
string SubProyecto = "";
{
DataRow drow = dtempleados.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal));
if (drow != null)
{
DiasLaborados = string.Format("{0}", drow["DiasLaborados"].ToString().ToEntero());
DiasFaltados = string.Format("{0}", drow["DiasFaltados"].ToString().ToEntero());
DiasVacaciones = string.Format("{0}", drow["DiasVacaciones"].ToString().ToEntero());
FechaInicio = string.Format("{0:dd/MM/yyyy}", drow["FechaInicio"]);
FechaFin = string.Format("{0:dd/MM/yyyy}", drow["FechaFin"]);
DiasRetardos = string.Format("{0}", drow["DiasRetardos"].ToString().ToEntero());
DiasIncapacidad = string.Format("{0}", drow["DiasIncapacidad"].ToString().ToEntero());
}
}
//string Codigo = "";
using (ClsRH objrh = new ClsRH())
{
if (objrh.GetPersonal(CvePersonal, UsuarioActual.CveEmpresa) && objrh.DtResultados.Rows.Count > 0)
{
DataRow drow = objrh.DtResultados.Rows[0];
SubProyecto = drow["SubProyecto"].ToString();
CodigoEmpleado = drow["Codigo"].ToString();
NombreCompleto = drow["NombreCompleto"].ToString();
RFC = drow["RFC"].ToString();
CURP = drow["CURP"].ToString();
TipoPeriodo = drow["TipoPeriodo"].ToString();
NSS = drow["NSS"].ToString();
}
}
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("DiasIncapacidad", DiasIncapacidad));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("Codigo", CodigoEmpleado));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("NombreCompleto", NombreCompleto));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("RFC", RFC));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("CURP", ""));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("TipoPeriodo", TipoPeriodo));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("NSS", NSS));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("DiasLaborados", DiasLaborados));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("DiasFaltados", DiasFaltados));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("DiasVacaciones", DiasVacaciones));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("FechaInicio", FechaInicio));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("FechaFin", FechaFin));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("DiasRetardos", DiasRetardos));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("Empresa", UsuarioActual.Empresa.Empresa));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("SubProyecto", SubProyecto));
parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("FechaPago", ""));
//parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("", ""));
//parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("", ""));
//parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("", ""));
//parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("", ""));
//parametros.Add(new Microsoft.Reporting.WebForms.ReportParameter("", ""));
string urlfile = System.IO.Path.Combine(ModExtensiones.DirectorioBaseEmpresas, string.Format("Empresas/{0}/Formatos/SobreRecibo.rdlc", UsuarioActual.CveEmpresa));
if (!System.IO.File.Exists(urlfile))
{
urlfile = System.IO.Path.Combine(ModExtensiones.DirectorioBaseEmpresas, "Empresas/Grales/Formatos/SobreRecibo.rdlc");
}
ImprimirPDF(urlfile, lrds, parametros, "SobreRecibo", "PDF", null);
} }
protected void LnkCambiarEmpleado_Click(object sender, EventArgs e) protected void LnkCambiarEmpleado_Click(object sender, EventArgs e)
@@ -529,13 +877,14 @@ public partial class Nomina_Finiquito : ClsPaginas
{ {
ObjPersonal.RollBack(); ObjPersonal.RollBack();
} }
if (continuar) { loadsobrerecibo(); } if (continuar)
{ loadsobrerecibo(onom); }
} }
} }
UPDatos.Update(); UPDatos.Update();
} }
public void loadsobrerecibo() public void loadsobrerecibo(ClsNominas objnom)
{ {
List<NConcepto> finordin = null; List<NConcepto> finordin = null;
List<NConcepto> finindem = null; List<NConcepto> finindem = null;
@@ -545,36 +894,33 @@ public partial class Nomina_Finiquito : ClsPaginas
DataTable dtempleados = null; DataTable dtempleados = null;
*/ */
using (ClsNominas objnom = new ClsNominas()) if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoIndemnizacion, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
{ {
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoIndemnizacion, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1) dtempleados = objnom.DTSetResultados.Tables[3];
{ dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
dtempleados = objnom.DTSetResultados.Tables[3]; dtConceptos = objnom.DTSetResultados.Tables[0];
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
dtConceptos = objnom.DTSetResultados.Tables[0];
}
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
{
finindem = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
}
dtempleadosConceptos = null;
dtempleados = null;
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoFiniquito, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
{
dtempleados = objnom.DTSetResultados.Tables[3];
LnkAutorizar.Visible = (dtempleados.COUNT("CvePersonal", "NomAutorizado =0") > 0);
LnkGuardarDatos.Enabled = LnkAutorizar.Visible;
LnkTimbrar.Visible = !(LnkAutorizar.Visible) && (dtempleados.COUNT("CvePersonal", "SeTimbro=0") > 0);
UpAcciones.Update();
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
dtConceptos = objnom.DTSetResultados.Tables[0];
}
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
{
finordin = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
}
} }
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
{
finindem = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
}
dtempleadosConceptos = null;
dtempleados = null;
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoFiniquito, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
{
dtempleados = objnom.DTSetResultados.Tables[3];
LnkAutorizar.Visible = (dtempleados.COUNT("CvePersonal", "NomAutorizado =0") > 0);
LnkGuardarDatos.Enabled = LnkAutorizar.Visible;
LnkTimbrar.Visible = !(LnkAutorizar.Visible) && (dtempleados.COUNT("CvePersonal", "SeTimbro=0") > 0);
UpAcciones.Update();
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
dtConceptos = objnom.DTSetResultados.Tables[0];
}
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
{
finordin = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
}
GvFinOrdinario.DataSource = finordin; GvFinOrdinario.DataSource = finordin;
GVFinIndemnizacion.DataSource = finindem; GVFinIndemnizacion.DataSource = finindem;
GvFinOrdinario.DataBind(); GvFinOrdinario.DataBind();
@@ -733,4 +1079,152 @@ public partial class Nomina_Finiquito : ClsPaginas
} }
} }
protected void LnkCancelar_Click(object sender, EventArgs e)
{
using (ClsNominas onom = new ClsNominas())
{
if (onom.RemoveFiniquito(CvePersonal, UsuarioActual.CveEmpresa, CvePersonalAltas))
{
Alert("se ha eliminado el proceso de finiquito");
}
}
}
protected void LnkSimular_Click(object sender, EventArgs e)
{
if (LblFechaAlta.Text.ToDate() > TxtFechaBaja.Text.ToDate())
{
Alert("la fecha de baja no puede ser menor a la fecha alta", ModExtensiones.TipoMensaje.MsgAdvertencia);
}
else
{
bool continuar = false;
using (ClsRH ObjPersonal = new ClsRH())
using (ClsNominas onom = new ClsNominas(ObjPersonal.IniciaTransacSQL()))
{
if (ObjPersonal.UpPersonalAltas(CvePersonal, "", TxtFechaBaja.Text.ToDateTime().ToString("yyyy/MM/dd"), -1, DdlMotivoBaja.SelectedValue.ToEntero(), ChkesLiquidacion.Checked) && ObjPersonal.GetPersonalAltas(CvePersonal) && ObjPersonal.DtResultados.Rows.Count > 0)
{
DataRow da = ObjPersonal.DtResultados.Rows[0];
CvePeriodoIndemnizacion = da["CvePeriodoIndemnizacion"].ToString().ToEntero();
CvePeriodoFiniquito = da["CvePeriodoFiniquito"].ToString().ToEntero();
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa);
}
if (continuar)
{
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa);
}
if (continuar)
{ loadsobrerecibo(onom); }
if (continuar)
{
ObjPersonal.RollBack();
}
else
{
ObjPersonal.RollBack();
}
}
}
UPDatos.Update();
}
protected void DdlmcConceptos_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void BtnAceptarMC_Click(object sender, EventArgs e)
{
bool continuar = true;
int CveNomina = 0;
double Total = 0;
int CveMoneda = 1;
int CveMetodoPago = 0;
int CveConcepto = DdlmcConceptos.SelectedValue.ToEntero();
if (CveConcepto > 0 && CvePersonal > 0)
{
decimal ImporteConcepto = TxtmcImporte.Text.Replace("$", "").Replace(",", "").ToDecimal();
decimal ImporteGravadoConcepto = TxtmcImporteGrabado.Text.Replace("$", "").Replace(",", "").ToDecimal();
decimal ImporteExentoConcepto = ImporteConcepto - ImporteGravadoConcepto;
decimal ImporteValor = Txtmcvalor.Text.Replace("$", "").Replace(",", "").ToDecimal();
using (ClsNominas objNomina = new ClsNominas())
{
objNomina.IniciaTransacSQL();
if (continuar)
{
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoIndemnizacion, -1, UsuarioActual.CveEmpresa))
{
if (objNomina.DtResultados.Rows.Count > 0)
{
CveNomina = objNomina.CveNomina;
}
else
{
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoIndemnizacion, Total, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, false))
{
CveNomina = objNomina.CveNomina;
}
else
{
continuar = false;
}
}
}
}
if (CveNomina == 0)
{
continuar = false;
}
if (continuar)
{
if (continuar)
{
if (!objNomina.AddUPNom_NominasDetalles(CveNomina, CvePeriodoIndemnizacion, CvePersonal, CveConcepto, ImporteConcepto, ImporteGravadoConcepto, ImporteExentoConcepto, ImporteValor, UsuarioActual.CveUsuario, true))
{
continuar = false;
}
}
}
if (continuar)
{ objNomina.Commit(); }
else
{
objNomina.RollBack();
}
}
if (continuar)
{
using (ClsNominas objNomina = new ClsNominas())
{
loadsobrerecibo(objNomina);
}
Alert("El cambio se ha guardado correctamente.");
}
}
else
{
if (CveConcepto > 0)
{
Alert("Debe seleccionar un empleado.", TipoMensaje.MsgAdvertencia);
}
else
{
Alert("Debe seleccionar un concepto.", TipoMensaje.MsgAdvertencia);
}
}
}
} }

View File

@@ -173,6 +173,9 @@
<li> <li>
<asp:LinkButton ID="LnkAsistenciaIncidencias" Visible="true" OnClick="LnkAsistenciaIncidencias_Click" runat="server"><i class="fa fa-check-square"></i>Incidencias asistencia </asp:LinkButton> <asp:LinkButton ID="LnkAsistenciaIncidencias" Visible="true" OnClick="LnkAsistenciaIncidencias_Click" runat="server"><i class="fa fa-check-square"></i>Incidencias asistencia </asp:LinkButton>
</li> </li>
<li>
<asp:LinkButton ID="LinkButton2" Visible="true" OnClick="lnkreportepercepciones_Click" runat="server"><i class="fa fa-check-square"></i>Reporte percepciones y deducciones </asp:LinkButton>
</li>
<li> <li>
<asp:LinkButton ID="LnkReporteAcumulados" Visible="true" OnClick="LnkReporteAcumulados_Click" runat="server"><i class="fa fa-line-chart"></i>Reporte acumulados </asp:LinkButton> <asp:LinkButton ID="LnkReporteAcumulados" Visible="true" OnClick="LnkReporteAcumulados_Click" runat="server"><i class="fa fa-line-chart"></i>Reporte acumulados </asp:LinkButton>
</li> </li>
@@ -2045,6 +2048,48 @@
</div> </div>
</div> </div>
<div id="DmodalReportePercepcionesdeducciones" class="modal ADS fade" role="dialog">
<div class="modal-dialog" tabindex="-1">
<div class="modal-content rowpadding">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<h4 class="modal-title" runat="server" style="text-align: left">Reporte de percepciones y deducciones</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRpdFechaInicio" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaInicio">Fecha Inicio</asp:Label>
<ajax:MaskedEditExtender ID="MaskedEditExtender3" runat="server" TargetControlID="TxtRpdFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender3" TargetControlID="TxtRpdFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporteInicidencia"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaInicio"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 118px" runat="server"></asp:TextBox>
<asp:Label runat="server" AssociatedControlID="TxtRIFechaFin">Fecha Fin</asp:Label>
<ajax:MaskedEditExtender ID="MaskedEditExtender5" runat="server" TargetControlID="TxtRpdFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender4" TargetControlID="TxtRpdFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporteInicidencia"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaFin"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<asp:LinkButton ID="LnkrRepPercpDed" OnClick="LnkrRepPercpDed_Click" ValidationGroup="VGReporterepperde" CssClass="btn btn-primary" runat="server">Descargar</asp:LinkButton>
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</div>
</div>
</div>
</div>
<div id="DmodalReporteInicidencia" class="modal ADS fade" role="dialog"> <div id="DmodalReporteInicidencia" class="modal ADS fade" role="dialog">
<div class="modal-dialog" tabindex="-1"> <div class="modal-dialog" tabindex="-1">
<div class="modal-content rowpadding"> <div class="modal-content rowpadding">

View File

@@ -1541,9 +1541,9 @@ public partial class Nomina_Nomina2 : ClsPaginas
//SRCvePersonal //SRCvePersonal
if (SRCveConcepto > 0) if (SRCveConcepto > 0)
{ {
using (ClsNominas onom =new ClsNominas()) using (ClsNominas onom = new ClsNominas())
{ {
if(onom.DeleteNom_NominasDetalles(SRCveConcepto, SRCvePersonal, CvePeriodoSeleccionado)) if (onom.DeleteNom_NominasDetalles(SRCveConcepto, SRCvePersonal, CvePeriodoSeleccionado))
{ {
Alert("el importe sera tomado del calculo y no del valor fijo"); Alert("el importe sera tomado del calculo y no del valor fijo");
} }
@@ -2346,7 +2346,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
LnkImportexCalculo.CommandArgument = LnkImporte.CommandArgument; LnkImportexCalculo.CommandArgument = LnkImporte.CommandArgument;
LnkImporteDxCalculo.CommandArgument = LnkImporteD.CommandArgument; LnkImporteDxCalculo.CommandArgument = LnkImporteD.CommandArgument;
LnkImportexCalculo.Visible = isEditedP; LnkImportexCalculo.Visible = isEditedP;
LnkImporteDxCalculo.Visible =isEditedD; LnkImporteDxCalculo.Visible = isEditedD;
LnkImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : "")); LnkImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
LnkImporteD.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : "")); LnkImporteD.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "<i class=\"fa fa-plus\"></i>" : ""));
@@ -4803,7 +4803,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
string script = "";// string.Format("SaveCsv(\"MovtosAfil.txt\", '{0}');SaveCsv(\"MovtosmodSalario.txt\", '{1}');SaveCsv(\"movtosBajas.txt\", '{2}');", MovtosAfil.Replace("'", "\\'"), MovtosmodSalario.Replace("'", "\\'"), movtosBajas.Replace("'", "\\'")); string script = "";// string.Format("SaveCsv(\"MovtosAfil.txt\", '{0}');SaveCsv(\"MovtosmodSalario.txt\", '{1}');SaveCsv(\"movtosBajas.txt\", '{2}');", MovtosAfil.Replace("'", "\\'"), MovtosmodSalario.Replace("'", "\\'"), movtosBajas.Replace("'", "\\'"));
if (ChkSuaAltas.Checked) if (ChkSuaAltas.Checked)
{ {
script= string.Format("{1}SaveCsv(\"MovtosAfil.txt\", '{0}');", MovtosAfil.Replace("'", "\\'"), script); script = string.Format("{1}SaveCsv(\"MovtosAfil.txt\", '{0}');", MovtosAfil.Replace("'", "\\'"), script);
} }
if (ChkSuaBajas.Checked) if (ChkSuaBajas.Checked)
{ {
@@ -5628,14 +5628,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
{ {
using (ClsNominas objnom = new ClsNominas()) using (ClsNominas objnom = new ClsNominas())
{ {
int CvePrePolizaProvision = 0; int CvePrePolizaasmilidos = 0;
if (objnom.DtResultados.Rows.Count > 0)
{
CvePrePolizaProvision = objnom.DtResultados.Rows[0]["CvePrePoliza"].ToString().ToEntero();
CvePrePolizaasmilidos = objnom.DtResultados.Rows[0]["CvePrePolizaAsimilables"].ToString().ToEntero();
}
if (objnom.Autorizaperiodoconta(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa)) if (objnom.Autorizaperiodoconta(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa))
{ {
int CvePrePolizaProvision = 0; int CvePrePolizaasmilidos = 0;
if (objnom.DtResultados.Rows.Count > 0)
{
CvePrePolizaProvision = objnom.DtResultados.Rows[0]["CvePrePoliza"].ToString().ToEntero();
CvePrePolizaasmilidos = objnom.DtResultados.Rows[0]["CvePrePolizaAsimilables"].ToString().ToEntero();
}
string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\"> Asimilados</a>", CvePrePolizaProvision, CvePrePolizaasmilidos); string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\"> Asimilados</a>", CvePrePolizaProvision, CvePrePolizaasmilidos);
Alert(mensaje); Alert(mensaje);
} }
@@ -5764,6 +5764,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
RegistraScript("$('#DmodalReporteInicidencia').modal()"); RegistraScript("$('#DmodalReporteInicidencia').modal()");
} }
protected void lnkreportepercepciones_Click(object sender, EventArgs e)
{
RegistraScript("$('#DmodalReportePercepcionesdeducciones').modal()");
}
protected void LnkProcesarReporteIncidencia_Click(object sender, EventArgs e) protected void LnkProcesarReporteIncidencia_Click(object sender, EventArgs e)
{ {
@@ -5864,4 +5868,48 @@ public partial class Nomina_Nomina2 : ClsPaginas
protected void LinkButton1_Click(object sender, EventArgs e)
{
}
protected void LnkrRepPercpDed_Click(object sender, EventArgs e)
{
DateTime fechai = TxtRIFechaInicio.Text.ToDateTime();
DateTime fechaf = TxtRIFechaFin.Text.ToDateTime();
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
using (ClsNominas nom = new ClsNominas())
{
if (nom.ReportedePercepcionesDeduccionesGet(UsuarioActual.CveEmpresa, fechai, fechaf, 4))
{
var libro = wb.AddWorksheet(nom.DTSetResultados.Tables[0], "Percepciones y deducciones");
libro.ColumnsUsed().AdjustToContents();
//ws.Row(1).InsertRowsAbove(1);
}
}
System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs);
fs.Position = 0;
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
using (System.IO.Stream input = fs)
{
input.CopyTo(memoryStream);
}
memoryStream.Position = 0;
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", string.Format("attachment;filename=percepciones .xlsx", ""));
Response.BinaryWrite(memoryStream.ToArray());
Response.End();
}
} }

View File

@@ -146,6 +146,7 @@
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:BoundField HeaderText="Tipo" DataField="Tipo" ItemStyle-Width="5%" /> <asp:BoundField HeaderText="Tipo" DataField="Tipo" ItemStyle-Width="5%" />
<asp:BoundField HeaderText="Fecha" DataField="Fecha" DataFormatString="{0:d}" ItemStyle-Width="8.5%" />
<asp:TemplateField HeaderText="Descripción" ItemStyle-Width="20%"> <asp:TemplateField HeaderText="Descripción" ItemStyle-Width="20%">
<ItemTemplate> <ItemTemplate>
<div class="truncate" style="max-width: 200px;"> <div class="truncate" style="max-width: 200px;">
@@ -155,18 +156,18 @@
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:HyperLinkField HeaderText="Proveedor" Target="_blank" DataTextField="Proveedor" DataNavigateUrlFields="CveProveedor" DataNavigateUrlFormatString="~/Compras/Proveedores.aspx?CveProveedor={0}" ControlStyle-CssClass="truncate" ItemStyle-Width="20%" /> <asp:HyperLinkField HeaderText="Proveedor" Target="_blank" DataTextField="Proveedor" DataNavigateUrlFields="CveProveedor" DataNavigateUrlFormatString="~/Compras/Proveedores.aspx?CveProveedor={0}" ControlStyle-CssClass="truncate" ItemStyle-Width="20%" />
<asp:BoundField DataField="DetallePS" HeaderText="Detalle Productos / Servicios" ControlStyle-CssClass="Texto" ItemStyle-Font-Size="X-Small" ItemStyle-Width="20%" /> <asp:BoundField DataField="DetallePS" HeaderText="Detalle Productos / Servicios" ControlStyle-CssClass="Texto" ItemStyle-Font-Size="X-Small" />
<asp:TemplateField HeaderText="Importe" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Right" HeaderStyle-HorizontalAlign="Center"> <asp:TemplateField HeaderText="Importe" ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right" HeaderStyle-HorizontalAlign="Center">
<ItemTemplate> <ItemTemplate>
<asp:Label Text='<%#String.Concat(Eval("Total", "{0:c}"), " ", Eval("MonAbreviatura"))%>' ID="LbImporte" runat="server" /> <asp:Label Text='<%#String.Concat(Eval("Total", "{0:c}"), " ", Eval("MonAbreviatura"))%>' ID="LbImporte" runat="server" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ItemStyle-Width="5%"> <asp:TemplateField ItemStyle-Width="2.5%">
<ItemTemplate> <ItemTemplate>
<asp:CheckBox runat="server" ID="CheckVincular" ClientIDMode="AutoID" /> <asp:CheckBox runat="server" ID="CheckVincular" ClientIDMode="AutoID" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField> <asp:TemplateField ItemStyle-Width="2.5%">
<HeaderTemplate>PDF</HeaderTemplate> <HeaderTemplate>PDF</HeaderTemplate>
<ItemTemplate> <ItemTemplate>
<asp:HyperLink ID="HplPDF" runat="server" Text="PDF"></asp:HyperLink> <asp:HyperLink ID="HplPDF" runat="server" Text="PDF"></asp:HyperLink>

View File

@@ -251,7 +251,7 @@ Partial Class OC_PopUpBuscarReq
GV.Columns(2).Visible = False GV.Columns(2).Visible = False
End If End If
e.Row.Cells(5).Text = e.Row.DBCampo("DetallePS").Replace("^", "<br />") e.Row.Cells(6).Text = e.Row.DBCampo("DetallePS").Replace("^", "<br />")
End If End If
End Sub End Sub

View File

@@ -10,15 +10,28 @@
<asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server"> <asp:Content ID="Content4" ContentPlaceHolderID="HB" Runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" Runat="Server">
<li> <asp:UpdatePanel runat="server" id="UPAcciones" UpdateMode="Conditional">
<asp:LinkButton ID="LnkPdf" OnClick="LnkPdf_Click" runat="server"> <i class="fa fa-file-pdf-o" style="font-weight:bold;"></i> Generar PDF</asp:LinkButton> <ContentTemplate>
</li> <li>
<li> <asp:LinkButton ID="LnkPdf" OnClick="LnkPdf_Click" runat="server"> <i class="fa fa-file-pdf-o" style="font-weight:bold;"></i> Generar PDF</asp:LinkButton>
<asp:LinkButton ID="LnkExcel" OnClick="LnkExcel_Click" runat="server"><i class="fa fa-file-excel-o" style="font-weight:bold;"></i> Exporta Excel</asp:LinkButton> </li>
</li> <li>
<li> <asp:LinkButton ID="LnkExcel" OnClick="LnkExcel_Click" runat="server"><i class="fa fa-file-excel-o" style="font-weight:bold;"></i> Exporta Excel</asp:LinkButton>
<asp:LinkButton ID="LnkImpresionMasiva" OnClick="LnkImpresionMasiva_Click" runat="server"> <i class="fa fa-download" style="font-weight:bold;"></i> Descargar PDFs</asp:LinkButton> </li>
</li> <li>
<asp:LinkButton ID="LnkImpresionMasiva" OnClick="LnkImpresionMasiva_Click" runat="server"> <i class="fa fa-download" style="font-weight:bold;"></i> Descargar PDFs</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkCambiarFecha" OnClick="LnkCambiarFecha_Click" runat="server"> <i class="fa fa-calendar" style="font-weight:bold;"></i> Cambiar Fechas</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkGuardar" runat="server" Visible="false" data-toggle="modal" data-target="#ModalUpload"> <i class="fa fa-floppy-o" style="font-weight:bold;"></i> Guardar</asp:LinkButton>
</li>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="LnkGuardar" />
</Triggers>
</asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server"> <asp:Content ID="Content6" ContentPlaceHolderID="HA" Runat="Server">
</asp:Content> </asp:Content>
@@ -108,13 +121,20 @@
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvSolicitudes.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a> <a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('TxtBusqueda','{0}')", GvSolicitudes.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div> </div>
</div> </div>
<asp:GridView ID="GvSolicitudes" runat="server" GridLines="None" DataKeyNames="CveOrdenCompra,Folio, RazonSocial, ImporteSol, FolioMov, Importe, Nombre" <asp:GridView ID="GvSolicitudes" runat="server" GridLines="None" DataKeyNames="CveOrdenCompra,Folio, RazonSocial, ImporteSol, FolioMov, Importe, Nombre, CveEvento"
CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-sort="true" data-footer="0" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" CssClass="table table-striped table-advance table-hover Widthall mysmallbtn ScrollAD" data-sort="true" data-footer="0" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False"
EmptyDataText="No se encontraron registros"> EmptyDataText="No se encontraron registros">
<Columns> <Columns>
<asp:TemplateField Visible="false">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkOrdenCompra" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ord. Compra" ItemStyle-Width="10%"> <asp:TemplateField HeaderText="Ord. Compra" ItemStyle-Width="10%">
<ItemTemplate> <ItemTemplate>
<asp:HyperLink ID="HplNum" runat="server" CssClass="Texto" Target="_blank" NavigateUrl='<%# Eval("CveOrdenCompra", "/OC/OC.aspx?OC={0}")%>' Text='<%# Eval("Folio") %>'></asp:HyperLink> <asp:HyperLink ID="HplNumFolio" runat="server" CssClass="Texto" Target="_blank" NavigateUrl='<%# Eval("CveOrdenCompra", "/OC/OC.aspx?OC={0}")%>' Text='<%# Eval("Folio") %>'></asp:HyperLink>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:BoundField DataField="RazonSocial" HeaderText="Proveedor" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="RazonSocial" HeaderText="Proveedor" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left" />
@@ -126,7 +146,7 @@
<asp:TemplateField HeaderText="Folio Mov. Banc." ItemStyle-Width="10%" Visible="false"> <asp:TemplateField HeaderText="Folio Mov. Banc." ItemStyle-Width="10%" Visible="false">
<ItemTemplate> <ItemTemplate>
<asp:HyperLink ID="HplNum" runat="server" CssClass="Texto" Target="_blank" NavigateUrl='<%# Eval("CveIE", "/Bancos/IE.aspx?CveIE={0}") %>' Text='<%# Eval("FolioMov") %>'></asp:HyperLink> <asp:HyperLink ID="HplNumFolioMov" runat="server" CssClass="Texto" Target="_blank" NavigateUrl='<%# Eval("CveIE", "/Bancos/IE.aspx?CveIE={0}") %>' Text='<%# Eval("FolioMov") %>'></asp:HyperLink>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
@@ -151,8 +171,77 @@
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<div id="ModalUpload" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Actualizar Fechas</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UpFecha" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-4"> </div>
<div class="form-group col-md-6 form-md-line-input input-iconright" style="padding-left: 0px !important;">
<div class="input-group input-sm dater" data-date-format="dd/mm/yyyy" style="width: 50%;">
<span class="input-group-btn ">
<asp:LinkButton ID="btnFechaActualizar" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<asp:TextBox ID="txtFechaActualizar" ClientIDMode="Static" runat="server" Width="100%" CssClass="form-control input-sm" CausesValidation="true" MaxLength="18"></asp:TextBox>
<label style=" padding-bottom: 30px; width: 70%;" for="<%= txtFechaActualizar.ClientID.ToString()%>">Fecha:</label>
</div>
<asp:RequiredFieldValidator ID="RFVFechaInicioAdd" Display="None" CssClass="help-block errorimput" runat="server" ControlToValidate="txtFechaActualizar" ErrorMessage="<b><span style='text-decoration: underline'>ERROR</span></b>:<br>El campo <b>''Fecha''</b> es necesario." ValidationGroup="Actualiza"></asp:RequiredFieldValidator>
<ajax:MaskedEditExtender ID="MEEFechaActualiar" runat="server" TargetControlID="txtFechaActualizar" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaActualiar" TargetControlID="txtFechaActualizar" PopupButtonID="btnFechaActualizar" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaActualiar" runat="server" ControlToValidate="txtFechaActualizar" Display="None" ErrorMessage="La fecha no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Actualiza"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCEFechaActualiar" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaActualiar" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<%-- <div class="col-md-2" runat="server" style="margin-top: 3px;width:130px">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy">
<asp:TextBox ID="txtFechaActualizar" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Style="width: 80px;"></asp:TextBox>
<span class="input-group-btn ">
<asp:LinkButton ID="btnFechaActualizar" Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span>
<ajax:MaskedEditExtender ID="MEEFechaActualiar" runat="server" TargetControlID="txtFechaActualizar" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CEFechaActualiar" TargetControlID="txtFechaActualizar" PopupButtonID="btnFechaActualizar" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:CompareValidator ID="CVFechaActualiar" runat="server" ControlToValidate="txtFechaActualizar" Display="None" ErrorMessage="La fecha no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Actualiza"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCEFechaActualiar" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaActualiar" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>--%>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnGuardarArchivo" OnClick="BtnGuardarArchivo_Click" runat="server" ClientIDMode="Static" Text="Guardar" CssClass="btn btn-primary" ValidationGroup="Actualiza" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
</asp:Content> </asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" Runat="Server"> <asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script type="text/javascript">
jQuery('#C_datetimepicker').datetimepicker({
timepicker: false,
format: 'd.m.Y'
});
</script>
</asp:Content> </asp:Content>

View File

@@ -121,20 +121,20 @@ public partial class OC_RepSolicitudesAnticipo : ClsPaginas
{ {
if (DdlEstatus.SelectedValue.ToEntero() == 3) if (DdlEstatus.SelectedValue.ToEntero() == 3)
{ {
GvSolicitudes.Columns[5].Visible = false; GvSolicitudes.Columns[6].Visible = false;
GvSolicitudes.Columns[9].Visible = false; GvSolicitudes.Columns[10].Visible = false;
GvSolicitudes.Columns[6].Visible = true;
GvSolicitudes.Columns[7].Visible = true; GvSolicitudes.Columns[7].Visible = true;
GvSolicitudes.Columns[8].Visible = true;
} }
else else
{ {
GvSolicitudes.Columns[5].Visible = true; GvSolicitudes.Columns[6].Visible = true;
GvSolicitudes.Columns[9].Visible = true; GvSolicitudes.Columns[10].Visible = true;
GvSolicitudes.Columns[6].Visible = false;
GvSolicitudes.Columns[7].Visible = false; GvSolicitudes.Columns[7].Visible = false;
GvSolicitudes.Columns[8].Visible = false;
} }
CargaDatos(); CargaDatos();
@@ -153,6 +153,61 @@ public partial class OC_RepSolicitudesAnticipo : ClsPaginas
{ {
GenerarImpresionMasiva(); GenerarImpresionMasiva();
} }
protected void LnkCambiarFecha_Click(object sender, EventArgs e)
{
GvSolicitudes.Columns[0].Visible = true;
LnkGuardar.Visible = true;
LnkCambiarFecha.Visible = false;
UPAcciones.Update();
UPDatos.Update();
}
protected void BtnGuardarArchivo_Click(object sender, EventArgs e)
{
ActualizarFechas();
RegistraScript("$('#ModalUpload').modal('hide')", "hidemodal1");
GvSolicitudes.Columns[0].Visible = false;
LnkGuardar.Visible = false;
LnkCambiarFecha.Visible = true;
UPAcciones.Update();
UPDatos.Update();
}
private void ActualizarFechas()
{
ClsOIEventos ObjEvento = new ClsOIEventos();
DateTime FechaInicio;
DateTime FechaFin;
int CveEvento;
Boolean TieneError = true;
foreach (GridViewRow Gvr in GvSolicitudes.Rows)
{
if (Gvr.FCCheckBox("ChkOrdenCompra").Checked)
{
FechaInicio = txtFechaActualizar.Text.ToDateTime();
FechaFin = txtFechaActualizar.Text.ToDateTime();
CveEvento = Gvr.DataKey("CveEvento").ToEntero();
if (ObjEvento.UpdateEvento("-1", "-1", -1, -1, -1, FechaInicio, FechaFin, -1, "-1", CveEvento))
{
TieneError = false;
}
else
{
TieneError = true;
Alert("Ocurrio un error al actulizar las fechas", TipoMensaje.MsgError);
ObjEvento.RollBack();
break;
}
}
}
if (TieneError == false) {
ObjEvento.Commit();
Alert("Las Fechas se actualizaron correctamente");
}
ObjEvento.Dispose();
CargaDatos();
}
protected void GenerarPDF(String Opcion) protected void GenerarPDF(String Opcion)
{ {

View File

@@ -4,11 +4,11 @@
</asp:Content> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server"> <asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style> <style>
.GVCalculosSBC tr th:nth-child(n+6):not(:nth-child(n+10)) { .GVCalculosSBC tr th:nth-child(n+9):not(:nth-child(n+13)) {
background-color: #a9a9e8 !important; background-color: #a9a9e8 !important;
} }
.GVCalculosSBC tr th:nth-child(n+10):not(:nth-child(n+13)) { .GVCalculosSBC tr th:nth-child(n+13):not(:nth-child(n+16)) {
background-color: #88d6cd !important; background-color: #88d6cd !important;
} }
</style> </style>
@@ -88,7 +88,7 @@
<ContentTemplate> <ContentTemplate>
<table id="tableheader" style="display: none"> <table id="tableheader" style="display: none">
<tr> <tr>
<th colspan="5"></th> <th colspan="8"></th>
<th colspan="4" style="background-color: #a9a9e8 !important;">Actual</th> <th colspan="4" style="background-color: #a9a9e8 !important;">Actual</th>
<th colspan="3" style="background-color: #88d6cd !important;">Nuevo</th> <th colspan="3" style="background-color: #88d6cd !important;">Nuevo</th>
<th></th> <th></th>
@@ -117,9 +117,24 @@
<asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'> </asp:Label> <asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="NSS"> <asp:TemplateField HeaderText="Antiguedad">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="lblnumeroSS" runat="server" Text='<%# Eval("NumeroSS")%>'> </asp:Label> <asp:Label ID="lblnumeroSS" runat="server" Text='<%# Eval("Antiguedad")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Días aguinaldo">
<ItemTemplate>
<asp:Label ID="lblDiasAguinaldo" runat="server" Text='<%# Eval("NumDiasAguinaldo")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Días vacaciones">
<ItemTemplate>
<asp:Label ID="lblDiasVacaciones" runat="server" Text='<%# Eval("diasVacaciones")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Prima vacacional">
<ItemTemplate>
<asp:Label ID="LblPrimaVacacional" runat="server" Text='<%# Eval("PorPrimaVacacional","{0:P2}")%>'> </asp:Label>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Tipo salario"> <asp:TemplateField HeaderText="Tipo salario">

View File

@@ -145,14 +145,18 @@ public partial class RH_CalculoSBC : ClsPaginas
{ {
GVCalculosSBC.ExportToExcel("Salario"); GVCalculosSBC.ExportToExcel("Salario");
} }
if (Tab.ActiveTab == TabSBC) if (Tab.ActiveTab == TabParteFija)
{ {
GVCFija.ExportToExcel("Salario"); GVCFija.ExportToExcel("Salario");
} }
if (Tab.ActiveTab == TabSBC) if (Tab.ActiveTab == TabParteVariable)
{ {
GVPV.ExportToExcel("Salario"); GVPV.ExportToExcel("Salario");
} }
if (Tab.ActiveTab == TabDetalleParteVariable)
{
GVDetalleParteVariable.ExportToExcel("Salario");
}
} }
} }

View File

@@ -2936,12 +2936,19 @@ Partial Class RH_Personal
' Alert("La CLABE es obligatoria y debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) ' Alert("La CLABE es obligatoria y debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
' Exit Sub ' Exit Sub
'End If 'End If
If ChkEstatusPagoE.Checked Then
'CLABE SIEMPRE OBLIGATORIA SI NO ES BANCOMER 'CLABE SIEMPRE OBLIGATORIA SI NO ES BANCOMER
If TxtCLABECB.Text.Trim.Length <> 18 And TxtCLABECB.Text.Trim.Length = 0 And Not EsBancomer Then If TxtCLABECB.Text.Trim.Length <> 18 AndAlso TxtCLABECB.Text.Trim.Length = 0 AndAlso Not EsBancomer Then
Alert("La CLABE es obligatoria y debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) Alert("La CLABE es obligatoria y debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
Exit Sub Exit Sub
End If End If
'SI CLABE TIENE ALGO DEBE TENER UNA LOGITUD EXACTA DE 18
If TxtCLABECB.Text.Trim.Length <> 0 AndAlso TxtCLABECB.Text.Trim.Length <> 18 Then
Alert("La CLABE debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
End If
'SI CUENTA TIENE ALGO Y BANCO BANCOMER DEBE TENER UNA LOGITUD EXACTA DE 10 'SI CUENTA TIENE ALGO Y BANCO BANCOMER DEBE TENER UNA LOGITUD EXACTA DE 10
If TxtNumeroCuenta.Text.Trim.Length <> 0 AndAlso TxtNumeroCuenta.Text.Trim.Length <> 10 AndAlso EsBancomer Then If TxtNumeroCuenta.Text.Trim.Length <> 0 AndAlso TxtNumeroCuenta.Text.Trim.Length <> 10 AndAlso EsBancomer Then
@@ -2949,11 +2956,6 @@ Partial Class RH_Personal
Exit Sub Exit Sub
End If End If
'SI CLABE TIENE ALGO DEBE TENER UNA LOGITUD EXACTA DE 18
If TxtCLABECB.Text.Trim.Length <> 0 AndAlso TxtCLABECB.Text.Trim.Length <> 18 Then
Alert("La CLABE debe tener una longitud de 18 dígitos. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
''CUANDO SEA "BBVA" O "BANCOMER" DEBE TENER "CIE" O "CUENTA" ''CUANDO SEA "BBVA" O "BANCOMER" DEBE TENER "CIE" O "CUENTA"

View File

@@ -106,7 +106,7 @@
<asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros" <asp:GridView ID="GVRegDatos" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron registros"
CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" data-rows="1" data-cols="3" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None"> CssClass="ADSCROLLER2 table table-striped table-advance table-hover Widthall" data-rows="1" data-cols="3" data-heightmenos="100" data-heightfijo="600" Style="text-align: center;" GridLines="None">
<Columns> <Columns>
<asp:TemplateField HeaderText="Numero" ItemStyle-HorizontalAlign="Left"> <asp:TemplateField HeaderText="Numero" ItemStyle-HorizontalAlign="Left" >
<ItemTemplate> <ItemTemplate>
<asp:Label ID="LtlNumero" runat="server" CssClass="truncate" Width="50" Text='<%# Eval("CvePersonal") %>'> </asp:Label> <asp:Label ID="LtlNumero" runat="server" CssClass="truncate" Width="50" Text='<%# Eval("CvePersonal") %>'> </asp:Label>
</ItemTemplate> </ItemTemplate>

View File

@@ -162,7 +162,8 @@ Partial Class RH_RepChecadorPreAsistencia
DdlSubProyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1) DdlSubProyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1)
DdlSubProyecto.DataBind() DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1")) DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
DdlTurno.Items.Insert(0, New ListItem("Todos", "-1"))
DdlTurno.SelectedValue = "-1"
End Sub End Sub
@@ -326,6 +327,7 @@ Partial Class RH_RepChecadorPreAsistencia
Resultados.Columns.Add("CvePersonal") Resultados.Columns.Add("CvePersonal")
Resultados.Columns.Add("NombreCompleto") Resultados.Columns.Add("NombreCompleto")
'Resultados.Columns.Add("Codigo")
Resultados.Columns.Add("CveSubProyecto") Resultados.Columns.Add("CveSubProyecto")
Resultados.Columns.Add("SalarioDiario") Resultados.Columns.Add("SalarioDiario")
Resultados.Columns.Add("CveAsistenciasInasistencias") Resultados.Columns.Add("CveAsistenciasInasistencias")
@@ -350,11 +352,11 @@ Partial Class RH_RepChecadorPreAsistencia
If DdlTurno.SelectedValue.ToEntero > 0 And DdlTipoPeriodo.SelectedValue.ToEntero > 0 And DdlRango.SelectedValue.ToEntero > 0 Then If DdlTurno.SelectedValue.ToEntero > 0 And DdlTipoPeriodo.SelectedValue.ToEntero > 0 And DdlRango.SelectedValue.ToEntero > 0 Then
Dim FiltroSubProyecto As String = "" Dim FiltroSubProyecto As String = ""
Dim filtroturno = If(DdlTurno.SelectedValue = "-1", "", $"AND CveTurno = { DdlTurno.SelectedValue}")
If DdlSubProyecto.SelectedIndex > 0 Then If DdlSubProyecto.SelectedIndex > 0 Then
FiltroSubProyecto = $" CveTipoPeriodo = {DdlTipoPeriodo.SelectedValue } AND CveTurno = { DdlTurno.SelectedValue} AND CveSubProyecto = { DdlSubProyecto.SelectedValue.ToEntero }" FiltroSubProyecto = $" CveTipoPeriodo = {DdlTipoPeriodo.SelectedValue } {filtroturno} AND CveSubProyecto = { DdlSubProyecto.SelectedValue.ToEntero }"
Else Else
FiltroSubProyecto = $" CveTipoPeriodo = {DdlTipoPeriodo.SelectedValue } AND CveTurno = { DdlTurno.SelectedValue} " FiltroSubProyecto = $" CveTipoPeriodo = {DdlTipoPeriodo.SelectedValue } {filtroturno} "
End If End If
DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros(FiltroSubProyecto) DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros(FiltroSubProyecto)
@@ -429,6 +431,7 @@ Partial Class RH_RepChecadorPreAsistencia
Dim ReRow As DataRow = Resultados.NewRow Dim ReRow As DataRow = Resultados.NewRow
ReRow("CvePersonal") = dRow(0).ToString() ReRow("CvePersonal") = dRow(0).ToString()
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
'ReRow("Codigo") = dRow("Codigo").ToString()
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
ReRow("CveAsistenciasInasistencias") = "-1" ReRow("CveAsistenciasInasistencias") = "-1"
@@ -612,6 +615,7 @@ Partial Class RH_RepChecadorPreAsistencia
ReRow("CvePersonal") = dRow(0).ToString() ReRow("CvePersonal") = dRow(0).ToString()
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
'ReRow("Codigo") = dRow("Codigo").ToString()
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
@@ -708,6 +712,7 @@ Partial Class RH_RepChecadorPreAsistencia
Dim ReRow As DataRow = Resultados.NewRow Dim ReRow As DataRow = Resultados.NewRow
ReRow("CvePersonal") = dRow(0).ToString() ReRow("CvePersonal") = dRow(0).ToString()
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
'ReRow("Codigo") = dRow("Codigo").ToString()
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
@@ -760,6 +765,7 @@ Partial Class RH_RepChecadorPreAsistencia
ReRow("NombreCompleto") = dRow("NombreCompleto").ToString() ReRow("NombreCompleto") = dRow("NombreCompleto").ToString()
ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString() ReRow("CveSubProyecto") = dRow("CveSubProyecto").ToString()
ReRow("SalarioDiario") = dRow("SalarioDiario").ToString() ReRow("SalarioDiario") = dRow("SalarioDiario").ToString()
'ReRow("Codigo") = dRow("Codigo").ToString()
ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta ReRow("CveAsistenciasInasistencias") = CveAsistenciaInasistenciaFalta
ReRow("PorcentajePago") = "0" ReRow("PorcentajePago") = "0"
ReRow("Asistio") = "False" ReRow("Asistio") = "False"
@@ -797,6 +803,7 @@ Partial Class RH_RepChecadorPreAsistencia
dt.Columns.Add("CvePersonal") dt.Columns.Add("CvePersonal")
dt.Columns.Add("NombreCompleto") dt.Columns.Add("NombreCompleto")
'dt.Columns.Add("Codigo")
dt.Columns.Add("Fecha1") dt.Columns.Add("Fecha1")
dt.Columns.Add("Fecha2") dt.Columns.Add("Fecha2")
dt.Columns.Add("Fecha3") dt.Columns.Add("Fecha3")
@@ -857,8 +864,9 @@ Partial Class RH_RepChecadorPreAsistencia
For Each pRow As DataRow In DtPersonal.Rows For Each pRow As DataRow In DtPersonal.Rows
Dim RRow As DataRow = dt.NewRow Dim RRow As DataRow = dt.NewRow
RRow("CvePersonal") = pRow("CvePErsonal") RRow("CvePersonal") = pRow("CvePersonal")
RRow("NombreCompleto") = pRow("NombreCompleto") RRow("NombreCompleto") = pRow("NombreCompleto")
'RRow("Codigo") = pRow("Codigo")
ColumN = 2 ColumN = 2
@@ -974,9 +982,10 @@ Partial Class RH_RepChecadorPreAsistencia
DTAsistenciasInasistencias = objRH.DtResultados DTAsistenciasInasistencias = objRH.DtResultados
End If End If
DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros(" CveTipoPeriodo = " & DdlTipoPeriodo.SelectedValue & " AND CveEstado = 1 AND CveTurno = " & DdlTurno.SelectedValue) DtPersonal = GlobalDTRHPersonal(UsuarioActual.Empresa.CveEmpresa).FiltraParametros($" CveTipoPeriodo = { DdlTipoPeriodo.SelectedValue} AND CveEstado = 1 " & If(DdlTurno.SelectedValue = "-1", "", $" AND CveTurno = {DdlTurno.SelectedValue}"))
dt.Columns.Add("CvePersonal") dt.Columns.Add("CvePersonal")
dt.Columns.Add("NombreCompleto") dt.Columns.Add("NombreCompleto")
'dt.Columns.Add("Codigo")
dt.Columns.Add("Fecha1") dt.Columns.Add("Fecha1")
dt.Columns.Add("Fecha2") dt.Columns.Add("Fecha2")
dt.Columns.Add("Fecha3") dt.Columns.Add("Fecha3")
@@ -1032,8 +1041,9 @@ Partial Class RH_RepChecadorPreAsistencia
For Each pRow As DataRow In DtPersonal.Rows For Each pRow As DataRow In DtPersonal.Rows
Dim RRow As DataRow = dt.NewRow Dim RRow As DataRow = dt.NewRow
RRow("CvePersonal") = pRow("CvePErsonal") RRow("CvePersonal") = pRow("CvePersonal")
RRow("NombreCompleto") = pRow("NombreCompleto") RRow("NombreCompleto") = pRow("NombreCompleto")
'RRow("Codigo") = pRow("Codigo")
ColumN = 2 ColumN = 2
For Each drow As DataRow In DTFechas.Rows For Each drow As DataRow In DTFechas.Rows

Some files were not shown because too many files have changed in this diff Show More