예제 #1
0
파일: frmHorario.cs 프로젝트: hvivani/SOffT
 private void txtTolerancia_TextChanged(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(this.txtTolerancia.Text) && Convert.ToInt32(this.txtTolerancia.Text) >= 0 && Convert.ToInt32(this.txtTolerancia.Text) <= 60)
     {
         this.horario.Tolerancia = Convert.ToInt32(this.txtTolerancia.Text);
     }
 }
예제 #2
0
        private void actualizaValorLegajo()
        {
            string valor = "";

            if (this.cmbTablasIndice.SelectedValue != null)
            {
                if (this.cmbEmpleados.SelectedValue != null)
                {
                    if (Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(this.cmbEmpleados.SelectedValue), "@codigo", Convert.ToInt32(this.cmbTablasIndice.SelectedValue)) == null)
                    {
                        valor = "-1";
                    }
                    else
                    {
                        valor = Model.DB.ejecutarScalar(Model.TipoComando.SP, "empleadosSueldosConsultarValorLegajo", "legajo", Convert.ToInt32(this.cmbEmpleados.SelectedValue), "@codigo", Convert.ToInt32(this.cmbTablasIndice.SelectedValue)).ToString();
                    }
                    //valor = valor.ToString();
                    if (Varios.IsNumeric(valor))
                    {
                        this.cmbTablasDetalle.SelectedValue = valor;
                    }
                    else
                    {
                        this.cmbTablasDetalle.SelectedValue = 0;
                    }
                }
            }
        }
예제 #3
0
        /// <summary>
        /// Evento que aplica los filtros y busquedas elegidas para reducir la
        /// informacion mostrada en la grilla
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void aplicarFiltros(object sender, EventArgs e)
        {
            string cadfitro = "";

            for (int i = 0; i < filtros.Length; i++)
            {
                if (filtros[i].SelectedIndex >= 0)
                {
                    //cadfitro = cadfitro + " and " + filtros[i].ValueMember + " = " + filtros[i].SelectedValue.ToString();
                    cadfitro = cadfitro + " and " + etiquetas[i].Text + " like '*" + filtros[i].Text + "*'";
                }
            }
            if (txtBoxBuqueda.TextLength > 0)
            {
                if (Varios.IsNumeric(this.txtBoxBuqueda.Text))
                {
                    cadfitro = cadfitro + " and [" + busquedas[getBusquedaSeleccionada()].Text + "] = " + txtBoxBuqueda.Text;
                }
                else
                {
                    if (getBusquedaSeleccionada() != 0)
                    {
                        cadfitro = cadfitro + " and [" + busquedas[getBusquedaSeleccionada()].Text + "] LIKE '*" + txtBoxBuqueda.Text + "*'";
                    }
                }
            }
            if (cadfitro.Length > 0)
            {
                cadfitro = cadfitro.Remove(0, 5);
            }
            binding.Filter = cadfitro;
        }
예제 #4
0
 private void txtLegajo_TextChanged(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(this.txtLegajo.Text))
     {
         this.cmbEmpleados.SelectedValue = this.txtLegajo.Text;
     }
 }
예제 #5
0
        private bool datosValidos()
        {
            Boolean ok = true;

            if (Convert.ToInt32(this.cmbEmpleados.SelectedValue) < 1)
            {
                MessageBox.Show("Debe seleccionar un empleado valido");
                ok = false;
                this.cmbEmpleados.Focus();
            }
            else
            {
                if (Convert.ToInt32(this.cmbNovedad.SelectedValue) < 1)
                {
                    MessageBox.Show("Debe seleccionar una novedad válida");
                    ok = false;
                    this.cmbNovedad.Focus();
                }
                else
                {
                    if (!Varios.IsNumeric(this.txtValor.Text) || Convert.ToDouble(this.txtValor.Text) < 0)
                    {
                        MessageBox.Show("Debe ingresar un valor válido");
                        ok = false;
                        this.txtValor.Focus();
                    }
                }
            }
            return(ok);
        }
예제 #6
0
        private bool datosValidos()
        {
            Boolean ok = true;

            if (!Varios.IsNumeric(this.txtCodigo.Text) || Convert.ToInt32(this.txtCodigo.Text) < 0)
            {
                MessageBox.Show("Debe ingresar un Codigo valido");
                ok = false;
                this.txtCodigo.Focus();
            }
            else
            {
                if (this.txtDescripcion.Text.Length == 0)
                {
                    MessageBox.Show("Debe ingresar una descripcion valida");
                    ok = false;
                    this.txtDescripcion.Focus();
                }
                else
                {
                    if (!Varios.IsNumeric(this.txtOrdPro.Text) || Convert.ToInt32(this.txtOrdPro.Text) < 0)
                    {
                        MessageBox.Show("Debe ingresar un Orden de Proceso valido");
                        ok = false;
                        this.txtOrdPro.Focus();
                    }
                }
            }
            return(ok);
        }
예제 #7
0
        public void abrirParaAgregar()
        {
            this.cargarCombos();

            this.cmbAnios.SelectedValue = double.Parse(System.DateTime.Now.Year.ToString());
            this.cmbMeses.SelectedValue = double.Parse(System.DateTime.Now.Month.ToString());

            liquidacionDetalle = new LiquidacionDetalleEntity(Convert.ToInt32(Varios.anioMes(Convert.ToInt32(this.cmbAnios.SelectedValue), Convert.ToByte(this.cmbMeses.SelectedValue))), 1, System.DateTime.Now.Date);
            liquidacionDetalleEntityBindingSource.DataSource = liquidacionDetalle;

            this.dtpFechaDePago.Value          = Convert.ToDateTime(System.DateTime.Now.ToShortDateString());
            liquidacionDetalle.FechaDepositado = Convert.ToDateTime(System.DateTime.Now.ToShortDateString());

            this.gbLiquidacion.Enabled          = true;
            this.gbLiquidacion1.Enabled         = true;
            this.gbLiquidacion2.Enabled         = true;
            this.gbTipoLiquidacion.Enabled      = true;
            this.gbFechasDePago.Enabled         = true;
            this.btnGrabar.Enabled              = true;
            liquidacionDetalle.PeriodoLiquidado = this.cmbAplicacion.Text + " " + this.cmbMeses.Text + "/" + this.cmbAnios.Text;

            this.liquidacionDetalle.RecibosSeparados = true;

            this.cmbTipoSalario.SelectedValue = 1;
            this.ShowDialog();
        }
예제 #8
0
        private void btnGrabar_Click(object sender, EventArgs e)
        {
            liquidacionDetalle.AnioMes = Convert.ToInt32(Varios.anioMes(Convert.ToInt32(this.cmbAnios.SelectedValue), Convert.ToByte(this.cmbMeses.SelectedValue)));
            if (this.datosValidos())
            {
                if (liquidacionDetalle.Id == 0)
                {
                    consuliqdet.insert(liquidacionDetalle);
                    //consulto el id asignado:
                    liquidacionDetalle.Id = consuliqdet.getById(liquidacionDetalle.AnioMes, liquidacionDetalle.IdAplicacion, liquidacionDetalle.FechaLiquidacion).Id;
                    this.actualizaFechasDePago();
                    consuliqdet.insertarFechasDePago(liquidacionDetalle.FechasDePago);
                }
                else
                {
                    this.actualizaFechasDePago();
                    consuliqdet.update(liquidacionDetalle);
                }
                //grabo las liquidaciones por tipo
                //primero elimino las existentes
                foreach (LiquidacionPorTipoEntity liq in consuliqtipo.getAll(liquidacionDetalle.Id))
                {
                    consuliqtipo.delete(liq);
                }
                //inserto nuevos
                foreach (int tab in this.lstTiposLiquidaciones.SelectedIndices)
                {
                    consuliqtipo.insert(new LiquidacionPorTipoEntity(liquidacionDetalle.Id, tab + 1));
                }

                this.btnGrabar.Enabled = false;
            }
        }
예제 #9
0
        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();
        }
예제 #10
0
 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;
 }
예제 #11
0
 private void btnModificar_Click(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(Controles.consultaCampoRenglon(this.dgvFichadas, 0)) && Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvFichadas, 0)) > 0)
     {
         this.habilitaGrabar();
         this.cmbMovimientos.SelectedValue = Controles.consultaCampoRenglon(this.dgvFichadas, 4);
         this.mTBHora.Text = Controles.consultaCampoRenglon(this.dgvFichadas, 3);
     }
 }
예제 #12
0
 private void btnEliminar_Click(object sender, EventArgs e)
 {
     if (Varios.confirmaEliminarRegistro())
     {
         Model.DB.ejecutarProceso(Model.TipoComando.SP, "calculoEliminar", "@idCalculo", Convert.ToInt32(this.cmbTablas.SelectedValue), "@ordenProceso", Convert.ToInt32(this.txtOrdPro.Text), "@codigo", Convert.ToInt32(this.txtCodigo.Text));
         MessageBox.Show("el registro se elimino con éxito");
         this.btnCancelar_Click(sender, e);
     }
 }
예제 #13
0
        /// <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();
        }
예제 #14
0
        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();
        }
예제 #15
0
        private void btnActualizar_Click(object sender, EventArgs e)
        {
            DbDataReader rsCampos;
            //TODO: Fix Mono
            StreamReader sr = new StreamReader(@"E:\programas\sueldos\archivos\SIJP200809.txt");
            string       linea;
            string       valorLeido;
            int          legajo;

            while ((linea = sr.ReadLine()) != null)
            {
                Console.WriteLine(linea);
                rsCampos = Model.DB.ejecutarDataReader(Model.TipoComando.SP, "tablasConsultarFormatosExportacion", "@tabla", "sijp");

                legajo = ConsultaEmpleados.consultarLegajoEmpleado(linea.Substring(0, 11));
                while (rsCampos.Read())
                {
                    valorLeido = linea.Substring(Convert.ToInt32(rsCampos["posicion"]) - 1, Convert.ToInt32(rsCampos["longitud"]));
                    Console.WriteLine(valorLeido);
                    if (Convert.ToInt32(rsCampos["posicion"]) == 1)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 18, "@valor", valorLeido);
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 45)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 60, "@valor", Convert.ToInt32(valorLeido));
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 47)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 61, "@valor", Convert.ToInt32(valorLeido));
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 49)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 62, "@valor", Convert.ToInt32(valorLeido));
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 58)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 63, "@valor", Convert.ToInt32(valorLeido));
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 61)
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 50, "@valor", Convert.ToInt32(valorLeido));
                    }
                    if (Convert.ToInt32(rsCampos["posicion"]) == 209 && Varios.IsNumeric(valorLeido))
                    {
                        Model.DB.ejecutarProceso(Model.TipoComando.SP, "empleadosSueldosActualizar", "@legajo", legajo, "@codigo", 64, "@valor", Convert.ToInt32(valorLeido));
                    }

                    //Console.WriteLine(linea.Substring(Convert.ToInt32(rsCampos["posicion"])-1, Convert.ToInt32(rsCampos["longitud"])));
                }
                rsCampos.Close();
            }
            sr.Close();
        }
예제 #16
0
 private void armaDescripcionLiquidacion()
 {
     if (liquidacionDetalle != null)
     {
         this.liquidacionDetalle.AnioMes = Convert.ToInt32(Varios.anioMes(Convert.ToInt32(this.cmbAnios.SelectedValue), Convert.ToByte(this.cmbMeses.SelectedValue)));
         //arma descripcion de liquidacion
         this.liquidacionDetalle.Descripcion = liquidacionDetalle.AnioMes.ToString() + "/" + this.cmbAplicacion.Text + this.obtieneTiposLiquidacionesSeleccionadas();
         //this.txtDescripcion.Text = aniomes.ToString() + "/" +  this.cmbAplicacion.Text + this.obtieneTiposLiquidacionesSeleccionadas();
         //this.liquidacionDetalleEntityBindingSource.ResetBindings(false);
     }
 }
예제 #17
0
        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");
            }
        }
예제 #18
0
 private void txtLegajo_TextChanged(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(this.txtLegajo.Text))
     {
         this.cmbEmpleados.SelectedValue = this.txtLegajo.Text;
     }
     if (this.rbPorLegajo.Checked)
     {
         this.actualizarGrillaNovedadesEmpleado();
     }
 }
예제 #19
0
파일: frmReloj.cs 프로젝트: hvivani/SOffT
        private void procesaFichada(FichadaEntity fichada)
        {
            long segundosEntreFichada;

            fichada.Fecha = System.DateTime.Now.ToShortDateString();
            fichada.Hora  = System.DateTime.Now.Hour.ToString().PadLeft(2, '0') + ":" + System.DateTime.Now.Minute.ToString().PadLeft(2, '0') + ":" + System.DateTime.Now.Second.ToString().PadLeft(2, '0');

            //verifica tiempos entre fichadas y legajo repetido
            //si la fichada es del mismo legajo y está dentro de los 30 segundos se descarta.
            segundosEntreFichada = Varios.DateDiff(Varios.DateInterval.Second, this.ultimaFichada, Convert.ToDateTime(fichada.Hora));
            if (this.ultimoLegajo == fichada.Legajo && segundosEntreFichada < 30)
            {
                return;
            }
            this.ultimaFichada = Convert.ToDateTime(fichada.Hora);
            this.ultimoLegajo  = fichada.Legajo;

            labelUltimaFichadaHora.Text   = fichada.Hora;
            labelUltimaFichadaFecha.Text  = fichada.Fecha;
            labelUltimaFichadaLegajo.Text = fichada.Legajo.ToString();

            fichada.ApellidoYnombres = ConsultaEmpleados.consultarApellidoYnombres(fichada.Legajo);
            //ConsultaEmpleados.
            //Cargo datos fichada
            if (fichada.ApellidoYnombres != "SIN DATO")
            {
                fichada.Foto = ConsultaEmpleados.consultarFoto(fichada.Legajo);
                labelUltimaFichadaApellidoNombre.Text = fichada.ApellidoYnombres;
                if (fichada.Foto == "")
                {
                    pictureBoxUltimaFichadaFoto.Image = null;
                }
                else
                {
                    pictureBoxUltimaFichadaFoto.Image = Controles.cargarImagen(fichada.Foto);
                }
                //inserta en lista por arriba
                this.lstFichadas.Items.Insert(0, fichada.Fecha + "  " + fichada.Hora + "  " + fichada.Legajo.ToString().PadLeft(5, '0') + "  " + labelUltimaFichadaApellidoNombre.Text);
                //inserta registro en db.

                fichada.Reloj = consultaTablas.getById("reloj", 3, Program.idReloj);
                fichadasNegocio.Guardar(fichada);
                //  Model.DB.ejecutarProceso(Model.TipoComando.SP, "relojInsertarCaptura", "legajo", legajo, "fecha", fecha, "hora", hora, "idReloj", Program.idReloj);
            }
            else
            {
                labelUltimaFichadaApellidoNombre.Text = "!!!! ERROR !!!!";
                pictureBoxUltimaFichadaFoto.Image     = null;
            }

            //limpia campo
            this.textBoxStringTarjeta.Clear();
        }
예제 #20
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);
            }
        }
예제 #21
0
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            tabla = consutab.getById(this.cmbTablas.Text, Convert.ToInt32(Controles.consultaCampoRenglon(this.dgTablas, 2)), Convert.ToDouble(Controles.consultaCampoRenglon(this.dgTablas, 4)));
            this.tablaEntityBindingSource.DataSource = tabla;

            if (Varios.confirmaEliminarRegistro())
            {
                consutab.delete(tabla);
                MessageBox.Show("el registro se elimino con éxito");
            }
            this.btnCancelar_Click(sender, e);
        }
예제 #22
0
 private void btnEliminar_Click(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(Controles.consultaCampoRenglon(this.dgvFichadas, 0)) && Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvFichadas, 0)) > 0)
     {
         if (Varios.confirmaEliminarRegistro())
         {
             Model.DB.ejecutarProceso(Model.TipoComando.SP, "relojEliminar", "@id", Controles.consultaCampoRenglon(this.dgvFichadas, 0));
             MessageBox.Show("la fichada se elimino con éxito");
             this.actualizarGrilla();
         }
     }
 }
예제 #23
0
 private void txtAnioVacaciones_TextChanged(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(this.txtAnioVacaciones.Text) && Convert.ToInt32(this.txtAnioVacaciones.Text) > 1950)
     {
         this.txtDiasVacaciones.Text = Model.DB.ejecutarScalar(Model.TipoComando.SP, "vacacionesCalculaDias", "legajo", this.vacacion.Legajo, "anioVac", this.txtAnioVacaciones.Text).ToString();
         this.txtDiasALiquidar.Text  = this.txtDiasVacaciones.Text;
     }
     else
     {
         this.txtDiasVacaciones.Text = "";
         this.txtDiasALiquidar.Text  = "0";
     }
 }
예제 #24
0
 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));
     }
 }
예제 #25
0
 /// <summary>
 /// Setea los datos de inicialización del modulo: servidor, db, nombreModulo, tituloModulo.
 /// 20061011. hvivani
 /// </summary>
 public void setDatos(string servidor, string DB, string nombreModulo, string nombreSistema, Icon icono, string version)
 {
     //seteo datos del modulo*/
     Modulo.ServidorDB           = servidor;
     Modulo.DB                   = DB;
     Modulo.NombreModulo         = nombreModulo;
     Modulo.NombreSistema        = nombreSistema;
     Modulo.IdModulo             = 2;
     Modulo.FechaActual          = Varios.consultarFechaActual();
     this.Icon                   = Modulo.cargaIcono();
     this.lblVersion.Text        = version;
     this.lblSistemaGestion.Text = Modulo.NombreSistema;
     this.lblModulo.Text         = Modulo.NombreModulo;
 }
예제 #26
0
 private void btnEliminar_Click(object sender, EventArgs e)
 {
     if (dgvAnticipos.RowCount > 0)
     {
         if (Varios.IsNumeric(Controles.consultaCampoRenglon(this.dgvAnticipos, 0)) && Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvAnticipos, 0)) > 0)
         {
             if (Varios.confirmaEliminarRegistro())
             {
                 Model.DB.ejecutarProceso(Model.TipoComando.SP, "anticipoEliminar", "@idAnticipo", Controles.consultaCampoRenglon(this.dgvAnticipos, 0));
                 this.actualizarGrilla();
             }
         }
     }
 }
예제 #27
0
 private void txtCuota_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (Varios.IsNumeric(txtCuota.Text))
         {
             this.btnGrabar.Focus();
         }
         else
         {
             this.txtCuota.SelectAll();
         }
     }
 }
예제 #28
0
 private void txtLegajo_TextChanged(object sender, EventArgs e)
 {
     if (Varios.IsNumeric(this.txtLegajo.Text))
     {
         this.cmbEmpleados.SelectedValue = this.txtLegajo.Text;
         this.txtNroComprobante.Text     = "";
         this.dtpFecha.Value             = Convert.ToDateTime(System.DateTime.Now.ToShortDateString());
         this.txtImporte.Text            = "0.00";
         this.txtCuota.Text = "1";
     }
     else
     {
         this.cmbEmpleados.SelectedValue = 0;
     }
 }
예제 #29
0
 private void txtImporte_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (Varios.IsNumeric(txtImporte.Text))
         {
             txtComentarios.SelectAll();
             txtComentarios.Focus();
         }
         else
         {
             txtImporte.SelectAll();
         }
     }
 }
예제 #30
0
 private void btnModificar_Click(object sender, EventArgs e)
 {
     if (dgvAnticipos.RowCount > 0)
     {
         if (Varios.IsNumeric(Controles.consultaCampoRenglon(this.dgvAnticipos, 0)) && Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvAnticipos, 0)) > 0)
         {
             this.habilitaGrabar();
             this.idAnticipo                    = Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvAnticipos, 0));
             this.cmbAnios.SelectedValue        = Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvAnticipos, 2)) / 100;
             this.cmbMeses.SelectedValue        = Convert.ToInt32(Controles.consultaCampoRenglon(this.dgvAnticipos, 2)) % 100;
             this.cmbTipoAnticipo.SelectedValue = Controles.consultaCampoRenglon(this.dgvAnticipos, 3);
             this.txtNroComprobante.Text        = Controles.consultaCampoRenglon(this.dgvAnticipos, 5);
             this.dtpFecha.Value                = Convert.ToDateTime(Controles.consultaCampoRenglon(this.dgvAnticipos, 6));
             this.txtImporte.Text               = Controles.consultaCampoRenglon(this.dgvAnticipos, 7);
             this.txtCuota.Text                 = Controles.consultaCampoRenglon(this.dgvAnticipos, 8);
         }
     }
 }