From 22ae2cac51e0b9aad1ddbb42c6c8eb5a67fc1cdf Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 08:40:19 -0700 Subject: [PATCH 01/10] -- envio de usuario al agregar --- OC/CatEstatus.aspx.vb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OC/CatEstatus.aspx.vb b/OC/CatEstatus.aspx.vb index 856492b95..5c739aaa7 100644 --- a/OC/CatEstatus.aspx.vb +++ b/OC/CatEstatus.aspx.vb @@ -603,7 +603,7 @@ Partial Class OC_CatEstatus 'Guardado masivo cuando sea SubProyecto "Todos" If CveSubProyecto = -2 Then For Each dr As DataRow In GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa).Rows - If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, dr("CveSubProyecto").ToString.ToEntero, Row.DataKey("CveUsuario").ToString.ToEntero, True) Then + If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, dr("CveSubProyecto").ToString.ToEntero, Row.DataKey("CveUsuario").ToString.ToEntero, True, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then HuboErrores = True Exit For End If @@ -669,7 +669,7 @@ Partial Class OC_CatEstatus 'Guardado masivo cuando sea SubProyecto "Todos" If CveSubProyecto = -2 Then For Each dr As DataRow In GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa).Rows - If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, dr("CveSubProyecto").ToString.ToEntero, Row.DataKey("CveUsuario").ToString.ToEntero, True) Then + If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, dr("CveSubProyecto").ToString.ToEntero, Row.DataKey("CveUsuario").ToString.ToEntero, True, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then HuboErrores = True Exit For End If @@ -680,7 +680,7 @@ Partial Class OC_CatEstatus 'Insertar el nuevo registro Else - If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, CveSubProyecto, Row.DataKey("CveUsuario").ToString.ToEntero, True) Then + If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, CveSubProyecto, Row.DataKey("CveUsuario").ToString.ToEntero, True, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then HuboErrores = True Exit For End If From 2fb95ea786c5fe5d632e79de0b88820f64e18c13 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 08:54:13 -0700 Subject: [PATCH 02/10] =?UTF-8?q?--=20bot=C3=B3n=20de=20contabilizar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Contabilidad/RegPrePolizaS.aspx | 8 ++---- Contabilidad/RegPrePolizaS.aspx.vb | 42 ++++++++++++------------------ 2 files changed, 19 insertions(+), 31 deletions(-) diff --git a/Contabilidad/RegPrePolizaS.aspx b/Contabilidad/RegPrePolizaS.aspx index 15117ab36..da6e5c217 100644 --- a/Contabilidad/RegPrePolizaS.aspx +++ b/Contabilidad/RegPrePolizaS.aspx @@ -231,11 +231,7 @@
Si -
- -
- -
+
@@ -713,7 +709,7 @@ - <%----%> + diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb index 6fd890e1f..13b90a69e 100644 --- a/Contabilidad/RegPrePolizaS.aspx.vb +++ b/Contabilidad/RegPrePolizaS.aspx.vb @@ -531,14 +531,13 @@ Partial Class ContabilidadC_RegPrePolizaS End If - If UsuarioActual.CveEmpresa = 119 Then - ' BtnContabilizar.Visible = True + If dr("FolioPoliza").ToString = "" Then + BtnContabilizar.Visible = True End If If UsuarioActual.Empresa.TipoContabilizacion = 1 Then If dr("FolioPoliza").ToString.ToEntero > 0 Then divContabilizada.Visible = True - LblFolio.Text = dr("FolioPoliza").ToString Folio = dr("FolioPoliza").ToString End If @@ -2588,29 +2587,29 @@ Partial Class ContabilidadC_RegPrePolizaS End Function #End Region - 'Private Sub BtnContabilizar_Click(sender As Object, e As EventArgs) Handles BtnContabilizar.Click + Private Sub BtnContabilizar_Click(sender As Object, e As EventArgs) Handles BtnContabilizar.Click - ' Contabilizar() + Contabilizar() - 'End Sub + End Sub - 'Private Sub Contabilizar() + Private Sub Contabilizar() - ' Dim ObjConta As New ClsContabilidad + Dim ObjConta As New ClsContabilidad - ' If IdPoliza > 0 Then 'si está bloqueada, lo desbloqueaprimero - ' ObjConta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) - ' End If + If IdPoliza > 0 Then 'si está bloqueada, lo desbloqueaprimero + ObjConta.UpdatePrePolizasDetalleBloquear(CvePrePoliza, False) + End If - ' If ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, pIDPoliza:=If(IdPoliza > 0, IdPoliza, -1), Concepto:=TxtConcepto.Text, Fecha:=TxtFechaDocumento.Text.ToDateTime()) Then - ' Alert(String.Format("Prepóliza contabilizada.

Folio:Ver Póliza", ObjConta.ContaIdPoliza), ModExtensiones.TipoMensaje.MsgInformacion) - ' Else + If ObjConta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, pIDPoliza:=If(IdPoliza > 0, IdPoliza, -1), Concepto:=TxtConcepto.Text, Fecha:=TxtFechaDocumento.Text.ToDateTime()) Then + Alert(String.Format("Prepóliza contabilizada.

Folio:Ver Póliza", ObjConta.ContaIdPoliza), ModExtensiones.TipoMensaje.MsgInformacion) + Else - ' Alert($"Ocurrio un error al contabilizar {ObjConta.AlertaMensaje}", TipoMensaje.MsgAdvertencia) - ' End If + Alert($"Ocurrio un error al contabilizar {ObjConta.AlertaMensaje}", TipoMensaje.MsgAdvertencia) + End If - ' ObjConta.Dispose() - 'End Sub + ObjConta.Dispose() + End Sub #Region "Paquete Egresos" @@ -2772,16 +2771,9 @@ Partial Class ContabilidadC_RegPrePolizaS LnkComplementoPago.Visible = True End If - - If UsuarioActual.CveEmpresa = 119 Then - ' BtnContabilizar.Visible = True - End If - - If UsuarioActual.Empresa.TipoContabilizacion = 1 Then If dr("FolioPoliza").ToString.ToEntero > 0 Then divContabilizada.Visible = True - LblFolio.Text = dr("FolioPoliza").ToString Folio = dr("FolioPoliza").ToString End If From f010f45cb5bb966401639c63c26de52b41833f9b Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 21:00:55 -0700 Subject: [PATCH 03/10] usuario --- Contabilidad2/CatContaEjercicios.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Contabilidad2/CatContaEjercicios.aspx.vb b/Contabilidad2/CatContaEjercicios.aspx.vb index 157cd674d..cea243360 100644 --- a/Contabilidad2/CatContaEjercicios.aspx.vb +++ b/Contabilidad2/CatContaEjercicios.aspx.vb @@ -72,7 +72,7 @@ Partial Class Contabilidad2_CatContaEjercicios Dim ObjConta As New ClsContabilidad Dim errorString As String = "" If LbAgregar.Text = "Agregar" Then - If Not ObjConta.AddContaEjercicio(DateTime.Today, UsuarioActual.CvePersonal, UsuarioActual.CveEmpresa, Ejercicio:=TxtEjercicio.Text, + If Not ObjConta.AddContaEjercicio(DateTime.Today, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Ejercicio:=TxtEjercicio.Text, PeriodoActual:=DdlPeriodoActual.SelectedValue.ToEntero, Estatus:=ChkEstatus.Checked) Then errorString = "Error al agregar" End If From 29021be8a64d7a83de71714eec8eacd72f6ded58 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 21:01:22 -0700 Subject: [PATCH 04/10] -- indicador diario detalle --- Acumuladores/RepIndicadorDiarioDetalle.aspx | 259 ++++++++++++++++++ .../RepIndicadorDiarioDetalle.aspx.vb | 67 +++++ App_Code/ClsAcumuladores.vb | 32 ++- App_Code/ClsPaginas.vb | 14 +- 4 files changed, 366 insertions(+), 6 deletions(-) create mode 100644 Acumuladores/RepIndicadorDiarioDetalle.aspx create mode 100644 Acumuladores/RepIndicadorDiarioDetalle.aspx.vb diff --git a/Acumuladores/RepIndicadorDiarioDetalle.aspx b/Acumuladores/RepIndicadorDiarioDetalle.aspx new file mode 100644 index 000000000..70cf16e06 --- /dev/null +++ b/Acumuladores/RepIndicadorDiarioDetalle.aspx @@ -0,0 +1,259 @@ +<%@ Page Title="Indicador diario detalle" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepIndicadorDiarioDetalle.aspx.vb" Inherits="Acumuladores_RepIndicadorDiarioDetalle" %> + +<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %> + + + + + + + <%-- + +
+ +
+
+
--%> +
+ +
  • + Generar +
  • +
  • + Personalizar +
  • +
  • + Ver Dlls en pesos +
  • +
  • + Imprimir +
  • + + + + + + +
    + + Reporte de Productos Servicios + + + + + + +
    +
    +
    + + +
    +
    +
    + +
    + +
    +
    + Fecha Inicio: + +
    +
    +
    + + + + +
    + + + + + + +
    +
    + Fecha Fin: + +
    +
    +
    + + + + +
    + + + + + + +
    + +
    + +
    +
    +
    +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + + + + + + + + diff --git a/Acumuladores/RepIndicadorDiarioDetalle.aspx.vb b/Acumuladores/RepIndicadorDiarioDetalle.aspx.vb new file mode 100644 index 000000000..cd77622b5 --- /dev/null +++ b/Acumuladores/RepIndicadorDiarioDetalle.aspx.vb @@ -0,0 +1,67 @@ +Option Explicit On +Option Strict On + +Imports System.Data +Imports System.IO +Imports Extensiones +Imports Microsoft.Reporting.WebForms +Imports System.IO.Compression + +Partial Class Acumuladores_RepIndicadorDiarioDetalle + Inherits ClsPaginas + + Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load + If Not IsPostBack Then + + CargaParametrosDetalle() + + End If + End Sub + + +#Region " CARGA DATOS INICIALES " + + + Private Sub CargaParametrosDetalle() + + Dim Opcion As Integer = If(Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToEntero() > 0, Request("Opcion").ToEntero(), -1) + + Dim CveSubProyecto As Integer = If(Request("CveSubProyecto") IsNot Nothing AndAlso Request("CveSubProyecto").ToEntero() > 0, Request("CveSubProyecto").ToEntero(), -1) + + + + End Sub +#End Region + +#Region " CARGA DATOS " + Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click + CargaDatos() + UPDatos.Update() + End Sub + + Private Sub CargaDatos() + + Dim ObjAcum As New ClsAcumuladores() + + Dim FechaI, FechaF As Date + FechaI = txtFechaI.Text.ToDate + FechaF = txtFechaF.Text.ToDate + + If ObjAcum.GetRepIndicadorDiarioDetalle(FechaI, FechaF, 1, -1, UsuarioActual.CveEmpresa) Then + GvDatos.DataSource = ObjAcum.DtResultados + Else + GvDatos.DataSource = Nothing + End If + + ObjAcum.Dispose() + GvDatos.DataBind() + + End Sub + + +#End Region + + + + +End Class diff --git a/App_Code/ClsAcumuladores.vb b/App_Code/ClsAcumuladores.vb index 14962f888..6a8a46e45 100644 --- a/App_Code/ClsAcumuladores.vb +++ b/App_Code/ClsAcumuladores.vb @@ -1135,7 +1135,7 @@ Public Class ClsAcumuladores End Function - Public Function GetRepIndicadorDiario(FechaInicio As Date, FechaFin As Date, CveSubProeycto As Integer, CveEmpresa As Integer) As Boolean + Public Function GetRepIndicadorDiario(FechaInicio As Date, FechaFin As Date, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean Dim Retorno As Boolean = False @@ -1144,7 +1144,35 @@ Public Class ClsAcumuladores With SqlAdapter.SelectCommand.Parameters .Add("@FechaInicio", SqlDbType.Date).Value = FechaInicio .Add("@FechaFin", SqlDbType.Date).Value = FechaFin - .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProeycto + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + + SqlAdapter.Fill(Data) + Retorno = True + + Catch ex As SqlException + + OnError("Ocurrió un error al consultar los datos. ", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + + End Try + + Return Retorno + End Function + + Public Function GetRepIndicadorDiarioDetalle(FechaInicio As Date, FechaFin As Date, Opcion As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + + Dim Retorno As Boolean = False + + SqlDataAdapter("PA_Acum_RepIndicadorDiarioDetalleGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@FechaInicio", SqlDbType.Date).Value = FechaInicio + .Add("@FechaFin", SqlDbType.Date).Value = FechaFin + .Add("@Opcion", SqlDbType.Int).Value = Opcion + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa End With diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index f7896eacb..0eb004041 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -2036,7 +2036,7 @@ Public Class ClsPaginas End Set End Property 'Variables para Ventas - Property GlobalDTVendedores(CveEmpresa As Integer, Optional Estatus As Boolean = True, Optional VendedorTipo As Integer = 1) As DataTable + Property GlobalDTVendedores(CveEmpresa As Integer, Optional Estatus As Integer = 1, Optional VendedorTipo As Integer = 1) As DataTable Get Dim AppNombre As String = String.Format("GlobalDTVendedores-{0}", CveEmpresa) 'sino existe, recarga los datos @@ -2047,10 +2047,15 @@ Public Class ClsPaginas End If If CveEmpresa <> -1 Then - Dim Dv As New DataView(DirectCast(Application(AppNombre), DataTable), String.Format("CveEmpresa = {0} AND CveEstatus = {1} AND VendedorTipo = {2}", CveEmpresa, If(Estatus, 1, 0), VendedorTipo), "", DataViewRowState.CurrentRows) + Dim StrSQL As New StringBuilder + StrSQL.AppendFormat("CveEmpresa = {0}", CveEmpresa) + If VendedorTipo >= 0 Then StrSQL.AppendFormat(" AND VendedorTipo = {0} ", VendedorTipo) + If Estatus >= 0 Then StrSQL.AppendFormat(" AND CveEstatus = {0} ", If(Estatus = 1, True, False)) + Dim Dv As New DataView(DirectCast(Application(AppNombre), DataTable), StrSQL.ToString, "", DataViewRowState.CurrentRows) GlobalDTVendedores = Dv.ToTable Dv.Dispose() + Else GlobalDTVendedores = DirectCast(Application(AppNombre), DataTable) End If @@ -5633,7 +5638,8 @@ Public Class ClsPaginas PaginaDict.Add("/Acumuladores/CatTiposUso.aspx".ToUpper(), 1034) PaginaDict.Add("/Acumuladores/CatFoliosGarantia.aspx".ToUpper(), 1035) PaginaDict.Add("/Acumuladores/CatGarantiasMeses.aspx".ToUpper(), 1036) - PaginaDict.Add("/Acumuladores/RepIndicadorDiario.aspx".ToUpper(), 2055) + PaginaDict.Add("/Acumuladores/RepIndicadorDiario.aspx".ToUpper(), 730) + PaginaDict.Add("/Acumuladores/RepIndicadorDiarioDetalle.aspx".ToUpper(), 730) PaginaDict.Add("/Acumuladores/RepEntradasUsadosClientes.aspx".ToUpper(), 543) PaginaDict.Add("/Acumuladores/EntradasUsadosResumenRep.aspx".ToUpper(), 1032) @@ -7075,7 +7081,7 @@ Public Class ClsPaginas 'Si no tiene CBB, SE GENERA If Not ImagenCBB.Exists AndAlso Vta.CveCliente.ToEntero > 0 Then Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB) + CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total, Vta.FolioFiscal, RutaCBB) End If 'ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme.Replace("https", "http"), Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio) From e274034717f36f68905c6d523720ac39c6d10d83 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 21:01:34 -0700 Subject: [PATCH 05/10] =?UTF-8?q?--=20mejoras=20fluctuaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bancos/FluctuacionCambiaria.aspx | 12 ++++++------ Bancos/FluctuacionCambiaria.aspx.vb | 18 +++++++++--------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Bancos/FluctuacionCambiaria.aspx b/Bancos/FluctuacionCambiaria.aspx index 0c8743599..c5b86d7a1 100644 --- a/Bancos/FluctuacionCambiaria.aspx +++ b/Bancos/FluctuacionCambiaria.aspx @@ -456,7 +456,7 @@ + ToolTip="" CssClass="table table-hover table-striped ScrollAD mysmallbtn" GridLines="None"> @@ -566,7 +566,7 @@ + ToolTip="" CssClass="table table-hover table-striped ScrollAD mysmallbtn" GridLines="None"> @@ -683,7 +683,7 @@ - +
    @@ -715,7 +715,7 @@ @@ -770,7 +770,7 @@ @@ -816,7 +816,7 @@
    diff --git a/Bancos/FluctuacionCambiaria.aspx.vb b/Bancos/FluctuacionCambiaria.aspx.vb index 5e6d50ed6..df81c70c2 100644 --- a/Bancos/FluctuacionCambiaria.aspx.vb +++ b/Bancos/FluctuacionCambiaria.aspx.vb @@ -445,7 +445,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnGeneraCompras.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() Alert("Error al generar la fluctuación", TipoMensaje.MsgError) @@ -525,7 +525,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnGeneraComprasAnt.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() Alert("Error al generar la fluctuación", TipoMensaje.MsgError) @@ -624,7 +624,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnGeneraVentas.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() @@ -721,7 +721,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnClientesAnticipos.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() @@ -804,7 +804,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnGeneraAcreedores.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() Alert("Error al generar la fluctuación", TipoMensaje.MsgError) @@ -879,7 +879,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() BtnGeneraAcreedoresAnt.Visible = False - Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() Alert("Error al generar la fluctuación", TipoMensaje.MsgError) @@ -970,7 +970,7 @@ Partial Class Bancos_FluctuacionCambiaria Conta.Commit() ObjContPaq.Commit() - Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver PrePóliza", CvePrePoliza), TipoMensaje.MsgInformacion) CargaDatosCuentas() Else Conta.RollBack() @@ -1045,7 +1045,7 @@ Partial Class Bancos_FluctuacionCambiaria If Not ErrorRegistrar Then Conta.Commit() - Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() End If @@ -1138,7 +1138,7 @@ Partial Class Bancos_FluctuacionCambiaria 'Fin autoconta Conta.Commit() - Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) + Alert(String.Format("La Fluctuación se ha generado
    Ver Póliza", CvePrePoliza), TipoMensaje.MsgInformacion) Else Conta.RollBack() ObjContPaq.RollBack() From b24796d1f13b7e0418f7cdf35fda82be55c780d7 Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 21:01:56 -0700 Subject: [PATCH 06/10] -- si es bdh, toma el corte de la venta --- Bancos/PopIEVentas.aspx.vb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Bancos/PopIEVentas.aspx.vb b/Bancos/PopIEVentas.aspx.vb index de7391935..705ac9305 100644 --- a/Bancos/PopIEVentas.aspx.vb +++ b/Bancos/PopIEVentas.aspx.vb @@ -728,10 +728,6 @@ Partial Class Bancos_PopIEVentas TipoCambioOriginal = dr("TipoCambio").ToString.ToDecimal CveSubProyectoVenta = dr("CveSubProyecto").ToString.ToEntero - If UsuarioActual.CveEmpresa = 140 Then 'codigo temporal. RMF permite cargar el corte - CveCorte = dr("CveCorte").ToString.ToEntero - End If - LblMetodoPAgo.Text = $"{dr("ClaveMetodoPagoSATStr").ToString() }" 'Configuración de Modalidad Update @@ -745,8 +741,6 @@ Partial Class Bancos_PopIEVentas End If End If - - MovimientoPagar = New IEMovimiento MovimientoPagar.SubTotal = dr("SubTotal").ToString.ToDecimal MovimientoPagar.IVA = dr("IVA").ToString.ToDecimal @@ -788,6 +782,10 @@ Partial Class Bancos_PopIEVentas CargaCorteCaja() End If + If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then 'toma como proridad el que viene de + CveCorte = dr("CveCorte").ToString.ToEntero + End If + If RFCCliente.ToUpper <> "XAXX010101000" Then Dim CveProveedor As Integer = GlobalDTCompProveedores(UsuarioActual.CveEmpresa, RFC:=RFCCliente.ToUpper).FiltroPrimeroValor("CveProveedor").ToEntero From 4c65813e63d58f88b6b31c30983539996cd4efcd Mon Sep 17 00:00:00 2001 From: rrene Date: Wed, 16 Feb 2022 21:02:26 -0700 Subject: [PATCH 07/10] funcionalidad para JAM para actvar caducos de otra sucursal --- Bin/roslyn/csc.exe | Bin 41608 -> 50032 bytes Inventarios/EntradasSalidas.aspx.vb | 22 +++++++++++----------- Inventarios/EntregaAlmacen.aspx | 17 +++++++++++------ Inventarios/EntregaAlmacen.aspx.vb | 2 +- Inventarios/RecepcionAlmacen.aspx.vb | 2 +- Inventarios/ResguardoMaterial.aspx.vb | 2 +- Inventarios/TraspasoAlmacen.aspx.vb | 8 ++++---- 7 files changed, 29 insertions(+), 24 deletions(-) diff --git a/Bin/roslyn/csc.exe b/Bin/roslyn/csc.exe index 44c3c41dfbae887fdd5f861a2470ba149ecce46e..7077f16a0e65350f2bdd0747e9e4594cb4fcda1f 100644 GIT binary patch literal 50032 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

    AaHXz30#y0(w-Mm;bKkJo<}(uA@Hht6r=# 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 DpI%L% literal 41608 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 diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb index 18b09e247..9cdc4a770 100644 --- a/Inventarios/EntradasSalidas.aspx.vb +++ b/Inventarios/EntradasSalidas.aspx.vb @@ -1345,7 +1345,7 @@ Partial Class Inventarios_EntradasSalidas tCveSubProyecto = drA2("CveSubProyecto").ToString.ToEntero End If - If UsuarioActual.CveEmpresa = 119 AndAlso Not tCveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If UsuarioActual.CveEmpresa = 119 AndAlso Not tCveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then FechaCaducidadVal = MinFecha FechaCaducidad = MinFecha Lote = "" @@ -2116,8 +2116,6 @@ Partial Class Inventarios_EntradasSalidas filtro = IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80), "CveConcepto NOT IN (4,5,10)", filtro).ToString Else - - filtro = String.Format("{0} AND CveTipoAlmacen = {1}", IIf(UsuarioActual.CveEmpresa.Contiene(72, 1, 80, 4, 7, 11, 12, 135), "CveConcepto NOT IN (4,5,10)", filtro).ToString, CveTipoAlmacen) End If @@ -2160,6 +2158,14 @@ Partial Class Inventarios_EntradasSalidas DdlConcepto.Items.Insert(If(DdlConcepto.Items.Count >= 1, 1, 0), New ListItem(" Salida por Ajuste ", "34")) End If + ' RECEPCION USADOS + If CveTipoAlmacen = 22 Then + If DdlConcepto.Items.FindByValue("3") Is Nothing Then + DdlConcepto.Items.Insert(If(DdlConcepto.Items.Count >= 2, 2, DdlConcepto.Items.Count), New ListItem("Salida Almacen ", "3")) + End If + + End If + '[IPP]: PARCHE PARA JAM If UsuarioActual.CveEmpresa = 119 And CveTipoAlmacen.Contiene(4, 8, 16) Then If DdlConcepto.Items.FindByValue("2") Is Nothing Then @@ -2212,20 +2218,14 @@ Partial Class Inventarios_EntradasSalidas DdlConcepto.Items.Remove(DdlConcepto.Items.FindByValue("35")) End If - - - End If - If UsuarioActual.CveUsuario.Contiene(2185, 100) Then DdlConcepto.Items.Add(New ListItem("Entrada por Ajuste", "32")) DdlConcepto.Items.Add(New ListItem("Salida por Ajuste", "34")) End If - - DdlConcepto.SelectedValue = "-1" ddlConcepto_SelectedIndexChanged(DdlConcepto, EventArgs.Empty) @@ -4475,7 +4475,7 @@ Partial Class Inventarios_EntradasSalidas Dim CveSubProyectoAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenInventarioFisico.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto").ToString.ToEntero - If UsuarioActual.CveEmpresa = 119 AndAlso Not CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If UsuarioActual.CveEmpresa = 119 AndAlso Not CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then AplicaLote = False AplicaCaducidad = False End If @@ -4517,7 +4517,7 @@ Partial Class Inventarios_EntradasSalidas Dim CveSubProyectoAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenInventarioFisico.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto").ToString.ToEntero - If UsuarioActual.CveEmpresa = 119 AndAlso Not CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If UsuarioActual.CveEmpresa = 119 AndAlso Not CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then AplicaLote = False AplicaCaducidad = False End If diff --git a/Inventarios/EntregaAlmacen.aspx b/Inventarios/EntregaAlmacen.aspx index de1ed0a89..8a4a1cf51 100644 --- a/Inventarios/EntregaAlmacen.aspx +++ b/Inventarios/EntregaAlmacen.aspx @@ -345,8 +345,16 @@

    - - Ventas por surtir + + + Ventas por surtir + + + + + + +  
    @@ -355,10 +363,7 @@
    - - - -   + " style="display: inline-block; margin-right: -20px; width: 70px;" /> " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">   diff --git a/Inventarios/EntregaAlmacen.aspx.vb b/Inventarios/EntregaAlmacen.aspx.vb index 78376bdd2..4a3ee3bdf 100644 --- a/Inventarios/EntregaAlmacen.aspx.vb +++ b/Inventarios/EntregaAlmacen.aspx.vb @@ -670,7 +670,7 @@ Partial Class Inventarios_EntregaAlmacen If UsuarioActual.CveEmpresa = 119 Then Dim CveSubProyectoAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacen).FiltroPrimeroValor("CveSubProyecto", "").ToEntero - If CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If CveSubProyectoAlmacen.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then ValidaLoteCaducidad = True Else ValidaLoteCaducidad = False diff --git a/Inventarios/RecepcionAlmacen.aspx.vb b/Inventarios/RecepcionAlmacen.aspx.vb index 7f5d10e5c..5719ca0ec 100644 --- a/Inventarios/RecepcionAlmacen.aspx.vb +++ b/Inventarios/RecepcionAlmacen.aspx.vb @@ -559,7 +559,7 @@ Partial Class Inventarios_RecepcionAlmacen Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacen.selectedvalue.toentero).FiltroPrimeroValor("CveSubProyecto").ToEntero 'RMF condición temporal - If UsuarioActual.CveEmpresa = 119 AndAlso CveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If UsuarioActual.CveEmpresa = 119 AndAlso CveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then ValidaLoteCaducidad = True Else ValidaLoteCaducidad = False diff --git a/Inventarios/ResguardoMaterial.aspx.vb b/Inventarios/ResguardoMaterial.aspx.vb index 42f088a0d..a03b30b6c 100644 --- a/Inventarios/ResguardoMaterial.aspx.vb +++ b/Inventarios/ResguardoMaterial.aspx.vb @@ -1126,7 +1126,7 @@ Partial Class Inventarios_ResguardoMaterial Private Sub DdlAlmacenDestinoLiberacion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlAlmacenDestinoLiberacion.SelectedIndexChanged Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenDestinoLiberacion.selectedvalue.toentero).FiltroPrimeroValor("CveSubProyecto").ToEntero 'RMF condición temporal - If UsuarioActual.CveEmpresa = 119 AndAlso CveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If UsuarioActual.CveEmpresa = 119 AndAlso CveSubProyecto.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then ValidaLoteCaducidad = True Else ValidaLoteCaducidad = False diff --git a/Inventarios/TraspasoAlmacen.aspx.vb b/Inventarios/TraspasoAlmacen.aspx.vb index 91b4b928a..04ceface6 100644 --- a/Inventarios/TraspasoAlmacen.aspx.vb +++ b/Inventarios/TraspasoAlmacen.aspx.vb @@ -593,14 +593,14 @@ Partial Class Inventarios_TraspasoAlmacen 'codigo provisional. Dim CveSubP As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenOrigen.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto", "").ToEntero - If DrPS("AplicaCaducidad").ToString = "True" AndAlso CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If DrPS("AplicaCaducidad").ToString = "True" AndAlso CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then If Not ChkSugiereFechaCaducidad.Checked AndAlso (TxtnFechaCaducidad.Text = "" OrElse TxtnLote.Text = "") Then Alert("Falta Especificar lote/Fecha del producto", TipoMensaje.MsgAdvertencia) Exit Sub End If End If - If DrPS("AplicaCaducidad").ToString = "True" AndAlso ChkSugiereFechaCaducidad.Checked And CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If DrPS("AplicaCaducidad").ToString = "True" AndAlso ChkSugiereFechaCaducidad.Checked And CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then Dim ObjInventarios As New ClsInventarios If ObjInventarios.GetExistenciasCaducidad(CveProducto, DdlAlmacenOrigen.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, DdlAlmacenOrigen.SelectedValue) Then @@ -637,7 +637,7 @@ Partial Class Inventarios_TraspasoAlmacen tLote = If(TxtnLote.Visible, TxtnLote.Text, "-1") tCaducidad = If(TxtnFechaCaducidad.Visible, TxtnFechaCaducidad.Text.ToDate, MinFecha) - If Not CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If Not CveSubP.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then tLote = "-1" tCaducidad = MinFecha End If @@ -2163,7 +2163,7 @@ Partial Class Inventarios_TraspasoAlmacen Dim tSerie As String = gvr.FCTextBox("TxtSerie").Text 'gvr.DataKey("Serie").ToString Dim tFechaCaducidad As Date = gvr.DataKey("FechaCaducidad").ToDate - If CveSubProyectoRecibe.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347)) Then + If CveSubProyectoRecibe.ToString.Contiene(UsuarioActual.Empresa.Funcionalidad(347).Split(","c)) Then tLote = gvr.FCTextBox("TxtLote").Text tFechaCaducidad = gvr.FCTextBox("TxtCaducidad").Text.ToDate End If From 3ccb6d1a155709dcf0abb557695a1c51ca16e86f Mon Sep 17 00:00:00 2001 From: rrene Date: Thu, 17 Feb 2022 22:07:16 -0700 Subject: [PATCH 08/10] -- parametros de cveusuario --- App_Code/ClsGenerales.vb | 4 +-- App_Code/ClsInventarios.vb | 3 +- Inventarios/InventarioFisico.aspx.vb | 2 +- Inventarios/RepEntregaAlmacenRuta.aspx | 2 +- Inventarios/RepEntregaAlmacenRuta.aspx.cs | 34 ++++++++++++++--------- 5 files changed, 27 insertions(+), 18 deletions(-) diff --git a/App_Code/ClsGenerales.vb b/App_Code/ClsGenerales.vb index 36a2814a5..e82343f8c 100644 --- a/App_Code/ClsGenerales.vb +++ b/App_Code/ClsGenerales.vb @@ -4012,7 +4012,7 @@ Public Class ClsGenerales End Function - Public Function GetInvEntregaAlmacenRutaRep(CveSubProyecto As Integer, CveEmpresa As Integer, Estatus As Integer, FechaInicio As Date, FechaFin As Date, CveChofer As Integer, Optional CveTimbre As Integer = -1) As Boolean + Public Function GetInvEntregaAlmacenRutaRep(CveSubProyecto As Integer, CveEmpresa As Integer, Estatus As Integer, FechaInicio As Date, FechaFin As Date, CveChofer As Integer, CveUsuario As Integer, Optional CveTimbre As Integer = -1) As Boolean Dim Retorno As Boolean = False @@ -4027,7 +4027,7 @@ Public Class ClsGenerales .Add("@FechaFin", SqlDbType.Date).Value = FechaFin .Add("@CveChofer", SqlDbType.Int).Value = CveChofer .Add("@CveTimbre", SqlDbType.Int).Value = CveTimbre - + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario End With Try diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb index 2fcd6752f..fe1fe6f3f 100644 --- a/App_Code/ClsInventarios.vb +++ b/App_Code/ClsInventarios.vb @@ -2298,7 +2298,7 @@ Public Class ClsInventarios Return Retorno End Function - Public Function GetInventarioFisico(CveInventarioFisico As Integer, CveEmpresa As Integer, CveSubProyecto As Integer, Estado As Integer) As Boolean + Public Function GetInventarioFisico(CveInventarioFisico As Integer, CveEmpresa As Integer, CveSubProyecto As Integer, Estado As Integer, CveUsuario As Integer) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Inv_InventarioFisicoGet") With SqlAdapter.SelectCommand.Parameters @@ -2306,6 +2306,7 @@ Public Class ClsInventarios .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto .Add("@Estado", SqlDbType.Int).Value = Estado + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario End With Try SqlAdapter.Fill(Data) diff --git a/Inventarios/InventarioFisico.aspx.vb b/Inventarios/InventarioFisico.aspx.vb index cffe5140e..4fe1da3d9 100644 --- a/Inventarios/InventarioFisico.aspx.vb +++ b/Inventarios/InventarioFisico.aspx.vb @@ -104,7 +104,7 @@ Partial Class Inventarios_InventarioFisico Dim Inventario As New ClsInventarios Dim dt As New DataTable - If Inventario.GetInventarioFisico(-1, CveEmpresa, DdlFiltroSubProyecto.SelectedValue.ToEntero, DdlEstado.SelectedValue.ToEntero) Then + If Inventario.GetInventarioFisico(-1, CveEmpresa, DdlFiltroSubProyecto.SelectedValue.ToEntero, DdlEstado.SelectedValue.ToEntero, UsuarioActual.CveUsuario) Then dt = Inventario.DtResultados End If Inventario.Dispose() diff --git a/Inventarios/RepEntregaAlmacenRuta.aspx b/Inventarios/RepEntregaAlmacenRuta.aspx index 22b756e5f..99c34b4b8 100644 --- a/Inventarios/RepEntregaAlmacenRuta.aspx +++ b/Inventarios/RepEntregaAlmacenRuta.aspx @@ -99,7 +99,7 @@ " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">
    diff --git a/Inventarios/RepEntregaAlmacenRuta.aspx.cs b/Inventarios/RepEntregaAlmacenRuta.aspx.cs index 1d2ff4eec..8a8337a05 100644 --- a/Inventarios/RepEntregaAlmacenRuta.aspx.cs +++ b/Inventarios/RepEntregaAlmacenRuta.aspx.cs @@ -512,9 +512,12 @@ public partial class General_RepEntregaAlmacenRuta : ClsPaginas string RFCReceptor = GvRow.DataKey("RFCReceptor").ToString(); string RFCEmisor = GvRow.DataKey("RFCEmisor").ToString(); int CvePACCancelacion = GvRow.DataKey("CvePAC").ToEntero(); + int CveSubProyecto = GvRow.DataKey("CveSubProyecto").ToEntero(); + int CveEntregaAlmacen = GvRow.DataKey("CveEntregaAlmacen").ToEntero(); Timbrado ObjCancelacion = new Timbrado(); ClsGenerales ObjGenerales = new ClsGenerales(); + ObjGenerales.IniciaTransacSQL (); if (EstatusSATCancelado(FolioFiscalCancelar, UsuarioActual.Empresa.RFC, RFCReceptor)) { @@ -528,22 +531,27 @@ public partial class General_RepEntregaAlmacenRuta : ClsPaginas if (ObjGenerales.CancelarTimbreTimbrado(CveTimbre, DateTime.Now, CvePACCancelacion, ObjCancelacion.CancelacionAcuse, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) { - Alert("El complemento se cancelo correctamente."); + //regenero el tmbre + CveTimbre = ObjGenerales.AddGralTimbre("Tra", CveSubProyecto, DateTime.Now, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveEntregaAlmacen : CveEntregaAlmacen, AplicaCP: true); + + + ProcesoOK = true; } } - else - { - Alert("Se presento un error al cancelar el Folio Fiscal", ModExtensiones.TipoMensaje.MsgAdvertencia); - } } - ObjGenerales.Dispose(); - if (ProcesoOK) { - CargaDatos(); + ObjGenerales.Commit(); + Alert("El complemento se cancelo correctamente."); } + else + { + ObjGenerales.RollBack(); + Alert("Se presento un error al cancelar el Folio Fiscal", ModExtensiones.TipoMensaje.MsgAdvertencia); + } + ObjGenerales.Dispose(); } @@ -622,11 +630,11 @@ public partial class General_RepEntregaAlmacenRuta : ClsPaginas LnkTimbrar.Visible = true; } - if (e.Row.DataKey("TimbreTipoDocto") == "Man") - { - e.Row.FCLinkButton("LnkEditarDirOrigen").Visible = true; - e.Row.FCLinkButton("LnkEditarDirDestino").Visible = true; - } + //if (e.Row.DataKey("TimbreTipoDocto") == "Man") + //{ + // e.Row.FCLinkButton("LnkEditarDirOrigen").Visible = true; + // e.Row.FCLinkButton("LnkEditarDirDestino").Visible = true; + //} if (e.Row.DataKey("Estatus").ToEntero() == 1) { From bc9ff8d722150592ce5b814f94ae7c1492e836ef Mon Sep 17 00:00:00 2001 From: rakcsle Date: Fri, 18 Feb 2022 12:33:48 -0700 Subject: [PATCH 09/10] FiltraPolizas, RegPoliza unificadas y RegPrePoliza validaciones de naturaleza de cargo abono. --- App_Code/ClsContabilidad.vb | 30 +- App_Code/ClsSisEmpresas.vb | 3730 ++++---- Compras/PopUpVerFactura.aspx.vb | 4 +- Contabilidad/FiltraPolizas.aspx | 4 +- Contabilidad/FiltraPolizas.aspx.vb | 160 +- Contabilidad/PolizasImpresion.aspx | 4 +- Contabilidad/PolizasImpresion.aspx.vb | 167 +- Contabilidad/RegPoliza.aspx | 37 +- Contabilidad/RegPoliza.aspx.vb | 3 +- Contabilidad/RegPrePolizaS.aspx.vb | 23 + Contabilidad2/PolizasImpresion.aspx.vb | 2 +- Contratos/ContratoObraAutorizacion.aspx.vb | 2 +- Empresas/1/Formatos/Factura.rdlc | 9788 +++++++++++++------- Ventas/ClientesAbonar.aspx.vb | 14 +- 14 files changed, 8636 insertions(+), 5332 deletions(-) diff --git a/App_Code/ClsContabilidad.vb b/App_Code/ClsContabilidad.vb index d6693040d..1fa789d2c 100644 --- a/App_Code/ClsContabilidad.vb +++ b/App_Code/ClsContabilidad.vb @@ -6081,7 +6081,7 @@ Public Class ClsContabilidad Return Retorno End Function - Public Function GetPrePolizasImpresion(CveEmpresa As Integer, FechaI As String, FechaF As String, Optional CveTipoPoliza As Integer = -1, Optional FolioI As Integer = -1, + Public Function GetPrePolizasImpresion(CveEmpresa As Integer, FechaI As Date, FechaF As Date, Optional CveTipoPoliza As Integer = -1, Optional FolioI As Integer = -1, Optional FolioF As Integer = -1, Optional CveUsuario As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional CveCuenta As Integer = -1, Optional CvePlantillaPoliza As Integer = -1, Optional CveTipoProveedor As Integer = -1) As Boolean Dim Retorno As Boolean = False @@ -6601,6 +6601,34 @@ Public Class ClsContabilidad #End Region + + + Public Function GetPolizas(Ejercicio As Integer, Periodo As Integer, TipoPoliza As Integer, CveSubProyecto As Integer, CveEmpresa As Integer) As Boolean + Dim Respuesta As Boolean = False + + DataAdapter("PA_Conta_FiltraPolizasGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Ejercicio", SqlDbType.Int).Value = Ejercicio + .Add("@Periodo", SqlDbType.Int).Value = Periodo + .Add("@TipoPoliza", SqlDbType.Int).Value = TipoPoliza + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + + + End With + Try + SqlAdapter.Fill(Data) + Respuesta = True + Catch ex As Exception + Me.OnError("Ocurrió un error al obtener las Prepolizas", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Respuesta + + End Function + + #Region "IDisposable Support" ' IDisposable Protected Overridable Sub Dispose(disposing As Boolean) diff --git a/App_Code/ClsSisEmpresas.vb b/App_Code/ClsSisEmpresas.vb index e96dd9a87..df98ac503 100644 --- a/App_Code/ClsSisEmpresas.vb +++ b/App_Code/ClsSisEmpresas.vb @@ -1,1851 +1,1851 @@ -Option Explicit On -Option Strict On - -Imports System.Data -Imports System.Data.SqlClient -Imports Extensiones -Imports System -Imports System.Configuration - -Public Class ClsSisEmpresas - Implements IDisposable - -#Region "Campos" - - 'SQL - Private SqlConexion As SqlConnection - Private SqlAdapter As SqlDataAdapter - Private SqlTransacc As SqlTransaction - Private SqlCommand As SqlCommand - Private Data As DataTable - - 'Atributos de la clase - Private _Empresa As Empresa - Private _CveEmpresa As Integer - 'Private _Empresa As String - 'Private _Direccion As String - 'Private _NoExt As String - 'Private _NoInt As String - 'Private _Colonia As String - 'Private _Ciudad As String - - 'Private _Estado As String - 'Private _CP As Integer - 'Private _RFC As String - 'Private _Telefono As String - 'Private _Contacto As String - 'Private _Mail As String - 'Private _TipoFacturacion As String - 'Private _ContraseñaKey As String - 'Private _ArchivoKey As String - 'Private _ArchivoCer As String - 'Private _ArchivoPfx As String - 'Private _BIUsuario As String - 'Private _BIContraseña As String - 'Private _Banner As String - 'Private _FacturaProduccion As Boolean - 'Private _FechaIng As Date - 'Private _CveUsuario As Integer - 'Private _SendMail As String - 'Private _SendMailPassword As String - 'Private _Usuario As String - 'Private _MostrarRetIVA As Boolean - ' Private _MostrarRetISR As Boolean - - - Private disposedValue As Boolean = False ' Para detectar llamadas redundantes - 'PARA REGISTRAR CONEXION - Private CveConexion As Integer = 0 - -#End Region - -#Region "Propiedades" - Public ReadOnly Property DtResultados As DataTable - Get - DtResultados = Data - End Get - End Property - Public ReadOnly Property CveEmpresa As Integer - Get - Return _CveEmpresa - End Get - End Property - Public ReadOnly Property Empresa As Empresa - Get - Return _Empresa - End Get - End Property - - 'Public ReadOnly Property Usuario As String - ' Get - ' Return _Usuario - ' End Get - 'End Property - - 'Public ReadOnly Property RFC As String - ' Get - ' Return _RFC - ' End Get - 'End Property - - 'Public ReadOnly Property Telefono As String - ' Get - ' Return _Telefono - ' End Get - 'End Property - - 'Public ReadOnly Property Contacto As String - ' Get - ' Return _Contacto - ' End Get - 'End Property - - 'Public ReadOnly Property Mail As String - ' Get - ' Return _Mail - ' End Get - 'End Property - - 'Public ReadOnly Property TipoFacturacion As String - ' Get - ' Return _TipoFacturacion - ' End Get - 'End Property - - 'Public ReadOnly Property ContraseñaKey As String - ' Get - ' Return _ContraseñaKey - ' End Get - 'End Property - - 'Public ReadOnly Property ArchivoKey As String - ' Get - ' Return _ArchivoKey - ' End Get - 'End Property - - 'Public ReadOnly Property ArchivoCer As String - ' Get - ' Return _ArchivoCer - ' End Get - 'End Property - - 'Public ReadOnly Property ArchivoPfx As String - ' Get - ' Return _ArchivoPfx - ' End Get - 'End Property - - 'Public ReadOnly Property BIUsuario As String - ' Get - ' Return _BIUsuario - ' End Get - 'End Property - - 'Public ReadOnly Property BIContraseña As String - ' Get - ' Return _BIContraseña - ' End Get - 'End Property - - 'Public ReadOnly Property Banner As String - ' Get - ' Return _Banner - ' End Get - 'End Property - - 'Public ReadOnly Property FacturaProduccion As Boolean - ' Get - ' Return _FacturaProduccion - ' End Get - 'End Property - - 'Public ReadOnly Property Fechaing As Date - ' Get - ' Return _FechaIng - ' End Get - 'End Property - - 'Public ReadOnly Property CveUsuario As Integer - ' Get - ' Return _CveUsuario - ' End Get - 'End Property - - 'Public ReadOnly Property SendMail As String - ' Get - ' Return _SendMail - ' End Get - 'End Property - - 'Public ReadOnly Property SendMailPassword As String - ' Get - ' Return _SendMailPassword - ' End Get - 'End Property - - 'Public ReadOnly Property MostrarRetIVA As Boolean - ' Get - ' Return _MostrarRetIVA - ' End Get - 'End Property - - 'Public ReadOnly Property MostrarRetISR As Boolean - ' Get - ' Return _MostrarRetISR - ' End Get - 'End Property - - 'Public Property Regimen As String - 'Public Property EstatusFacturacion As Boolean - 'Public Property Estatus As Boolean - 'Public Property UsaContabilidad As Boolean - 'Public Property BDContPAQi As String - 'Public Property ServerContPAQi As String - 'Public Property UsrContPAQi As String - 'Public Property PwdContPAQi As String -#End Region - - Sub New(Optional TransaccionCompartida As SqlTransaction = Nothing) - - If TransaccionCompartida Is Nothing Then - SqlConexion = New SqlConnection - SqlConexion.ConnectionString = ConfigurationManager.ConnectionStrings("Conexion").ConnectionString - Try - SqlConexion.Open() - Catch ex As Exception - OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) - End Try - Else - SqlConexion = TransaccionCompartida.Connection - SqlTransacc = TransaccionCompartida - End If - - SqlCommand = New SqlCommand("", SqlConexion) - SqlAdapter = New SqlDataAdapter("", SqlConexion) - ConexionAdd() - - End Sub - Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) - With SqlAdapter.SelectCommand - .Parameters.Clear() - .CommandText = StrSQL - .CommandType = TipoComando - End With - If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc - Data = New DataTable - End Sub -#Region "Conexiones" - - Private Sub ConexionAdd() - If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then - - Try - 'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo - DataAdapter("PA_Sis_RegistrarConexion") - With SqlAdapter.SelectCommand.Parameters - .Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name - .Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}?{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString) - .Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output - End With - SqlAdapter.Fill(Data) - CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero - Catch ex As Exception - OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - End If - End Sub - - Private Sub ConexionClose() - If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then - - DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text) - Try - SqlAdapter.Fill(Data) - - Catch ex As Exception - OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - CveConexion = 0 - - End If - - End Sub -#End Region - Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) - With SqlCommand - .Parameters.Clear() - .CommandText = pStrSQL - .CommandType = TipoComando - End With - - If Not SqlTransacc Is Nothing Then SqlCommand.Transaction = SqlTransacc - - End Sub - Public Function IniciaTransacSQL() As SqlTransaction - If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction() - Return SqlTransacc - End Function - Public Sub RollBack() - If SqlTransacc IsNot Nothing Then SqlTransacc.Rollback() - SqlTransacc = Nothing - End Sub - Public Sub Commit() - If SqlTransacc IsNot Nothing Then SqlTransacc.Commit() - SqlTransacc = Nothing - End Sub - -#Region "Empresas" - Public Function UpEmpresaFiel(CveEmpresa As Integer, FielPassword As String, FielPFX As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("UPDATE Empresas SET FielPassword=@FielPassword, FielPFX=@FielPFX WHERE CveEmpresa=@CveEmpresa ", CommandType.Text) - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@FielPassword", SqlDbType.VarChar).Value = FielPassword - .Add("@FielPFX", SqlDbType.VarChar).Value = FielPFX - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al actualizar la fiel de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - Public Function GetEmpresas(CveEmpresa As Integer, Empresa As String, RFC As String, Telefono As String, Contacto As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - End With - Try - SqlAdapter.Fill(Data) - If CveEmpresa <> -1 And Data.Rows.Count > 0 Then - _Empresa = New Empresa - _Empresa.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero - _Empresa.Empresa = Data.Rows(0)("Empresa").ToString - _Empresa.NombreCorto = Data.Rows(0)("NombreCorto").ToString - _Empresa.Direccion = Data.Rows(0)("Direccion").ToString - _Empresa.NoExt = Data.Rows(0)("NoExt").ToString - _Empresa.NoInt = Data.Rows(0)("NoInt").ToString - _Empresa.Colonia = Data.Rows(0)("Colonia").ToString - _Empresa.Ciudad = Data.Rows(0)("Ciudad").ToString - _Empresa.Estado = Data.Rows(0)("Estado").ToString - _Empresa.CP = Data.Rows(0)("CP").ToString().ToEntero - _Empresa.Regimen = Data.Rows(0)("Regimen").ToString - _Empresa.CodigoRegimenFiscal = Data.Rows(0)("CodigoRegimenFiscal").ToString - _Empresa.RFC = Data.Rows(0)("RFC").ToString - _Empresa.CURP = Data.Rows(0)("CURP").ToString - _Empresa.RegistroPatronal = Data.Rows(0)("RegistroPatronal").ToString.ToString - _Empresa.Telefono = Data.Rows(0)("Telefono").ToString - _Empresa.Contacto = Data.Rows(0)("Contacto").ToString - _Empresa.Mail = Data.Rows(0)("Mail").ToString - _Empresa.MostrarRetIVA = Data.Rows(0)("MostrarRetIVA").ToString <> "No" - _Empresa.MostrarRetISR = Data.Rows(0)("MostrarRetISR").ToString <> "No" - _Empresa.TipoFacturacion = Data.Rows(0)("TipoFacturacion").ToString - _Empresa.BIUsuario = Data.Rows(0)("BIUsuario").ToString - _Empresa.BIContraseña = Data.Rows(0)("BIContraseña").ToString - _Empresa.ArchivoKey = Data.Rows(0)("ArchivoKey").ToString - _Empresa.ArchivoCer = Data.Rows(0)("ArchivoCer").ToString - _Empresa.ArchivoPfx = Data.Rows(0)("ArchivoPfx").ToString - _Empresa.ContraseñaKey = Data.Rows(0)("ContraseñaKey").ToString - _Empresa.SendMail = Data.Rows(0)("SendMail").ToString - _Empresa.SendMailPassword = Data.Rows(0)("SendMailPassword").ToString - _Empresa.SendMailServer = Data.Rows(0)("SendMailServer").ToString - _Empresa.SendMailPuerto = Data.Rows(0)("SendMailPuerto").ToString.ToEntero - _Empresa.SendMailSSL = If(Data.Rows(0)("SendMailSSL").ToString = "", False, CBool(Data.Rows(0)("SendMailSSL").ToString)) - _Empresa.Buzon_Mail = Data.Rows(0)("Buzon_Mail").ToString - _Empresa.Buzon_Server = Data.Rows(0)("Buzon_Server").ToString - _Empresa.Buzon_Puerto = Data.Rows(0)("Buzon_Puerto").ToString.ToEntero - _Empresa.Buzon_SSL = If(Data.Rows(0)("Buzon_SSL").ToString = "", False, CBool(Data.Rows(0)("Buzon_SSL").ToString)) - _Empresa.Buzon_USR = Data.Rows(0)("Buzon_USR").ToString - _Empresa.Buzon_PWD = Data.Rows(0)("Buzon_PWD").ToString - _Empresa.Soporte_Mail = Data.Rows(0)("Soporte_Mail").ToString - _Empresa.Soporte_Server = Data.Rows(0)("Soporte_Server").ToString - _Empresa.Soporte_Puerto = Data.Rows(0)("Soporte_Puerto").ToString.ToEntero - _Empresa.Soporte_SSL = If(Data.Rows(0)("Soporte_SSL").ToString = "", False, CBool(Data.Rows(0)("Soporte_SSL").ToString)) - _Empresa.Soporte_USR = Data.Rows(0)("Soporte_USR").ToString - _Empresa.Soporte_PWD = Data.Rows(0)("Soporte_PWD").ToString - _Empresa.Soporte_Tipo = Data.Rows(0)("Soporte_Tipo").ToString - _Empresa.BDContPAQi = Data.Rows(0)("BDContPAQi").ToString - _Empresa.ServerContPAQi = Data.Rows(0)("ServerContPAQi").ToString - _Empresa.UsrContPAQi = Data.Rows(0)("UsrContPAQi").ToString - _Empresa.PwdContPAQi = Data.Rows(0)("PwdContPAQi").ToString - _Empresa.Estatus = Data.Rows(0)("Estatus").ToString = "Activo" - _Empresa.FechaIng = Data.Rows(0)("Fecha").ToString.ToDate - _Empresa.Usuario = Data.Rows(0)("Usuario").ToString - _Empresa.FacturaProduccion = If(Data.Rows(0)("FacturaProduccion").ToString = "", False, CBool(Data.Rows(0)("FacturaProduccion").ToString)) - _Empresa.EstatusFacturacion = Data.Rows(0)("EstatusFacturacion").ToString <> "No" - _Empresa.UsaContabilidad = Data.Rows(0)("UsaContabilidad").ToString <> "No" - _Empresa.UsaContabilidadSIG = Data.Rows(0)("UsaContabilidadSIG").ToString <> "No" - _Empresa.UsaBancos = Data.Rows(0)("UsaBancos").ToString <> "No" - _Empresa.UsaVentas = Data.Rows(0)("UsaVentas").ToString <> "No" - _Empresa.UsaCxC = Data.Rows(0)("UsaCxC").ToString <> "No" - _Empresa.UsaCompras = Data.Rows(0)("UsaCompras").ToString <> "No" - _Empresa.UsaInventarios = Data.Rows(0)("UsaInventarios").ToString <> "No" - _Empresa.UsaRH = Data.Rows(0)("UsaRH").ToString <> "No" - _Empresa.UsaNomina = Data.Rows(0)("UsaNomina").ToString <> "No" - _Empresa.UsaOS = Data.Rows(0)("UsaOS").ToString <> "No" - _Empresa.UsaAC = Data.Rows(0)("UsaAC").ToString <> "No" - _Empresa.UsaArmonizacion = Data.Rows(0)("UsaArmonizacion").ToString <> "No" - _Empresa.UsaAF = Data.Rows(0)("UsaAF").ToString <> "No" - _Empresa.Banner = Data.Rows(0)("Banner").ToString - _Empresa.CveUsuario = Data.Rows(0)("CveUsuario").ToString.ToEntero - _Empresa.CvePAC = Data.Rows(0)("CvePAC").ToString.ToEntero - _Empresa.CveRegimenFiscal = Data.Rows(0)("CveRegimenFiscal").ToString.ToEntero - _Empresa.EmpresaEncabezado = Data.Rows(0)("EmpresaEncabezado").ToString - _Empresa.EsComercializadora = Data.Rows(0)("EsComercializadora").ToString = "True" - - 'Nuevos Datos - _Empresa.AreaGeografica = Data.Rows(0)("AreaGeografica").ToString - _Empresa.IdCuentaIVAxAcreditar = Data.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero - _Empresa.IdCuentaIVAAcreditable = Data.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero - _Empresa.IdCuentaIVAxTrasladar = Data.Rows(0)("IdCuentaIVAxTrasladar").ToString.ToEntero - _Empresa.IdCuentaIVATrasladado = Data.Rows(0)("IdCuentaIVATrasladado").ToString.ToEntero - _Empresa.IdCuentaRetIVACirculacion = Data.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero - _Empresa.IdCuentaRetISRCirculacion = Data.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero - _Empresa.IdCuentaDSV = Data.Rows(0)("Conta_IdCuentaDescuentoVenta").ToString.ToEntero - _Empresa.IdCuentaImpuestosLocales = Data.Rows(0)("Conta_IdCuentaImpuestosLocales").ToString.ToEntero - _Empresa.IdCuentaIEPSxAcreditar = Data.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero - _Empresa.IdCuentaIEPSAcreditable = Data.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero - _Empresa.IdCuentaIEPSxTrasladar = Data.Rows(0)("IdCuentaIEPSxTrasladar").ToString.ToEntero - _Empresa.IdCuentaIEPSTrasladado = Data.Rows(0)("IdCuentaIEPSTrasladado").ToString.ToEntero - _Empresa.IdCuentaOtrosIngresos = Data.Rows(0)("Conta_IdCuentaOtrosIngresos").ToString.ToEntero - - '_Empresa.IdCtaProveedor = Data.Rows(0)("IdCtaProveedor").ToString.ToEntero - '_Empresa.IdCtaCliente = Data.Rows(0)("IdCtaCliente").ToString.ToEntero - '_Empresa.IdCtaDeudores = Data.Rows(0)("IdCtaDeudores").ToString.ToEntero - '_Empresa.IdCtaCliente = Data.Rows(0)("IdCtaCliente").ToString.ToEntero - '_Empresa.IdCtaAcreedores = Data.Rows(0)("IdCtaAcreedores").ToString.ToEntero - '_Empresa.IdCtaDocXPagar = Data.Rows(0)("IdCtaDocXPagar").ToString.ToEntero - '_Empresa.IdCtaAnticipoCliente = Data.Rows(0)("IdCtaAnticipoCliente").ToString.ToEntero - '_Empresa.IdCtaAnticipoProveedores = Data.Rows(0)("IdCtaAnticipoProveedores").ToString.ToEntero - - _Empresa.Buzon_Tipo = Data.Rows(0)("Buzon_Tipo").ToString - _Empresa.ContaContabilizacionNC = Data.Rows(0)("Conta_ContabilizacionNC").ToString.ToEntero - '_Empresa.Ruta = String.Format("{0}Empresas\{1}\", ModExtensiones.DirectorioBaseEmpresas, _Empresa.CveEmpresa) - _Empresa.PV_TerminalTipo = Data.Rows(0)("PV_TerminalTipo").ToString.ToEntero - _Empresa.EjercicioActual = Data.Rows(0)("EjercicioActual").ToString.ToEntero - _Empresa.PeriodoActual = Data.Rows(0)("PeriodoActual").ToString.ToEntero - '_Empresa.GralSoloProyecto = Data.Rows(0)("Gral_SoloProyecto").ToString <> "No" - _Empresa.MetodoOC = Data.Rows(0)("MetodoOC").ToString.ToEntero - _Empresa.CveMetodoInventario = Data.Rows(0)("Inv_CveMetodoInventario").ToString.ToEntero - _Empresa.RequiereCentroCostos = Data.Rows(0)("RequiereCentroCostos").ToString <> "No" - _Empresa.IdCuentaPerdidaCambiaria = Data.Rows(0)("IdCuentaPerdidaCambiaria").ToString.ToEntero - _Empresa.IdCuentaGananciaCambiaria = Data.Rows(0)("IdCuentaGananciaCambiaria").ToString.ToEntero - _Empresa.Tipo_CentroCosto = Data.Rows(0)("Tipo_CentroCosto").ToString.ToEntero - _Empresa.GrupoEmpresa = Data.Rows(0)("GrupoEmpresa").ToString.ToEntero - _Empresa.PlantillaMailVenta = Data.Rows(0)("PlantillaMailVenta").ToString - _Empresa.AsuntoPlantillaMailVenta = Data.Rows(0)("AsuntoPlantillaMailVenta").ToString - _Empresa.CvePlataforma = Data.Rows(0)("CvePlataforma").ToString.ToEntero - _Empresa.CveDistribuidor = Data.Rows(0)("CveDistribuidor").ToString.ToEntero - _Empresa.DiasPermitidos = Data.Rows(0)("DiasPermitidos").ToString.ToEntero - _Empresa.AsientoContableComprasContado = If(Data.Rows(0)("Conta_AsientoContableComprasContado").ToString = "", False, CBool(Data.Rows(0)("Conta_AsientoContableComprasContado").ToString)) - _Empresa.TipoContabilizacion = Data.Rows(0)("Conta_TipoContabilizacion").ToString.ToEntero - _Empresa.TipoContabilidad = Data.Rows(0)("Conta_TipoContabilidad").ToString.ToEntero '0 - Sin Conta, 1- Contabilidad SIG, 2- Contabilidad Contpaq - _Empresa.DefaultAsistencias = If(Data.Rows(0)("RH_DefaultAsistencias").ToString = "", False, CBool(Data.Rows(0)("RH_DefaultAsistencias").ToString)) - _Empresa.CIEC = Data.Rows(0)("CIEC").ToString - _Empresa.Localidad = Data.Rows(0)("Localidad").ToString - _Empresa.Importe = Data.Rows(0)("Importe").ToString.ToDecimal - _Empresa.CveMetodoPago = Data.Rows(0)("CveMetodoPago").ToString.ToEntero - _Empresa.Extension = Data.Rows(0)("Extension").ToString - _Empresa.PorDepreciacion = Data.Rows(0)("PorDepreciacion").ToString.ToDecimal - _Empresa.EsPersonaFisica = Data.Rows(0)("EsPersonaFisica").ToString.ToEntero - - _Empresa.UsaCRM = Data.Rows(0)("UsaCRM").ToString = "True" - _Empresa.AplicaDatosTecnicosCRM = If(Data.Rows(0)("AplicaDatosTecnicosCRM").ToString = "", False, CBool(Data.Rows(0)("AplicaDatosTecnicosCRM").ToString)) - _Empresa.CveEncuestaCRM = Data.Rows(0)("CveEncuestaCRM").ToString.ToEntero - - _Empresa.FielPassword = Data.Rows(0)("FielPassword").ToString +Option Explicit On +Option Strict On + +Imports System.Data +Imports System.Data.SqlClient +Imports Extensiones +Imports System +Imports System.Configuration + +Public Class ClsSisEmpresas + Implements IDisposable + +#Region "Campos" + + 'SQL + Private SqlConexion As SqlConnection + Private SqlAdapter As SqlDataAdapter + Private SqlTransacc As SqlTransaction + Private SqlCommand As SqlCommand + Private Data As DataTable + + 'Atributos de la clase + Private _Empresa As Empresa + Private _CveEmpresa As Integer + 'Private _Empresa As String + 'Private _Direccion As String + 'Private _NoExt As String + 'Private _NoInt As String + 'Private _Colonia As String + 'Private _Ciudad As String + + 'Private _Estado As String + 'Private _CP As Integer + 'Private _RFC As String + 'Private _Telefono As String + 'Private _Contacto As String + 'Private _Mail As String + 'Private _TipoFacturacion As String + 'Private _ContraseñaKey As String + 'Private _ArchivoKey As String + 'Private _ArchivoCer As String + 'Private _ArchivoPfx As String + 'Private _BIUsuario As String + 'Private _BIContraseña As String + 'Private _Banner As String + 'Private _FacturaProduccion As Boolean + 'Private _FechaIng As Date + 'Private _CveUsuario As Integer + 'Private _SendMail As String + 'Private _SendMailPassword As String + 'Private _Usuario As String + 'Private _MostrarRetIVA As Boolean + ' Private _MostrarRetISR As Boolean + + + Private disposedValue As Boolean = False ' Para detectar llamadas redundantes + 'PARA REGISTRAR CONEXION + Private CveConexion As Integer = 0 + +#End Region + +#Region "Propiedades" + Public ReadOnly Property DtResultados As DataTable + Get + DtResultados = Data + End Get + End Property + Public ReadOnly Property CveEmpresa As Integer + Get + Return _CveEmpresa + End Get + End Property + Public ReadOnly Property Empresa As Empresa + Get + Return _Empresa + End Get + End Property + + 'Public ReadOnly Property Usuario As String + ' Get + ' Return _Usuario + ' End Get + 'End Property + + 'Public ReadOnly Property RFC As String + ' Get + ' Return _RFC + ' End Get + 'End Property + + 'Public ReadOnly Property Telefono As String + ' Get + ' Return _Telefono + ' End Get + 'End Property + + 'Public ReadOnly Property Contacto As String + ' Get + ' Return _Contacto + ' End Get + 'End Property + + 'Public ReadOnly Property Mail As String + ' Get + ' Return _Mail + ' End Get + 'End Property + + 'Public ReadOnly Property TipoFacturacion As String + ' Get + ' Return _TipoFacturacion + ' End Get + 'End Property + + 'Public ReadOnly Property ContraseñaKey As String + ' Get + ' Return _ContraseñaKey + ' End Get + 'End Property + + 'Public ReadOnly Property ArchivoKey As String + ' Get + ' Return _ArchivoKey + ' End Get + 'End Property + + 'Public ReadOnly Property ArchivoCer As String + ' Get + ' Return _ArchivoCer + ' End Get + 'End Property + + 'Public ReadOnly Property ArchivoPfx As String + ' Get + ' Return _ArchivoPfx + ' End Get + 'End Property + + 'Public ReadOnly Property BIUsuario As String + ' Get + ' Return _BIUsuario + ' End Get + 'End Property + + 'Public ReadOnly Property BIContraseña As String + ' Get + ' Return _BIContraseña + ' End Get + 'End Property + + 'Public ReadOnly Property Banner As String + ' Get + ' Return _Banner + ' End Get + 'End Property + + 'Public ReadOnly Property FacturaProduccion As Boolean + ' Get + ' Return _FacturaProduccion + ' End Get + 'End Property + + 'Public ReadOnly Property Fechaing As Date + ' Get + ' Return _FechaIng + ' End Get + 'End Property + + 'Public ReadOnly Property CveUsuario As Integer + ' Get + ' Return _CveUsuario + ' End Get + 'End Property + + 'Public ReadOnly Property SendMail As String + ' Get + ' Return _SendMail + ' End Get + 'End Property + + 'Public ReadOnly Property SendMailPassword As String + ' Get + ' Return _SendMailPassword + ' End Get + 'End Property + + 'Public ReadOnly Property MostrarRetIVA As Boolean + ' Get + ' Return _MostrarRetIVA + ' End Get + 'End Property + + 'Public ReadOnly Property MostrarRetISR As Boolean + ' Get + ' Return _MostrarRetISR + ' End Get + 'End Property + + 'Public Property Regimen As String + 'Public Property EstatusFacturacion As Boolean + 'Public Property Estatus As Boolean + 'Public Property UsaContabilidad As Boolean + 'Public Property BDContPAQi As String + 'Public Property ServerContPAQi As String + 'Public Property UsrContPAQi As String + 'Public Property PwdContPAQi As String +#End Region + + Sub New(Optional TransaccionCompartida As SqlTransaction = Nothing) + + If TransaccionCompartida Is Nothing Then + SqlConexion = New SqlConnection + SqlConexion.ConnectionString = ConfigurationManager.ConnectionStrings("Conexion").ConnectionString + Try + SqlConexion.Open() + Catch ex As Exception + OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex) + End Try + Else + SqlConexion = TransaccionCompartida.Connection + SqlTransacc = TransaccionCompartida + End If + + SqlCommand = New SqlCommand("", SqlConexion) + SqlAdapter = New SqlDataAdapter("", SqlConexion) + ConexionAdd() + + End Sub + Private Sub DataAdapter(StrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) + With SqlAdapter.SelectCommand + .Parameters.Clear() + .CommandText = StrSQL + .CommandType = TipoComando + End With + If Not SqlTransacc Is Nothing Then SqlAdapter.SelectCommand.Transaction = SqlTransacc + Data = New DataTable + End Sub +#Region "Conexiones" + + Private Sub ConexionAdd() + If ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then + + Try + 'DataAdapter(String.Format("INSERT INTO Sis_Conexiones (Clase,Modulo) VALUES ('ClsRH','{0}')", "RH/CatMotivosBaja"), CommandType.Text) ' pendiente de terminar parra registrar el cveconexion, falta el rarámetro de módulo + DataAdapter("PA_Sis_RegistrarConexion") + With SqlAdapter.SelectCommand.Parameters + .Add("@Clase", SqlDbType.VarChar).Value = Me.GetType().Name + .Add("@Modulo", SqlDbType.VarChar).Value = String.Format("{0}?{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString, HttpContext.Current.Request.QueryString.ToString) + .Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output + End With + SqlAdapter.Fill(Data) + CveConexion = SqlAdapter.SelectCommand.Parameters("@IDConexion").Value.ToString.ToEntero + Catch ex As Exception + OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + End If + End Sub + + Private Sub ConexionClose() + If CveConexion > 0 AndAlso ConfigurationManager.AppSettings("RegistraConexion") IsNot Nothing AndAlso ConfigurationManager.AppSettings("RegistraConexion").ToString() = "1" Then + + DataAdapter(String.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text) + Try + SqlAdapter.Fill(Data) + + Catch ex As Exception + OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + CveConexion = 0 + + End If + + End Sub +#End Region + Private Sub DataCommand(pStrSQL As String, Optional TipoComando As CommandType = CommandType.StoredProcedure) + With SqlCommand + .Parameters.Clear() + .CommandText = pStrSQL + .CommandType = TipoComando + End With + + If Not SqlTransacc Is Nothing Then SqlCommand.Transaction = SqlTransacc + + End Sub + Public Function IniciaTransacSQL() As SqlTransaction + If SqlTransacc Is Nothing Then SqlTransacc = SqlConexion.BeginTransaction() + Return SqlTransacc + End Function + Public Sub RollBack() + If SqlTransacc IsNot Nothing Then SqlTransacc.Rollback() + SqlTransacc = Nothing + End Sub + Public Sub Commit() + If SqlTransacc IsNot Nothing Then SqlTransacc.Commit() + SqlTransacc = Nothing + End Sub + +#Region "Empresas" + Public Function UpEmpresaFiel(CveEmpresa As Integer, FielPassword As String, FielPFX As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("UPDATE Empresas SET FielPassword=@FielPassword, FielPFX=@FielPFX WHERE CveEmpresa=@CveEmpresa ", CommandType.Text) + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@FielPassword", SqlDbType.VarChar).Value = FielPassword + .Add("@FielPFX", SqlDbType.VarChar).Value = FielPFX + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al actualizar la fiel de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function GetEmpresas(CveEmpresa As Integer, Empresa As String, RFC As String, Telefono As String, Contacto As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + End With + Try + SqlAdapter.Fill(Data) + If CveEmpresa <> -1 And Data.Rows.Count > 0 Then + _Empresa = New Empresa + _Empresa.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero + _Empresa.Empresa = Data.Rows(0)("Empresa").ToString + _Empresa.NombreCorto = Data.Rows(0)("NombreCorto").ToString + _Empresa.Direccion = Data.Rows(0)("Direccion").ToString + _Empresa.NoExt = Data.Rows(0)("NoExt").ToString + _Empresa.NoInt = Data.Rows(0)("NoInt").ToString + _Empresa.Colonia = Data.Rows(0)("Colonia").ToString + _Empresa.Ciudad = Data.Rows(0)("Ciudad").ToString + _Empresa.Estado = Data.Rows(0)("Estado").ToString + _Empresa.CP = Data.Rows(0)("CP").ToString().ToEntero + _Empresa.Regimen = Data.Rows(0)("Regimen").ToString + _Empresa.CodigoRegimenFiscal = Data.Rows(0)("CodigoRegimenFiscal").ToString + _Empresa.RFC = Data.Rows(0)("RFC").ToString + _Empresa.CURP = Data.Rows(0)("CURP").ToString + _Empresa.RegistroPatronal = Data.Rows(0)("RegistroPatronal").ToString.ToString + _Empresa.Telefono = Data.Rows(0)("Telefono").ToString + _Empresa.Contacto = Data.Rows(0)("Contacto").ToString + _Empresa.Mail = Data.Rows(0)("Mail").ToString + _Empresa.MostrarRetIVA = Data.Rows(0)("MostrarRetIVA").ToString <> "No" + _Empresa.MostrarRetISR = Data.Rows(0)("MostrarRetISR").ToString <> "No" + _Empresa.TipoFacturacion = Data.Rows(0)("TipoFacturacion").ToString + _Empresa.BIUsuario = Data.Rows(0)("BIUsuario").ToString + _Empresa.BIContraseña = Data.Rows(0)("BIContraseña").ToString + _Empresa.ArchivoKey = Data.Rows(0)("ArchivoKey").ToString + _Empresa.ArchivoCer = Data.Rows(0)("ArchivoCer").ToString + _Empresa.ArchivoPfx = Data.Rows(0)("ArchivoPfx").ToString + _Empresa.ContraseñaKey = Data.Rows(0)("ContraseñaKey").ToString + _Empresa.SendMail = Data.Rows(0)("SendMail").ToString + _Empresa.SendMailPassword = Data.Rows(0)("SendMailPassword").ToString + _Empresa.SendMailServer = Data.Rows(0)("SendMailServer").ToString + _Empresa.SendMailPuerto = Data.Rows(0)("SendMailPuerto").ToString.ToEntero + _Empresa.SendMailSSL = If(Data.Rows(0)("SendMailSSL").ToString = "", False, CBool(Data.Rows(0)("SendMailSSL").ToString)) + _Empresa.Buzon_Mail = Data.Rows(0)("Buzon_Mail").ToString + _Empresa.Buzon_Server = Data.Rows(0)("Buzon_Server").ToString + _Empresa.Buzon_Puerto = Data.Rows(0)("Buzon_Puerto").ToString.ToEntero + _Empresa.Buzon_SSL = If(Data.Rows(0)("Buzon_SSL").ToString = "", False, CBool(Data.Rows(0)("Buzon_SSL").ToString)) + _Empresa.Buzon_USR = Data.Rows(0)("Buzon_USR").ToString + _Empresa.Buzon_PWD = Data.Rows(0)("Buzon_PWD").ToString + _Empresa.Soporte_Mail = Data.Rows(0)("Soporte_Mail").ToString + _Empresa.Soporte_Server = Data.Rows(0)("Soporte_Server").ToString + _Empresa.Soporte_Puerto = Data.Rows(0)("Soporte_Puerto").ToString.ToEntero + _Empresa.Soporte_SSL = If(Data.Rows(0)("Soporte_SSL").ToString = "", False, CBool(Data.Rows(0)("Soporte_SSL").ToString)) + _Empresa.Soporte_USR = Data.Rows(0)("Soporte_USR").ToString + _Empresa.Soporte_PWD = Data.Rows(0)("Soporte_PWD").ToString + _Empresa.Soporte_Tipo = Data.Rows(0)("Soporte_Tipo").ToString + _Empresa.BDContPAQi = Data.Rows(0)("BDContPAQi").ToString + _Empresa.ServerContPAQi = Data.Rows(0)("ServerContPAQi").ToString + _Empresa.UsrContPAQi = Data.Rows(0)("UsrContPAQi").ToString + _Empresa.PwdContPAQi = Data.Rows(0)("PwdContPAQi").ToString + _Empresa.Estatus = Data.Rows(0)("Estatus").ToString = "Activo" + _Empresa.FechaIng = Data.Rows(0)("Fecha").ToString.ToDate + _Empresa.Usuario = Data.Rows(0)("Usuario").ToString + _Empresa.FacturaProduccion = If(Data.Rows(0)("FacturaProduccion").ToString = "", False, CBool(Data.Rows(0)("FacturaProduccion").ToString)) + _Empresa.EstatusFacturacion = Data.Rows(0)("EstatusFacturacion").ToString <> "No" + _Empresa.UsaContabilidad = Data.Rows(0)("UsaContabilidad").ToString <> "No" + _Empresa.UsaContabilidadSIG = Data.Rows(0)("UsaContabilidadSIG").ToString <> "No" + _Empresa.UsaBancos = Data.Rows(0)("UsaBancos").ToString <> "No" + _Empresa.UsaVentas = Data.Rows(0)("UsaVentas").ToString <> "No" + _Empresa.UsaCxC = Data.Rows(0)("UsaCxC").ToString <> "No" + _Empresa.UsaCompras = Data.Rows(0)("UsaCompras").ToString <> "No" + _Empresa.UsaInventarios = Data.Rows(0)("UsaInventarios").ToString <> "No" + _Empresa.UsaRH = Data.Rows(0)("UsaRH").ToString <> "No" + _Empresa.UsaNomina = Data.Rows(0)("UsaNomina").ToString <> "No" + _Empresa.UsaOS = Data.Rows(0)("UsaOS").ToString <> "No" + _Empresa.UsaAC = Data.Rows(0)("UsaAC").ToString <> "No" + _Empresa.UsaArmonizacion = Data.Rows(0)("UsaArmonizacion").ToString <> "No" + _Empresa.UsaAF = Data.Rows(0)("UsaAF").ToString <> "No" + _Empresa.Banner = Data.Rows(0)("Banner").ToString + _Empresa.CveUsuario = Data.Rows(0)("CveUsuario").ToString.ToEntero + _Empresa.CvePAC = Data.Rows(0)("CvePAC").ToString.ToEntero + _Empresa.CveRegimenFiscal = Data.Rows(0)("CveRegimenFiscal").ToString.ToEntero + _Empresa.EmpresaEncabezado = Data.Rows(0)("EmpresaEncabezado").ToString + _Empresa.EsComercializadora = Data.Rows(0)("EsComercializadora").ToString = "True" + + 'Nuevos Datos + _Empresa.AreaGeografica = Data.Rows(0)("AreaGeografica").ToString + _Empresa.IdCuentaIVAxAcreditar = Data.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero + _Empresa.IdCuentaIVAAcreditable = Data.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero + _Empresa.IdCuentaIVAxTrasladar = Data.Rows(0)("IdCuentaIVAxTrasladar").ToString.ToEntero + _Empresa.IdCuentaIVATrasladado = Data.Rows(0)("IdCuentaIVATrasladado").ToString.ToEntero + _Empresa.IdCuentaRetIVACirculacion = Data.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero + _Empresa.IdCuentaRetISRCirculacion = Data.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero + _Empresa.IdCuentaDSV = Data.Rows(0)("Conta_IdCuentaDescuentoVenta").ToString.ToEntero + _Empresa.IdCuentaImpuestosLocales = Data.Rows(0)("Conta_IdCuentaImpuestosLocales").ToString.ToEntero + _Empresa.IdCuentaIEPSxAcreditar = Data.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero + _Empresa.IdCuentaIEPSAcreditable = Data.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero + _Empresa.IdCuentaIEPSxTrasladar = Data.Rows(0)("IdCuentaIEPSxTrasladar").ToString.ToEntero + _Empresa.IdCuentaIEPSTrasladado = Data.Rows(0)("IdCuentaIEPSTrasladado").ToString.ToEntero + _Empresa.IdCuentaOtrosIngresos = Data.Rows(0)("Conta_IdCuentaOtrosIngresos").ToString.ToEntero + + '_Empresa.IdCtaProveedor = Data.Rows(0)("IdCtaProveedor").ToString.ToEntero + '_Empresa.IdCtaCliente = Data.Rows(0)("IdCtaCliente").ToString.ToEntero + '_Empresa.IdCtaDeudores = Data.Rows(0)("IdCtaDeudores").ToString.ToEntero + '_Empresa.IdCtaCliente = Data.Rows(0)("IdCtaCliente").ToString.ToEntero + '_Empresa.IdCtaAcreedores = Data.Rows(0)("IdCtaAcreedores").ToString.ToEntero + '_Empresa.IdCtaDocXPagar = Data.Rows(0)("IdCtaDocXPagar").ToString.ToEntero + '_Empresa.IdCtaAnticipoCliente = Data.Rows(0)("IdCtaAnticipoCliente").ToString.ToEntero + '_Empresa.IdCtaAnticipoProveedores = Data.Rows(0)("IdCtaAnticipoProveedores").ToString.ToEntero + + _Empresa.Buzon_Tipo = Data.Rows(0)("Buzon_Tipo").ToString + _Empresa.ContaContabilizacionNC = Data.Rows(0)("Conta_ContabilizacionNC").ToString.ToEntero + '_Empresa.Ruta = String.Format("{0}Empresas\{1}\", ModExtensiones.DirectorioBaseEmpresas, _Empresa.CveEmpresa) + _Empresa.PV_TerminalTipo = Data.Rows(0)("PV_TerminalTipo").ToString.ToEntero + _Empresa.EjercicioActual = Data.Rows(0)("EjercicioActual").ToString.ToEntero + _Empresa.PeriodoActual = Data.Rows(0)("PeriodoActual").ToString.ToEntero + '_Empresa.GralSoloProyecto = Data.Rows(0)("Gral_SoloProyecto").ToString <> "No" + _Empresa.MetodoOC = Data.Rows(0)("MetodoOC").ToString.ToEntero + _Empresa.CveMetodoInventario = Data.Rows(0)("Inv_CveMetodoInventario").ToString.ToEntero + _Empresa.RequiereCentroCostos = Data.Rows(0)("RequiereCentroCostos").ToString <> "No" + _Empresa.IdCuentaPerdidaCambiaria = Data.Rows(0)("IdCuentaPerdidaCambiaria").ToString.ToEntero + _Empresa.IdCuentaGananciaCambiaria = Data.Rows(0)("IdCuentaGananciaCambiaria").ToString.ToEntero + _Empresa.Tipo_CentroCosto = Data.Rows(0)("Tipo_CentroCosto").ToString.ToEntero + _Empresa.GrupoEmpresa = Data.Rows(0)("GrupoEmpresa").ToString.ToEntero + _Empresa.PlantillaMailVenta = Data.Rows(0)("PlantillaMailVenta").ToString + _Empresa.AsuntoPlantillaMailVenta = Data.Rows(0)("AsuntoPlantillaMailVenta").ToString + _Empresa.CvePlataforma = Data.Rows(0)("CvePlataforma").ToString.ToEntero + _Empresa.CveDistribuidor = Data.Rows(0)("CveDistribuidor").ToString.ToEntero + _Empresa.DiasPermitidos = Data.Rows(0)("DiasPermitidos").ToString.ToEntero + _Empresa.AsientoContableComprasContado = If(Data.Rows(0)("Conta_AsientoContableComprasContado").ToString = "", False, CBool(Data.Rows(0)("Conta_AsientoContableComprasContado").ToString)) + _Empresa.TipoContabilizacion = Data.Rows(0)("Conta_TipoContabilizacion").ToString.ToEntero + _Empresa.TipoContabilidad = Data.Rows(0)("Conta_TipoContabilidad").ToString.ToEntero '0 - Sin Conta, 1- Contabilidad SIG, 2- Contabilidad Contpaq + _Empresa.DefaultAsistencias = If(Data.Rows(0)("RH_DefaultAsistencias").ToString = "", False, CBool(Data.Rows(0)("RH_DefaultAsistencias").ToString)) + _Empresa.CIEC = Data.Rows(0)("CIEC").ToString + _Empresa.Localidad = Data.Rows(0)("Localidad").ToString + _Empresa.Importe = Data.Rows(0)("Importe").ToString.ToDecimal + _Empresa.CveMetodoPago = Data.Rows(0)("CveMetodoPago").ToString.ToEntero + _Empresa.Extension = Data.Rows(0)("Extension").ToString + _Empresa.PorDepreciacion = Data.Rows(0)("PorDepreciacion").ToString.ToDecimal + _Empresa.EsPersonaFisica = Data.Rows(0)("EsPersonaFisica").ToString.ToEntero + + _Empresa.UsaCRM = Data.Rows(0)("UsaCRM").ToString = "True" + _Empresa.AplicaDatosTecnicosCRM = If(Data.Rows(0)("AplicaDatosTecnicosCRM").ToString = "", False, CBool(Data.Rows(0)("AplicaDatosTecnicosCRM").ToString)) + _Empresa.CveEncuestaCRM = Data.Rows(0)("CveEncuestaCRM").ToString.ToEntero + + _Empresa.FielPassword = Data.Rows(0)("FielPassword").ToString _Empresa.FielPFX = Data.Rows(0)("FielPFX").ToString - _Empresa.RutaArchivos = Data.Rows(0)("RutaArchivos").ToString - - - Else - 'Alert("No se encontró la Empresa solicitada.", TipoMensaje.MsgAdvertencia) - End If - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - Public Function AddEmpresa(CveEmpresa As Integer, Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, - RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, TipoFacturacion As String, BIUsuario As String, BIContraseña As String, ContraseñaKey As String, ArchivoKey As String, - ArchivoCer As String, ArchivoPfx As String, Banner As String, CveUsuario As Integer, FacturaProduccion As Boolean, MostrarRetIVA As Boolean, MostrarRetISR As Boolean, Regimen As String, EstatusFacturacion As Boolean, - SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, UsaContabilidad As Boolean, UsaBancos As Boolean, UsaVentas As Boolean, UsaCxC As Boolean, - UsaCompras As Boolean, UsaInventarios As Boolean, UsaRH As Boolean, UsaNomina As Boolean, UsaOS As Boolean, BDContPAQi As String, ServerContPAQi As String, UsrContPAQi As String, PwdContPAQi As String, Buzon_Mail As String, - Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, Buzon_Tipo As String, Soporte_Mail As String, - Soporte_Server As String, Soporte_Puerto As Integer, Soporte_SSL As Boolean, Soporte_USR As String, Soporte_PWD As String, Soporte_Tipo As String, IdCuentaIVAxAcreditar As Integer, IdCuentaIVAAcreditable As Integer, - IdCuentaIVAxTrasladar As Integer, IdCuentaIVATrasladado As Integer, IdCuentaRetIVACirculacion As Integer, IdCuentaOtrosIngresos As Integer, IdCuentaDescuentoVentas As Integer, - IdCuentaRetISRCirculacion As Integer, RegistroPatronal As String, AreaGeografica As String, - Conta_IdCuentaPerdidaCambiaria As Integer, Conta_IdCuentaGananciaCambiaria As Integer, NombreCorto As String, CURP As String, CveRegimenFiscal As Integer, Importe As Decimal, - CIEC As String, CvePlataforma As Integer, UsaAC As Boolean, PorDepreciacion As Decimal, Extension As String, Localidad As String, MetodoInventario As Integer, AsientoContableComprasContado As Boolean, - PeriodoActual As Integer, EjercicioActual As Integer, RH_DefaultAsistencias As Boolean, DiasPermitidos As Integer, TipoCentroCosto As Integer, RequiereCentroCosto As Boolean, PV_TerminalTipo As Integer, - Optional CveMetodoPago As Integer = 0, Optional CvePAC As Integer = 0, Optional IdCuentaDSV As Integer = -1, - Optional IdCuentaImpuestosLocales As Integer = -1, Optional RegistroCompleto As Boolean = False, Optional IdCuentaIEPSxAcreditar As Integer = -1, Optional IdCuentaIEPSAcreditable As Integer = -1, Optional IdCuentaIEPSxTrasladar As Integer = -1, - Optional IdCuentaIEPSTrasladado As Integer = -1) As Boolean - - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasAdd") - - With SqlAdapter.SelectCommand.Parameters - - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@Direccion", SqlDbType.VarChar).Value = Direccion - .Add("@NoExt", SqlDbType.VarChar).Value = NoExt - - .Add("@NoInt", SqlDbType.VarChar).Value = NoInt - .Add("@Colonia", SqlDbType.VarChar).Value = Colonia - .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad - .Add("@Estado", SqlDbType.VarChar).Value = Estado - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@CP", SqlDbType.Int).Value = CP - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Mail", SqlDbType.VarChar).Value = Mail - .Add("@TipoFacturacion", SqlDbType.VarChar).Value = TipoFacturacion - .Add("@BIUsuario", SqlDbType.VarChar).Value = BIUsuario - .Add("@BIContraseña", SqlDbType.VarChar).Value = BIContraseña - .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey - .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey - .Add("@ArchivoCer", SqlDbType.VarChar).Value = ArchivoCer - .Add("@ArchivoPfx", SqlDbType.VarChar).Value = ArchivoPfx - .Add("@Banner", SqlDbType.VarChar).Value = Banner - .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario - .Add("@FacturaProduccion", SqlDbType.Bit).Value = FacturaProduccion - .Add("@MostrarRetIVA", SqlDbType.Bit).Value = MostrarRetIVA - .Add("@MostrarRetISR", SqlDbType.Bit).Value = MostrarRetISR - .Add("@Regimen", SqlDbType.VarChar).Value = Regimen - .Add("@EstatusFacturacion", SqlDbType.Int).Value = EstatusFacturacion - .Add("@SendMail", SqlDbType.VarChar).Value = SendMail - .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword - .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer - .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto - .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL - .Add("@UsaContabilidad", SqlDbType.Bit).Value = UsaContabilidad - .Add("@UsaBancos", SqlDbType.Bit).Value = UsaBancos - .Add("@UsaVentas", SqlDbType.Bit).Value = UsaVentas - .Add("@UsaCxC", SqlDbType.Bit).Value = UsaCxC - .Add("@UsaCompras", SqlDbType.Bit).Value = UsaCompras - .Add("@UsaInventarios", SqlDbType.Bit).Value = UsaInventarios - .Add("@UsaRH", SqlDbType.Bit).Value = UsaRH - .Add("@UsaNomina", SqlDbType.Bit).Value = UsaNomina - .Add("@UsaOS", SqlDbType.Bit).Value = UsaOS - .Add("@BDContPAQi", SqlDbType.VarChar).Value = BDContPAQi - .Add("@ServerContPAQi", SqlDbType.VarChar).Value = ServerContPAQi - .Add("@UsrContPAQi", SqlDbType.VarChar).Value = UsrContPAQi - .Add("@PwdContPAQi", SqlDbType.VarChar).Value = PwdContPAQi - .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail - .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server - .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto - .Add("@CveMetodoPago", SqlDbType.Int).Value = CveMetodoPago - .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL - .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR - .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD - .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFiscal - .Add("@CURP", SqlDbType.VarChar).Value = CURP - - 'Nuevos Datos - .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo - .Add("@IdCuentaIVAxAcreditar", SqlDbType.VarChar).Value = IdCuentaIVAxAcreditar - .Add("@IdCuentaIVAAcreditable", SqlDbType.VarChar).Value = IdCuentaIVAAcreditable - .Add("@IdCuentaIVAxTrasladar", SqlDbType.VarChar).Value = IdCuentaIVAxTrasladar - .Add("@IdCuentaIVATrasladado", SqlDbType.VarChar).Value = IdCuentaIVATrasladado - .Add("@IdCuentaRetIVACirculacion", SqlDbType.VarChar).Value = IdCuentaRetIVACirculacion - .Add("@IdCuentaRetISRCirculacion", SqlDbType.VarChar).Value = IdCuentaRetISRCirculacion - .Add("@RegistroPatronal", SqlDbType.VarChar).Value = RegistroPatronal - .Add("@AreaGeografica", SqlDbType.VarChar).Value = AreaGeografica - .Add("@Conta_IdCuentaPerdidaCambiaria", SqlDbType.VarChar).Value = Conta_IdCuentaPerdidaCambiaria - .Add("@Conta_IdCuentaGananciaCambiaria", SqlDbType.VarChar).Value = Conta_IdCuentaGananciaCambiaria - .Add("@NombreCorto", SqlDbType.VarChar).Value = NombreCorto - .Add("@CvePAC", SqlDbType.Int).Value = CvePAC - .Add("@IdCuentaDSV", SqlDbType.Int).Value = IdCuentaDSV - .Add("@IdCuentaImpuestosLocales", SqlDbType.Int).Value = IdCuentaImpuestosLocales - .Add("@CveEmpresaNew", SqlDbType.Int).Direction = ParameterDirection.Output - .Add("@RegistroCompleto", SqlDbType.Bit).Value = RegistroCompleto - - .Add("@IdCuentaIEPSxAcreditar", SqlDbType.VarChar).Value = IdCuentaIEPSxAcreditar - .Add("@IdCuentaIEPSAcreditable", SqlDbType.VarChar).Value = IdCuentaIEPSAcreditable - .Add("@IdCuentaIEPSxTrasladar", SqlDbType.VarChar).Value = IdCuentaIEPSxTrasladar - .Add("@IdCuentaIEPSTrasladado", SqlDbType.VarChar).Value = IdCuentaIEPSTrasladado - .Add("@Soporte_Tipo", SqlDbType.VarChar).Value = Soporte_Tipo - .Add("@Soporte_SSL", SqlDbType.Bit).Value = Soporte_SSL - .Add("@Soporte_USR", SqlDbType.VarChar).Value = Soporte_USR - .Add("@Soporte_PWD", SqlDbType.VarChar).Value = Soporte_PWD - .Add("@Soporte_Mail", SqlDbType.VarChar).Value = Soporte_Mail - .Add("@Soporte_Server", SqlDbType.VarChar).Value = Soporte_Server - .Add("@Soporte_Puerto", SqlDbType.Int).Value = Soporte_Puerto - - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - .Add("@CIEC", SqlDbType.VarChar).Value = CIEC - .Add("@UsaAC", SqlDbType.Bit).Value = UsaAC - .Add("@PorDepreciacion", SqlDbType.Decimal).Value = PorDepreciacion - .Add("@Extension", SqlDbType.VarChar).Value = Extension - .Add("@Localidad", SqlDbType.VarChar).Value = Localidad - .Add("@MetodoInventario", SqlDbType.Int).Value = MetodoInventario - .Add("@AsientoContableComprasContado", SqlDbType.Bit).Value = AsientoContableComprasContado - .Add("@PeriodoActual", SqlDbType.Int).Value = PeriodoActual - .Add("@EjercicioActual", SqlDbType.Int).Value = EjercicioActual - .Add("@RH_DefaultAsistencias", SqlDbType.Bit).Value = RH_DefaultAsistencias - .Add("@DiasPermitidos", SqlDbType.Int).Value = DiasPermitidos - .Add("@TipoCentroCosto", SqlDbType.Int).Value = TipoCentroCosto - .Add("@RequiereCentroCosto", SqlDbType.Bit).Value = RequiereCentroCosto - .Add("@PV_TerminalTipo", SqlDbType.Int).Value = PV_TerminalTipo - .Add("@IdCuentaDescuentoVentas", SqlDbType.Int).Value = IdCuentaDescuentoVentas - .Add("@IdCuentaOtrosIngresos", SqlDbType.Int).Value = IdCuentaOtrosIngresos - .Add("@Importe", SqlDbType.Decimal).Value = Importe - - - End With - - Try - SqlAdapter.Fill(Data) - _CveEmpresa = SqlAdapter.SelectCommand.Parameters("@CveEmpresaNew").Value.ToString().ToEntero() - Retorno = True - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) - Else - - Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - - End If - Catch ex As Exception - OnError("Ocurrió un error al guardar la Nueva Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - Public Function UpdateEmpresa(Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, - RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, TipoFacturacion As String, BIUsuario As String, BIContraseña As String, ContraseñaKey As String, ArchivoKey As String, - ArchivoCer As String, ArchivoPfx As String, Banner As String, Estatus As Boolean, FacturaProduccion As Boolean, MostrarRetIVA As Boolean, MostrarRetISR As Boolean, Regimen As String, EstatusFacturacion As Boolean, - SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, UsaContabilidad As Boolean, UsaBancos As Boolean, UsaVentas As Boolean, UsaCxC As Boolean, - UsaCompras As Boolean, UsaInventarios As Boolean, UsaRH As Boolean, UsaNomina As Boolean, UsaOS As Boolean, BDContPAQi As String, ServerContPAQi As String, UsrContPAQi As String, PwdContPAQi As String, Buzon_Mail As String, - Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, CveEmpresa As Integer, Buzon_Tipo As String, Soporte_Mail As String, - Soporte_Server As String, Soporte_Puerto As Integer, Soporte_SSL As Boolean, Soporte_USR As String, Soporte_PWD As String, Soporte_Tipo As String, IdCuentaIVAxAcreditar As Integer, IdCuentaIVAAcreditable As Integer, - IdCuentaIVAxTrasladar As Integer, IdCuentaIVATrasladado As Integer, IdCuentaRetIVACirculacion As Integer, IdCuentaRetISRCirculacion As Integer, IdCuentaOtrosIngresos As Integer, IdCuentaDescuentoVentas As Integer, RegistroPatronal As String, AreaGeografica As String, - Conta_IdCuentaPerdidaCambiaria As Integer, Conta_IdCuentaGananciaCambiaria As Integer, NombreCorto As String, CURP As String, CveRegimenFiscal As Integer, CvePAC As Integer, - Importe As Decimal, CIEC As String, CvePlataforma As Integer, UsaAC As Boolean, PorDepreciacion As Decimal, Extension As String, Localidad As String, MetodoInventario As Integer, AsientoContableComprasContado As Boolean, - PeriodoActual As Integer, EjercicioActual As Integer, RH_DefaultAsistencias As Boolean, DiasPermitidos As Integer, TipoCentroCosto As Integer, RequiereCentroCosto As Boolean, PV_TerminalTipo As Integer, Optional IdCuentaDSV As Integer = -1, Optional IdCuentaImpuestosLocales As Integer = -1, - Optional IdCuentaIEPSxAcreditar As Integer = -1, Optional IdCuentaIEPSAcreditable As Integer = -1, Optional IdCuentaIEPSxTrasladar As Integer = -1, Optional IdCuentaIEPSTrasladado As Integer = -1) As Boolean - - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@Direccion", SqlDbType.VarChar).Value = Direccion - .Add("@NoExt", SqlDbType.VarChar).Value = NoExt - .Add("@NoInt", SqlDbType.VarChar).Value = NoInt - .Add("@Colonia", SqlDbType.VarChar).Value = Colonia - .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad - .Add("@Estado", SqlDbType.VarChar).Value = Estado - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@CP", SqlDbType.Int).Value = CP - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Mail", SqlDbType.VarChar).Value = Mail - .Add("@TipoFacturacion", SqlDbType.VarChar).Value = TipoFacturacion - .Add("@BIUsuario", SqlDbType.VarChar).Value = BIUsuario - .Add("@BIContraseña", SqlDbType.VarChar).Value = BIContraseña - .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey - .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey - .Add("@ArchivoCer", SqlDbType.VarChar).Value = ArchivoCer - .Add("@ArchivoPfx", SqlDbType.VarChar).Value = ArchivoPfx - .Add("@Banner", SqlDbType.VarChar).Value = Banner - .Add("@Estatus", SqlDbType.Bit).Value = Estatus - .Add("@FacturaProduccion", SqlDbType.Bit).Value = FacturaProduccion - .Add("@MostrarRetIVA", SqlDbType.Bit).Value = MostrarRetIVA - .Add("@MostrarRetISR", SqlDbType.Bit).Value = MostrarRetISR - .Add("@Regimen", SqlDbType.VarChar).Value = Regimen - .Add("@EstatusFacturacion", SqlDbType.Int).Value = EstatusFacturacion - .Add("@SendMail", SqlDbType.VarChar).Value = SendMail - .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword - .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer - .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto - .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL - .Add("@UsaContabilidad", SqlDbType.Bit).Value = UsaContabilidad - .Add("@UsaBancos", SqlDbType.Bit).Value = UsaBancos - .Add("@UsaVentas", SqlDbType.Bit).Value = UsaVentas - .Add("@UsaCxC", SqlDbType.Bit).Value = UsaCxC - .Add("@UsaCompras", SqlDbType.Bit).Value = UsaCompras - .Add("@UsaInventarios", SqlDbType.Bit).Value = UsaInventarios - .Add("@UsaRH", SqlDbType.Bit).Value = UsaRH - .Add("@UsaNomina", SqlDbType.Bit).Value = UsaNomina - .Add("@UsaOS", SqlDbType.Bit).Value = UsaOS - .Add("@BDContPAQi", SqlDbType.VarChar).Value = BDContPAQi - .Add("@ServerContPAQi", SqlDbType.VarChar).Value = ServerContPAQi - .Add("@UsrContPAQi", SqlDbType.VarChar).Value = UsrContPAQi - .Add("@PwdContPAQi", SqlDbType.VarChar).Value = PwdContPAQi - .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail - .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server - .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto - .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL - .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR - .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFiscal - .Add("@CURP", SqlDbType.VarChar).Value = CURP - - - 'Nuevos Datos - .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo - .Add("@IdCuentaIVAxAcreditar", SqlDbType.VarChar).Value = IdCuentaIVAxAcreditar - .Add("@IdCuentaIVAAcreditable", SqlDbType.VarChar).Value = IdCuentaIVAAcreditable - .Add("@IdCuentaIVAxTrasladar", SqlDbType.VarChar).Value = IdCuentaIVAxTrasladar - .Add("@IdCuentaIVATrasladado", SqlDbType.VarChar).Value = IdCuentaIVATrasladado - .Add("@IdCuentaRetIVACirculacion", SqlDbType.VarChar).Value = IdCuentaRetIVACirculacion - .Add("@IdCuentaRetISRCirculacion", SqlDbType.VarChar).Value = IdCuentaRetISRCirculacion - .Add("@RegistroPatronal", SqlDbType.VarChar).Value = RegistroPatronal - .Add("@AreaGeografica", SqlDbType.VarChar).Value = AreaGeografica - .Add("@Conta_IdCuentaPerdidaCambiaria", SqlDbType.Int).Value = Conta_IdCuentaPerdidaCambiaria - .Add("@Conta_IdCuentaGananciaCambiaria", SqlDbType.Int).Value = Conta_IdCuentaGananciaCambiaria - .Add("@NombreCorto", SqlDbType.VarChar).Value = NombreCorto - .Add("@CvePAC", SqlDbType.Int).Value = CvePAC - .Add("@IdCuentaDSV", SqlDbType.Int).Value = IdCuentaDSV - .Add("@IdCuentaImpuestosLocales", SqlDbType.Int).Value = IdCuentaImpuestosLocales - - .Add("@IdCuentaIEPSxAcreditar", SqlDbType.VarChar).Value = IdCuentaIEPSxAcreditar - .Add("@IdCuentaIEPSAcreditable", SqlDbType.VarChar).Value = IdCuentaIEPSAcreditable - .Add("@IdCuentaIEPSxTrasladar", SqlDbType.VarChar).Value = IdCuentaIEPSxTrasladar - .Add("@IdCuentaIEPSTrasladado", SqlDbType.VarChar).Value = IdCuentaIEPSTrasladado - .Add("@Soporte_Tipo", SqlDbType.VarChar).Value = Soporte_Tipo - .Add("@Soporte_SSL", SqlDbType.Bit).Value = Soporte_SSL - .Add("@Soporte_USR", SqlDbType.VarChar).Value = Soporte_USR - .Add("@Soporte_PWD", SqlDbType.VarChar).Value = Soporte_PWD - .Add("@Soporte_Mail", SqlDbType.VarChar).Value = Soporte_Mail - .Add("@Soporte_Server", SqlDbType.VarChar).Value = Soporte_Server - .Add("@Soporte_Puerto", SqlDbType.Int).Value = Soporte_Puerto - - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - .Add("@CIEC", SqlDbType.VarChar).Value = CIEC - .Add("@UsaAC", SqlDbType.Bit).Value = UsaAC - .Add("@PorDepreciacion", SqlDbType.Decimal).Value = PorDepreciacion - .Add("@Extension", SqlDbType.VarChar).Value = Extension - .Add("@Localidad", SqlDbType.VarChar).Value = Localidad - .Add("@MetodoInventario", SqlDbType.Int).Value = MetodoInventario - .Add("@AsientoContableComprasContado", SqlDbType.Bit).Value = AsientoContableComprasContado - .Add("@PeriodoActual", SqlDbType.Int).Value = PeriodoActual - .Add("@EjercicioActual", SqlDbType.Int).Value = EjercicioActual - .Add("@RH_DefaultAsistencias", SqlDbType.Bit).Value = RH_DefaultAsistencias - .Add("@DiasPermitidos", SqlDbType.Int).Value = DiasPermitidos - .Add("@TipoCentroCosto", SqlDbType.Int).Value = TipoCentroCosto - .Add("@RequiereCentroCosto", SqlDbType.Bit).Value = RequiereCentroCosto - .Add("@PV_TerminalTipo", SqlDbType.Int).Value = PV_TerminalTipo - .Add("@IdCuentaDescuentoVentas", SqlDbType.Int).Value = IdCuentaDescuentoVentas - .Add("@IdCuentaOtrosIngresos", SqlDbType.Int).Value = IdCuentaOtrosIngresos - .Add("@Importe", SqlDbType.Decimal).Value = Importe - - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Actualizar por que esta siendo usada por un registro", TipoMensaje.MsgAdvertencia) - Else - Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End If - Catch ex As Exception - OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - Public Function UpdateEmpresaXWizard(Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, - RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, Regimen As String, SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, - Buzon_Mail As String, Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, CveEmpresa As Integer, - Buzon_Tipo As String, Localidad As String, Extension As String, CIEC As String, ArchivoKey As String, ArchivoCER As String, ContraseñaKey As String, Optional CveMetodoInventario As Integer = -1) As Boolean - - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresaSelfUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@Direccion", SqlDbType.VarChar).Value = Direccion - .Add("@NoExt", SqlDbType.VarChar).Value = NoExt - .Add("@NoInt", SqlDbType.VarChar).Value = NoInt - .Add("@Colonia", SqlDbType.VarChar).Value = Colonia - .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad - .Add("@Estado", SqlDbType.VarChar).Value = Estado - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@CP", SqlDbType.Int).Value = CP - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Mail", SqlDbType.VarChar).Value = Mail - - .Add("@Regimen", SqlDbType.VarChar).Value = Regimen - .Add("@SendMail", SqlDbType.VarChar).Value = SendMail - .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword - .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer - .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto - .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL - - .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail - .Add("@CIEC", SqlDbType.VarChar).Value = CIEC - .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server - .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto - .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL - .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR - .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey - .Add("@ArchivoCER", SqlDbType.VarChar).Value = ArchivoCER - .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey - .Add("@CveMetodoInventario", SqlDbType.Int).Value = CveMetodoInventario - - 'Nuevos Datos - .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo - .Add("@Localidad", SqlDbType.VarChar).Value = Buzon_Tipo - .Add("@Extension", SqlDbType.VarChar).Value = Buzon_Tipo - - - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Actualizar por que ya existe una empresa con esos datos", TipoMensaje.MsgAdvertencia) - Else - Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End If - Catch ex As Exception - OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function RemoveEmpresa(CveEmpresa As Integer) As Boolean - Dim OnError As Boolean = False - - DataAdapter("PA_Sis_EmpresasRemove") - - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Data = New DataTable() - - Try - SqlAdapter.Fill(Data) - OnError = True - - Catch Ex1 As SqlException - - If Ex1.Message.Contains("Número: 547;") Then - - Alert("La Empresa no se pudo eliminar por que esta siendo usada por un registro", TipoMensaje.MsgAdvertencia) - - Else - Me.OnError("Ocurrió un error al eliminar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - - End If - - Catch ex As Exception - Me.OnError("Ocurrió un error al eliminar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return OnError - End Function -#End Region - -#Region " REGISTRO EMPRESAS - PYME " - Public Function RegistroEmpresasDatosFiscales(NombreEmpresa As String, RFC As String, CorreoElectronico As String, Regimen As String, Contacto As String, Telefono As String, Extension As String, - Calle As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Localidad As String, Estado As String, CP As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_RegistroEmpresasDatosFiscales") - - With SqlAdapter.SelectCommand.Parameters - .Add("@NombreEmpresa", SqlDbType.VarChar).Value = NombreEmpresa - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@CorreoElectronico", SqlDbType.VarChar).Value = CorreoElectronico - .Add("@Regimen", SqlDbType.VarChar).Value = Regimen - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Extension", SqlDbType.VarChar).Value = Extension - .Add("@Calle", SqlDbType.VarChar).Value = Calle - .Add("@NoExt", SqlDbType.Int).Value = NoExt - .Add("@NoInt", SqlDbType.VarChar).Value = NoInt - .Add("@Colonia", SqlDbType.VarChar).Value = Colonia - .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad - .Add("@Localidad", SqlDbType.VarChar).Value = Localidad - .Add("@Estado", SqlDbType.VarChar).Value = Estado - .Add("@CP", SqlDbType.VarChar).Value = CP - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo actualizar por que ya existe una empresa con esos datos", TipoMensaje.MsgAdvertencia) - Else - Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End If - Catch ex As Exception - OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - Public Function RegistroEmpresasCertificadosFIEL(ArchivoFIEL As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_RegistroEmpresasCertificadosFIEL") - - With SqlAdapter.SelectCommand.Parameters - .Add("@ArchivoFIEL", SqlDbType.VarChar).Value = ArchivoFIEL - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar el archivo FIEL de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - Public Function RegistroEmpresasCertificadosCSD(ArchivoCSD As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_RegistroEmpresasCertificadosCSD") - - With SqlAdapter.SelectCommand.Parameters - .Add("@ArchivoCSD", SqlDbType.VarChar).Value = ArchivoCSD - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar el archivo CSD de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - Public Function RegistroEmpresasCertificados(ContraseñaKey As String, CIEC As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_RegistroEmpresasCertificados") - - With SqlAdapter.SelectCommand.Parameters - .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey - .Add("@CIEC", SqlDbType.VarChar).Value = CIEC - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar el archivo CSD de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - Public Function RegistroEmpresasCorreos(EnvioCorreo As String, EnvioContraseña As String, EnvioServidor As String, EnvioPuerto As Integer, EnvioSSL As Boolean, - RecepCorreo As String, RecepContraseña As String, RecepServidor As String, RecepPuerto As Integer, RecepProtocolo As String, RecepSSL As Boolean, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_RegistroEmpresasCorreos") - - With SqlAdapter.SelectCommand.Parameters - .Add("@EnvioCorreo", SqlDbType.VarChar).Value = EnvioCorreo - .Add("@EnvioContraseña", SqlDbType.VarChar).Value = EnvioContraseña - .Add("@EnvioServidor", SqlDbType.VarChar).Value = EnvioServidor - .Add("@EnvioPuerto", SqlDbType.Int).Value = EnvioPuerto - .Add("@EnvioSSL", SqlDbType.Bit).Value = EnvioSSL - .Add("@RecepCorreo", SqlDbType.VarChar).Value = RecepCorreo - .Add("@RecepContraseña", SqlDbType.VarChar).Value = RecepContraseña - .Add("@RecepServidor", SqlDbType.VarChar).Value = RecepServidor - .Add("@RecepPuerto", SqlDbType.Int).Value = RecepPuerto - .Add("@RecepProtocolo", SqlDbType.VarChar).Value = RecepProtocolo - .Add("@RecepSSL", SqlDbType.Bit).Value = RecepSSL - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar la información de correos de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - - Return Retorno - End Function - - Public Function UpdateTipoCentroCosto(Tipo_CentroCosto As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_Tipo_CentroCostoUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@Tipo_CentroCosto", SqlDbType.Int).Value = Tipo_CentroCosto - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al actualizar el tipo de centro de costo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - - Public Function UpdateFormatoImpresion(CveEmpresa As Integer, FormatoImpresion As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasFormatoPlantillaUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@FormatoImpresion", SqlDbType.Int).Value = FormatoImpresion - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar el fomato de plantilla.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function -#End Region - -#Region "E M P R E S A S - F U N C I O N A L I D A D" - Public Function GetFuncionalidades() As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_FuncionalidadesGet") - - With SqlAdapter.SelectCommand.Parameters - - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener los datos de la página.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function GetEmpresasFuncionalidades(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasFuncionalidadesGet") - - 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 consultar las Empresas Funcionalidades.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function AddUpdateEmpresaFuncionalidades(CveEmpresa As Integer, CveFuncionalidad As Integer, Valor As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasFuncionalidadesAddUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@Valor", SqlDbType.VarChar).Value = Valor - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al agregar los datos a la Cuenta Padre", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al agregar los datos a la cuenta padre.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function AddFuncionalidades(CveFuncionalidad As Integer, Funcionalidad As String, Descripcion As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_FuncionalidadesAdd") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - .Add("@Funcionalidad", SqlDbType.VarChar).Value = Funcionalidad - .Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function UpdateFuncionalidades(CveFuncionalidad As Integer, Funcionalidad As String, Descripcion As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_FuncionalidadesUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - .Add("@Funcionalidad", SqlDbType.VarChar).Value = Funcionalidad - .Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function UpdateEmpresaFuncionalidad(CveFuncionalidad As Integer, Valor As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresaFuncionalidadUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - .Add("@Valor", SqlDbType.VarChar).Value = Valor - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - Public Function UpdateEmpresaCierre(CveEmpresa As Integer, Fecha As DateTime) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresaCierreUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@Fecha", SqlDbType.DateTime).Value = Fecha - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al actualizar la fecha de cierre", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function RemoveFuncionalidades(CveFuncionalidad As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_FuncionalidadesRemove") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al Eliminar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al Eliminar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function RemoveEmpresasFuncionalidades(CveFuncionalidad As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasFuncionalidadesRemove") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al Eliminar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al Eliminar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function -#End Region - - -#Region "EmpresasGrupos" - - Public Function GetEmpresasGrupos(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasGruposGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function GetEmpresasGruposNot(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasGruposnotGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function AddEmpresasGrupos(CveEmpresaPrincipal As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasGruposAdd") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresaPrincipal", SqlDbType.Int).Value = CveEmpresaPrincipal - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - - Public Function RemoveEmpresasGrupos(CveEmpresaPrincipal As Integer, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasGruposRemove") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresaPrincipal", SqlDbType.Int).Value = CveEmpresaPrincipal - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - If CveEmpresa <> -1 Then - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - Else - OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End If - End Try - - Return Retorno - End Function - -#End Region - -#Region " EMPRESAS - MODULOS " - Public Function GetEmpresasModulos(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasModulosGet") - - - 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 consultar las Empresas Modulos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function AddEmpresasModulos(CveEmpresa As Integer, CveModulo As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasModulosAdd") - - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveModulo", SqlDbType.Int).Value = CveModulo - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al agregar el modulo a la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function RemoveEmpresasModulos(CveEmpresa As Integer, CveModulo As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasModulosRemove") - - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@CveModulo", SqlDbType.Int).Value = CveModulo - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al eliminar el modulo a la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function -#End Region - -#Region "Empresas temporales" - Public Function AddEmpresaTemp(Empresa As String, - RFC As String, Mail As String, MetodoPago As Integer) As Integer - - Dim Retorno As Integer = -1 - - DataAdapter("PA_Sis_EmpresasTempAdd") - - With SqlAdapter.SelectCommand.Parameters - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@Mail", SqlDbType.VarChar).Value = Mail - .Add("@MetodoPago", SqlDbType.Int).Value = MetodoPago - .Add("@CveEmpresaTemp", SqlDbType.Int).Direction = ParameterDirection.Output - - End With - - Try - SqlAdapter.Fill(Data) - Retorno = CType(SqlAdapter.SelectCommand.Parameters("@CveEmpresaTemp").Value, Integer) - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) - Else - - Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - - End If - Catch ex As Exception - OnError("Ocurrió un error al guardar la Nueva Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function GetEmpresaTemp(CveEmpresaTemp As Integer) As Boolean - Dim retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasTempGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresaTemp", SqlDbType.Int).Value = CveEmpresaTemp - End With - - Try - SqlAdapter.Fill(Data) - retorno = True - Catch Ex1 As SqlException - Me.OnError("Ocurrió un error al obtener los datos de la empresa", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - Catch ex As Exception - OnError("Ocurrió un error al obtener los datos de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return retorno - End Function -#End Region - - Public Function UpdatePlantillaMail(NombreCampoBDAsuntoPlantilla As String, AsuntoValor As String, NombreCampoBDPlantilla As String, HTMLValorPlantilla As String, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasPlantillaMailUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@AsuntoPlantilla", SqlDbType.VarChar).Value = NombreCampoBDAsuntoPlantilla - .Add("@ValorAsuntoPlantilla", SqlDbType.NVarChar).Value = AsuntoValor - .Add("@Plantilla", SqlDbType.VarChar).Value = NombreCampoBDPlantilla - .Add("@ValorPlantilla", SqlDbType.NVarChar).Value = HTMLValorPlantilla - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al guardar la plantilla de correo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - -#Region " P A C " - Public Function GetPacs() As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PacGet") - With SqlAdapter.SelectCommand.Parameters - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al obtener los PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - - Public Function AddPacs(PAC As String, Estatus As Boolean, CveUsuario As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PacAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@PAC", SqlDbType.VarChar).Value = PAC - .Add("@Estatus", SqlDbType.Bit).Value = Estatus - .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al agregar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function UpdatePacs(PAC As String, Estatus As Boolean, CveUsuario As Integer, CvePAC As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PacUpdate") - With SqlAdapter.SelectCommand.Parameters - - .Add("@CvePAC", SqlDbType.TinyInt).Value = CvePAC - .Add("@PAC", SqlDbType.VarChar).Value = PAC - .Add("@Estatus", SqlDbType.Bit).Value = Estatus - .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al agregar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - - Public Function RemovePacs(CvePAC As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PacRemove") - With SqlAdapter.SelectCommand.Parameters - .Add("@CvePAC", SqlDbType.VarChar).Value = CvePAC - - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al eliminar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function - -#End Region - -#Region "D I S T R I B U I D O R E S , P L A T A F O R M A" - Public Function AddPlataforma(Plataforma As String) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PlataformaAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al agregar la plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function GetPlataforma(CvePlataforma As Integer, Plataforma As String) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PlataformaGet") - With SqlAdapter.SelectCommand.Parameters - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener el Catálogo de Plataformas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function UpdatePlataforma(CvePlataforma As Integer, Plataforma As String) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PlataformaUpdate") - With SqlAdapter.SelectCommand.Parameters - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al actualizar la Plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - - Public Function DeletePlataforma(CvePlataforma As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_PlataformaDelete") - With SqlAdapter.SelectCommand.Parameters - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al eliminar la Plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - - Public Function AddDistribuidor(Distribuidor As String, CvePlataforma As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidorAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al agregar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function GetDistribuidor(CveDistribuidor As Integer, Distribuidor As String, Plataforma As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidorGet") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor - .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor - .Add("@CvePlataforma", SqlDbType.Int).Value = Plataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al obtener el Catálogo de Distribuidores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function UpdateDistribuidor(CveDistribuidor As Integer, CvePlataforma As Integer, Distribuidor As String) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidorUpdate") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor - .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor - .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al actualizar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - - Public Function DeleteDistribuidor(CveDistribuidor As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidorDelete") - With SqlAdapter.SelectCommand.Parameters - .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As Exception - OnError("Ocurrió un error al eliminar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function GetDistribuidorMaster(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidoresMasterGet") - 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 distribuidores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function AddDistribuidorMaster(RFC As String, Empresa As String, Telefono As String, Contacto As String, Mail As String, Usuario As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidoresMasterAdd") - With SqlAdapter.SelectCommand.Parameters - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Mail", SqlDbType.VarChar).Value = Mail - .Add("@Usuario", SqlDbType.Int).Value = Usuario - .Add("@CveEmpresaNew", SqlDbType.Int).Direction = ParameterDirection.Output - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - _CveEmpresa = SqlAdapter.SelectCommand.Parameters("@CveEmpresaNew").Value.ToString().ToEntero() - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) - Else - - Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - - End If - Catch ex As Exception - OnError("Ocurrió un error al agregar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function UpdateDistribuidorMaster(RFC As String, Empresa As String, Telefono As String, Contacto As String, Mail As String, Usuario As Integer, Estatus As Boolean, CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidoresMasterUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@RFC", SqlDbType.VarChar).Value = RFC - .Add("@Empresa", SqlDbType.VarChar).Value = Empresa - .Add("@Telefono", SqlDbType.VarChar).Value = Telefono - .Add("@Contacto", SqlDbType.VarChar).Value = Contacto - .Add("@Mail", SqlDbType.VarChar).Value = Mail - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@Estatus", SqlDbType.Bit).Value = Estatus - End With - - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch Ex1 As SqlException - If Ex1.Message.Contains("Número: 2627;") Then - Alert("La Empresa no se pudo Guardar ya que ya existe una empresa con el mismo nombre.", TipoMensaje.MsgAdvertencia) - Else - - Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - - End If - Catch ex As Exception - OnError("Ocurrió un error al actualizar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function - - Public Function DeleteDistribuidorMaster(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - DataAdapter("PA_Sis_DistribuidoresMasterDelete") - - 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 eliminar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - End Try - - Return Retorno - End Function -#End Region - -#Region "R E G I M E N F I S C A L" - Public Function GetRegimenFiscal(CveRegimenFIscal As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_GetRegimenFiscal") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFIscal - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al obtener Regimen Fiscal.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - - Return Retorno - End Function -#End Region - -#Region "C O M U N I C A D O" - Public Function UpdateComunicado(CveEmpresa As Integer, Comunicado As String) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasComunicadoUpdate") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@Comunicado", SqlDbType.VarChar).Value = Comunicado - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al Actualizar el Comunicado de la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function - - Public Function GetComunicado(CveEmpresa As Integer) As Boolean - Dim Retorno As Boolean = False - - DataAdapter("PA_Sis_EmpresasComunicadoGet") - - With SqlAdapter.SelectCommand.Parameters - .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - End With - Try - SqlAdapter.Fill(Data) - Retorno = True - Catch ex As SqlException - OnError("Ocurrió un error al Obtener el Comunicado de la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) - End Try - Return Retorno - End Function -#End Region - -#Region " IDisposable Support " - ' IDisposable - Protected Overridable Sub Dispose(disposing As Boolean) - If Not Me.disposedValue Then + _Empresa.RutaArchivos = Data.Rows(0)("RutaArchivos").ToString + + + Else + 'Alert("No se encontró la Empresa solicitada.", TipoMensaje.MsgAdvertencia) + End If + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + Public Function AddEmpresa(CveEmpresa As Integer, Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, + RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, TipoFacturacion As String, BIUsuario As String, BIContraseña As String, ContraseñaKey As String, ArchivoKey As String, + ArchivoCer As String, ArchivoPfx As String, Banner As String, CveUsuario As Integer, FacturaProduccion As Boolean, MostrarRetIVA As Boolean, MostrarRetISR As Boolean, Regimen As String, EstatusFacturacion As Boolean, + SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, UsaContabilidad As Boolean, UsaBancos As Boolean, UsaVentas As Boolean, UsaCxC As Boolean, + UsaCompras As Boolean, UsaInventarios As Boolean, UsaRH As Boolean, UsaNomina As Boolean, UsaOS As Boolean, BDContPAQi As String, ServerContPAQi As String, UsrContPAQi As String, PwdContPAQi As String, Buzon_Mail As String, + Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, Buzon_Tipo As String, Soporte_Mail As String, + Soporte_Server As String, Soporte_Puerto As Integer, Soporte_SSL As Boolean, Soporte_USR As String, Soporte_PWD As String, Soporte_Tipo As String, IdCuentaIVAxAcreditar As Integer, IdCuentaIVAAcreditable As Integer, + IdCuentaIVAxTrasladar As Integer, IdCuentaIVATrasladado As Integer, IdCuentaRetIVACirculacion As Integer, IdCuentaOtrosIngresos As Integer, IdCuentaDescuentoVentas As Integer, + IdCuentaRetISRCirculacion As Integer, RegistroPatronal As String, AreaGeografica As String, + Conta_IdCuentaPerdidaCambiaria As Integer, Conta_IdCuentaGananciaCambiaria As Integer, NombreCorto As String, CURP As String, CveRegimenFiscal As Integer, Importe As Decimal, + CIEC As String, CvePlataforma As Integer, UsaAC As Boolean, PorDepreciacion As Decimal, Extension As String, Localidad As String, MetodoInventario As Integer, AsientoContableComprasContado As Boolean, + PeriodoActual As Integer, EjercicioActual As Integer, RH_DefaultAsistencias As Boolean, DiasPermitidos As Integer, TipoCentroCosto As Integer, RequiereCentroCosto As Boolean, PV_TerminalTipo As Integer, + Optional CveMetodoPago As Integer = 0, Optional CvePAC As Integer = 0, Optional IdCuentaDSV As Integer = -1, + Optional IdCuentaImpuestosLocales As Integer = -1, Optional RegistroCompleto As Boolean = False, Optional IdCuentaIEPSxAcreditar As Integer = -1, Optional IdCuentaIEPSAcreditable As Integer = -1, Optional IdCuentaIEPSxTrasladar As Integer = -1, + Optional IdCuentaIEPSTrasladado As Integer = -1) As Boolean + + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasAdd") + + With SqlAdapter.SelectCommand.Parameters + + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion + .Add("@NoExt", SqlDbType.VarChar).Value = NoExt + + .Add("@NoInt", SqlDbType.VarChar).Value = NoInt + .Add("@Colonia", SqlDbType.VarChar).Value = Colonia + .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad + .Add("@Estado", SqlDbType.VarChar).Value = Estado + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@CP", SqlDbType.Int).Value = CP + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@TipoFacturacion", SqlDbType.VarChar).Value = TipoFacturacion + .Add("@BIUsuario", SqlDbType.VarChar).Value = BIUsuario + .Add("@BIContraseña", SqlDbType.VarChar).Value = BIContraseña + .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey + .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey + .Add("@ArchivoCer", SqlDbType.VarChar).Value = ArchivoCer + .Add("@ArchivoPfx", SqlDbType.VarChar).Value = ArchivoPfx + .Add("@Banner", SqlDbType.VarChar).Value = Banner + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@FacturaProduccion", SqlDbType.Bit).Value = FacturaProduccion + .Add("@MostrarRetIVA", SqlDbType.Bit).Value = MostrarRetIVA + .Add("@MostrarRetISR", SqlDbType.Bit).Value = MostrarRetISR + .Add("@Regimen", SqlDbType.VarChar).Value = Regimen + .Add("@EstatusFacturacion", SqlDbType.Int).Value = EstatusFacturacion + .Add("@SendMail", SqlDbType.VarChar).Value = SendMail + .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword + .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer + .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto + .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL + .Add("@UsaContabilidad", SqlDbType.Bit).Value = UsaContabilidad + .Add("@UsaBancos", SqlDbType.Bit).Value = UsaBancos + .Add("@UsaVentas", SqlDbType.Bit).Value = UsaVentas + .Add("@UsaCxC", SqlDbType.Bit).Value = UsaCxC + .Add("@UsaCompras", SqlDbType.Bit).Value = UsaCompras + .Add("@UsaInventarios", SqlDbType.Bit).Value = UsaInventarios + .Add("@UsaRH", SqlDbType.Bit).Value = UsaRH + .Add("@UsaNomina", SqlDbType.Bit).Value = UsaNomina + .Add("@UsaOS", SqlDbType.Bit).Value = UsaOS + .Add("@BDContPAQi", SqlDbType.VarChar).Value = BDContPAQi + .Add("@ServerContPAQi", SqlDbType.VarChar).Value = ServerContPAQi + .Add("@UsrContPAQi", SqlDbType.VarChar).Value = UsrContPAQi + .Add("@PwdContPAQi", SqlDbType.VarChar).Value = PwdContPAQi + .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail + .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server + .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto + .Add("@CveMetodoPago", SqlDbType.Int).Value = CveMetodoPago + .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL + .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR + .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD + .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFiscal + .Add("@CURP", SqlDbType.VarChar).Value = CURP + + 'Nuevos Datos + .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo + .Add("@IdCuentaIVAxAcreditar", SqlDbType.VarChar).Value = IdCuentaIVAxAcreditar + .Add("@IdCuentaIVAAcreditable", SqlDbType.VarChar).Value = IdCuentaIVAAcreditable + .Add("@IdCuentaIVAxTrasladar", SqlDbType.VarChar).Value = IdCuentaIVAxTrasladar + .Add("@IdCuentaIVATrasladado", SqlDbType.VarChar).Value = IdCuentaIVATrasladado + .Add("@IdCuentaRetIVACirculacion", SqlDbType.VarChar).Value = IdCuentaRetIVACirculacion + .Add("@IdCuentaRetISRCirculacion", SqlDbType.VarChar).Value = IdCuentaRetISRCirculacion + .Add("@RegistroPatronal", SqlDbType.VarChar).Value = RegistroPatronal + .Add("@AreaGeografica", SqlDbType.VarChar).Value = AreaGeografica + .Add("@Conta_IdCuentaPerdidaCambiaria", SqlDbType.VarChar).Value = Conta_IdCuentaPerdidaCambiaria + .Add("@Conta_IdCuentaGananciaCambiaria", SqlDbType.VarChar).Value = Conta_IdCuentaGananciaCambiaria + .Add("@NombreCorto", SqlDbType.VarChar).Value = NombreCorto + .Add("@CvePAC", SqlDbType.Int).Value = CvePAC + .Add("@IdCuentaDSV", SqlDbType.Int).Value = IdCuentaDSV + .Add("@IdCuentaImpuestosLocales", SqlDbType.Int).Value = IdCuentaImpuestosLocales + .Add("@CveEmpresaNew", SqlDbType.Int).Direction = ParameterDirection.Output + .Add("@RegistroCompleto", SqlDbType.Bit).Value = RegistroCompleto + + .Add("@IdCuentaIEPSxAcreditar", SqlDbType.VarChar).Value = IdCuentaIEPSxAcreditar + .Add("@IdCuentaIEPSAcreditable", SqlDbType.VarChar).Value = IdCuentaIEPSAcreditable + .Add("@IdCuentaIEPSxTrasladar", SqlDbType.VarChar).Value = IdCuentaIEPSxTrasladar + .Add("@IdCuentaIEPSTrasladado", SqlDbType.VarChar).Value = IdCuentaIEPSTrasladado + .Add("@Soporte_Tipo", SqlDbType.VarChar).Value = Soporte_Tipo + .Add("@Soporte_SSL", SqlDbType.Bit).Value = Soporte_SSL + .Add("@Soporte_USR", SqlDbType.VarChar).Value = Soporte_USR + .Add("@Soporte_PWD", SqlDbType.VarChar).Value = Soporte_PWD + .Add("@Soporte_Mail", SqlDbType.VarChar).Value = Soporte_Mail + .Add("@Soporte_Server", SqlDbType.VarChar).Value = Soporte_Server + .Add("@Soporte_Puerto", SqlDbType.Int).Value = Soporte_Puerto + + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + .Add("@CIEC", SqlDbType.VarChar).Value = CIEC + .Add("@UsaAC", SqlDbType.Bit).Value = UsaAC + .Add("@PorDepreciacion", SqlDbType.Decimal).Value = PorDepreciacion + .Add("@Extension", SqlDbType.VarChar).Value = Extension + .Add("@Localidad", SqlDbType.VarChar).Value = Localidad + .Add("@MetodoInventario", SqlDbType.Int).Value = MetodoInventario + .Add("@AsientoContableComprasContado", SqlDbType.Bit).Value = AsientoContableComprasContado + .Add("@PeriodoActual", SqlDbType.Int).Value = PeriodoActual + .Add("@EjercicioActual", SqlDbType.Int).Value = EjercicioActual + .Add("@RH_DefaultAsistencias", SqlDbType.Bit).Value = RH_DefaultAsistencias + .Add("@DiasPermitidos", SqlDbType.Int).Value = DiasPermitidos + .Add("@TipoCentroCosto", SqlDbType.Int).Value = TipoCentroCosto + .Add("@RequiereCentroCosto", SqlDbType.Bit).Value = RequiereCentroCosto + .Add("@PV_TerminalTipo", SqlDbType.Int).Value = PV_TerminalTipo + .Add("@IdCuentaDescuentoVentas", SqlDbType.Int).Value = IdCuentaDescuentoVentas + .Add("@IdCuentaOtrosIngresos", SqlDbType.Int).Value = IdCuentaOtrosIngresos + .Add("@Importe", SqlDbType.Decimal).Value = Importe + + + End With + + Try + SqlAdapter.Fill(Data) + _CveEmpresa = SqlAdapter.SelectCommand.Parameters("@CveEmpresaNew").Value.ToString().ToEntero() + Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) + Else + + Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar la Nueva Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + Public Function UpdateEmpresa(Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, + RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, TipoFacturacion As String, BIUsuario As String, BIContraseña As String, ContraseñaKey As String, ArchivoKey As String, + ArchivoCer As String, ArchivoPfx As String, Banner As String, Estatus As Boolean, FacturaProduccion As Boolean, MostrarRetIVA As Boolean, MostrarRetISR As Boolean, Regimen As String, EstatusFacturacion As Boolean, + SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, UsaContabilidad As Boolean, UsaBancos As Boolean, UsaVentas As Boolean, UsaCxC As Boolean, + UsaCompras As Boolean, UsaInventarios As Boolean, UsaRH As Boolean, UsaNomina As Boolean, UsaOS As Boolean, BDContPAQi As String, ServerContPAQi As String, UsrContPAQi As String, PwdContPAQi As String, Buzon_Mail As String, + Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, CveEmpresa As Integer, Buzon_Tipo As String, Soporte_Mail As String, + Soporte_Server As String, Soporte_Puerto As Integer, Soporte_SSL As Boolean, Soporte_USR As String, Soporte_PWD As String, Soporte_Tipo As String, IdCuentaIVAxAcreditar As Integer, IdCuentaIVAAcreditable As Integer, + IdCuentaIVAxTrasladar As Integer, IdCuentaIVATrasladado As Integer, IdCuentaRetIVACirculacion As Integer, IdCuentaRetISRCirculacion As Integer, IdCuentaOtrosIngresos As Integer, IdCuentaDescuentoVentas As Integer, RegistroPatronal As String, AreaGeografica As String, + Conta_IdCuentaPerdidaCambiaria As Integer, Conta_IdCuentaGananciaCambiaria As Integer, NombreCorto As String, CURP As String, CveRegimenFiscal As Integer, CvePAC As Integer, + Importe As Decimal, CIEC As String, CvePlataforma As Integer, UsaAC As Boolean, PorDepreciacion As Decimal, Extension As String, Localidad As String, MetodoInventario As Integer, AsientoContableComprasContado As Boolean, + PeriodoActual As Integer, EjercicioActual As Integer, RH_DefaultAsistencias As Boolean, DiasPermitidos As Integer, TipoCentroCosto As Integer, RequiereCentroCosto As Boolean, PV_TerminalTipo As Integer, Optional IdCuentaDSV As Integer = -1, Optional IdCuentaImpuestosLocales As Integer = -1, + Optional IdCuentaIEPSxAcreditar As Integer = -1, Optional IdCuentaIEPSAcreditable As Integer = -1, Optional IdCuentaIEPSxTrasladar As Integer = -1, Optional IdCuentaIEPSTrasladado As Integer = -1) As Boolean + + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion + .Add("@NoExt", SqlDbType.VarChar).Value = NoExt + .Add("@NoInt", SqlDbType.VarChar).Value = NoInt + .Add("@Colonia", SqlDbType.VarChar).Value = Colonia + .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad + .Add("@Estado", SqlDbType.VarChar).Value = Estado + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@CP", SqlDbType.Int).Value = CP + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@TipoFacturacion", SqlDbType.VarChar).Value = TipoFacturacion + .Add("@BIUsuario", SqlDbType.VarChar).Value = BIUsuario + .Add("@BIContraseña", SqlDbType.VarChar).Value = BIContraseña + .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey + .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey + .Add("@ArchivoCer", SqlDbType.VarChar).Value = ArchivoCer + .Add("@ArchivoPfx", SqlDbType.VarChar).Value = ArchivoPfx + .Add("@Banner", SqlDbType.VarChar).Value = Banner + .Add("@Estatus", SqlDbType.Bit).Value = Estatus + .Add("@FacturaProduccion", SqlDbType.Bit).Value = FacturaProduccion + .Add("@MostrarRetIVA", SqlDbType.Bit).Value = MostrarRetIVA + .Add("@MostrarRetISR", SqlDbType.Bit).Value = MostrarRetISR + .Add("@Regimen", SqlDbType.VarChar).Value = Regimen + .Add("@EstatusFacturacion", SqlDbType.Int).Value = EstatusFacturacion + .Add("@SendMail", SqlDbType.VarChar).Value = SendMail + .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword + .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer + .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto + .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL + .Add("@UsaContabilidad", SqlDbType.Bit).Value = UsaContabilidad + .Add("@UsaBancos", SqlDbType.Bit).Value = UsaBancos + .Add("@UsaVentas", SqlDbType.Bit).Value = UsaVentas + .Add("@UsaCxC", SqlDbType.Bit).Value = UsaCxC + .Add("@UsaCompras", SqlDbType.Bit).Value = UsaCompras + .Add("@UsaInventarios", SqlDbType.Bit).Value = UsaInventarios + .Add("@UsaRH", SqlDbType.Bit).Value = UsaRH + .Add("@UsaNomina", SqlDbType.Bit).Value = UsaNomina + .Add("@UsaOS", SqlDbType.Bit).Value = UsaOS + .Add("@BDContPAQi", SqlDbType.VarChar).Value = BDContPAQi + .Add("@ServerContPAQi", SqlDbType.VarChar).Value = ServerContPAQi + .Add("@UsrContPAQi", SqlDbType.VarChar).Value = UsrContPAQi + .Add("@PwdContPAQi", SqlDbType.VarChar).Value = PwdContPAQi + .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail + .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server + .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto + .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL + .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR + .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFiscal + .Add("@CURP", SqlDbType.VarChar).Value = CURP + + + 'Nuevos Datos + .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo + .Add("@IdCuentaIVAxAcreditar", SqlDbType.VarChar).Value = IdCuentaIVAxAcreditar + .Add("@IdCuentaIVAAcreditable", SqlDbType.VarChar).Value = IdCuentaIVAAcreditable + .Add("@IdCuentaIVAxTrasladar", SqlDbType.VarChar).Value = IdCuentaIVAxTrasladar + .Add("@IdCuentaIVATrasladado", SqlDbType.VarChar).Value = IdCuentaIVATrasladado + .Add("@IdCuentaRetIVACirculacion", SqlDbType.VarChar).Value = IdCuentaRetIVACirculacion + .Add("@IdCuentaRetISRCirculacion", SqlDbType.VarChar).Value = IdCuentaRetISRCirculacion + .Add("@RegistroPatronal", SqlDbType.VarChar).Value = RegistroPatronal + .Add("@AreaGeografica", SqlDbType.VarChar).Value = AreaGeografica + .Add("@Conta_IdCuentaPerdidaCambiaria", SqlDbType.Int).Value = Conta_IdCuentaPerdidaCambiaria + .Add("@Conta_IdCuentaGananciaCambiaria", SqlDbType.Int).Value = Conta_IdCuentaGananciaCambiaria + .Add("@NombreCorto", SqlDbType.VarChar).Value = NombreCorto + .Add("@CvePAC", SqlDbType.Int).Value = CvePAC + .Add("@IdCuentaDSV", SqlDbType.Int).Value = IdCuentaDSV + .Add("@IdCuentaImpuestosLocales", SqlDbType.Int).Value = IdCuentaImpuestosLocales + + .Add("@IdCuentaIEPSxAcreditar", SqlDbType.VarChar).Value = IdCuentaIEPSxAcreditar + .Add("@IdCuentaIEPSAcreditable", SqlDbType.VarChar).Value = IdCuentaIEPSAcreditable + .Add("@IdCuentaIEPSxTrasladar", SqlDbType.VarChar).Value = IdCuentaIEPSxTrasladar + .Add("@IdCuentaIEPSTrasladado", SqlDbType.VarChar).Value = IdCuentaIEPSTrasladado + .Add("@Soporte_Tipo", SqlDbType.VarChar).Value = Soporte_Tipo + .Add("@Soporte_SSL", SqlDbType.Bit).Value = Soporte_SSL + .Add("@Soporte_USR", SqlDbType.VarChar).Value = Soporte_USR + .Add("@Soporte_PWD", SqlDbType.VarChar).Value = Soporte_PWD + .Add("@Soporte_Mail", SqlDbType.VarChar).Value = Soporte_Mail + .Add("@Soporte_Server", SqlDbType.VarChar).Value = Soporte_Server + .Add("@Soporte_Puerto", SqlDbType.Int).Value = Soporte_Puerto + + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + .Add("@CIEC", SqlDbType.VarChar).Value = CIEC + .Add("@UsaAC", SqlDbType.Bit).Value = UsaAC + .Add("@PorDepreciacion", SqlDbType.Decimal).Value = PorDepreciacion + .Add("@Extension", SqlDbType.VarChar).Value = Extension + .Add("@Localidad", SqlDbType.VarChar).Value = Localidad + .Add("@MetodoInventario", SqlDbType.Int).Value = MetodoInventario + .Add("@AsientoContableComprasContado", SqlDbType.Bit).Value = AsientoContableComprasContado + .Add("@PeriodoActual", SqlDbType.Int).Value = PeriodoActual + .Add("@EjercicioActual", SqlDbType.Int).Value = EjercicioActual + .Add("@RH_DefaultAsistencias", SqlDbType.Bit).Value = RH_DefaultAsistencias + .Add("@DiasPermitidos", SqlDbType.Int).Value = DiasPermitidos + .Add("@TipoCentroCosto", SqlDbType.Int).Value = TipoCentroCosto + .Add("@RequiereCentroCosto", SqlDbType.Bit).Value = RequiereCentroCosto + .Add("@PV_TerminalTipo", SqlDbType.Int).Value = PV_TerminalTipo + .Add("@IdCuentaDescuentoVentas", SqlDbType.Int).Value = IdCuentaDescuentoVentas + .Add("@IdCuentaOtrosIngresos", SqlDbType.Int).Value = IdCuentaOtrosIngresos + .Add("@Importe", SqlDbType.Decimal).Value = Importe + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Actualizar por que esta siendo usada por un registro", TipoMensaje.MsgAdvertencia) + Else + Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + Public Function UpdateEmpresaXWizard(Empresa As String, Direccion As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Estado As String, + RFC As String, CP As Integer, Telefono As String, Contacto As String, Mail As String, Regimen As String, SendMail As String, SendMailPassword As String, SendMailServer As String, SendMailPuerto As Integer, SendMailSSL As Boolean, + Buzon_Mail As String, Buzon_Server As String, Buzon_Puerto As Integer, Buzon_SSL As Boolean, Buzon_USR As String, Buzon_PWD As String, CveEmpresa As Integer, + Buzon_Tipo As String, Localidad As String, Extension As String, CIEC As String, ArchivoKey As String, ArchivoCER As String, ContraseñaKey As String, Optional CveMetodoInventario As Integer = -1) As Boolean + + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresaSelfUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@Direccion", SqlDbType.VarChar).Value = Direccion + .Add("@NoExt", SqlDbType.VarChar).Value = NoExt + .Add("@NoInt", SqlDbType.VarChar).Value = NoInt + .Add("@Colonia", SqlDbType.VarChar).Value = Colonia + .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad + .Add("@Estado", SqlDbType.VarChar).Value = Estado + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@CP", SqlDbType.Int).Value = CP + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Mail", SqlDbType.VarChar).Value = Mail + + .Add("@Regimen", SqlDbType.VarChar).Value = Regimen + .Add("@SendMail", SqlDbType.VarChar).Value = SendMail + .Add("@SendMailPassword", SqlDbType.VarChar).Value = SendMailPassword + .Add("@SendMailServer", SqlDbType.VarChar).Value = SendMailServer + .Add("@SendMailPuerto", SqlDbType.Int).Value = SendMailPuerto + .Add("@SendMailSSL", SqlDbType.Bit).Value = SendMailSSL + + .Add("@Buzon_Mail", SqlDbType.VarChar).Value = Buzon_Mail + .Add("@CIEC", SqlDbType.VarChar).Value = CIEC + .Add("@Buzon_Server", SqlDbType.VarChar).Value = Buzon_Server + .Add("@Buzon_Puerto", SqlDbType.Int).Value = Buzon_Puerto + .Add("@Buzon_SSL", SqlDbType.Bit).Value = Buzon_SSL + .Add("@Buzon_USR", SqlDbType.VarChar).Value = Buzon_USR + .Add("@Buzon_PWD", SqlDbType.VarChar).Value = Buzon_PWD + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@ArchivoKey", SqlDbType.VarChar).Value = ArchivoKey + .Add("@ArchivoCER", SqlDbType.VarChar).Value = ArchivoCER + .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey + .Add("@CveMetodoInventario", SqlDbType.Int).Value = CveMetodoInventario + + 'Nuevos Datos + .Add("@Buzon_Tipo", SqlDbType.VarChar).Value = Buzon_Tipo + .Add("@Localidad", SqlDbType.VarChar).Value = Buzon_Tipo + .Add("@Extension", SqlDbType.VarChar).Value = Buzon_Tipo + + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Actualizar por que ya existe una empresa con esos datos", TipoMensaje.MsgAdvertencia) + Else + Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function RemoveEmpresa(CveEmpresa As Integer) As Boolean + Dim OnError As Boolean = False + + DataAdapter("PA_Sis_EmpresasRemove") + + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Data = New DataTable() + + Try + SqlAdapter.Fill(Data) + OnError = True + + Catch Ex1 As SqlException + + If Ex1.Message.Contains("Número: 547;") Then + + Alert("La Empresa no se pudo eliminar por que esta siendo usada por un registro", TipoMensaje.MsgAdvertencia) + + Else + Me.OnError("Ocurrió un error al eliminar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + End If + + Catch ex As Exception + Me.OnError("Ocurrió un error al eliminar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return OnError + End Function +#End Region + +#Region " REGISTRO EMPRESAS - PYME " + Public Function RegistroEmpresasDatosFiscales(NombreEmpresa As String, RFC As String, CorreoElectronico As String, Regimen As String, Contacto As String, Telefono As String, Extension As String, + Calle As String, NoExt As String, NoInt As String, Colonia As String, Ciudad As String, Localidad As String, Estado As String, CP As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_RegistroEmpresasDatosFiscales") + + With SqlAdapter.SelectCommand.Parameters + .Add("@NombreEmpresa", SqlDbType.VarChar).Value = NombreEmpresa + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@CorreoElectronico", SqlDbType.VarChar).Value = CorreoElectronico + .Add("@Regimen", SqlDbType.VarChar).Value = Regimen + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Extension", SqlDbType.VarChar).Value = Extension + .Add("@Calle", SqlDbType.VarChar).Value = Calle + .Add("@NoExt", SqlDbType.Int).Value = NoExt + .Add("@NoInt", SqlDbType.VarChar).Value = NoInt + .Add("@Colonia", SqlDbType.VarChar).Value = Colonia + .Add("@Ciudad", SqlDbType.VarChar).Value = Ciudad + .Add("@Localidad", SqlDbType.VarChar).Value = Localidad + .Add("@Estado", SqlDbType.VarChar).Value = Estado + .Add("@CP", SqlDbType.VarChar).Value = CP + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo actualizar por que ya existe una empresa con esos datos", TipoMensaje.MsgAdvertencia) + Else + Me.OnError("Ocurrió un error al Actualizar la Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar los cambios en la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + Public Function RegistroEmpresasCertificadosFIEL(ArchivoFIEL As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_RegistroEmpresasCertificadosFIEL") + + With SqlAdapter.SelectCommand.Parameters + .Add("@ArchivoFIEL", SqlDbType.VarChar).Value = ArchivoFIEL + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar el archivo FIEL de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function RegistroEmpresasCertificadosCSD(ArchivoCSD As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_RegistroEmpresasCertificadosCSD") + + With SqlAdapter.SelectCommand.Parameters + .Add("@ArchivoCSD", SqlDbType.VarChar).Value = ArchivoCSD + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar el archivo CSD de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function RegistroEmpresasCertificados(ContraseñaKey As String, CIEC As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_RegistroEmpresasCertificados") + + With SqlAdapter.SelectCommand.Parameters + .Add("@ContraseñaKey", SqlDbType.VarChar).Value = ContraseñaKey + .Add("@CIEC", SqlDbType.VarChar).Value = CIEC + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar el archivo CSD de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + Public Function RegistroEmpresasCorreos(EnvioCorreo As String, EnvioContraseña As String, EnvioServidor As String, EnvioPuerto As Integer, EnvioSSL As Boolean, + RecepCorreo As String, RecepContraseña As String, RecepServidor As String, RecepPuerto As Integer, RecepProtocolo As String, RecepSSL As Boolean, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_RegistroEmpresasCorreos") + + With SqlAdapter.SelectCommand.Parameters + .Add("@EnvioCorreo", SqlDbType.VarChar).Value = EnvioCorreo + .Add("@EnvioContraseña", SqlDbType.VarChar).Value = EnvioContraseña + .Add("@EnvioServidor", SqlDbType.VarChar).Value = EnvioServidor + .Add("@EnvioPuerto", SqlDbType.Int).Value = EnvioPuerto + .Add("@EnvioSSL", SqlDbType.Bit).Value = EnvioSSL + .Add("@RecepCorreo", SqlDbType.VarChar).Value = RecepCorreo + .Add("@RecepContraseña", SqlDbType.VarChar).Value = RecepContraseña + .Add("@RecepServidor", SqlDbType.VarChar).Value = RecepServidor + .Add("@RecepPuerto", SqlDbType.Int).Value = RecepPuerto + .Add("@RecepProtocolo", SqlDbType.VarChar).Value = RecepProtocolo + .Add("@RecepSSL", SqlDbType.Bit).Value = RecepSSL + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar la información de correos de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + + Return Retorno + End Function + + Public Function UpdateTipoCentroCosto(Tipo_CentroCosto As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_Tipo_CentroCostoUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Tipo_CentroCosto", SqlDbType.Int).Value = Tipo_CentroCosto + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al actualizar el tipo de centro de costo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + + Public Function UpdateFormatoImpresion(CveEmpresa As Integer, FormatoImpresion As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasFormatoPlantillaUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@FormatoImpresion", SqlDbType.Int).Value = FormatoImpresion + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar el fomato de plantilla.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function +#End Region + +#Region "E M P R E S A S - F U N C I O N A L I D A D" + Public Function GetFuncionalidades() As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_FuncionalidadesGet") + + With SqlAdapter.SelectCommand.Parameters + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener los datos de la página.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function GetEmpresasFuncionalidades(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasFuncionalidadesGet") + + 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 consultar las Empresas Funcionalidades.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function AddUpdateEmpresaFuncionalidades(CveEmpresa As Integer, CveFuncionalidad As Integer, Valor As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasFuncionalidadesAddUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Valor", SqlDbType.VarChar).Value = Valor + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al agregar los datos a la Cuenta Padre", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al agregar los datos a la cuenta padre.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function AddFuncionalidades(CveFuncionalidad As Integer, Funcionalidad As String, Descripcion As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_FuncionalidadesAdd") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + .Add("@Funcionalidad", SqlDbType.VarChar).Value = Funcionalidad + .Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function UpdateFuncionalidades(CveFuncionalidad As Integer, Funcionalidad As String, Descripcion As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_FuncionalidadesUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + .Add("@Funcionalidad", SqlDbType.VarChar).Value = Funcionalidad + .Add("@Descripcion", SqlDbType.VarChar).Value = Descripcion + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function UpdateEmpresaFuncionalidad(CveFuncionalidad As Integer, Valor As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresaFuncionalidadUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + .Add("@Valor", SqlDbType.VarChar).Value = Valor + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al agregar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al agregar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + Public Function UpdateEmpresaCierre(CveEmpresa As Integer, Fecha As DateTime) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresaCierreUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Fecha", SqlDbType.DateTime).Value = Fecha + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al actualizar la fecha de cierre", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function RemoveFuncionalidades(CveFuncionalidad As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_FuncionalidadesRemove") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al Eliminar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al Eliminar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function RemoveEmpresasFuncionalidades(CveFuncionalidad As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasFuncionalidadesRemove") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveFuncionalidad", SqlDbType.Int).Value = CveFuncionalidad + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al Eliminar los datos en Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al Eliminar los datos a Funcionalidades", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function +#End Region + + +#Region "EmpresasGrupos" + + Public Function GetEmpresasGrupos(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasGruposGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function GetEmpresasGruposNot(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasGruposnotGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function AddEmpresasGrupos(CveEmpresaPrincipal As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasGruposAdd") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresaPrincipal", SqlDbType.Int).Value = CveEmpresaPrincipal + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + + Public Function RemoveEmpresasGrupos(CveEmpresaPrincipal As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasGruposRemove") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresaPrincipal", SqlDbType.Int).Value = CveEmpresaPrincipal + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + If CveEmpresa <> -1 Then + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + Else + OnError("Ocurrió un error al consultar la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End If + End Try + + Return Retorno + End Function + +#End Region + +#Region " EMPRESAS - MODULOS " + Public Function GetEmpresasModulos(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasModulosGet") + + + 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 consultar las Empresas Modulos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function AddEmpresasModulos(CveEmpresa As Integer, CveModulo As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasModulosAdd") + + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveModulo", SqlDbType.Int).Value = CveModulo + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al agregar el modulo a la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function RemoveEmpresasModulos(CveEmpresa As Integer, CveModulo As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasModulosRemove") + + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@CveModulo", SqlDbType.Int).Value = CveModulo + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el modulo a la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function +#End Region + +#Region "Empresas temporales" + Public Function AddEmpresaTemp(Empresa As String, + RFC As String, Mail As String, MetodoPago As Integer) As Integer + + Dim Retorno As Integer = -1 + + DataAdapter("PA_Sis_EmpresasTempAdd") + + With SqlAdapter.SelectCommand.Parameters + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@MetodoPago", SqlDbType.Int).Value = MetodoPago + .Add("@CveEmpresaTemp", SqlDbType.Int).Direction = ParameterDirection.Output + + End With + + Try + SqlAdapter.Fill(Data) + Retorno = CType(SqlAdapter.SelectCommand.Parameters("@CveEmpresaTemp").Value, Integer) + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) + Else + + Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + End If + Catch ex As Exception + OnError("Ocurrió un error al guardar la Nueva Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function GetEmpresaTemp(CveEmpresaTemp As Integer) As Boolean + Dim retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasTempGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresaTemp", SqlDbType.Int).Value = CveEmpresaTemp + End With + + Try + SqlAdapter.Fill(Data) + retorno = True + Catch Ex1 As SqlException + Me.OnError("Ocurrió un error al obtener los datos de la empresa", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + OnError("Ocurrió un error al obtener los datos de la empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return retorno + End Function +#End Region + + Public Function UpdatePlantillaMail(NombreCampoBDAsuntoPlantilla As String, AsuntoValor As String, NombreCampoBDPlantilla As String, HTMLValorPlantilla As String, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasPlantillaMailUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@AsuntoPlantilla", SqlDbType.VarChar).Value = NombreCampoBDAsuntoPlantilla + .Add("@ValorAsuntoPlantilla", SqlDbType.NVarChar).Value = AsuntoValor + .Add("@Plantilla", SqlDbType.VarChar).Value = NombreCampoBDPlantilla + .Add("@ValorPlantilla", SqlDbType.NVarChar).Value = HTMLValorPlantilla + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al guardar la plantilla de correo.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + +#Region " P A C " + Public Function GetPacs() As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PacGet") + With SqlAdapter.SelectCommand.Parameters + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al obtener los PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + + Public Function AddPacs(PAC As String, Estatus As Boolean, CveUsuario As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PacAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@PAC", SqlDbType.VarChar).Value = PAC + .Add("@Estatus", SqlDbType.Bit).Value = Estatus + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al agregar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function UpdatePacs(PAC As String, Estatus As Boolean, CveUsuario As Integer, CvePAC As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PacUpdate") + With SqlAdapter.SelectCommand.Parameters + + .Add("@CvePAC", SqlDbType.TinyInt).Value = CvePAC + .Add("@PAC", SqlDbType.VarChar).Value = PAC + .Add("@Estatus", SqlDbType.Bit).Value = Estatus + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al agregar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + + Public Function RemovePacs(CvePAC As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PacRemove") + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePAC", SqlDbType.VarChar).Value = CvePAC + + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al eliminar el PAC.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + +#End Region + +#Region "D I S T R I B U I D O R E S , P L A T A F O R M A" + Public Function AddPlataforma(Plataforma As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PlataformaAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al agregar la plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function GetPlataforma(CvePlataforma As Integer, Plataforma As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PlataformaGet") + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el Catálogo de Plataformas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function UpdatePlataforma(CvePlataforma As Integer, Plataforma As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PlataformaUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + .Add("@Plataforma", SqlDbType.VarChar).Value = Plataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar la Plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + + Public Function DeletePlataforma(CvePlataforma As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_PlataformaDelete") + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar la Plataforma.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + + Public Function AddDistribuidor(Distribuidor As String, CvePlataforma As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidorAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al agregar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function GetDistribuidor(CveDistribuidor As Integer, Distribuidor As String, Plataforma As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidorGet") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor + .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor + .Add("@CvePlataforma", SqlDbType.Int).Value = Plataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al obtener el Catálogo de Distribuidores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function UpdateDistribuidor(CveDistribuidor As Integer, CvePlataforma As Integer, Distribuidor As String) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidorUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor + .Add("@Distribuidor", SqlDbType.VarChar).Value = Distribuidor + .Add("@CvePlataforma", SqlDbType.Int).Value = CvePlataforma + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + + Public Function DeleteDistribuidor(CveDistribuidor As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidorDelete") + With SqlAdapter.SelectCommand.Parameters + .Add("@CveDistribuidor", SqlDbType.Int).Value = CveDistribuidor + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function GetDistribuidorMaster(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidoresMasterGet") + 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 distribuidores.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function AddDistribuidorMaster(RFC As String, Empresa As String, Telefono As String, Contacto As String, Mail As String, Usuario As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidoresMasterAdd") + With SqlAdapter.SelectCommand.Parameters + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@Usuario", SqlDbType.Int).Value = Usuario + .Add("@CveEmpresaNew", SqlDbType.Int).Direction = ParameterDirection.Output + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + _CveEmpresa = SqlAdapter.SelectCommand.Parameters("@CveEmpresaNew").Value.ToString().ToEntero() + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Guardar debido a que ya se encuentra registrada.", TipoMensaje.MsgAdvertencia) + Else + + Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + End If + Catch ex As Exception + OnError("Ocurrió un error al agregar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function UpdateDistribuidorMaster(RFC As String, Empresa As String, Telefono As String, Contacto As String, Mail As String, Usuario As Integer, Estatus As Boolean, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidoresMasterUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@RFC", SqlDbType.VarChar).Value = RFC + .Add("@Empresa", SqlDbType.VarChar).Value = Empresa + .Add("@Telefono", SqlDbType.VarChar).Value = Telefono + .Add("@Contacto", SqlDbType.VarChar).Value = Contacto + .Add("@Mail", SqlDbType.VarChar).Value = Mail + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Estatus", SqlDbType.Bit).Value = Estatus + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + If Ex1.Message.Contains("Número: 2627;") Then + Alert("La Empresa no se pudo Guardar ya que ya existe una empresa con el mismo nombre.", TipoMensaje.MsgAdvertencia) + Else + + Me.OnError("Ocurrió un error al Guardar la Nueva Empresa.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + End If + Catch ex As Exception + OnError("Ocurrió un error al actualizar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function + + Public Function DeleteDistribuidorMaster(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + DataAdapter("PA_Sis_DistribuidoresMasterDelete") + + 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 eliminar el distribuidor.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function +#End Region + +#Region "R E G I M E N F I S C A L" + Public Function GetRegimenFiscal(CveRegimenFIscal As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_GetRegimenFiscal") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveRegimenFiscal", SqlDbType.Int).Value = CveRegimenFIscal + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al obtener Regimen Fiscal.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function +#End Region + +#Region "C O M U N I C A D O" + Public Function UpdateComunicado(CveEmpresa As Integer, Comunicado As String) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasComunicadoUpdate") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Comunicado", SqlDbType.VarChar).Value = Comunicado + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al Actualizar el Comunicado de la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function + + Public Function GetComunicado(CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Sis_EmpresasComunicadoGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un error al Obtener el Comunicado de la Empresa.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function +#End Region + +#Region " IDisposable Support " + ' IDisposable + Protected Overridable Sub Dispose(disposing As Boolean) + If Not Me.disposedValue Then If disposing Then ' TODO: Liberar otro estado (objetos administrados). If Not Data Is Nothing Then Data.Dispose() : Data = Nothing @@ -1853,22 +1853,22 @@ Public Class ClsSisEmpresas If Not SqlCommand Is Nothing Then SqlCommand.Dispose() : SqlCommand = Nothing If Not SqlTransacc Is Nothing Then SqlTransacc.Dispose() : SqlTransacc = Nothing If SqlConexion.State <> ConnectionState.Closed Then SqlConexion.Close() - If Not SqlConexion Is Nothing Then SqlConexion.Dispose() : SqlConexion = Nothing - - End If - - ' TODO: Liberar su propio estado (objetos no administrados). - ' TODO: Establecer campos grandes como Null. - End If - Me.disposedValue = True - End Sub - - ' Visual Basic agregó este código para implementar correctamente el modelo descartable. - Public Sub Dispose() Implements IDisposable.Dispose - ' No cambie este código. Coloque el código de limpieza en Dispose ( que se dispone como Boolean). - ConexionClose() - Dispose(True) - GC.SuppressFinalize(Me) - End Sub -#End Region -End Class + If Not SqlConexion Is Nothing Then SqlConexion.Dispose() : SqlConexion = Nothing + + End If + + ' TODO: Liberar su propio estado (objetos no administrados). + ' TODO: Establecer campos grandes como Null. + End If + Me.disposedValue = True + End Sub + + ' Visual Basic agregó este código para implementar correctamente el modelo descartable. + Public Sub Dispose() Implements IDisposable.Dispose + ' No cambie este código. Coloque el código de limpieza en Dispose ( que se dispone como Boolean). + ConexionClose() + Dispose(True) + GC.SuppressFinalize(Me) + End Sub +#End Region +End Class diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index 3f722b885..569ba4d2f 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -431,10 +431,10 @@ Partial Class PopUpVerFactura Dim bcode As New BarcodeLib.Barcode() - Dim img = bcode.Encode(BarcodeLib.TYPE.CODE128, String.Format("{0}", noPallet), 500, 100) + ' Dim img = bcode.Encode(BarcodeLib.TYPE.CODE128, String.Format("{0}", noPallet), 500, 100) Dim barcodebyte As Byte() Using ms = New MemoryStream() - img.Save(ms, System.Drawing.Imaging.ImageFormat.Png) + ' img.Save(ms, System.Drawing.Imaging.ImageFormat.Png) barcodebyte = ms.ToArray() End Using rowqr("ImagenByte") = barcodebyte diff --git a/Contabilidad/FiltraPolizas.aspx b/Contabilidad/FiltraPolizas.aspx index 98d6eb33c..9718d46b2 100644 --- a/Contabilidad/FiltraPolizas.aspx +++ b/Contabilidad/FiltraPolizas.aspx @@ -157,7 +157,9 @@ - + + + diff --git a/Contabilidad/FiltraPolizas.aspx.vb b/Contabilidad/FiltraPolizas.aspx.vb index f31632150..08d83a34f 100644 --- a/Contabilidad/FiltraPolizas.aspx.vb +++ b/Contabilidad/FiltraPolizas.aspx.vb @@ -15,6 +15,7 @@ Partial Class Contabilidad_FiltraPolizas ViewState("DtDatos") = value End Set End Property + Public Property Tick As String Get Return CType(ViewState("Tick"), String) @@ -23,20 +24,47 @@ Partial Class Contabilidad_FiltraPolizas ViewState("Tick") = value End Set End Property + + + Public Property ContabilidadSIG As Boolean + Get + If ViewState("ContabilidadSIG") Is Nothing Then + ViewState("ContabilidadSIG") = False + End If + + Return Boolean.Parse(ViewState("ContabilidadSIG").ToString) + + End Get + Set(value As Boolean) + ViewState("ContabilidadSIG") = value + End Set + End Property + #End Region Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load + + + If Not Page.IsPostBack Then + + + ContabilidadSIG = UsuarioActual.Empresa.UsaContabilidadSIG + + ViewState("Orden") = "" DdlPeriodo.SelectedValue = Now.Month.ToString TxtFechaICredito.Text = Now.FirstDayOfMonth.ToShortDateString TxtFechaFCredito.Text = Now.LastDayOfMonth.ToShortDateString - If UsuarioActual.Empresa.UsaContabilidad Then + + If UsuarioActual.Empresa.UsaContabilidad Or ContabilidadSIG Then + CargaSegmentoNeg() CargaEjercicios() - CargaDatos() + 'CargaDatos() CargaGvBitacora() + Else Alert("Este módulo requiere el uso de Contabilidad.", TipoMensaje.MsgAdvertencia) BtnConsultar.Enabled = False @@ -55,50 +83,110 @@ Partial Class Contabilidad_FiltraPolizas End If End Sub Public Sub CargaDatos() + Dim Ejercicio As Integer = DdlEjercicio.SelectedValue.ToString().ToEntero() Dim Periodo As Integer = DdlPeriodo.SelectedValue.ToString().ToEntero() - Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) - If ObjConta.GetPolizas(Ejercicio, Periodo, DdlTipoPoliza.SelectedValue.ToEntero(), DdlSegmentoNeg.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa) Then - DtDatos = ObjConta.DtResultados - Gv.DataSource = ObjConta.DtResultados - 'If DdlTipoPoliza.SelectedValue.ToEntero > 0 Then - ' ViewState("DTPolizas") = ObjConta.DtResultados.FiltraParametros($"TipoPol = '{DdlTipoPoliza.SelectedItem}'") - ' DtDatos = ObjConta.DtResultados.FiltraParametros($"TipoPol = '{DdlTipoPoliza.SelectedItem}'") - 'Else - ' ViewState("DTPolizas") = ObjConta.DtResultados - ' DtDatos = ObjConta.DtResultados - 'End If + + + + If ContabilidadSIG Then + + Dim ObjConta As New ClsContabilidad + + If ObjConta.GetPolizas(Ejercicio, Periodo, DdlTipoPoliza.SelectedValue.ToEntero(), DdlSegmentoNeg.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa) Then + DtDatos = ObjConta.DtResultados + Gv.DataSource = ObjConta.DtResultados + Else + Gv.DataSource = Nothing + End If + + ObjConta.Dispose() + + + Else + + Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) + If ObjConta.GetPolizas(Ejercicio, Periodo, DdlTipoPoliza.SelectedValue.ToEntero(), DdlSegmentoNeg.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa) Then + DtDatos = ObjConta.DtResultados + Gv.DataSource = ObjConta.DtResultados + 'If DdlTipoPoliza.SelectedValue.ToEntero > 0 Then + ' ViewState("DTPolizas") = ObjConta.DtResultados.FiltraParametros($"TipoPol = '{DdlTipoPoliza.SelectedItem}'") + ' DtDatos = ObjConta.DtResultados.FiltraParametros($"TipoPol = '{DdlTipoPoliza.SelectedItem}'") + 'Else + ' ViewState("DTPolizas") = ObjConta.DtResultados + ' DtDatos = ObjConta.DtResultados + 'End If + Else + Gv.DataSource = Nothing + End If + + ObjConta.Dispose() End If - Gv.DataBind() - ObjConta.Dispose() + + Gv.DataBind() UpDatos.Update() End Sub Private Sub CargaSegmentoNeg() - Dim ObjContPAQ As New ClsContPAQi(UsuarioActual.Empresa) - If ObjContPAQ.GetSegmentosNegocio(-1, "-1") Then - DdlSegmentoNeg.DataSource = ObjContPAQ.DtResultados - DdlSegmentoNeg.DataBind() + + DdlSegmentoNeg.Items.Clear() + + If ContabilidadSIG Then + DdlSegmentoNeg.DataValueField = "CveSubProyecto" + DdlSegmentoNeg.DataTextField = "SubProyecto" + DdlSegmentoNeg.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) + Else + DdlSegmentoNeg.DataValueField = "Id" + DdlSegmentoNeg.DataTextField = "Nombre" + + Dim ObjContPAQ As New ClsContPAQi(UsuarioActual.Empresa) + If ObjContPAQ.GetSegmentosNegocio(-1, "-1") Then + DdlSegmentoNeg.DataSource = ObjContPAQ.DtResultados + End If + ObjContPAQ.Dispose() + End If - ObjContPAQ.Dispose() + + + DdlSegmentoNeg.DataBind() DdlSegmentoNeg.Items.Insert(0, New ListItem("Todos", "-1")) + End Sub Private Sub CargaEjercicios() - Dim ClsConta As New ClsContPAQi(UsuarioActual.Empresa) - If ClsConta.GetEjercicios() Then - DdlEjercicio.DataSource = ClsConta.DtResultados - Else - DdlEjercicio.DataSource = Nothing - End If - ClsConta.Dispose() - DdlEjercicio.DataBind() + DdlEjercicio.Items.Clear() + + If ContabilidadSIG Then + + Dim ObjConta As New ClsContabilidad + + If ObjConta.GetEjercicios(UsuarioActual.CveEmpresa) Then + DdlEjercicio.DataSource = ObjConta.DtResultados + Else + DdlEjercicio.DataSource = Nothing + End If + ObjConta.Dispose() + + Else + Dim ClsConta As New ClsContPAQi(UsuarioActual.Empresa) + If ClsConta.GetEjercicios() Then + DdlEjercicio.DataSource = ClsConta.DtResultados + Else + DdlEjercicio.DataSource = Nothing + End If + ClsConta.Dispose() + + End If + + + DdlEjercicio.DataBind() DdlEjercicio.SelectedValueExist(UsuarioActual.Empresa.EjercicioActual.ToString) + End Sub Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click @@ -526,12 +614,18 @@ Partial Class Contabilidad_FiltraPolizas End Function Protected Sub GV_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles Gv.RowDataBound + If e.Row.RowType = DataControlRowType.DataRow Then - 'If e.Row.DataKey("Comprobante").ToString <> "" AndAlso e.Row.DataKey("Comprobante").ToString IsNot Nothing Then - ' e.Row.FCCheckBox("ChkPoliza").Enabled = True - 'Else - ' e.Row.FCCheckBox("ChkPoliza").ToolTip = "No se tiene cargado comprobante de pago" - 'End If + + If ContabilidadSIG Then + + e.Row.Cells(2).Text = $"{e.Row.DataKey("Folio")}" + e.Row.Cells(6).Text = $"" + + End If + + + End If End Sub diff --git a/Contabilidad/PolizasImpresion.aspx b/Contabilidad/PolizasImpresion.aspx index 7eed8c897..f692083ca 100644 --- a/Contabilidad/PolizasImpresion.aspx +++ b/Contabilidad/PolizasImpresion.aspx @@ -73,7 +73,9 @@
    - + + Segmento de Neg.: +
    diff --git a/Contabilidad/PolizasImpresion.aspx.vb b/Contabilidad/PolizasImpresion.aspx.vb index 567c14f2b..900c7af9d 100644 --- a/Contabilidad/PolizasImpresion.aspx.vb +++ b/Contabilidad/PolizasImpresion.aspx.vb @@ -10,19 +10,173 @@ Partial Class Contabilidad_PolizasImpresion Inherits ClsPaginas + + Public Property ContabilidadSIG As Boolean + Get + If ViewState("ContabilidadSIG") Is Nothing Then + ViewState("ContabilidadSIG") = False + End If + + Return Boolean.Parse(ViewState("ContabilidadSIG").ToString) + + End Get + Set(value As Boolean) + ViewState("ContabilidadSIG") = value + End Set + End Property + + Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.LoadComplete + If Not IsPostBack Then + + ContabilidadSIG = UsuarioActual.Empresa.UsaContabilidadSIG + TxtFechaInicio.Text = Now.AddDays(-1).ToShortDateString TxtFechaFin.Text = Now.ToShortDateString DdlUsuarioRegistro.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa) DdlUsuarioRegistro.DataBind() - cargaddlpolizas() - CargaSegmentoNeg() - cargaCuentas() + + + If ContabilidadSIG Then + cargaddlpolizasSIG() + CargaSubProyectosSIG() + CargaCuentasSIG() + + CargarCentrosDeCosto(Nothing, Nothing, Nothing, LblSegmentoNegocio) + LblSegmentoNegocio.Attributes.Add("title", LblSegmentoNegocio.Text) + + Else + cargaddlpolizas() + CargaSegmentoNeg() + CargaCuentas() + End If + + + End If + End Sub Private Sub BtnConsultar_click(sender As Object, args As EventArgs) Handles BtnConsultar.Click + + If ContabilidadSIG Then + ConsultaSIIG() + Else + ConsultaCONTPAQi() + End If + + End Sub + + + +#Region "SIIG" + + Private Sub ConsultaSIIG() + + Dim foli As Integer = -1 + Dim folf As Integer = -1 + If Not FolioInicio.Text = "" Then + foli = FolioInicio.Text.ToEntero() + End If + If Not FolioFin.Text = "" Then + folf = FolioFin.Text.ToEntero() + End If + + Dim ArchivoReporte As String = "Empresas/Grales/Formatos/Polizas.rdlc" + + If IO.File.Exists(String.Format("{0}Formatos/Polizas.rdlc", UsuarioActual.Empresa.Ruta)) Then + ArchivoReporte = String.Format("{0}Formatos/Polizas.rdlc", UsuarioActual.Empresa.Ruta) + End If + + Dim ObjConta As New ClsContabilidad + If ObjConta.GetPrePolizasImpresion(UsuarioActual.CveEmpresa, TxtFechaInicio.Text.ToDate, TxtFechaFin.Text.ToDate, CveTipoPoliza:=ddlTipoPoliza.SelectedValue.ToEntero, FolioI:=foli, + FolioF:=folf, CveUsuario:=DdlUsuarioRegistro.SelectedValue.ToEntero, CveSubProyecto:=DdlSegmentoNeg.SelectedValue.ToEntero, + CveCuenta:=DdlCuenta.SelectedValue.ToEntero, CvePlantillaPoliza:=DdlGrupoPlantilla.SelectedValue.ToEntero, + CveTipoProveedor:=DdlTipoProveedor.SelectedValue.ToEntero) Then + If ObjConta.DtResultados.Rows.Count < 10000 Then + + If ObjConta.DtResultados.Rows.Count > 0 Then + Dim dr As DataRow + dr = ObjConta.DtResultados.Rows(0) + Dim params As New List(Of ReportParameter) + params.Add(New ReportParameter("Empresa", UsuarioActual.Empresa.Empresa)) + params.Add(New ReportParameter("TipoPoliza", dr("TipoPoliza").ToString)) + params.Add(New ReportParameter("Finicio", TxtFechaInicio.Text)) + params.Add(New ReportParameter("FFin", TxtFechaFin.Text)) + 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("Folio").ToString)) + params.Add(New ReportParameter("Moneda", "")) + params.Add(New ReportParameter("CodigoPostal", "")) + + If UsuarioActual.CveEmpresa = 119 Then + params.Add(New ReportParameter("UsuarioRegistro", dr("NombreUsuario").ToString)) + End If + + ImprimirPDF(ArchivoReporte, ObjConta.DtResultados, params) + + Else + Alert("Los Filtros Actuales no contienen datos") + End If + + Else + Alert("Los Filtros Actuales contienen muchos datos") + End If + End If + ObjConta.Dispose() + + End Sub + + + + Private Sub cargaddlpolizasSIG() + Dim objcont As New ClsContabilidad + If objcont.GetTiposPoliza(-1, "-1", UsuarioActual.CveEmpresa) Then + ddlTipoPoliza.DataSource = objcont.DtResultados + ddlTipoPoliza.DataBind() + ddlTipoPoliza.Items.Insert(0, New ListItem("Todos", "-1")) + + End If + objcont.Dispose() + DdlUsuarioRegistro.Items.Insert(0, New ListItem("Todos", "-1")) + End Sub + + Private Sub CargaSubProyectosSIG() + + DdlSegmentoNeg.DataValueField = "CveSubProyecto" + DdlSegmentoNeg.DataTextField = "SubProyecto" + + DdlSegmentoNeg.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa) + DdlSegmentoNeg.DataBind() + DdlSegmentoNeg.Items.Insert(0, New ListItem("Todos", "-1")) + DdlSegmentoNeg.Items.Insert(1, New ListItem("Sin Asignar", "-2")) + End Sub + + Private Sub CargaCuentasSIG() + + DdlCuenta.DataValueField = "CveCuenta" + DdlCuenta.DataTextField = "CtaCodigo" + + + + Dim objconta As New ClsContabilidad + If objconta.GetCuentas(-1, "-1", -1, UsuarioActual.CveEmpresa) Then + DdlCuenta.DataSource = objconta.DtResultados + End If + objconta.Dispose() + DdlCuenta.DataBind() + + DdlCuenta.Items.Insert(0, New ListItem("Todos", "-1")) + End Sub + + + +#End Region + +#Region "CONTPAQi" + Private Sub ConsultaCONTPAQi() Dim foli As Integer = -1 Dim folf As Integer = -1 If Not FolioInicio.Text = "" Then @@ -73,8 +227,8 @@ Partial Class Contabilidad_PolizasImpresion End If End If objcont.Dispose() - End Sub + Private Sub cargaddlpolizas() Dim objcont As New ClsContPAQi(UsuarioActual.Empresa) If objcont.GetTiposPoliza(-1, "-1") Then @@ -119,5 +273,10 @@ Partial Class Contabilidad_PolizasImpresion DdlCuenta.Items.Insert(0, New ListItem("Todos", "-1")) End If End Sub +#End Region + + + + End Class diff --git a/Contabilidad/RegPoliza.aspx b/Contabilidad/RegPoliza.aspx index 7ca0aef36..eaee667a9 100644 --- a/Contabilidad/RegPoliza.aspx +++ b/Contabilidad/RegPoliza.aspx @@ -56,24 +56,29 @@ Pólizas -
  • - <%-- Imprimir--%> - Imprimir -
  • -
  • - Agregar movtos de IVA -
  • -
  • - Causaciones IVA -
  • -
  • - Cargar Movimientos -
  • + + +
  • + Imprimir +
  • +
  • + Agregar movtos de IVA +
  • +
  • + Causaciones IVA +
  • + +
  • + Cargar Movimientos +
  • +
    + +
    + + + -
  • - -
  • diff --git a/Contabilidad/RegPoliza.aspx.vb b/Contabilidad/RegPoliza.aspx.vb index 48ac946b3..9750b1cd3 100644 --- a/Contabilidad/RegPoliza.aspx.vb +++ b/Contabilidad/RegPoliza.aspx.vb @@ -937,7 +937,7 @@ Partial Class RegPoliza Dim dr As DataRow = DT.Rows(0) - HLImprimir.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta($"OP=POL&CvePoliza={dr("IdPoliza").ToString.ToEntero}")) + HLImprimir.PostBackUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta($"OP=POL&CvePoliza={dr("IdPoliza").ToString.ToEntero}")) HLImprimir.Visible = True TxtFechaPoliza.Text = dr("FechaPol").ToString.ToDate.ToShortDateString @@ -1012,6 +1012,7 @@ Partial Class RegPoliza CargaGrid() upTitulos.Update() upDatos.Update() + UpAcciones.Update() If DT IsNot Nothing Then DT.Dispose() End Sub diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb index 6fd890e1f..e99d9468d 100644 --- a/Contabilidad/RegPrePolizaS.aspx.vb +++ b/Contabilidad/RegPrePolizaS.aspx.vb @@ -2390,6 +2390,7 @@ Partial Class ContabilidadC_RegPrePolizaS ObjConta.IniciaTransacSQL() Try + Dim ContadorRegistros As Integer = 2 For Each Row As DataRow In dt.FiltraParametros("ConceptoAdministrativo <> ''").Rows @@ -2406,6 +2407,7 @@ Partial Class ContabilidadC_RegPrePolizaS Dim ObjConta2 As New ClsContabilidad Dim FolioExcel As Long = -1 Dim TipoMov As Integer = -1 + Dim TipoNaturalesa As String = "" Dim CveBancoCuenta As Integer = -1 If ObjConta2.GetCuentas(-1, Row("Cuenta").ToString.Replace("-", "").Trim, 1, UsuarioActual.CveEmpresa) Then CveCuentaExcel = ObjConta2.DtResultados.FiltroPrimeroValor("CveCuenta", "").ToEntero @@ -2438,6 +2440,8 @@ Partial Class ContabilidadC_RegPrePolizaS End If TipoMov = GlobalDTTipoTransacciones.FiltroPrimeroValor("CveTipoTransaccion", String.Format("TipoTransaccion = '{0}' ", Row("TipoTransferencia"))).ToEntero + TipoNaturalesa = GlobalDTTipoTransacciones.FiltroPrimeroValor("Tipo", String.Format("TipoTransaccion = '{0}' ", Row("TipoTransferencia"))).ToEntero + FolioExcel = Row("Folio").ToString.ToEntero CveTipoTransaccion = TipoMov CveCuenta = CveBancoCuenta @@ -2451,13 +2455,29 @@ Partial Class ContabilidadC_RegPrePolizaS ImporteDocumento = IIf(Row("Abono").ToString.ToDecimal > 0, Row("Abono").ToString.ToDecimal, Row("Cargo").ToString.ToDecimal) Observaciones = Row("Referencia").ToString Beneficiario = Row("Concepto").ToString + If Not TipoMov > 0 Then Alert(String.Format("El Tipo de Transferencia no fue encontrado:
    Tipo Transferencia: {0}
    Folio: {1}
    Importe: {2} ", Row("TipoTransferencia").ToString(), FolioExcel, ImporteDocumento), TipoMensaje.MsgAdvertencia) Exit Sub End If + + If Row("Abono").ToString.ToDecimal > 0 And TipoNaturalesa = "Ing" Then + Alert($"El movimiento con cuenta: {NombreCuenta} , importe: {ImporteDocumento.ToString("###,###,###.00")} (registro {ContadorRegistros}), no tiene la naturaleza correcta", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + + End If + + If CveConceptoContable = 30 AndAlso Row("TipoTransferencia").ToString = "" Then + Alert($" El registro {ContadorRegistros} es movimiento bancario y no se especifica el tipo de transferencia , importe: {ImporteDocumento.ToString("###,###,###.00")}", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + + 'sino viene el cveconcepto, busca por le nombre del concepto If CveConceptoContable = 0 Then Alert(String.Format("El concepto {0} no se reconoció, favor de verificar el archivo.", Row("ConceptoAdministrativo"))) @@ -2515,6 +2535,9 @@ Partial Class ContabilidadC_RegPrePolizaS DtMovimientos.Rows.Add(dr) DtMovimientos.AcceptChanges() End If + + ContadorRegistros = ContadorRegistros + 1 + Next TxtTotalCargos.Text = DtMovimientos.SUMD("Cargo").ToString.FormatoNumero diff --git a/Contabilidad2/PolizasImpresion.aspx.vb b/Contabilidad2/PolizasImpresion.aspx.vb index 6b89745ae..1260c2550 100644 --- a/Contabilidad2/PolizasImpresion.aspx.vb +++ b/Contabilidad2/PolizasImpresion.aspx.vb @@ -39,7 +39,7 @@ Partial Class Contabilidad2_PolizasImpresion End If Dim ObjConta As New ClsContabilidad - If ObjConta.GetPrePolizasImpresion(UsuarioActual.CveEmpresa, TxtFechaInicio.Text, TxtFechaFin.Text, CveTipoPoliza:=ddlTipoPoliza.SelectedValue.ToEntero, FolioI:=foli, + If ObjConta.GetPrePolizasImpresion(UsuarioActual.CveEmpresa, TxtFechaInicio.Text.ToDate, TxtFechaFin.Text.ToDate, CveTipoPoliza:=ddlTipoPoliza.SelectedValue.ToEntero, FolioI:=foli, FolioF:=folf, CveUsuario:=DdlUsuarioRegistro.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectos.SelectedValue.ToEntero, CveCuenta:=DdlCuenta.SelectedValue.ToEntero, CvePlantillaPoliza:=DdlGrupoPlantilla.SelectedValue.ToEntero, CveTipoProveedor:=DdlTipoProveedor.SelectedValue.ToEntero) Then diff --git a/Contratos/ContratoObraAutorizacion.aspx.vb b/Contratos/ContratoObraAutorizacion.aspx.vb index 0edb1200f..3c2a32cd5 100644 --- a/Contratos/ContratoObraAutorizacion.aspx.vb +++ b/Contratos/ContratoObraAutorizacion.aspx.vb @@ -221,7 +221,7 @@ Partial Class Contratos_ContratoObraAutorizacion If DTEstimaciones.Rows.Count > 0 Then GvEstimaciones.DataSource = DTEstimaciones - ' BtnGuardarEstimacion.Visible = True + 'BtnGuardarEstimacion.Visible = True BtnAutoriza.Visible = True Else GvEstimaciones.DataSource = Nothing diff --git a/Empresas/1/Formatos/Factura.rdlc b/Empresas/1/Formatos/Factura.rdlc index 624677082..b8efed7e9 100644 --- a/Empresas/1/Formatos/Factura.rdlc +++ b/Empresas/1/Formatos/Factura.rdlc @@ -2,887 +2,44 @@ - - - - true - true - - - - - Serie: - - - - - - - - =Parameters!Serie.Value - - - - - - - - Folio: - - - - =Parameters!Folio.Value - - - - - - - Textbox81 - 0.36804in - 5.50529in - 0.18682in - 2.05349in - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - - - - - Cliente: - - - - =Parameters!ClienteCodigo.Value - - - - - - - - - =Parameters!ClienteNombre.Value - - - - - - - - - Domicilio: - - - - =Parameters!ClienteDireccion.Value - - - - , - - - - =Parameters!ClienteCiudad.Value - - - - , - - - - =Parameters!ClienteEstado.Value - - - - - - - Textbox36 - 1.83775cm - 4.42805cm - 0.96667cm - 11.33709cm - 1 - - - 2pt - 2pt - 2pt - 2pt - - - - 3.08165cm - 0.635cm - 0cm - 18.56429cm - 2 - - - - - - true - true - - - - - - - - - POR ESTE PAGARE ME(NO) OBLIGO(AMOS) INCONDICIONALMENTE A PAGAR A LA ORDEN DE - - - - PROYECTOS LA RUINA, S.A. DE C.V. - - - - AL VENCIMIENTO ABAJO INDICADO. EN LA CIUDAD DE HERMOSILLO, SONORA O EN CUALQUIER OTRO LUGAR QUE SE ME REQUIERA DE PAGO, RENUNCIANDO EXPRESAMENTE AL FUERO DE MI DOMICILIO. LA CANTIDAD DE - - - - $ - - - - =Parameters!Total.Value - - - - - - - =Microsoft.VisualBasic.Strings.UCase(Parameters!ImporteLetra.Value) - - - - - - - LA SUMA ANTERIOR SI NO FUERA CUBIERTA A SU VENCIMIENTO, CAUSARA INTERES MORATORIO A RAZON DEL - - - - 3.00% MENSUAL - - - - Y EN CASO DEL COBRO JUDICIAL SE CARGARAN LOS GASTOS QUE ESTOS GENEREN. - - - - - - - true - true - - - - - a - - - - =cdate(Parameters!Fecha.Value) - - - - - - - - - Vencimiento el - - - - =Parameters!Vencimiento.Value - - - - - - - Textbox38 - 8.17569cm - 3.93558cm - 1.07625cm - 5.19875cm - 4 - - - 2pt - 2pt - 2pt - 2pt - - - - 10.25697cm - 3.93558cm - 0cm - 5.19875cm - 5 - - - - - - true - true - - - - - S U S C R I P T O R - - - - - - - Textbox39 - 10.43336cm - 3.93558cm - 0.6cm - 5.19875cm - 6 - - - 2pt - 2pt - 2pt - 2pt - - - - 10.25697cm - 11.9387cm - 0cm - 5.19875cm - 7 - - - - - - true - true - - - - - NOMBRE Y FIRMA DEL AVAL - - - - - - - Textbox39 - 10.43336cm - 11.9387cm - 0.6cm - 5.19875cm - 8 - - - 2pt - 2pt - 2pt - 2pt - - - - - Start - - true - 6.7507in - 0.07741in - 4.422in - 7.87128in - - =iif(Parameters!AplicaPagare.Value="0",True,False) - - - - - - - - - true - true - - - - - "Este documento es una representación impresa de un CFDI" - - - - - - - - - Folio fiscal: - - - - =Parameters!FolioFiscal.Value - - - - - - - =Parameters!FechaCertificacion.Value - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2pt - 2pt - 2pt - 2pt - - - - External - =Parameters!QR.Value - FitProportional - 0.02757in - 6.97243in - 1.17046in - 1.17in - 1 - - - - - - true - true - - - - - Número de serie del Certificado de Sello Digital: - - - - =Parameters!CertificadoContribuyente.Value - - - - - - - =Parameters!SerieCertificadoSAT.Value - - - - - - 2pt - 2pt - - - - true - 3.27046in - 1.21192in - 8.15659in - 1 - - - - - + - 0.58in + 1.36705cm - 0.58in + 4.79747cm - 0.8in + 3.1493cm - 3in + 3.31899cm - 0.57354in + 3.20023cm - 0.59047in - - - 0.61967in - - - 0.64182in - - - 0.79194in + 3.2129cm - 0.19645in + 0.42802cm - + true true - CANT. + FG: @@ -891,12 +48,24 @@ - Textbox22 + Textbox4 + LightGrey + - #6e4b43 + + + + + Black + + + + + + Black + 2pt 2pt 2pt @@ -907,19 +76,16 @@ - + true true - UM + Folio Fiscal: @@ -928,12 +94,24 @@ - Textbox15 + Textbox10 + LightGrey + - #6e4b43 + + Black + + + + + + + + + Black + 2pt 2pt 2pt @@ -944,19 +122,16 @@ - + true true - CLAVE SAT + Certificado SAT: @@ -965,12 +140,24 @@ - Textbox29 + Textbox37 + LightGrey + - #6e4b43 + + + + + + + + + + + Black + 2pt 2pt 2pt @@ -981,19 +168,16 @@ - + true true - DESCRIPCIÓN + Certificado del Emisor @@ -1002,12 +186,14 @@ - Textbox17 + Textbox21 - #6e4b43 + + + 2pt 2pt 2pt @@ -1018,19 +204,16 @@ - + true true - PU + Fecha de Expedición: @@ -1039,12 +222,96 @@ - Textbox3 + Textbox14 - #6e4b43 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Fecha de Certificación: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.3751cm + + + + + true + true + + + + + =IIF(Parameters!Serie.Value.ToString="",Parameters!Folio.Value,Parameters!Serie.Value & "-" &Parameters!Folio.Value) + + + + + + + Black + 1pt + + + + + + + + + Black + 2pt 2pt 2pt @@ -1062,268 +329,10 @@ - DESC. + =Parameters!FolioFiscal.Value - - - - - - Textbox8 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - IVA - - - - - - - Textbox2 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - IEPS - - - - - - - Textbox4 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - TOTAL - - - - - - - Textbox1 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.14436in - - - - - true - true - - - - - =Fields!Cantidad.Value - - - - - - - Cantidad1 - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!UM.Value - - - - - - - UM - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!SATClaveProdServ.Value - - - - - - - SATClaveProdServ - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!PS.Value & " " & Fields!Obs.Value - @@ -1331,11 +340,24 @@ + LightGrey + + + Black + + + + + + + + + Black + 2pt 2pt 2pt @@ -1346,69 +368,42 @@ - + true true - =Fields!PU.Value + =Parameters!SerieCertificadoSAT.Value - + + LightGrey + - 2pt - 2pt - 2pt - 2pt - es-MX - - - - - - - - true - true - - - - - =Fields!Descuento.Value - - - - - - - Descuento - - + + + + + + Black + 2pt 2pt 2pt @@ -1419,32 +414,42 @@ - + true true - =Fields!ImporteIVA.Value & iif(Fields!PorcentajeIVA.Value = "0.16", " (16%)"," (0%)") + =Parameters!CertificadoContribuyente.Value - + + LightGrey + + + Black + + + + + + + + + Black + 2pt 2pt 2pt @@ -1455,32 +460,43 @@ - + true true - =iif(Fields!PorcentajeIEPS.Value = "0.03",Fields!ImporteIEPS.Value & " (3%)",iif(Fields!PorcentajeIEPS.Value = "0.06",Fields!ImporteIEPS.Value & " (6%)",iif(Fields!PorcentajeIEPS.Value = "0.07",Fields!ImporteIEPS.Value & " (7%)",iif(Fields!PorcentajeIEPS.Value = "0.09",Fields!ImporteIEPS.Value & " (9%)","")))) + =Parameters!FechaExpedicion.Value - + + LightGrey + + + Black + + + + + + + + + Black + 2pt 2pt 2pt @@ -1491,38 +507,47 @@ - + true true - =Fields!Cantidad.Value * Fields!PU.Value + = Parameters!FechaCertificacion.Value - + + LightGrey + + + Black + + + + + + + + + + 2pt 2pt 2pt 2pt - es-MX @@ -1539,212 +564,68 @@ - - - - - After - - - - + + DsOC - 1.40306in - 0.34081in - 8.17744in - 2 + 2.44301cm + 0.08633cm + 0.80312cm + 19.04594cm + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + - + true true - - - - #bce0c8 - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - - - - #613f35 - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =UCase(Parameters!ImporteLetra.Value) + CLIENTE: - - - - ImporteLetra - 2.22226in - 2.12359in - 0.18861in - 5.97921in - 5 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - - - - #bce0c8 - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - - - - #bce0c8 - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Observaciones.Value - - - - @@ -1755,278 +636,45 @@ 2pt - - - - - 2.99824cm - - - - - 0.48004cm - - - - - true - true - - - - - =Fields!Importe.Value - - - - - - - Importe - - - 2pt - 2pt - 2pt - 2pt - es-MX - - - - - - - - - - - - - - - - - - - =Fields!ImpuestoLocal.Value - - - - 2.93858cm - - - true - true - - - - - =IIF(Fields!ImpuestoLocal.Value = "Total",UCase(Fields!ImpuestoLocal.Value),Fields!ImpuestoLocal.Value) - - - - - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - DataSet1 - 4.82801cm - 14.6443cm - 0.48004cm - 5.93682cm - 9 - - - - - - true - true - - - - - CFDI Relacionados - - - - - - - Textbox5 - 0.14926cm - 0.07193cm - 0.54004cm - 20.64582cm - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Tipo Relación: - - - - - - - Textbox29 - 0.83025cm - 4.78817cm - 0.41981cm - 5.31841cm - 1 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!TipoRelacionTexto.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - + - 2.42456cm + 2.5cm - 2.05585cm - - - 3.03631cm - - - 7.7847cm + 9.28803cm - 0.44125cm + 0.33494cm - + true true - Folio + NOMBRE: - + - #6e4b43 2pt 2pt 2pt @@ -2037,107 +685,27 @@ - + true true - Fecha + =Parameters!ClienteNombre.Value - + - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Importe - - - - - - - Textbox21 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Folio Fiscal - - - - - - - Textbox11 - - - #6e4b43 2pt 2pt 2pt @@ -2149,28 +717,27 @@ - 0.41479cm + 0.39173cm - + true true - =Fields!SerieFolio.Value + RFC: @@ -2185,94 +752,224 @@ - + true true - =Fields!Fecha.Value + =Parameters!ClienteRFC.Value - - - - - - Fecha - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!Importe.Value - - - - - - - Importe1 - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!FolioFiscal.Value - + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.3375cm + + + + + true + true + + + + + DIRECCIÓN: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteDireccion.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.31327cm + + + + + true + true + + + + + COLONIA: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteColonia.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.33327cm + + + + + true + true + + + + + CIUDAD: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteCiudad.Value + + + + @@ -2293,6 +990,3020 @@ + + + + + + + + + + + + DsOC + 0.11258cm + 0.30542cm + 1.71071cm + 11.78803cm + + + + + + + + + 1.57986cm + + + 4.98513cm + + + + + 0.33568cm + + + + + true + true + + + + + PAIS: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClientePais.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.41432cm + + + + + true + true + + + + + LOCALIDAD + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteLocalidad.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.28271cm + + + + + true + true + + + + + C.P: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteCP.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.44125cm + + + + + true + true + + + + + ESTADO: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Parameters!ClienteEstado.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + DsOC + 0.17235cm + 12.24977cm + 1.47396cm + 6.56499cm + 1 + + + + + + true + 3.77178cm + 0.08633cm + 1.94426cm + 19.03097cm + 2 + + + + + + + + + + + 0.74524cm + + + 0.9873cm + + + 1.39591cm + + + 1.32145cm + + + 1.02823cm + + + 1.57771cm + + + 1.11702cm + + + 1.29714cm + + + 2.19941cm + + + 1.91907cm + + + 1.76677cm + + + 1.64277cm + + + 1.94602cm + + + + + 0.46393cm + + + + + true + true + + + + + CANT + + + + + + + Textbox11 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + UNIDAD + + + + + + + Textbox104 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + PROD/SERV + + + + + + + Textbox30 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + DESCRIPCIÓN + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + 6 + + + + + + + + + + + true + true + + + + + PRECIO UNITARIO + + + + + + + Black + + 1pt + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + IMPORTE + + + + + + + Black + + 1pt + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + DESCUENTO + + + + + + + Black + + 1pt + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + TOTAL + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.46393cm + + + + + true + true + + + + + =Fields!Cantidad.Value + + + + + + + Cantidad + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!SATClaveUM.Value + + + + + + + UM + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!SATClaveProdServ.Value + + + + + + + SATClaveProdServ + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Obs.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + 6 + + + + + + + + + + + true + true + + + + + =Fields!PU.Value + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + true + true + + + + + =Fields!Cantidad.Value * Fields!PU.Value + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Descuento.Value + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + true + true + + + + + =(Fields!Cantidad.Value * Fields!PU.Value) - Fields!Descuento.Value + + + + + + + + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + 0.61917cm + + + + + true + true + + + + + + + + + + + + Textbox58 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox59 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox61 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Impuesto + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tipo + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Base + + + + + + + + + + Textbox87 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tipo Factor + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tasa o cuota + + + + + + + + + + Textbox79 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Importe + + + + + + + + + + Textbox73 + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.39956cm + + + + + true + true + + + + + + + + + + + + Textbox94 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox95 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox96 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + IEPS + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Traslado + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =(Fields!Cantidad.Value * Fields!PU.Value) - Fields!Descuento.Value + + + + + + + Textbox99 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tasa + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!PorcentajeIEPS.Value + + + + + + + Textbox101 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + $ + + + + =Fields!ImporteIEPS.Value + + + + + + + Textbox102 + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.39956cm + + + + + true + true + + + + + + + + + + + + Textbox112 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox113 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox115 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Ret. IVA + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Retención + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =(Fields!Cantidad.Value * Fields!PU.Value) - Fields!Descuento.Value + + + + + + + Textbox118 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tasa + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!PorcentajeRetIVA.Value + + + + + + + Textbox120 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + $ + + + + =Fields!ImporteRetIVA.Value + + + + + + + Textbox122 + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.42628cm + + + + + true + true + + + + + + + + + + + + Textbox127 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox128 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Textbox129 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Ret. ISR + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Retención + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =(Fields!Cantidad.Value * Fields!PU.Value) - Fields!Descuento.Value + + + + + + + Textbox132 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Tasa + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!PorcentajeRetISR.Value + + + + + + + Textbox134 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + $ + + + + =Fields!ImporteRetISR.Value + + + + + + + Textbox135 + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + = IIF( Parameters!AplicaPU.Value.ToString()="True", "Default", "White") + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + @@ -2303,33 +4014,423 @@ After - + + + + + + =IIF( Fields!ImporteIVA.Value = 0, True,False) + + + + + + + =IIF(Fields!ImporteIEPS.Value = 0, True,False) + + Before + + + + =IIF(Fields!ImporteRetIVA.Value = 0, True,False) + + Before + + + + =IIF(Fields!ImporteRetISR.Value = 0, True,False) + + Before - DataSet4 - 1.39643cm - 3.28643cm - 0.85604cm - 15.30142cm - 3 + DsOC + 0.02909cm + 0.08693cm + 2.77243cm + 18.94404cm - + + true + 5.76456cm + 0.08633cm + 2.81143cm + 19.06506cm + 3 + + + + + + + + + 1.97751cm + + + + + 0.45183cm + + + + + true + true + + + + + =Fields!Importe.Value + + + + + + + Importe + + + 2pt + 2pt + 2pt + 2pt + es-MX + + + + + + + + + + + + + + + + + + + =Fields!ImpuestoLocal.Value + + + + 2.99338cm + + + true + true + + + + + =Fields!ImpuestoLocal.Value + + + + + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + DataSet1 + 8.58452cm + 14.1887cm + 0.45183cm + 4.97089cm + 4 + + + White + + + + true + true + + + + + IMPORTE CON LETRA + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Microsoft.VisualBasic.Strings.UCase(Parameters!ImporteLetra.Value) + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + 4.68791cm + 6.69955cm + 0cm + + + + + true true - VERSION 3.3 + Sello digital del CFDI: + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!SelloCFDI.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 1.21513cm + 4.68791cm + 0cm + 14.05756cm + 3 + + + + + + true + true + + + + + Sello del SAT: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!SelloSAT.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 2.28637cm + 4.68791cm + 0cm + 14.05756cm + 6 + + + + + + true + true + + + + + Cadena original del complemento de certificación del SAT + @@ -2339,12 +4440,826 @@ - Textbox5 - 2.32303cm - 17.39754cm - 0.6cm - 3.32021cm - 4 + Textbox153 + 2.33846cm + 6.53135cm + 0.30014cm + 11.18751cm + 7 + + + 2pt + 2pt + 2pt + 2pt + + + + 2.70915cm + 4.68791cm + 0cm + 14.05756cm + 8 + + + + + + true + true + + + + + =Parameters!CadenaOriginal.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 3.66722cm + 4.68791cm + 0cm + 14.05756cm + 10 + + + + + + true + true + + + + + Este documento es una representación impresa de un CFDI + + + + + + + Textbox155 + 3.69544cm + 6.53135cm + 0.32075cm + 11.18751cm + 11 + + + 2pt + 2pt + 2pt + 2pt + + + + 4.07969cm + 4.68791cm + 0cm + 14.05756cm + 12 + + + + + + true + true + + + + + Efectos fiscales al pago + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 4.54563cm + 4.68791cm + 0cm + 14.08618cm + 14 + + + + + + true + true + + + + + Régimen Fiscal: 601 RÉGIMEN GENERAL DE LEY PERSONAS MORALES + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 5.2938cm + 4.68791cm + 0cm + 14.05756cm + 16 + + + + + + true + true + + + + + Método de pago: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =IIF(Parameters!MetodoPago.Value.ToString="","No Identificado",Parameters!MetodoPago.Value) + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 5.2938cm + 12.55109cm + 0.94175cm + 0cm + 19 + + + + + + true + true + + + + + Número de cuenta de pago: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =IIF(Parameters!NumCta.Value="0" Orelse Parameters!NumCta.Value="","NA",Parameters!NumCta.Value) + + + + + + 2pt + 2pt + 2pt + 2pt + + + + External + =Parameters!QR.Value + FitProportional + 2.59219cm + 0.04173in + 1.27324in + 1.56618in + 22 + + + + + + Embedded + SAT + FitProportional + 0.12384cm + 0.106cm + 3.23403cm + 3.9781cm + 23 + + + + + + 4.93921cm + 4.68743cm + 0cm + 14.05756cm + 24 + + + + + + true + true + + + + + Uso CFDI: + + + + =Parameters!UsoCFDI.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + 5.75269cm + 4.68743cm + 0cm + 14.05756cm + 26 + + + + + + true + true + + + + + =Parameters!FormaPago.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Forma de pago: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + true + true + + + + + CFDI Relacionados + + + + + + + Textbox5 + 0.46243cm + 19.11806cm + + + White + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Tipo Relación: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =IIF( Parameters!TipoRelacionTexto.Value.ToString() = "Refacturación de Ingreso" ,"04 - Sustitución de los CFDI previos" ,Parameters!TipoRelacionTexto.Value.ToString()) + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Folio Fiscal: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!FolioFiscalRelacionado.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Número relacionado a la factura del Anticipo Inicial. + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + 6.21158cm + 1.197cm + 19.11806cm + 29 + + =Microsoft.VisualBasic.Interaction.iif(Parameters!TipoRelacionTexto.Value <> "" Or Parameters!FolioFiscalRelacionado.Value <> "", False, True) + + + + + + + true + true + + + + + Moneda: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Moneda.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + TC: $ + + + + =Parameters!TipoCambio.Value + + + + @@ -2357,30 +5272,429 @@ true - 12.21724cm - 2.97096cm - 20.72355cm - 10 - - =iif(Parameters!TipoRelacionTexto.Value <> "", False, True) - + 13.35624cm + 0.127cm + 7.40858cm + 19.11806cm + 7 + + + + + + + + + + + 5.10989cm + + + + + 0.91584cm + + + + + true + true + + + + + =Fields!Titulo.Value + + + + + + + + + =Fields!Titulo2.Value + + + + + + + + + + + + + + + + + + __________________________________ + + + + + + + + + =Fields!Nombre.Value + + + + + + + + + =Fields!Puesto.Value + + + + + + + + + =Fields!RFC.Value + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + true + DataSet2 + 0.07525cm + 0.8073cm + 0.91584cm + 5.10989cm + + + + + + + + + 4.81544cm + + + + + 0.90381cm + + + + + true + true + + + + + =Fields!Titulo.Value + + + + + + + + + =Fields!Titulo2.Value + + + + + + + + + + + + + + + + + + __________________________________ + + + + + + + + + =Fields!Nombre.Value + + + + + + + + + =Fields!Puesto.Value + + + + + + + + + =Fields!RFC.Value + + + + + + + Textbox114 + + =(Fields!Lado.Value <> 0) + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + DataSet2 + 0.07525cm + 13.13459cm + 0.90381cm + 4.81544cm + 1 + + + + + + true + 12.30653cm + 0.127cm + 0.99109cm + 18.86448cm + 8 - + + true + true + + + + + Documento Válido + + + + + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + - 0.78719in + 1.06641in - 0.58129in + 0.8881in - 0.71694in + 0.87012in @@ -2389,19 +5703,18 @@ - + true true - IMPUESTO + Impuesto @@ -2411,11 +5724,14 @@ Textbox22 + + true + + - #6e4b43 + White 2pt 2pt 2pt @@ -2426,19 +5742,18 @@ - + true true - TASA + Tasa @@ -2450,9 +5765,9 @@ Textbox15 + - #6e4b43 + White 2pt 2pt 2pt @@ -2463,19 +5778,18 @@ - + true true - IMPORTE + Importe @@ -2487,9 +5801,9 @@ Textbox29 + - #6e4b43 + White 2pt 2pt 2pt @@ -2514,8 +5828,8 @@ =Fields!Impuesto.Value @@ -2528,7 +5842,7 @@ Cantidad1 + 2pt 2pt @@ -2549,8 +5863,8 @@ =Fields!tasa.Value @@ -2563,7 +5877,7 @@ UM + 2pt 2pt @@ -2584,10 +5898,10 @@ =Fields!Importe.Value @@ -2599,13 +5913,12 @@ Codigo + 2pt 2pt 2pt 2pt - es-MX @@ -2627,485 +5940,18 @@ After - + DataSet3 - 1.90507in + 3.38942in + 2.51985in 0.34081in - 2.08542in - 11 - - - - - - - - - 1.99527cm - - - 1.4677cm - - - 2.20762cm - - - 2.04008cm - - - 1.71184cm - - - - - 0.52062cm - - - - - true - true - - - - - Ventas Aplicadas - - - - - - - Textbox22 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - 5 - - - - - - - - - - 0.52063cm - - - - - true - true - - - - - Factura - - - - - - - Textbox16 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Fecha - - - - - - - Textbox24 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Total - - - - - - - Textbox27 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - NC - - - - - - - Textbox30 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Moneda - - - - - - - Textbox37 - - - #6e4b43 - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.49417cm - - - - - true - true - - - - - =Fields!SerieFolio.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!Fecha.Value - - - - - - - Fecha1 - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!SubTotal.Value - - - - - - - SubTotal - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!Importe.Value - - - - - - - Importe2 - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Fields!Moneda.Value - - - - - - - Moneda - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - - - - - - - - - - - After - - - After - - - - - - - DataSet5 - 6.19416cm - 1.53542cm - 9.42251cm - 12 + 2.82463in + 10 - =IIF(Parameters!Tipo.Value = "EGRESO" OR Parameters!Tipo.Value = "Anticipo" OR Parameters!Tipo.Value = "DEVOLUCION", False,True) + true - - true + + + + true + true + + + + + DEPOSITAR EN: + + + + + + + Textbox1 + 0.02461cm + 1.25cm + 0.33197cm + 2.5cm + + + 2pt + 2pt + 2pt + 2pt + + + + 0.39539cm + 0cm + 5.89514cm + 1 + + + + + + + + + 1.92142cm + + + 3.97372cm + + + + + 0.36611cm + + + + + true + true + + + + + BENEFICIARIO + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + GLUYAS CONSTRUCCIONES S.A. DE C.V. + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.35463cm + + + + + true + true + + + + + BANCO: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + BANCOMER + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.34697cm + + + + + true + true + + + + + No.CUENTA: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + 0133357023 + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.35257cm + + + + + true + true + + + + + CLABE: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + 012760001333570233 + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.34803cm + + + + + true + true + + + + + SUCURSAL: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + 1830 HERMOSILLO + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.33935cm + + + + + true + true + + + + + LUGAR: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + SONORA + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + + + DsOC + 0.45889cm + 2.10766cm + 5.89514cm + 2 + + + + + true - - - - - "REVISAR SU FACTURA AL MOMENTO DE RECEPCIÓN YA QUE NO SE REALIZARA CAMBIO DE LA MISMA DESPUÉS DE 5 DÍAS POSTERIORES A SU FECHA DE ELABORACIÓN" - - - - - - - Textbox1 - 7.80013cm - 0.34219cm - 20.64582cm - 13 + 8.64802cm + 0.09525cm + 2.61093cm + 5.92603cm + 11 + - 2pt - 2pt - 2pt - 2pt - - - true + + + + + 3.18142cm + 2.36466cm + 0cm + + + + + + true + true + + + + + GLUYAS CONSTRUCCIONES, S.A DE C.V. + + + + + + + + + Calle Tarasca #16 Sur, Col. Nueva Estación, Hermosillo, Sonora. , CP 83160 + + + + + + + + + Tels/Fax(662) 210 4721 Email: info@gluyasconstrucciones.com + + + + + + + + + RFC: GCO-890418-M56 + + + + + + + + + + + + Lugar Expedición: 83160 + + + + + + + Textbox2 + 0.13879cm + 3.39309cm + 2.04489cm + 11.97743cm + 1 + + + 2pt + 2pt + 2pt + 2pt + + + + Embedded + Logo3 + FitProportional + 0.13879cm + 0.2113cm + 2.04489cm + 2.79373cm + 2 + + + + + + true + true + + + + + + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + CFDI 4.0 Tipo: + + + + =Microsoft.VisualBasic.Interaction.IIF(Parameters!Tipo.Value.ToString() = "INGRESO" Or Parameters!Tipo.Value.ToString() = "REMISION", "I-Ingreso", Microsoft.VisualBasic.Interaction.IIF(Parameters!Tipo.Value.ToString() = "EGRESO", "E-Egreso", "")) + + + + + + White + 2pt + 2pt + 2pt + 2pt + + + true - - - - - - - - - TIPO DE DOCUMENTO: - - - - =Parameters!Tipo.Value - - - - - - - - - - - - - Serie: - - - - =Parameters!Serie.Value - - - - Folio: - - - - =Parameters!Folio.Value - - - - - - - - - Fecha: - - - - - - - - = Parameters!Fecha.Value - - - - - - - - - - - - - =IIF(Parameters!CondicionPago.Value = "crédito","<b>Fecha Vencimiento:</b> " & (Parameters!Vencimiento.Value),"") - HTML - - - - - - - - - Moneda: - - - - =Parameters!MonedaAbreviatura.Value - - - - - - - - - Forma de pago: - - - - =Parameters!FormaPago.Value - - - - - - - - - Método de pago: - - - - =Parameters!MetodoPago.Value - - - - - - - - - Uso CFDI: - - - - =Parameters!UsoCFDI.Value - - - - - - - - - Régimen fiscal: - - - - Regimen General de Ley Personas Morale - - - - s - - - - - - - Textbox4 - 0.03543in - 5.16854in - 1.34269in - 3.02863in - 14 + 0.08815cm + 2.36466cm + 19.04412cm + 12 - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Facturado a: - - - - - - - - - Cliente: - - - - =Parameters!ClienteNombre.Value - - - - - - - - - RFC: - - - - =Parameters!ClienteRFC.Value - - - - - - - - - Calle: - - - - - - - - =Parameters!ClienteCalle.Value & IIF(Parameters!ClienteNoExt.Value <> "", " No.Ext: " & Parameters!ClienteNoExt.Value & iif(Parameters!ClienteNoInt.Value <> ""," No.Int: " & Parameters!ClienteNoInt.Value,""),iif(Parameters!ClienteNoInt.Value <> ""," No.Int: " & Parameters!ClienteNoInt.Value,"")) - - - - - - - - - Colonia: - - - - - - - - =Parameters!ClienteColonia.Value - - - - - - - - - Ciudad: - - - - =Parameters!ClienteCiudad.Value - - - - - - - - - - - - - Estado: - - - - - - - - =Parameters!ClienteEstado.Value - - - - - - - - - Municipio y/o Delegación: - - - - =Parameters!ClienteMunicipio.Value - - - - - - - - - - - - - Pais: - - - - =Parameters!ClientePais.Value - - - - - - - - CP: - - - - - - - - =Parameters!ClienteCP.Value - - - - - - - Textbox2 - 0.03543in - 4.14584cm - 1.34269in - 3.53631in - 15 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Domicilio fiscal: - - - - - - - - - - - - - - - - - - 2pt - 2pt - 2pt - 2pt - - - - Embedded - LogoRuinaNuevo1 - FitProportional - 0.05674cm - 1.59082cm - 4.08074cm - 17 - + - + - 30.54266cm - - - + 20.76482cm + - - - =Parameters!FechaImpresion.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - + true true @@ -3884,8 +6727,8 @@ ="Página " & Globals.PageNumber & " de " & Globals.TotalPages @@ -3894,12 +6737,10 @@ - Textbox35 - 0.11289cm - 18.37755cm - 0.41981cm - 2.5cm - 1 + Textbox3 + 15.03252cm + 0.41479cm + 3.95896cm @@ -3919,10 +6760,10 @@ 27.94cm 21.59cm - 0.25cm - 0.25cm + 0.5cm + 0cm 0.5cm - 0.5cm + 0cm 1.27cm