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 -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
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 f1421731b..7c07463c9 100644
Binary files a/WEB.rar and b/WEB.rar differ