This commit is contained in:
2023-07-04 20:52:40 -07:00
23 changed files with 2640 additions and 6033 deletions

View File

@@ -4778,7 +4778,8 @@ Partial Class Bancos_IE
filemove = fileItem.filename
Next
If ObjEventoBitacora.AddEventoBitacora(TxtEventoDescripcion.Text.Trim, String.Format("{0}", FileExtension), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveIE:=CveIE) Then
If ObjEventoBitacora.AddEventoBitacora(TxtEventoDescripcion.Text.Trim, String.Format(".{0}", FileExtension), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveIE:=CveIE) Then
If filemove <> "" Then
filemove.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("{0}OI", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:=False)
End If

View File

@@ -13,14 +13,11 @@
<asp:UpdatePanel runat="server">
<ContentTemplate>
<li>
<asp:LinkButton ID="LnkHabilitarSaldar" runat="server"><i class="fa fa-money"></i> Otros Egresos</asp:LinkButton>
<asp:LinkButton ID="LnkHabilitarSaldar" runat="server"><i class="fa fa-money"></i> Saldar</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkHabilitarSaldarFyE" runat="server"><i class="fa fa-money"></i> Viaticos-Personal</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkSaldar" Visible="false" OnClick="LnkSaldar_Click" runat="server"><i class="fa fa-money"></i> Saldar Proveedores</asp:LinkButton>
</li>
</li>
<li>
<asp:LinkButton ID="LnkSaldarFyE" Visible="false" OnClick="LnkSaldarFyE_Click" runat="server"><i class="fa fa-money"></i> Saldar FyE</asp:LinkButton>
</li>
@@ -143,8 +140,43 @@
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UpSaldar" UpdateMode="Conditional">
<ContentTemplate>
<br />
<div class="row" id="DVSaldar" runat="server" visible="false">
<div class="col-lg-1">
Concepto:
</div>
<div class="col-lg-3">
<asp:TextBox runat="server" ID="TxtConcepto" CausesValidation="true" Width="200px" MaxLength="100"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtConcepto" runat="server" Enabled="true" CssClass="help-block errorimput" ControlToValidate="TxtConcepto" Display="Dynamic"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpSaldar"></asp:RequiredFieldValidator>
</div>
<div class="col-lg-1">
<asp:Label runat="server" ID="LblSubproyecto"></asp:Label>:
</div>
<div class="col-lg-2">
<asp:DropDownList runat="server" ID="DdlSubProyecto" CssClass="select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="100%"></asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvDdlSubProyecto" InitialValue="-1" runat="server" CssClass="help-block errorimput" ControlToValidate="DdlSubProyecto" Display="Dynamic"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''SubProyecto''</b> es necesario, por favor ingréselo."
ValidationGroup="GrpSaldar"></asp:RequiredFieldValidator>
</div>
<div class="col-lg-1">
<asp:LinkButton ID="LnkSaldar" Visible="true" OnClick="LnkSaldar_Click" runat="server" CssClass="btn btn-primary" ValidationGroup="GrpSaldar">
<i class="fa fa-money"></i> Saldar
</asp:LinkButton>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<ajax:TabContainer ID="tabGeneral" runat="server" ActiveTabIndex="0" Width="100%" >
@@ -153,9 +185,9 @@
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvESC" runat="server" DataKeyNames="CveIE, Saldo, CveMoneda, CveConceptoContable, CveProveedor, CvePersonal,CveSubProyecto" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros de Egresos sin Comprobar de Proveedores" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" Style="text-align: center;" GridLines="None">
<asp:GridView ID="GvESC" runat="server" DataKeyNames="CveIE, Saldo, TipoCambio, CveMoneda, CveConceptoContable, CveProveedor, CvePersonal,CveSubProyecto,Folio, CveTipoProveedor" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros de Egresos sin Comprobar de Proveedores" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None">
<Columns>
<asp:TemplateField ItemStyle-Width="10%">
<asp:TemplateField ItemStyle-Width="5%">
<ItemTemplate>
<asp:CheckBox ID="chk" Checked="false" Visible="false" runat="server" />
<asp:Literal ID="LtlTip" runat="server" Text='<%# Eval("ConceptoTexto") %>' ></asp:Literal>
@@ -166,32 +198,28 @@
<asp:HyperLink ID="Hpl" runat="server" NavigateUrl='<%# String.Format("/Compras/Proveedores.aspx?CveProveedor={0}&Opt=3", Eval("CveProveedor"))%>' Text='<%# Eval("RazonSocial") %>'></asp:HyperLink>
<asp:Literal Text='<%# Eval("Moneda")%>' ID="LtMoneda" runat="server" Visible="false" />
</ItemTemplate>
<ControlStyle CssClass="Texto" />
<ItemStyle HorizontalAlign="Left" Width="250px" />
<ControlStyle CssClass="Texto" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Fecha">
<ItemTemplate>
<asp:Literal ID="LitFechaDocumento" runat="server" Text='<%# Bind("FechaDocumento", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="25px" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe">
<ItemTemplate>
<asp:Literal ID="LitImporte" runat="server" Text='<%# Bind("Importe", "{0:N2}") %>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="25px" HorizontalAlign="Right" />
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Tipo Transacción">
<ItemTemplate>
<asp:Literal ID="LitTipoTransaccion" runat="server" Text='<%# Bind("TipoTransaccion")%>'></asp:Literal>
</ItemTemplate>
<ItemStyle Width="125px" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Folio">
<ItemTemplate>
<asp:HyperLink ID="HLFolio" runat="server" Target="_blank" Text='<%# Bind("Folio")%>' CssClass="Texto"></asp:HyperLink>
</ItemTemplate>
<ItemStyle Width="75px" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Saldo" ItemStyle-CssClass="fixMargin">
<ItemTemplate>
@@ -199,7 +227,7 @@
<asp:Literal runat="server" Text="&nbsp;&nbsp;"></asp:Literal>
</ItemTemplate>
<ItemStyle Width="65px" Font-Bold="True" HorizontalAlign="Right" />
<ItemStyle Font-Bold="True" HorizontalAlign="Right" />
</asp:TemplateField>
</Columns>

View File

@@ -2,10 +2,9 @@
Option Strict On
Imports System.Data
Imports System.Windows.Forms.VisualStyles.VisualStyleElement
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Imports System.Linq
Partial Class Bancos_RepEgresosSinComprobante
Inherits ClsPaginas
@@ -61,6 +60,8 @@ Partial Class Bancos_RepEgresosSinComprobante
DdlProveedores.SelectedValue = "-1"
CargaDatos()
TxtConcepto.Text = "Saldado de Egresos por comprobar"
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubproyecto, AplicaTodos:="Selecione uno")
End If
End Sub
@@ -171,14 +172,19 @@ Partial Class Bancos_RepEgresosSinComprobante
End Sub
Private Sub LnkHabilitarSaldar_Click(sender As Object, e As EventArgs) Handles LnkHabilitarSaldar.Click
For Each gr As GridViewRow In GvESC.Rows
If gr.DataKey("CveIE") <> "" Then
gr.FCCheckBox("Chk").Visible = True
LnkSaldar.Visible = True
LnkHabilitarSaldar.Visible = False
UPDatos.Update()
End If
Next
TxtConcepto.Text = "Saldo de Egresos por comprobar"
DVSaldar.Visible = True
UpSaldar.Update()
End Sub
Private Sub LnkHabilitarSaldoFyE_Click(sender As Object, e As EventArgs) Handles LnkHabilitarSaldarFyE.Click
For Each gr As GridViewRow In GvPersonal.Rows
@@ -193,85 +199,96 @@ Partial Class Bancos_RepEgresosSinComprobante
Protected Sub LnkSaldar_Click(sender As Object, e As EventArgs)
Dim Contador As Integer = 0
For Each gr As GridViewRow In GvESC.Rows
If gr.FCCheckBox("Chk").Checked Then
Contador += 1
End If
Next
If Not Contador > 0 Then
Alert("No se hay movimientos seleccionados")
Exit Sub
End If
Dim ObjConta As New ClsContabilidad
Dim ObjProveedor As New ClsCompProveedores(ObjConta.IniciaTransacSQL())
Dim EsContabilizable As Boolean = If(UsuarioActual.CveEmpresa.Contiene(13, 83), False, True)
Dim CvePrePoliza As Integer = 0
Dim MsgError As String = ""
Try
For Each gr As GridViewRow In GvESC.Rows
If gr.FCCheckBox("Chk").Checked Then
Dim IdCtaContable As Integer = 0
Dim TipoMovtoOtIngresos As Boolean = False
Dim TipoMovtoConcepto As Boolean = True
Dim CveConceptoContable As Integer
Select Case gr.DataKey("CveConceptoContable").ToEntero
Case 10
CveConceptoContable = 21
Case 28
CveConceptoContable = 29
TipoMovtoOtIngresos = False
TipoMovtoConcepto = True
Case 37
CveConceptoContable = 43
Case 42
CveConceptoContable = 41
Case 43
CveConceptoContable = 37
End Select
If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, gr.DataKey("CveProveedor").ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
If ObjProveedor.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjProveedor.IdCtaContProveedores
If Contador > 0 Then
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepEgresosSinComprobante", 6, 0, 0, 1, Now,
TxtConcepto.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim ImporteSaldoGral As Decimal = 0
Dim TipoMovtoConcepto As Boolean = True
For Each gr As GridViewRow In GvESC.Rows
If gr.FCCheckBox("Chk").Checked Then
Dim ImporteSaldo As Decimal = gr.DataKey("Saldo").ToDecimal
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(11, gr.DataKey("CveMoneda").ToEntero, True, gr.DataKey("CveTipoProveedor").ToEntero)
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteSaldo, ImporteSaldo, ConPrepAplicacion.CveConcepto, gr.DataKey("Folio"), TxtConcepto.Text, -1,
CveIE:=gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero,
CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento"
Exit For
End If
End If
If gr.DataKey("CveMoneda").ToEntero > 1 Then
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepEgresosSinComprobante", 6, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, Now,
"Saldo de ExC por Sistema", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoConcepto, gr.DataKey("Saldo").ToDecimal, "", CveConceptoContable, "Saldo de ExC por Sistema", Now, IdCtaContable, -1,
gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero,
ImporteMX:=gr.DataKey("Saldo").ToDecimal, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento"
Exit For
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoOtIngresos, gr.DataKey("Saldo").ToDecimal, "", 78, "Saldo de ExC por Sistema", Now, UsuarioActual.Empresa.IdCuentaOtrosIngresos, -1, gr.DataKey("CveIE").ToEntero,
ImporteMX:=gr.DataKey("Saldo").ToDecimal, CveSubProyecto:=gr.DataKey("CveSubProyecto").ToEntero, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento"
Exit For
End If
If UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
If Not ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
Alert("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
Dim ImporteMN As Decimal = (ImporteSaldo * gr.DataKey("TipoCambio").ToDecimal - ImporteSaldo).RoundSQL
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoConcepto, ImporteMN, ImporteMN, ConPrepAplicacion.CveConceptoComplementario, gr.DataKey("Folio"), TxtConcepto.Text, -1,
CveIE:=gr.DataKey("CveIE").ToEntero, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CvePersonal:=gr.DataKey("CvePersonal").ToEntero,
ImporteME:=gr.DataKey("Saldo").ToDecimal, CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento"
Exit For
End If
ImporteSaldo += ImporteMN
End If
ImporteSaldoGral += ImporteSaldo
End If
Next
If MsgError = "" Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoConcepto, ImporteSaldoGral, ImporteSaldoGral, 211, "", TxtConcepto.Text, -1,
CveIE:=-1, CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento"
End If
If MsgError = "" AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual) Then
MsgError = "Error al validar."
End If
End If
Next
Else
Alert("No se especificaron")
End If
Catch ex As Exception
MsgError = "Ocurrió un error al generar la prepoliza"
OnError(MsgError, ex)
End Try
If MsgError = "" Then
If MsgError = "" Then
'LnkSaldar.Visible = False
'LnkHabilitarSaldar.Visible = True
DVSaldar.Visible = False
ObjConta.Commit()
CargaDatos()
Alert("Los movimientos se saldaron correctamente.")
CargaDatos()
Alert(String.Format("Los movimientos se saldaron correctamente <br/> <a href='/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}' class='Texto'>Ver Póliza</a>", CvePrePoliza), TipoMensaje.MsgInformacion)
Else
ObjConta.RollBack()
Alert(MsgError, TipoMensaje.MsgError)
End If
LnkSaldar.Visible = False
LnkHabilitarSaldar.Visible = True
End If
ObjConta.Dispose()
ObjProveedor.Dispose()
End Sub