Beispiel #1
0
        //TODO:13/09 Arreglar bug,si cambio de lugar un concepto y despues le cambios las unidades, se rompe. Revisar porque los decimales son 3 y no redondea.
        private void ModificarUnidades()
        {
            string promptValue = Prompt.ShowDialog("Cantidad:", "Modificar unidades:");

            if (promptValue != "")
            {
                int SearchedCode    = Convert.ToInt32(dgvDetalles.CurrentRow.Cells[12].Value);
                int currentRowIndex = dgvDetalles.CurrentRow.Index;

                DataRow row = dtDgvDetalles.AsEnumerable().Where(x => Convert.ToInt32(x["codigoConceptoPorEmpresa"]) == SearchedCode).First();
                row["unidades"] = promptValue;

                dtDgvDetalles.AcceptChanges();

                dtXML = dtDgvDetalles.Copy();

                ManejoDeRecibo.CalcularTabla(dtXML);

                dtDgvDetalles.Columns.Clear();
                dtDgvDetalles.Rows.Clear();

                DibujarTablaLiquidar();

                ManejoDeRecibo.CalcularTotales(dtXML, dgvDetalles, lblRemInfo, lblNoRemInfo, lblDeduccionesInfo, lblNetoInfo);

                ModificarCeldasHaberDeduccion();

                dgvDetalles.Rows[currentRowIndex].Selected = true;
            }
        }
Beispiel #2
0
        //Agrega el SAC a la lista.
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            string code = tbxCode.Text;
            string desc = tbxDescripcion.Text;
            string value;

            if (optSAC.Checked)
            {
                value = lblAbonar.Text;
            }
            else
            {
                value = lblAbonarProp.Text;
            }

            Label th_rem   = screenLiquidar.lblRemInfo;
            Label th_norem = screenLiquidar.lblNoRemInfo;
            Label tded     = screenLiquidar.lblDeduccionesInfo;
            Label tneto    = screenLiquidar.lblNetoInfo;

            DataRow dtXMLNewRow         = screenLiquidar.dtXML.NewRow();
            DataRow dtDgvDetallesNewRow = screenLiquidar.dtDgvDetalles.NewRow();


            dtDgvDetallesNewRow["codigo"]      = code;
            dtDgvDetallesNewRow["descripcion"] = desc;
            dtDgvDetallesNewRow["hab_fijo"]    = value;
            dtDgvDetallesNewRow["tipo"]        = "RM";
            dtDgvDetallesNewRow["modo"]        = "hab_fijo";
            dtDgvDetallesNewRow["unidades"]    = "1";
            dtDgvDetallesNewRow["codigoConceptoPorEmpresa"] = -10;

            screenLiquidar.dtDgvDetalles.Rows.Add(dtDgvDetallesNewRow);

            dtXMLNewRow["codigo"]      = code;
            dtXMLNewRow["descripcion"] = desc;
            dtXMLNewRow["hab_fijo"]    = value;
            dtXMLNewRow["tipo"]        = "RM";
            dtXMLNewRow["modo"]        = "hab_fijo";
            dtXMLNewRow["unidades"]    = "1";
            dtXMLNewRow["codigoConceptoPorEmpresa"] = -10;

            screenLiquidar.dtXML.Rows.Add(dtXMLNewRow);

            ManejoDeRecibo.CalcularTabla(screenLiquidar.dtDgvDetalles);

            screenLiquidar.DibujarTablaLiquidar();

            ManejoDeRecibo.CalcularTotales(screenLiquidar.dtDgvDetalles, screenLiquidar.dgvDetalles, th_rem, th_norem, tded, tneto);

            screenLiquidar.ModificarCeldasHaberDeduccion();

            Close();
        }
Beispiel #3
0
        public void Liquidar_Load(object sender, EventArgs e)
        {
            try
            {
                if (!isEditMode)
                {
                    IniciarLiquidacion();
                    DibujarTablaLiquidar();

                    ManejoDeRecibo.CalcularTabla(dtDgvDetalles);
                    ManejoDeRecibo.CalcularTotales(dtDgvDetalles, dgvDetalles, lblRemInfo, lblNoRemInfo, lblDeduccionesInfo, lblNetoInfo);

                    ModificarCeldasHaberDeduccion();

                    dgvDetalles.ClearSelection();
                }
                else
                {
                    this.Text = "Editar liquidación";

                    btnAgregar.Visible = false;
                    btnEditar.Visible  = false;
                    btnQuitar.Visible  = false;

                    herramientasToolStripMenuItem.Visible = false;
                    liquidaciónToolStripMenuItem.Visible  = true;

                    dtXML = screenReciboBuilder.dtXML.Copy();

                    dtpFechaDeposito.Value    = Convert.ToDateTime(screenReciboBuilder.lblFechaDepositoInfo.Text);
                    dtpFechaLiquidacion.Value = Convert.ToDateTime(screenReciboBuilder.lblFechaLiquidacionInfo.Text);

                    DibujarTablaLiquidar();

                    ManejoDeRecibo.CalcularTabla(dtDgvDetalles);
                    ManejoDeRecibo.CalcularTotales(dtDgvDetalles, dgvDetalles, lblRemInfo, lblNoRemInfo, lblDeduccionesInfo, lblNetoInfo);

                    ModificarCeldasHaberDeduccion();

                    dgvDetalles.ClearSelection();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Beispiel #4
0
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                string curFile             = _legajo.CurrentUserXmlFolder + añoSelected + ".xml";
                double haberRemunerativo   = Convert.ToDouble(lblRemInfo.Text.Replace("$", ""));
                double haberNoRemunerativo = Convert.ToDouble(lblNoRemInfo.Text.Replace("$", ""));
                double haberDeducciones    = Convert.ToDouble(lblDeduccionesInfo.Text.Replace("$", ""));
                double saldoNeto           = (haberRemunerativo + haberNoRemunerativo) - haberDeducciones;

                string fechaLiquidacion = dtpFechaLiquidacion.Text;
                string fechaDeposito    = dtpFechaDeposito.Text;

                DataTable tablaOrdenada = DataGridViewADataTableOrdenada();

                ManejoXML.GuardarXML(screenReciboBuilder.XMLDocumento, tablaOrdenada, _legajo.PuestoRecibo, _legajo.Banco, _legajo.Convenio, fechaLiquidacion, fechaDeposito, mesSelected, curFile, saldoNeto, isSalarioMensual, screenReciboBuilder.cboQuincena.Text, isEditMode);

                saveBtn = true;
                Close();

                ManejoDeRecibo.CalcularTabla(tablaOrdenada);
                ManejoDeRecibo.DrawTabla(tablaOrdenada, screenReciboBuilder.dgvDetallesRecibo, true);
                ManejoDeRecibo.CalcularTotales(tablaOrdenada, screenReciboBuilder.dgvDetallesRecibo, screenReciboBuilder.lblHaberesRemInfo, screenReciboBuilder.lblHaberesNoRemInfo, screenReciboBuilder.lblDeduccionInfo, screenReciboBuilder.lblNetoInfo);

                if (isSalarioMensual)
                {
                    screenReciboBuilder.cboMes_SelectedIndexChanged(null, EventArgs.Empty);
                }
                else
                {
                    screenReciboBuilder.cboQuincena_SelectedIndexChanged(null, EventArgs.Empty);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Beispiel #5
0
        private void conceptos_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (!IsModoEditar)
            {
                Index.Enabled = true;
                Index.Visible = true;

                if (Index.GetType() == typeof(Principal))
                {
                    (this.MdiParent as Principal).ActivarBotonesTS();
                }
            }
            else
            {
                ManejoDeRecibo.CalcularTabla(ScreenLiquidar.dtXML);

                ManejoDeRecibo.DrawTabla(ScreenLiquidar.dtXML, ScreenLiquidar.dgvDetalles, true);

                ManejoDeRecibo.CalcularTotales(ScreenLiquidar.dtXML, ScreenLiquidar.dgvDetalles, ScreenLiquidar.lblRemInfo, ScreenLiquidar.lblNoRemInfo, ScreenLiquidar.lblDeduccionesInfo, ScreenLiquidar.lblNetoInfo);

                ScreenLiquidar.Visible = true;
            }
        }
Beispiel #6
0
        private void EliminarConcepto(DataRow dtXmlRow, DataRow dgvDtDetallesRow)
        {
            List <string> listaConceptosEnUso = VerificarConceptoEnUso(dtXmlRow);

            listaConceptosEnUso.AddRange(VerificarConceptoEnUso(dtXmlRow));

            listaConceptosEnUso = listaConceptosEnUso.Distinct().ToList();

            if (listaConceptosEnUso.Count > 0)
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("No se puede eliminar concepto porque es parte de la formula de los siguientes conceptos:\n\n");

                for (int i = 0; i < listaConceptosEnUso.Count; i++)
                {
                    sb.Append(String.Format("- {0}\n", listaConceptosEnUso[i]));
                }
                sb.Append("\nPara eliminarlo debe primero eliminar los conceptos listados.");

                MessageBox.Show(Convert.ToString(sb), "Eliminar concepto:  " + Convert.ToString(dtXmlRow["descripcion"]));
                return;
            }

            dtXML.Rows.Remove(dtXmlRow);
            dtXML.AcceptChanges();

            dtDgvDetalles.Rows.Remove(dgvDtDetallesRow);
            dtDgvDetalles.AcceptChanges();

            dgvDetalles.Refresh();

            ManejoDeRecibo.CalcularTabla(dtXML);
            DibujarTablaLiquidar();
            ManejoDeRecibo.CalcularTotales(dtXML, dgvDetalles, lblRemInfo, lblNoRemInfo, lblDeduccionesInfo, lblNetoInfo);
            ModificarCeldasHaberDeduccion();
        }
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                Label th_rem   = Liquidar_scrn.lblRemInfo;
                Label th_norem = Liquidar_scrn.lblNoRemInfo;
                Label tded     = Liquidar_scrn.lblDeduccionesInfo;
                Label tneto    = Liquidar_scrn.lblNetoInfo;

                DataRowView drv = dataGridView1.CurrentRow.DataBoundItem as DataRowView;
                DataRow     dr  = drv.Row;

                List <DataRow> listaConceptosFormula = RecuperarConceptosFormula(dr);

                foreach (DataRow row in listaConceptosFormula)
                {
                    DataRow dtDgvDetallesNewRow = Liquidar_scrn.dtDgvDetalles.NewRow();
                    DataRow dtXMLNewRow         = Liquidar_scrn.dtXML.NewRow();

                    dtDgvDetallesNewRow["codigo"]                   = Convert.ToString(row["codigo"]);
                    dtDgvDetallesNewRow["descripcion"]              = Convert.ToString(row["descripcion"]);
                    dtDgvDetallesNewRow["hab_fijo"]                 = Convert.ToString(row["hab_fijo"]);
                    dtDgvDetallesNewRow["hab_porc"]                 = Convert.ToString(row["hab_porc"]);
                    dtDgvDetallesNewRow["ded_fijo"]                 = Convert.ToString(row["ded_fijo"]);
                    dtDgvDetallesNewRow["ded_porc"]                 = Convert.ToString(row["ded_porc"]);
                    dtDgvDetallesNewRow["tipo"]                     = Convert.ToString(row["tipo"]);
                    dtDgvDetallesNewRow["modo"]                     = Convert.ToString(row["modo"]);
                    dtDgvDetallesNewRow["formula_porc"]             = Convert.ToString(row["formula_porc"]);
                    dtDgvDetallesNewRow["unidades"]                 = (Convert.ToInt32(row["codigoConceptoPorEmpresa"]) == Convert.ToInt32(dr["codigoConceptoPorEmpresa"])) ? tbxUnidades.Text : "1";
                    dtDgvDetallesNewRow["codigoConceptoPorEmpresa"] = Convert.ToString(row["codigoConceptoPorEmpresa"]);

                    Liquidar_scrn.dtDgvDetalles.Rows.Add(dtDgvDetallesNewRow);

                    dtXMLNewRow["codigo"]                   = Convert.ToString(row["codigo"]);
                    dtXMLNewRow["descripcion"]              = Convert.ToString(row["descripcion"]);
                    dtXMLNewRow["hab_fijo"]                 = Convert.ToString(row["hab_fijo"]);
                    dtXMLNewRow["hab_porc"]                 = Convert.ToString(row["hab_porc"]);
                    dtXMLNewRow["ded_fijo"]                 = Convert.ToString(row["ded_fijo"]);
                    dtXMLNewRow["ded_porc"]                 = Convert.ToString(row["ded_porc"]);
                    dtXMLNewRow["tipo"]                     = Convert.ToString(row["tipo"]);
                    dtXMLNewRow["modo"]                     = Convert.ToString(row["modo"]);
                    dtXMLNewRow["formula_porc"]             = Convert.ToString(row["formula_porc"]);
                    dtXMLNewRow["unidades"]                 = (Convert.ToInt32(row["codigoConceptoPorEmpresa"]) == Convert.ToInt32(dr["codigoConceptoPorEmpresa"])) ? tbxUnidades.Text : "1";
                    dtXMLNewRow["codigoConceptoPorEmpresa"] = Convert.ToString(row["codigoConceptoPorEmpresa"]);

                    Liquidar_scrn.dtXML.Rows.Add(dtXMLNewRow);
                }

                Liquidar_scrn.dtDgvDetalles.AcceptChanges();
                Liquidar_scrn.dtXML.AcceptChanges();

                ManejoDeRecibo.CalcularTabla(Liquidar_scrn.dtDgvDetalles);

                Liquidar_scrn.DibujarTablaLiquidar();

                ManejoDeRecibo.CalcularTotales(Liquidar_scrn.dtDgvDetalles, Liquidar_scrn.dgvDetalles, th_rem, th_norem, tded, tneto);

                Liquidar_scrn.ModificarCeldasHaberDeduccion();

                Close();
            }
            catch (Exception error)
            {
                MessageBox.Show("Error: " + error.Message);
            }
        }