public int InsertarProceso(string CadenaConexion, EntidadProyMDIBFGestionTasasDP.proceso Entidad) { int insertar = 0; try { SqlConnection cnn = new SqlConnection(); cnn.ConnectionString = CadenaConexion; SqlCommand cmd = new SqlCommand(); cmd.Connection = cnn; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "MDIBF_Proceso_Insertar"; SqlParameter prm = new SqlParameter(); prm = cmd.Parameters.Add("@responsableId", SqlDbType.Int); prm.Direction = ParameterDirection.Input; prm.Value = Entidad.responsableId; prm = cmd.Parameters.Add("@nombrearchivo", SqlDbType.VarChar, 2000); prm.Direction = ParameterDirection.Input; prm.Value = Entidad.nombrearchivo; prm = cmd.Parameters.Add("@tipo", SqlDbType.VarChar, 20); prm.Direction = ParameterDirection.Input; prm.Value = Entidad.tipo; cnn.Open(); cmd.ExecuteNonQuery(); cnn.Close(); } catch (Exception ex) { if (ex.Message != "") { insertar = 1; } } return(insertar); }
private void ProcesoCuentaSueldoDP() { objclsfrmBases.MensajeProceso = "Procesando carga cuenta sueldo DP..."; int porcentaje = 0; int intTotal = 1000000; decimal j = 0; try { //Eliminar los registros de Cuenta Sueldo DP bool resultado = _mProcesoCuentaSueldoDp.EliminarCuentaSueldoDP(_conexion); #region Crear dataTable DataTable dtDP = new DataTable(); dtDP.Columns.Add("llave", typeof(string)); dtDP.Columns.Add("fechaaperturaCS", typeof(string)); #endregion using (var sr = new StreamReader(objclsfrmBases.pathNombreArchivosCuentaSueldoDP)) { var reader = new CsvReader(sr); IEnumerable <EntidadProyMDIBFGestionTasasDP.ProcesoCuentaSueldoDP> records = reader.GetRecords <EntidadProyMDIBFGestionTasasDP.ProcesoCuentaSueldoDP>(); objclsfrmBases.BotonMenuMantenimientos = false; objclsfrmBases.BotonMenuProcesos = false; objclsfrmBases.BotonProcesar = false; objclsfrmBases.BotonLimpiar = false; objclsfrmBases.BotonSalir = false; objclsfrmBases.BotonAgregarDP = false; objclsfrmBases.BotonClienteCMRDP = false; objclsfrmBases.BotonCuentaSueldoDP = false; dtDP.Rows.Clear(); foreach (EntidadProyMDIBFGestionTasasDP.ProcesoCuentaSueldoDP record in records) { DataRow drDP = dtDP.NewRow(); #region Asignar valores dataTable drDP["llave"] = record.llave.Trim(); drDP["fechaaperturaCS"] = record.fechaaperturaCS.Trim(); #endregion dtDP.Rows.Add(drDP); j++; porcentaje = Convert.ToInt32((j / intTotal) * 100); bw1.ReportProgress(porcentaje); } } using (var conexionBulkCopy = new SqlConnection(_conexion)) { conexionBulkCopy.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(_conexion)) { bulkCopy.BulkCopyTimeout = int.MaxValue; bulkCopy.DestinationTableName = "dbo.CuentaSueldoDP"; #region Datatable bullcopy bulkCopy.ColumnMappings.Add("llave", "llave"); bulkCopy.ColumnMappings.Add("fechaaperturaCS", "fechaaperturaCS"); #endregion bulkCopy.WriteToServer(dtDP); } } objclsfrmBases.BotonMenuMantenimientos = true; objclsfrmBases.BotonMenuProcesos = true; objclsfrmBases.BotonProcesar = true; objclsfrmBases.BotonLimpiar = true; objclsfrmBases.BotonSalir = true; objclsfrmBases.BotonAgregarDP = true; objclsfrmBases.BotonClienteCMRDP = true; bw1.ReportProgress(100); //Insertar el proceso EntidadProyMDIBFGestionTasasDP.proceso _proceso = new EntidadProyMDIBFGestionTasasDP.proceso(); _proceso.responsableId = objclsfrmBases.Responsable; _proceso.nombrearchivo = Path.GetFileName(objclsfrmBases.pathNombreArchivosCuentaSueldoDP); _proceso.tipo = "DP - Cuenta Sueldo"; _intretorno = _mProceso.InsertarProceso(_conexion, _proceso); MessageBox.Show("Archivo(s) Cuenta Sueldo procesados con éxito.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show("Ocurrió un error en el proceso: " + ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); objclsfrmBases.BotonMenuMantenimientos = true; objclsfrmBases.BotonMenuProcesos = true; objclsfrmBases.BotonProcesar = true; objclsfrmBases.BotonLimpiar = true; objclsfrmBases.BotonSalir = true; objclsfrmBases.BotonClienteCMRDP = true; objclsfrmBases.BotonCuentaSueldoDP = true; bw1.ReportProgress(100); } }
private void ProcesoCarga() { objclsfrmBases.MensajeProceso = "Procesando carga de datos..."; int porcentaje = 0; int intTotal = 2400000; decimal j = 0; try { //Eliminar los registros solicitados bool resultado = m_procesogestionDP.EliminarProcesoGestionTasas(conexion); #region Crear dataTable DataTable dtDP = new DataTable(); dtDP.Columns.Add("codcategoria", typeof(string)); dtDP.Columns.Add("categoria", typeof(string)); dtDP.Columns.Add("codsubcategoria", typeof(string)); dtDP.Columns.Add("subcategoria", typeof(string)); dtDP.Columns.Add("cuenta", typeof(string)); dtDP.Columns.Add("tipodocumento", typeof(string)); dtDP.Columns.Add("numerodocumento", typeof(string)); dtDP.Columns.Add("nombre", typeof(string)); dtDP.Columns.Add("ejecutivo", typeof(string)); dtDP.Columns.Add("estado", typeof(string)); dtDP.Columns.Add("descestado", typeof(string)); dtDP.Columns.Add("fecproceso", typeof(string)); dtDP.Columns.Add("mesproceso", typeof(string)); dtDP.Columns.Add("fecapertura", typeof(string)); dtDP.Columns.Add("mesapertura", typeof(string)); dtDP.Columns.Add("fecrenovacion", typeof(string)); dtDP.Columns.Add("mesrenovacion", typeof(string)); dtDP.Columns.Add("fecvencimiento", typeof(string)); dtDP.Columns.Add("mesvencimiento", typeof(string)); dtDP.Columns.Add("msaldo", typeof(string)); dtDP.Columns.Add("tasa", typeof(string)); dtDP.Columns.Add("numeradortasa", typeof(double)); dtDP.Columns.Add("tipomoneda", typeof(string)); dtDP.Columns.Add("plazo", typeof(string)); dtDP.Columns.Add("plazoactual", typeof(string)); dtDP.Columns.Add("numeradorplzpact", typeof(string)); dtDP.Columns.Add("numeradorplzact", typeof(string)); dtDP.Columns.Add("saldodisponible", typeof(string)); dtDP.Columns.Add("rucempleador", typeof(string)); dtDP.Columns.Add("codtienda", typeof(string)); dtDP.Columns.Add("desctienda", typeof(string)); dtDP.Columns.Add("montoconvenio", typeof(string)); dtDP.Columns.Add("diacargo", typeof(string)); dtDP.Columns.Add("fecinicioconv", typeof(string)); dtDP.Columns.Add("cuentacmr", typeof(string)); dtDP.Columns.Add("tarjetacmr", typeof(string)); dtDP.Columns.Add("codigoejecutivo", typeof(string)); dtDP.Columns.Add("tipocambio", typeof(decimal)); #endregion using (var sr = new StreamReader(objclsfrmBases.pathNombreArchivosDP, System.Text.Encoding.Default, false)) { var reader = new CsvReader(sr); IEnumerable <EntidadProyMDIBFGestionTasasDP.ProcesoGestionDP> records = reader.GetRecords <EntidadProyMDIBFGestionTasasDP.ProcesoGestionDP>(); objclsfrmBases.BotonMenuMantenimientos = false; objclsfrmBases.BotonMenuProcesos = false; objclsfrmBases.BotonProcesar = false; objclsfrmBases.BotonLimpiar = false; objclsfrmBases.BotonSalir = false; objclsfrmBases.BotonAgregarDP = false; objclsfrmBases.TextoTipoCambio = false; dtDP.Rows.Clear(); foreach (EntidadProyMDIBFGestionTasasDP.ProcesoGestionDP record in records) { DataRow drDP = dtDP.NewRow(); #region Asignar valores dataTable drDP["codcategoria"] = record.codcategoria.Trim(); drDP["categoria"] = record.categoria.Trim(); drDP["codsubcategoria"] = record.codsubcategoria.Trim(); drDP["subcategoria"] = record.subcategoria.Replace('ó', 'o').Replace('á', 'a').Replace('?', 'o'); drDP["cuenta"] = record.cuenta.Trim(); drDP["tipodocumento"] = record.tipodocumento.Trim(); if (record.numerodocumento.Length > 7) { drDP["numerodocumento"] = record.numerodocumento.Trim(); } if (record.numerodocumento.Length == 7) { drDP["numerodocumento"] = "0" + record.numerodocumento.Trim(); } if (record.numerodocumento.Length == 6) { drDP["numerodocumento"] = "00" + record.numerodocumento.Trim(); } if (record.numerodocumento.Length == 5) { drDP["numerodocumento"] = "000" + record.numerodocumento.Trim(); } drDP["nombre"] = record.nombre.Replace(',', ' '); drDP["ejecutivo"] = record.ejecutivo.Trim(); drDP["estado"] = record.estado.Trim(); drDP["descestado"] = record.descestado.Trim(); drDP["fecproceso"] = record.fecproceso.Trim(); drDP["mesproceso"] = record.mesproceso.Trim(); drDP["fecapertura"] = record.fecapertura.Trim(); drDP["mesapertura"] = record.mesapertura.Trim(); drDP["fecrenovacion"] = record.fecrenovacion.Trim(); drDP["mesrenovacion"] = record.mesrenovacion.Trim(); drDP["fecvencimiento"] = record.fecvencimiento.Trim(); drDP["mesvencimiento"] = record.mesvencimiento.Trim(); drDP["msaldo"] = record.msaldo.Trim(); drDP["tasa"] = record.tasa.Trim(); drDP["numeradortasa"] = record.numeradortasa.Trim(); drDP["tipomoneda"] = record.tipomoneda.Trim(); drDP["plazo"] = record.plazo.Trim(); drDP["plazoactual"] = record.plazoactual.Trim(); drDP["numeradorplzpact"] = record.numeradorplzpact.Trim(); drDP["numeradorplzact"] = record.numeradorplzact.Trim(); drDP["saldodisponible"] = record.saldodisponible.Trim(); drDP["rucempleador"] = record.rucempleador.Trim(); drDP["codtienda"] = record.codtienda.Trim(); drDP["desctienda"] = record.desctienda.Trim(); drDP["montoconvenio"] = record.montoconvenio.Trim(); drDP["diacargo"] = record.diacargo.Trim(); drDP["fecinicioconv"] = record.fecinicioconv.Trim(); drDP["cuentacmr"] = record.cuentacmr.Trim(); drDP["tarjetacmr"] = record.tarjetacmr.Trim(); drDP["codigoejecutivo"] = record.codigoejecutivo.Trim(); drDP["tipocambio"] = objclsfrmBases.TipoCambio; #endregion dtDP.Rows.Add(drDP); if (j == 1000000 || j == 1800000) { #region Inserciones temporales using (var conexionBulkCopy = new SqlConnection(conexion)) { conexionBulkCopy.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conexion)) { bulkCopy.BulkCopyTimeout = int.MaxValue; bulkCopy.DestinationTableName = "dbo.ProcesoGestionTasas"; bulkCopy.ColumnMappings.Add("codcategoria", "codcategoria"); bulkCopy.ColumnMappings.Add("categoria", "categoria"); bulkCopy.ColumnMappings.Add("codsubcategoria", "codsubcategoria"); bulkCopy.ColumnMappings.Add("subcategoria", "subcategoria"); bulkCopy.ColumnMappings.Add("cuenta", "cuenta"); bulkCopy.ColumnMappings.Add("tipodocumento", "tipodocumento"); bulkCopy.ColumnMappings.Add("numerodocumento", "numerodocumento"); bulkCopy.ColumnMappings.Add("nombre", "nombre"); bulkCopy.ColumnMappings.Add("ejecutivo", "ejecutivo"); bulkCopy.ColumnMappings.Add("estado", "estado"); bulkCopy.ColumnMappings.Add("descestado", "descestado"); bulkCopy.ColumnMappings.Add("fecproceso", "fecproceso"); bulkCopy.ColumnMappings.Add("mesproceso", "mesproceso"); bulkCopy.ColumnMappings.Add("fecapertura", "fecapertura"); bulkCopy.ColumnMappings.Add("mesapertura", "mesapertura"); bulkCopy.ColumnMappings.Add("fecrenovacion", "fecrenovacion"); bulkCopy.ColumnMappings.Add("mesrenovacion", "mesrenovacion"); bulkCopy.ColumnMappings.Add("fecvencimiento", "fecvencimiento"); bulkCopy.ColumnMappings.Add("mesvencimiento", "mesvencimiento"); bulkCopy.ColumnMappings.Add("msaldo", "msaldo"); bulkCopy.ColumnMappings.Add("tasa", "tasa"); bulkCopy.ColumnMappings.Add("numeradortasa", "numeradortasa"); bulkCopy.ColumnMappings.Add("tipomoneda", "tipomoneda"); bulkCopy.ColumnMappings.Add("plazo", "plazo"); bulkCopy.ColumnMappings.Add("plazoactual", "plazoactual"); bulkCopy.ColumnMappings.Add("numeradorplzpact", "numeradorplzpact"); bulkCopy.ColumnMappings.Add("numeradorplzact", "numeradorplzact"); bulkCopy.ColumnMappings.Add("saldodisponible", "saldodisponible"); bulkCopy.ColumnMappings.Add("rucempleador", "rucempleador"); bulkCopy.ColumnMappings.Add("codtienda", "codtienda"); bulkCopy.ColumnMappings.Add("desctienda", "desctienda"); bulkCopy.ColumnMappings.Add("montoconvenio", "montoconvenio"); bulkCopy.ColumnMappings.Add("diacargo", "diacargo"); bulkCopy.ColumnMappings.Add("fecinicioconv", "fecinicioconv"); bulkCopy.ColumnMappings.Add("cuentacmr", "cuentacmr"); bulkCopy.ColumnMappings.Add("tarjetacmr", "tarjetacmr"); bulkCopy.ColumnMappings.Add("codigoejecutivo", "codigoejecutivo"); bulkCopy.ColumnMappings.Add("tipocambio", "tipocambio"); bulkCopy.WriteToServer(dtDP); } } #endregion dtDP.Rows.Clear(); } j++; porcentaje = Convert.ToInt32((j / intTotal) * 100); bw1.ReportProgress(porcentaje); } } using (var conexionBulkCopy = new SqlConnection(conexion)) { conexionBulkCopy.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conexion)) { bulkCopy.BulkCopyTimeout = int.MaxValue; bulkCopy.DestinationTableName = "dbo.ProcesoGestionTasas"; #region Datatable bullcopy bulkCopy.ColumnMappings.Add("codcategoria", "codcategoria"); bulkCopy.ColumnMappings.Add("categoria", "categoria"); bulkCopy.ColumnMappings.Add("codsubcategoria", "codsubcategoria"); bulkCopy.ColumnMappings.Add("subcategoria", "subcategoria"); bulkCopy.ColumnMappings.Add("cuenta", "cuenta"); bulkCopy.ColumnMappings.Add("tipodocumento", "tipodocumento"); bulkCopy.ColumnMappings.Add("numerodocumento", "numerodocumento"); bulkCopy.ColumnMappings.Add("nombre", "nombre"); bulkCopy.ColumnMappings.Add("ejecutivo", "ejecutivo"); bulkCopy.ColumnMappings.Add("estado", "estado"); bulkCopy.ColumnMappings.Add("descestado", "descestado"); bulkCopy.ColumnMappings.Add("fecproceso", "fecproceso"); bulkCopy.ColumnMappings.Add("mesproceso", "mesproceso"); bulkCopy.ColumnMappings.Add("fecapertura", "fecapertura"); bulkCopy.ColumnMappings.Add("mesapertura", "mesapertura"); bulkCopy.ColumnMappings.Add("fecrenovacion", "fecrenovacion"); bulkCopy.ColumnMappings.Add("mesrenovacion", "mesrenovacion"); bulkCopy.ColumnMappings.Add("fecvencimiento", "fecvencimiento"); bulkCopy.ColumnMappings.Add("mesvencimiento", "mesvencimiento"); bulkCopy.ColumnMappings.Add("msaldo", "msaldo"); bulkCopy.ColumnMappings.Add("tasa", "tasa"); bulkCopy.ColumnMappings.Add("numeradortasa", "numeradortasa"); bulkCopy.ColumnMappings.Add("tipomoneda", "tipomoneda"); bulkCopy.ColumnMappings.Add("plazo", "plazo"); bulkCopy.ColumnMappings.Add("plazoactual", "plazoactual"); bulkCopy.ColumnMappings.Add("numeradorplzpact", "numeradorplzpact"); bulkCopy.ColumnMappings.Add("numeradorplzact", "numeradorplzact"); bulkCopy.ColumnMappings.Add("saldodisponible", "saldodisponible"); bulkCopy.ColumnMappings.Add("rucempleador", "rucempleador"); bulkCopy.ColumnMappings.Add("codtienda", "codtienda"); bulkCopy.ColumnMappings.Add("desctienda", "desctienda"); bulkCopy.ColumnMappings.Add("montoconvenio", "montoconvenio"); bulkCopy.ColumnMappings.Add("diacargo", "diacargo"); bulkCopy.ColumnMappings.Add("fecinicioconv", "fecinicioconv"); bulkCopy.ColumnMappings.Add("cuentacmr", "cuentacmr"); bulkCopy.ColumnMappings.Add("tarjetacmr", "tarjetacmr"); bulkCopy.ColumnMappings.Add("codigoejecutivo", "codigoejecutivo"); bulkCopy.ColumnMappings.Add("tipocambio", "tipocambio"); #endregion bulkCopy.WriteToServer(dtDP); } } objclsfrmBases.BotonMenuMantenimientos = true; objclsfrmBases.BotonMenuProcesos = true; //objclsfrmBases.BotonActualizar = true; objclsfrmBases.BotonProcesar = true; objclsfrmBases.BotonLimpiar = true; objclsfrmBases.BotonSalir = true; objclsfrmBases.BotonAgregarDP = true; objclsfrmBases.TextoTipoCambio = true; bw1.ReportProgress(100); //Insertar el proceso EntidadProyMDIBFGestionTasasDP.proceso _proceso = new EntidadProyMDIBFGestionTasasDP.proceso(); _proceso.responsableId = 1; _proceso.nombrearchivo = Path.GetFileName(objclsfrmBases.pathNombreArchivosDP); _proceso.tipo = "Archivo Stock BF"; _intRetorno = m_proceso.InsertarProceso(conexion, _proceso); MessageBox.Show("Archivo(s) procesados con éxito.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show("Ocurrió un error en el proceso: " + ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information); objclsfrmBases.BotonMenuMantenimientos = true; objclsfrmBases.BotonMenuProcesos = true; //objclsfrmBases.BotonActualizar = true; objclsfrmBases.BotonProcesar = true; objclsfrmBases.BotonLimpiar = true; objclsfrmBases.BotonSalir = true; objclsfrmBases.BotonAgregarDP = true; objclsfrmBases.TextoTipoCambio = true; bw1.ReportProgress(100); } }