private void mostrarDatosEnForm() { this.cmbAnios.SelectedValue = Varios.Left(liqui.AnioMes.ToString(), 4); this.cmbMeses.SelectedValue = Varios.Right(liqui.AnioMes.ToString(), 2); // this.cmbTipoLiquidacion.SelectedValue = liqui.IdTipoLiquidacion; this.cmbAplicacion.SelectedValue = liqui.IdAplicacion; this.cmbTipoSalario.SelectedValue = liqui.IdTipoSalario; }
private void btnGenerar_Click(object sender, EventArgs e) { string cuil = ""; cuil = CUIL.generar(Convert.ToChar(Varios.Left(this.cmbSexo.Text, 1)), this.txtDNI.Text); MessageBox.Show("CUIL: " + cuil); this.txtDNI.Focus(); }
/// <summary> /// Genera archivo con formato credicoop. /// </summary> /// <param name="idliquidacion"></param> /// <param name="archivo"></param> /// <param name="esLiquidacionNormal"></param> public static void generaArchivo(int idliquidacion, string archivo, List <int> tiposLiquidacionesSeleccionados, DateTime fechaAcreditacion, bool todosLosConveios, int idConvenio) { string importe = ""; DbDataReader rsLegajos; StreamWriter sw = new StreamWriter(archivo); //recorrer netos por legajo //consultar netos por idliquidacion. //repoteLiquidacionesNetoPorLegajo. calcular haberes+adicionales-retenciones if (todosLosConveios) { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBanco", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 3); } else { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBancoPorConvenio", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 3, "@idConvenio", idConvenio); } while (rsLegajos.Read()) //para cada legajo recorro todos los campos definidos en tablas { if (Varios.Right(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 21).ToString(), 1) == "1") { movimiento.tipoCuentaCredito = "2"; } else { movimiento.tipoCuentaCredito = "1"; } movimiento.sucursalCuentaCredito = Varios.Left(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 21).ToString(), 2).PadLeft(3, '0'); movimiento.cuentaCredito = Varios.Left(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 22).ToString(), 7).PadLeft(7, '0'); movimiento.controlDeCuenta = Varios.Right(movimiento.cuentaCredito, 1); importe = string.Format("{0:#0.00}", Convert.ToDouble(rsLegajos["Neto"])); importe = importe.Replace(".", ""); movimiento.importeDeCredito = importe.PadLeft(15, '0'); movimiento.beneficiario = Varios.Left(rsLegajos["Apellidos y nombres"].ToString().PadRight(40, ' '), 40); movimiento.cuil = Varios.Left(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 18).ToString().Replace("-", ""), 11); movimiento.legajo = Varios.Left(rsLegajos["Legajo"].ToString(), 10).PadLeft(10, '0'); movimiento.observaciones = " "; if (movimiento.cuentaCredito.Length == 0 || movimiento.controlDeCuenta.Length == 0) { MessageBox.Show("ATENCIÓN: el empleado " + movimiento.beneficiario + " no tiene cuenta o banco asignado. No se exportara la liquidación."); } else { //GRABA DETALLE sw.WriteLine(movimiento.tipoCuentaCredito + movimiento.banco + movimiento.sucursalCuentaCredito + movimiento.cuentaCredito + movimiento.controlDeCuenta + movimiento.importeDeCredito + movimiento.beneficiario + movimiento.cuil + movimiento.legajo + movimiento.observaciones); //actualiza liquidacionesEstados for (int i = 0; i < tiposLiquidacionesSeleccionados.Count; i++) { Model.DB.ejecutarProceso(Model.TipoComando.SP, "liquidacionesEstadosActualizar", "@idLiquidacion", idliquidacion, "@idTipoLiquidacion", tiposLiquidacionesSeleccionados[i], "@legajo", Convert.ToInt32(rsLegajos["legajo"].ToString()), "@acreditada", true, "fechaAcreditacion", fechaAcreditacion); } } } sw.Close(); }
public static void generaArchivoDesdeAnticipos(int anioMes, int idTipoAnticipo, string archivo, bool todosLosConveios, int idConvenio) { /*0082 para sueldo del mes - 0096 para cualquier otra acreditacion (sac/vac/etc)*/ movimiento.codigoDeOperacion = "0096"; string cuenta = ""; string importe = ""; int cantRegistros = 0; double importeTotal = 0; StreamWriter sw = new StreamWriter(archivo); //grabar cabecera. cabecera.fechaEmision = System.DateTime.Now.Day.ToString().PadLeft(2, '0') + System.DateTime.Now.Month.ToString().PadLeft(2, '0') + Varios.Right(System.DateTime.Now.Year.ToString(), 2); cabecera.horaEmision = System.DateTime.Now.Hour.ToString().PadLeft(2, '0') + System.DateTime.Now.Minute.ToString().PadLeft(2, '0'); sw.WriteLine(cabecera.ceros + cabecera.rotuloArchivo + cabecera.numeroCPD + cabecera.fechaEmision + cabecera.horaEmision + cabecera.numeroBanco + cabecera.filler + cabecera.marca); //recorrer netos por legajo //consultar netos por idliquidacion. //repoteLiquidacionesNetoPorLegajo. calcular haberes+adicionales-retenciones DbDataReader rsLegajos; if (todosLosConveios) { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "anticiposConsultarParaAcreditarPorBanco", "@anioMes", anioMes, "@idTipoAnticipo", idTipoAnticipo, "@idBanco", 1); } else { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "anticiposConsultarParaAcreditarPorBancoPorConvenio", "@anioMes", anioMes, "@idTipoAnticipo", idTipoAnticipo, "@idBanco", 1, "@idConvenio", idConvenio); } while (rsLegajos.Read()) //para cada legajo recorro todos los campos definidos en tablas { cantRegistros++; movimiento.legajo = rsLegajos["Legajo"].ToString().PadLeft(8, '0'); movimiento.nombreTitular = Varios.Left(rsLegajos["Apellidos y nombres"].ToString(), 22).PadRight(22, ' '); importe = string.Format("{0:#0.00}", Convert.ToDouble(rsLegajos["Neto"])); importeTotal = importeTotal + Convert.ToDouble(importe); importe = importe.Replace(".", ""); movimiento.importe = importe.PadLeft(11, '0'); movimiento.numeroCasaBeneficiaria = Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["Legajo"]), "codigo", 21).ToString(); movimiento.numeroCasaReceptora = movimiento.numeroCasaBeneficiaria; cuenta = Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["Legajo"]), "codigo", 22).ToString(); if (cuenta.Length == 0 || movimiento.numeroCasaBeneficiaria == "0") { MessageBox.Show("ATENCI�N: el legajo " + movimiento.legajo + " no tiene cuenta o banco asignado. No se exportara la liquidaci�n."); } else { movimiento.numeroCuentaBeneficiaria = Varios.Left(cuenta, cuenta.Length - 1).PadLeft(6, '0'); movimiento.digitoVerificador = Varios.Right(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["Legajo"]), "codigo", 22).ToString(), 1); sw.WriteLine(movimiento.numeroCasaBeneficiaria + movimiento.numeroCasaReceptora + movimiento.codigoDeOperacion + movimiento.indicativoTipoCuenta + movimiento.numeroCuentaBeneficiaria + movimiento.digitoVerificador + movimiento.filler01 + movimiento.importe + movimiento.legajo + movimiento.nombreTitular + movimiento.filler02 + movimiento.marca); } } //grabar final. sw.WriteLine(final.finArchivo + cantRegistros.ToString().PadLeft(6, '0') + string.Format("{0:#0.00}", importeTotal).Replace(".", "").PadLeft(14, '0') + final.filler + final.marca); sw.Close(); }
private void actualizarCombos() { //Parseo a double por equivalencias en el match entre el combo y el objeto tabla if (liquidacionDetalle.AnioMes > 0) { this.cmbAnios.SelectedValue = double.Parse(Varios.Left(liquidacionDetalle.AnioMes.ToString(), 4)); this.cmbMeses.SelectedValue = double.Parse(Varios.Right(liquidacionDetalle.AnioMes.ToString(), 2)); this.cmbEstado.SelectedValue = double.Parse(liquidacionDetalle.Estado ? "1" : "0"); } }
private void txtLegajo_TextChanged(object sender, EventArgs e) { TextBox tb; tb = (TextBox)sender; if (tb.Text.Length > 0 && Varios.IsNumeric(tb.Text)) { this.barCode39[Convert.ToInt32(tb.Tag)].BarCode = this.txtEmpresa.Text + tb.Text.PadLeft(5, '0'); this.barCode39[Convert.ToInt32(tb.Tag)].HeaderText = Varios.Left(tb.Text.PadLeft(5, '0') + "_" + ConsultaEmpleados.consultarApellidoYnombres(Convert.ToInt32(this.txtLegajo[Convert.ToInt32(tb.Tag)].Text)), 28); } }
public TarjetaFichadaEntity(string stringTarjeta) { this.StringTarjeta = stringTarjeta; this.Empresa = byte.Parse(Varios.Left(stringTarjeta, 2)); this.CentroDeCosto = byte.Parse(Varios.Right(Varios.Left(stringTarjeta, 4), 2)); if (this.StringTarjeta.Length == 10) //tarjetas con legajo de 6 digitos { this.Legajo = int.Parse(Varios.Right(stringTarjeta, 6)); } if (this.StringTarjeta.Length == 9) //tarjetas con legajo de 5 digitos { this.Legajo = int.Parse(Varios.Right(stringTarjeta, 5)); } }
/// <summary> /// Genera archivo con formato galica. /// </summary> /// <param name="idliquidacion"></param> /// <param name="archivo"></param> /// <param name="esLiquidacionNormal"></param> public static void generaArchivo(int idliquidacion, string archivo, List <int> tiposLiquidacionesSeleccionados, DateTime fechaAcreditacion, bool todosLosConveios, int idConvenio) { //00 si la empresa no manda nada //01 HABERES - 04 SAC - 02 HS EXTRAS - 05 VACACIONES /*si el indice 0 es 1, se seleccionó la liquidacion normal.*/ if (tiposLiquidacionesSeleccionados[0] == 4) //SAC { movimiento.concepto = "04"; } else if (tiposLiquidacionesSeleccionados[0] == 3) // VACACIONES { movimiento.concepto = "05"; } else { movimiento.concepto = "01"; //HABERES } string cuenta = ""; string importe = ""; int cantRegistros = 0; double importeTotal = 0; DbDataReader rsLegajos; StreamWriter sw = new StreamWriter(archivo); //recorro netos para obtener total del archivo. este dato va en cabecera if (todosLosConveios) { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBanco", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 2); } else { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBancoPorConvenio", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 2, "@idConvenio", idConvenio); } while (rsLegajos.Read()) //para cada legajo recorro todos los campos definidos en tablas { importe = string.Format("{0:#0.00}", Convert.ToDouble(rsLegajos["Neto"])); importeTotal = importeTotal + Convert.ToDouble(importe); } cabecera.importe = string.Format("{0:#0.00}", importeTotal).Replace(".", "").PadLeft(14, '0'); cabecera.fecAcred = Varios.Right(fechaAcreditacion.Year.ToString(), 4) + fechaAcreditacion.Month.ToString().PadLeft(2, '0') + fechaAcreditacion.Day.ToString().PadLeft(2, '0'); //GRABA CABECERA. sw.WriteLine(cabecera.tipoRegistro + cabecera.empresas + cabecera.tipoCuenta + cabecera.folio + cabecera.digito1 + cabecera.sucursal + cabecera.digito2 + cabecera.importe + cabecera.fecAcred + cabecera.filler); //recorrer netos por legajo //consultar netos por idliquidacion. //repoteLiquidacionesNetoPorLegajo. calcular haberes+adicionales-retenciones //rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBanco", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 2); if (todosLosConveios) { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBanco", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 2); } else { rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "liquidacionesNetosPorLegajoPorBancoPorConvenio", "@idLiquidacion", idliquidacion, "@idFormaDePago", 2, "@idBanco", 2, "@idConvenio", idConvenio); } while (rsLegajos.Read()) //para cada legajo recorro todos los campos definidos en tablas { cantRegistros++; movimiento.nombre = Varios.Left(rsLegajos["Apellidos y nombres"].ToString(), 20).PadRight(20, ' '); importe = string.Format("{0:#0.00}", Convert.ToDouble(rsLegajos["Neto"])); importe = importe.Replace(".", ""); movimiento.importe = importe.PadLeft(14, '0'); movimiento.sucursal = Varios.Right(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 22).ToString(), 4); movimiento.digito2 = Varios.Right(movimiento.sucursal, 1); movimiento.sucursal = Varios.Left(movimiento.sucursal, 3); //movimiento.sucursal = Varios.Right(movimiento.sucursal, 3); movimiento.folio = Varios.Left(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(rsLegajos["legajo"]), "codigo", 22).ToString(), 8); movimiento.digito1 = Varios.Right(movimiento.folio, 1); movimiento.tipoCuenta = Varios.Left(movimiento.folio, 1); movimiento.folio = Varios.Right(Varios.Left(movimiento.folio, 7), 6); //movimiento.folio = Varios.Right(movimiento.folio, 6); //movimiento.digito1 = Varios.Left(movimiento.folio, 1); //movimiento.digito2 = Varios.Right( Varios.Left(movimiento.folio, 2),1); if (movimiento.folio.Length == 0 || movimiento.sucursal == "0") { MessageBox.Show("ATENCIÓN: el empleado " + movimiento.nombre + " no tiene cuenta o banco asignado. No se exportara la liquidación."); } else { //GRABA DETALLE sw.WriteLine(movimiento.tipoRegistro + movimiento.empresas + movimiento.tipoCuenta + movimiento.folio + movimiento.digito1 + movimiento.sucursal + movimiento.digito2 + movimiento.nombre + movimiento.importe + movimiento.concepto + movimiento.filler); //actualiza liquidacionesEstados for (int i = 0; i < tiposLiquidacionesSeleccionados.Count; i++) { Model.DB.ejecutarProceso(Model.TipoComando.SP, "liquidacionesEstadosActualizar", "@idLiquidacion", idliquidacion, "@idTipoLiquidacion", tiposLiquidacionesSeleccionados[i], "@legajo", Convert.ToInt32(rsLegajos["legajo"].ToString()), "@acreditada", true, "fechaAcreditacion", fechaAcreditacion); } } } final.cantRegistros = cantRegistros.ToString().PadLeft(7, '0'); //grabar final. sw.WriteLine(final.tipoRegistro + final.empresas + final.cantRegistros + final.filler); sw.Close(); }
private void btnGenerarArchivo_Click(object sender, EventArgs e) { int legajo = 0; int totalRegistros = 0; int cantRegistros = 0; string contenido = ""; string registro = ""; DbDataReader rsCampos; DbDataReader rsLegajos; totalRegistros = (int)Model.DB.ejecutarScalar(Model.TipoComando.SP, "liquidacionesConsultarTotalLegajosParaCargas", "@anioMes", liqui.AnioMes); this.pbProceso.Minimum = 0; this.pbProceso.Maximum = totalRegistros; this.saveFileDialogCargas.Filter = "Texto TXT (*.txt)|*.txt"; this.saveFileDialogCargas.FileName = "SIJP"; this.Refresh(); if (saveFileDialogCargas.ShowDialog() == DialogResult.OK) { StreamWriter sw = new StreamWriter(this.saveFileDialogCargas.FileName); rsLegajos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "sijpConsultarLegajos", "@anioMes", liqui.AnioMes); while (rsLegajos.Read()) //para cada legajo recorro todos los campos definidos en tablas { cantRegistros++; if (cantRegistros <= pbProceso.Maximum) { this.pbProceso.Value = cantRegistros; } registro = ""; legajo = Convert.ToInt32(rsLegajos["legajo"]); this.txtLegajo.Text = legajo.ToString(); this.txtLegajo.Refresh(); rsCampos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "tablasConsultarFormatosExportacion", "@tabla", "sijp"); while (rsCampos.Read()) { //////campos explicitos para sijp////// if (Convert.ToInt32(rsCampos["posicion"]) == 1) { contenido = CUIL.Limpiar(Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "@legajo", legajo, "@codigo", 18).ToString()); } else { if (Convert.ToInt32(rsCampos["posicion"]) == 12) {///elimino caracteres especiales en el nombre por problemas en importacion contenido = Varios.Left(ConsultaEmpleados.consultarApellidoYnombresConBajas(legajo), 30); contenido = contenido.Replace('Ñ', 'N'); contenido = contenido.Replace('Á', 'A'); contenido = contenido.Replace('É', 'E'); contenido = contenido.Replace('Í', 'I'); contenido = contenido.Replace('Ó', 'O'); contenido = contenido.Replace('Ú', 'U'); } else { contenido = Model.DB.ejecutarScalar(Model.TipoComando.SP, "sijpConsultarValorLegajo", "@anioMes", liqui.AnioMes, "legajo", legajo, "codigo", Convert.ToInt32(rsCampos["posicion"])).ToString(); //contenido = contenido.Replace('.', ','); } } if (rsCampos["tipoCampo"].ToString() == "9") //si es numerico completa con ceros. { registro = registro + contenido.PadLeft(Convert.ToInt32(rsCampos["longitud"]), '0'); } else //si es texto completa con espacios. { registro = registro + contenido.PadRight(Convert.ToInt32(rsCampos["longitud"]), ' '); } } sw.WriteLine(registro); Console.WriteLine(registro); System.Windows.Forms.Application.DoEvents(); } sw.Close(); Model.DB.desconectarDB(); this.pbProceso.Value = totalRegistros; MessageBox.Show("El archivo se generó con éxito."); } }