From c4c75f489e3e100a2f18f713424e05ac9fe2c733 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Thu, 14 May 2020 12:04:48 -0700 Subject: [PATCH 1/3] --- App_Code/ClsOIEventos.vb | 103 +++++++++++++++++++++++++ App_Code/ClsPaginas.vb | 2 + OI/UnoaUno.aspx | 86 +++++++++++++++++++++ OI/UnoaUno.aspx.cs | 58 ++++++++++++++ OI/UnoaUnoConfiguracion.aspx | 81 ++++++++++++++++++++ OI/UnoaUnoConfiguracion.aspx.cs | 132 ++++++++++++++++++++++++++++++++ Ventas/Ventas.aspx.vb | 91 +++++++++++++++++----- WEB.rar | Bin 7000 -> 5480 bytes 8 files changed, 533 insertions(+), 20 deletions(-) create mode 100644 OI/UnoaUno.aspx create mode 100644 OI/UnoaUno.aspx.cs create mode 100644 OI/UnoaUnoConfiguracion.aspx create mode 100644 OI/UnoaUnoConfiguracion.aspx.cs diff --git a/App_Code/ClsOIEventos.vb b/App_Code/ClsOIEventos.vb index 658e42ace..25aefb9ca 100644 --- a/App_Code/ClsOIEventos.vb +++ b/App_Code/ClsOIEventos.vb @@ -219,6 +219,109 @@ Public Class ClsOIEventos Public Property objCorreo As ObjEventosCorreo #End Region +#Region "uno a uno" + Public Function GetUnoaUnoEtiqueta(cveUnoaUnoEtiqueta As Int32, cveEmpresa As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_GetUnoaUnoEtiqueta", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@cveUnoaUnoEtiqueta", SqlDbType.Int).Value = (cveUnoaUnoEtiqueta) + .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 UnoaUnoEtiqueta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function AddUnoaUnoEtiqueta(etiqueta As String, cveUnoaUnoEtiquetaVinculo As Int32, cveGrupo As Int32, cveEmpresa As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_AddUnoaUnoEtiqueta", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@etiqueta", SqlDbType.VarChar).Value = (etiqueta) + .Add("@cveUnoaUnoEtiquetaVinculo", SqlDbType.Int).Value = (cveUnoaUnoEtiquetaVinculo) + .Add("@cveGrupo", SqlDbType.Int).Value = (cveGrupo) + .Add("@cveEmpresa", SqlDbType.Int).Value = (cveEmpresa) + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al agregar el UnoaUnoEtiqueta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function UpUnoaUnoEtiqueta(cveUnoaUnoEtiqueta As Int32, etiqueta As String, cveUnoaUnoEtiquetaVinculo As Int32, cveGrupo As Int32, cveEmpresa As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_UpUnoaUnoEtiqueta", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@cveUnoaUnoEtiqueta", SqlDbType.Int).Value = (cveUnoaUnoEtiqueta) + .Add("@etiqueta", SqlDbType.VarChar).Value = (etiqueta) + .Add("@cveUnoaUnoEtiquetaVinculo", SqlDbType.Int).Value = (cveUnoaUnoEtiquetaVinculo) + .Add("@cveGrupo", SqlDbType.Int).Value = (cveGrupo) + .Add("@cveEmpresa", SqlDbType.Int).Value = (cveEmpresa) + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al actualizar el UnoaUnoEtiqueta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function RemoveUnoaUnoEtiqueta(cveUnoaUnoEtiqueta As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_RemoveUnoaUnoEtiqueta", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@cveUnoaUnoEtiqueta", SqlDbType.Int).Value = (cveUnoaUnoEtiqueta) + End With + Try + SqlAdapter.Fill(Data) + retorno = True + Catch ex As Exception + OnError("Ocurrió un error al eliminar el UnoaUnoEtiqueta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + + Public Function UnoAUnoTableroGet(cveEmpresa As Int32, fecha As String, cveUsuario As Int32) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_UnoAUnoTableroGet", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@Fecha", SqlDbType.Date).Value = (fecha) + .Add("@CveUsuario", SqlDbType.Int).Value = (cveUsuario) + .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 Tablero Uno A Uno.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return retorno + End Function + Public Function UnoAUnoTableroAdd(cveEmpresa As Int32, fecha As String, cveUsuario As Int32, CveUnoaUnoEtiqueta As Integer, Comentarios As String) As Boolean + Dim retorno As Boolean = False + DataAdapter("PA_OI_UnoAUnoADD", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@Fecha", SqlDbType.Date).Value = (fecha) + .Add("@CveUsuario", SqlDbType.Int).Value = (cveUsuario) + .Add("@CveUnoaUnoEtiqueta", SqlDbType.Int).Value = (CveUnoaUnoEtiqueta) + .Add("@Comentarios", SqlDbType.VarChar).Value = (Comentarios) + .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 Tablero Uno A Uno.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return retorno + End Function +#End Region #Region "Trello" Public Function GetTablero(cveTablero As Int32, cveUsuario As Int32, cveEmpresa As Int32) As Boolean Dim retorno As Boolean = False diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 87f743432..4c72f1c8b 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -3569,6 +3569,8 @@ Public Class ClsPaginas PaginaDict.Add("/OI/Proyecto.aspx".ToUpper(), -1) PaginaDict.Add("/OI/Tablero.aspx".ToUpper(), -1) PaginaDict.Add("/OI/TableroDetalle.aspx".ToUpper(), -1) + PaginaDict.Add("/OI/UnoaUno.aspx".ToUpper(), -1) + PaginaDict.Add("/OI/UnoaUnoConfiguracion.aspx".ToUpper(), -1) PaginaDict.Add("/OI/ConvocatoriaDetalle.aspx".ToUpper(), -1) PaginaDict.Add("/OI/RepReuniones.aspx".ToUpper(), -1) PaginaDict.Add("/AdSistemasTeam/ProcedimientosAlmacenados.aspx".ToUpper(), -1) diff --git a/OI/UnoaUno.aspx b/OI/UnoaUno.aspx new file mode 100644 index 000000000..e97d18dbe --- /dev/null +++ b/OI/UnoaUno.aspx @@ -0,0 +1,86 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="UnoaUno.aspx.cs" Inherits="OI_UnoaUno" %> + + + + + + + + + + + Tablero Uno a Uno - + + + + + + + + + + + + + + + + + +
+
+
+ +
+
+
    +
  • Fecha :
  • +
  • +
    + + + + + + + + + + +
    +
  • +
+
+
+
+ + + + + + + +

+

+
+ +
+
+
+
+
+
+
+ Guardar +
+
+
+
+ + + diff --git a/OI/UnoaUno.aspx.cs b/OI/UnoaUno.aspx.cs new file mode 100644 index 000000000..24f90da7a --- /dev/null +++ b/OI/UnoaUno.aspx.cs @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using Extensiones; +public partial class OI_UnoaUno : ClsPaginas +{ + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + TxtCFecha.Text = DateTime.Now.ToString("dd/MM/yyyy"); + LtlusuarioTitulo.Text = UsuarioActual.Nombre; + BtnConsultar_Click(null, null); + } + } + + protected void BtnConsultar_Click(object sender, EventArgs e) + { + using (ClsOIEventos ObjPA_O = new ClsOIEventos()) + { + + ObjPA_O.UnoAUnoTableroGet(UsuarioActual.CveEmpresa, TxtCFecha.Text.ToDate().ToString("yyyy/MM/dd"), UsuarioActual.CveUsuario); + GVPA_OI_UnoAUnoTableroGet.DataSource = ObjPA_O.DtResultados; + ObjPA_O.Dispose(); + GVPA_OI_UnoAUnoTableroGet.DataBind(); + } + } + + protected void LnkGuardar_Click(object sender, EventArgs e) + { + string fecha = TxtCFecha.Text.ToDate().ToString("yyyy/MM/dd"); + bool continuar = true; + using (ClsOIEventos ObjPA_O = new ClsOIEventos()) + { + foreach (GridViewRow gvrow in GVPA_OI_UnoAUnoTableroGet.Rows) + { + if (continuar) + { + int CveUnoaUnoEtiqueta = gvrow.DataKey("CveUnoaUnoEtiqueta").ToEntero(); + if (CveUnoaUnoEtiqueta > 0) + { + string Comentarios = gvrow.FCTextBox("TxtComentarios").Text; + continuar = ObjPA_O.UnoAUnoTableroAdd(UsuarioActual.CveEmpresa, fecha, UsuarioActual.CveUsuario, CveUnoaUnoEtiqueta, Comentarios); + } + + } + } + + } + if (continuar) + { + Alert("Información Actualizada"); + } + } +} \ No newline at end of file diff --git a/OI/UnoaUnoConfiguracion.aspx b/OI/UnoaUnoConfiguracion.aspx new file mode 100644 index 000000000..583ed8e8e --- /dev/null +++ b/OI/UnoaUnoConfiguracion.aspx @@ -0,0 +1,81 @@ +<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="UnoaUnoConfiguracion.aspx.cs" Inherits="OI_UnoaUnoConfiguracion" %> + + + + + + + Configuración Uno a Uno + + + + + + +
  • Etiqueta
  • +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/OI/UnoaUnoConfiguracion.aspx.cs b/OI/UnoaUnoConfiguracion.aspx.cs new file mode 100644 index 000000000..455ba507a --- /dev/null +++ b/OI/UnoaUnoConfiguracion.aspx.cs @@ -0,0 +1,132 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using Extensiones; + +public partial class OI_UnoaUnoConfiguracion : ClsPaginas +{ + + #region Propiedades + private int CcveUnoaUnoEtiqueta + { + get { return (ViewState["CcveUnoaUnoEtiqueta"] == null) ? 0 : Convert.ToInt32(ViewState["CcveUnoaUnoEtiqueta"]); } + set { ViewState["CcveUnoaUnoEtiqueta"] = value; } + } + #endregion + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + CargaUnoaUnoEtiqueta(); + } + } + protected void CargaUnoaUnoEtiqueta() + { + using (ClsOIEventos ObjUnoa = new ClsOIEventos()) + { + + ObjUnoa.GetUnoaUnoEtiqueta(-1, UsuarioActual.CveEmpresa); + GVUnoaUnoEtiqueta.DataSource = ObjUnoa.DtResultados; + DdlUnoaetiqueta1.DataSource = ObjUnoa.DtResultados; + } + GVUnoaUnoEtiqueta.DataBind(); + DdlUnoaetiqueta1.DataBind(); + DdlUnoaetiqueta1.Items.Insert(0,new ListItem("Seleccione","-1")); + upDatosUnoa.Update(); + } + protected void LimpiaUnoaUnoEtiqueta() + { + TxtUnoaetiqueta.Text = ""; + DdlUnoaetiqueta1.SelectedIndex = 0; + UPModalUnoa.Update(); + } + protected void LnkEditarUnoa_Click(object sender, EventArgs e) + { + LimpiaUnoaUnoEtiqueta(); + ltlUnoatitulo.Text = "Actualizar Etiqueta"; + GridViewRow gvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); + CcveUnoaUnoEtiqueta = gvRow.DataKey("CveUnoaUnoEtiqueta").ToEntero(); + string etiqueta = gvRow.DataKey("Etiqueta"); + int cveUnoaUnoEtiquetaVinculo = gvRow.DataKey("CveUnoaUnoEtiquetaVinculo").ToEntero(); + int cveGrupo = gvRow.DataKey("CveGrupo").ToEntero(); + int cveEmpresa = gvRow.DataKey("CveEmpresa").ToEntero(); + + TxtUnoaetiqueta.Text = etiqueta.ToString(); + DdlUnoaetiqueta1.SelectedValue = "-1"; + DdlUnoaetiqueta1.SelectedValueExist(cveUnoaUnoEtiquetaVinculo.ToString()); + this.RegistraScript("$('#DModalUnoaUnoEtiqueta').modal();"); + BtnUnoaADD.Visible = false; + BtnUnoaEdit.Visible = true; + UPModalUnoa.Update(); + } + protected void LnkAgregarUnoa_Click(object sender, EventArgs e) + { + ltlUnoatitulo.Text = "Agregar Etiqueta"; + this.RegistraScript("$('#DModalUnoaUnoEtiqueta').modal();"); + LimpiaUnoaUnoEtiqueta(); + BtnUnoaADD.Visible = true; + BtnUnoaEdit.Visible = false; + UPModalUnoa.Update(); + } + protected void BtnUnoaADD_Click(object sender, EventArgs e) + { + + string etiqueta = TxtUnoaetiqueta.Text; + int cveUnoaUnoEtiquetaVinculo = DdlUnoaetiqueta1.SelectedValue.ToEntero(); + int cveGrupo = 1; + int cveEmpresa = UsuarioActual.CveEmpresa; + bool Continuar = false; + using (ClsOIEventos ObjUnoa = new ClsOIEventos()) + { + Continuar=ObjUnoa.AddUnoaUnoEtiqueta(etiqueta, cveUnoaUnoEtiquetaVinculo, cveGrupo, cveEmpresa); + } + if (Continuar) + { + this.RegistraScript("$('#DModalUnoaUnoEtiqueta').modal('hide');"); + LimpiaUnoaUnoEtiqueta(); + CargaUnoaUnoEtiqueta(); + UPModalUnoa.Update(); + this.Alert("La Etiqueta se ha agregado"); + } + } + protected void BtnUnoaEdit_Click(object sender, EventArgs e) + { + + string etiqueta = TxtUnoaetiqueta.Text; + int cveUnoaUnoEtiquetaVinculo = DdlUnoaetiqueta1.SelectedValue.ToEntero(); + int cveGrupo = 1; + int cveEmpresa = UsuarioActual.CveEmpresa; + bool Continuar = false; + using (ClsOIEventos ObjUnoa = new ClsOIEventos()) + { + Continuar = ObjUnoa.UpUnoaUnoEtiqueta(CcveUnoaUnoEtiqueta, etiqueta, cveUnoaUnoEtiquetaVinculo, cveGrupo, cveEmpresa); + } + if (Continuar) + { + this.RegistraScript("$('#DModalUnoaUnoEtiqueta').modal('hide');"); + LimpiaUnoaUnoEtiqueta(); + UPModalUnoa.Update(); + CargaUnoaUnoEtiqueta(); + this.Alert("La Etiqueta se ha actualizado"); + } + } + protected void LnkEliminarUnoa_Click(object sender, EventArgs e) + { + GridViewRow gvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); + CcveUnoaUnoEtiqueta = gvRow.DataKey("CveUnoaUnoEtiqueta").ToEntero(); + bool Continuar = false; + using (ClsOIEventos ObjUnoa = new ClsOIEventos()) + { + + Continuar = ObjUnoa.RemoveUnoaUnoEtiqueta(CcveUnoaUnoEtiqueta); + } + if (Continuar) + { + CargaUnoaUnoEtiqueta(); + this.Alert("La Etiqueta se ha Eliminado"); + } + } +} diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index e828f93c6..6f9caf1da 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -19453,28 +19453,29 @@ Partial Class Ventas End Sub Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String) Dim dt As New DataTable - Dim Conexion As Odbc.OdbcConnection = Nothing + 'Dim Conexion As Odbc.OdbcConnection = Nothing Dim ErrorArchivo = False Dim n As Integer = 0 - Try - Select Case Tipo - Case "EXCEL" - Conexion = New Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + Ruta + FileName + ";") - Conexion.Open() - Dim cmd = Conexion.CreateCommand() - cmd.CommandType = CommandType.Text - cmd.CommandText = "Select * FROM [Hoja1$] WHERE Cantidad >=1" - Dim DataAdapter = New Odbc.OdbcDataAdapter(cmd) - DataAdapter.Fill(dt) - Case Else - Alert("El archivo no tiene el formato correcto", TipoMensaje.MsgError) - Exit Sub - End Select - Catch ex As Exception - ErrorArchivo = True - OnError("Ocurrio un Error al leer el archivo
    " & ex.Message, ex) - End Try - Conexion.Close() + dt = ReadExcelFile(Ruta + FileName, True) + 'Try + ' Select Case Tipo + ' Case "EXCEL" + ' Conexion = New Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + Ruta + FileName + ";") + ' Conexion.Open() + ' Dim cmd = Conexion.CreateCommand() + ' cmd.CommandType = CommandType.Text + ' cmd.CommandText = "Select * FROM [Hoja1$] WHERE Cantidad >=1" + ' Dim DataAdapter = New Odbc.OdbcDataAdapter(cmd) + ' DataAdapter.Fill(dt) + ' Case Else + ' Alert("El archivo no tiene el formato correcto", TipoMensaje.MsgError) + ' Exit Sub + ' End Select + 'Catch ex As Exception + ' ErrorArchivo = True + ' OnError("Ocurrio un Error al leer el archivo
    " & ex.Message, ex) + 'End Try + 'Conexion.Close() If Not ErrorArchivo Then If Not dt.Columns(0).ColumnName = "Cantidad" Then Alert("El nombre de la primera columna debe ser 'Cantidad'.Favor de corregirlo", TipoMensaje.MsgError) @@ -19523,6 +19524,7 @@ Partial Class Ventas Dim RowNoEncontrados As String = "" Dim NumAgregados As Integer = 0 For Each Row As DataRow In dt.Rows + NumAgregados = NumAgregados + 1 Dim Cantidad As Decimal = Row("Cantidad").ToString().ToDecimal Dim UM As String = Row("UM").ToString() Dim Codigo As String = Row("Código").ToString().Trim.ToUpper @@ -25444,4 +25446,53 @@ Partial Class Ventas Protected Sub btnupEventoBitacora_Click(sender As Object, e As EventArgs) CargaEventoBitacora() End Sub + + Private Function ReadExcelFile(ByVal flatFilePath As String, ByVal firstRowHasHeaders As Boolean) As DataTable + GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) + Dim excelFile As GemBox.Spreadsheet.ExcelFile = GemBox.Spreadsheet.ExcelFile.Load(flatFilePath) + + Dim unnamed As Integer = 0 + Dim cols As Integer + Dim columns As String() + Dim curRow As Integer = 0 + Dim curCol As Integer = 0 + Dim dataTable As DataTable = New DataTable() + Dim worksheet As GemBox.Spreadsheet.ExcelWorksheet = excelFile.Worksheets(0) + + For cols = 0 To worksheet.Rows(0).AllocatedCells.Count - 1 + + If firstRowHasHeaders Then + + If worksheet.Rows(0).Cells(cols).Value IsNot Nothing Then + dataTable.Columns.Add(worksheet.Rows(0).Cells(cols).Value.ToString()) + Else + dataTable.Columns.Add("Unnamed Column " & (System.Threading.Interlocked.Increment(unnamed))) + End If + + curRow = 1 + Else + dataTable.Columns.Add("Column " & (cols + 1)) + End If + Next + + While curRow < worksheet.Rows.Count + columns = New String(cols - 1) {} + + For curCol = 0 To cols - 1 + + If worksheet.Rows(curRow).Cells(curCol).Value Is Nothing Then + columns(curCol) = "" + Else + columns(curCol) = worksheet.Rows(curRow).Cells(curCol).Value.ToString() + End If + Next + + dataTable.Rows.Add(columns) + curRow += 1 + End While + + Return dataTable + End Function + + End Class \ No newline at end of file diff --git a/WEB.rar b/WEB.rar index f1421731b052b1f42d03051594978f9053874fa3..7c07463c9e2284dd1daaac0f1263db2cbd04965c 100644 GIT binary patch literal 5480 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 literal 7000 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 Date: Thu, 14 May 2020 12:10:01 -0700 Subject: [PATCH 2/3] Ruta de consulta de rptChequeMovimientos.rdlc ahora apunta a C Proyectos --- Bancos/Reportes.aspx.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Bancos/Reportes.aspx.vb b/Bancos/Reportes.aspx.vb index 5d0cb6b33..b96bf50c4 100644 --- a/Bancos/Reportes.aspx.vb +++ b/Bancos/Reportes.aspx.vb @@ -141,7 +141,7 @@ Partial Class Bancos_Reportes rv.LocalReport.DataSources.Clear() rv.LocalReport.DataSources.Add(rds) rv.LocalReport.DataSources.Add(rds2) - rv.LocalReport.ReportPath = ModExtensiones.DirectorioBaseEmpresas & "Bancos\Reportes\rptChequeMovimientos.rdlc" + rv.LocalReport.ReportPath = ModExtensiones.DirectorioBaseEmpresas & "Empresas\Grales\Formatos\rptChequeMovimientos.rdlc" rv.LocalReport.Refresh() Dim paramList As New List(Of ReportParameter) From baac40127c3a6fa15edc61ea0773f12aff4f6e0e Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Thu, 14 May 2020 12:35:34 -0700 Subject: [PATCH 3/3] excel gembox --- App_Code/modExtensiones.vb | 47 +++++++++++++++++++++++++ OC/OC.aspx.vb | 46 ------------------------ Ventas/Ventas.aspx.vb | 72 ++------------------------------------ 3 files changed, 50 insertions(+), 115 deletions(-) diff --git a/App_Code/modExtensiones.vb b/App_Code/modExtensiones.vb index 7f7473927..1b799cb7d 100644 --- a/App_Code/modExtensiones.vb +++ b/App_Code/modExtensiones.vb @@ -68,6 +68,53 @@ Namespace Extensiones #End Region + Public Function ReadExcelFile(ByVal flatFilePath As String, ByVal firstRowHasHeaders As Boolean) As DataTable + GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) + Dim excelFile As GemBox.Spreadsheet.ExcelFile = GemBox.Spreadsheet.ExcelFile.Load(flatFilePath) + + Dim unnamed As Integer = 0 + Dim cols As Integer + Dim columns As String() + Dim curRow As Integer = 0 + Dim curCol As Integer = 0 + Dim dataTable As DataTable = New DataTable() + Dim worksheet As GemBox.Spreadsheet.ExcelWorksheet = excelFile.Worksheets(0) + + For cols = 0 To worksheet.Rows(0).AllocatedCells.Count - 1 + + If firstRowHasHeaders Then + + If worksheet.Rows(0).Cells(cols).Value IsNot Nothing Then + dataTable.Columns.Add(worksheet.Rows(0).Cells(cols).Value.ToString()) + Else + dataTable.Columns.Add("Unnamed Column " & (System.Threading.Interlocked.Increment(unnamed))) + End If + + curRow = 1 + Else + dataTable.Columns.Add("Column " & (cols + 1)) + End If + Next + + While curRow < worksheet.Rows.Count + columns = New String(cols - 1) {} + + For curCol = 0 To cols - 1 + + If worksheet.Rows(curRow).Cells(curCol).Value Is Nothing Then + columns(curCol) = "" + Else + columns(curCol) = worksheet.Rows(curRow).Cells(curCol).Value.ToString() + End If + Next + + dataTable.Rows.Add(columns) + curRow += 1 + End While + + Return dataTable + End Function + Public Function CadenaConexion() As String Dim BaseDatos As String = "Ventas" 'If Not IsNothing(System.Web.HttpContext.Current) AndAlso Not IsNothing(System.Web.HttpContext.Current.Session) Then diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index 8d188b934..0bc60d29f 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -6110,52 +6110,6 @@ Partial Class OC End If End Sub - Private Function ReadExcelFile(ByVal flatFilePath As String, ByVal firstRowHasHeaders As Boolean) As DataTable - SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) - Dim excelFile As ExcelFile = ExcelFile.Load(flatFilePath) - - Dim unnamed As Integer = 0 - Dim cols As Integer - Dim columns As String() - Dim curRow As Integer = 0 - Dim curCol As Integer = 0 - Dim dataTable As DataTable = New DataTable() - Dim worksheet As ExcelWorksheet = excelFile.Worksheets(0) - - For cols = 0 To worksheet.Rows(0).AllocatedCells.Count - 1 - - If firstRowHasHeaders Then - - If worksheet.Rows(0).Cells(cols).Value IsNot Nothing Then - dataTable.Columns.Add(worksheet.Rows(0).Cells(cols).Value.ToString()) - Else - dataTable.Columns.Add("Unnamed Column " & (System.Threading.Interlocked.Increment(unnamed))) - End If - - curRow = 1 - Else - dataTable.Columns.Add("Column " & (cols + 1)) - End If - Next - - While curRow < worksheet.Rows.Count - columns = New String(cols - 1) {} - - For curCol = 0 To cols - 1 - - If worksheet.Rows(curRow).Cells(curCol).Value Is Nothing Then - columns(curCol) = "" - Else - columns(curCol) = worksheet.Rows(curRow).Cells(curCol).Value.ToString() - End If - Next - - dataTable.Rows.Add(columns) - curRow += 1 - End While - - Return dataTable - End Function Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 6f9caf1da..9e050a276 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -19451,31 +19451,11 @@ Partial Class Ventas Public Sub LbDescargarExcel_Click(sender As Object, e As EventArgs) Handles LbDescargarExcelVentas.Click DescargarFormato() End Sub - Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String) + Private Sub CargarArchivo(Ruta As String, FileName As String, Tipo As String, FileUrl As String) Dim dt As New DataTable - 'Dim Conexion As Odbc.OdbcConnection = Nothing Dim ErrorArchivo = False Dim n As Integer = 0 - dt = ReadExcelFile(Ruta + FileName, True) - 'Try - ' Select Case Tipo - ' Case "EXCEL" - ' Conexion = New Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" + Ruta + FileName + ";") - ' Conexion.Open() - ' Dim cmd = Conexion.CreateCommand() - ' cmd.CommandType = CommandType.Text - ' cmd.CommandText = "Select * FROM [Hoja1$] WHERE Cantidad >=1" - ' Dim DataAdapter = New Odbc.OdbcDataAdapter(cmd) - ' DataAdapter.Fill(dt) - ' Case Else - ' Alert("El archivo no tiene el formato correcto", TipoMensaje.MsgError) - ' Exit Sub - ' End Select - 'Catch ex As Exception - ' ErrorArchivo = True - ' OnError("Ocurrio un Error al leer el archivo
    " & ex.Message, ex) - 'End Try - 'Conexion.Close() + dt = ReadExcelFile(FileUrl, True) If Not ErrorArchivo Then If Not dt.Columns(0).ColumnName = "Cantidad" Then Alert("El nombre de la primera columna debe ser 'Cantidad'.Favor de corregirlo", TipoMensaje.MsgError) @@ -19676,7 +19656,7 @@ Partial Class Ventas Dim file As Archivo = TxtExcel.getfiles().Archivos(0) Dim Directorio As String = ModExtensiones.DirectorioBaseEmpresas & file.patch Dim Tipo As String = If(file.Extencion.Contiene("xlsx", "xlsx", "xlsm", "xlsb"), "EXCEL", "CSV") - CargarArchivo(Directorio, file.filename, Tipo) + CargarArchivo(Directorio, file.filename, Tipo, file.FileUrl) Else Alert("No existe el archivo. Favor de subir un archivo excel a la plataforma.", TipoMensaje.MsgError) End If @@ -25447,52 +25427,6 @@ Partial Class Ventas CargaEventoBitacora() End Sub - Private Function ReadExcelFile(ByVal flatFilePath As String, ByVal firstRowHasHeaders As Boolean) As DataTable - GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) - Dim excelFile As GemBox.Spreadsheet.ExcelFile = GemBox.Spreadsheet.ExcelFile.Load(flatFilePath) - - Dim unnamed As Integer = 0 - Dim cols As Integer - Dim columns As String() - Dim curRow As Integer = 0 - Dim curCol As Integer = 0 - Dim dataTable As DataTable = New DataTable() - Dim worksheet As GemBox.Spreadsheet.ExcelWorksheet = excelFile.Worksheets(0) - - For cols = 0 To worksheet.Rows(0).AllocatedCells.Count - 1 - - If firstRowHasHeaders Then - - If worksheet.Rows(0).Cells(cols).Value IsNot Nothing Then - dataTable.Columns.Add(worksheet.Rows(0).Cells(cols).Value.ToString()) - Else - dataTable.Columns.Add("Unnamed Column " & (System.Threading.Interlocked.Increment(unnamed))) - End If - - curRow = 1 - Else - dataTable.Columns.Add("Column " & (cols + 1)) - End If - Next - - While curRow < worksheet.Rows.Count - columns = New String(cols - 1) {} - - For curCol = 0 To cols - 1 - - If worksheet.Rows(curRow).Cells(curCol).Value Is Nothing Then - columns(curCol) = "" - Else - columns(curCol) = worksheet.Rows(curRow).Cells(curCol).Value.ToString() - End If - Next - - dataTable.Rows.Add(columns) - curRow += 1 - End While - - Return dataTable - End Function End Class \ No newline at end of file