Exemplo n.º 1
0
        private void pu_Contabilizar()
        {
            try
            {
                decimal IdComprobante = 0;
                string  codigo        = "";
                bool    si_grabo      = false;
                if (MessageBox.Show("Está seguro que desea Contabilizar el Rol...?", "ATENCION", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (pu_Validar())
                    {
                        if (getInfo())
                        {
                            info_sueldo.IdPeriodo      = Convert.ToInt32(periodoActual.IdPeriodo.ToString().Substring(0, 6));
                            info_provisiones.IdPeriodo = Convert.ToInt32(periodoActual.IdPeriodo.ToString().Substring(0, 6));

                            if (ucCon_GridDiarioContable1.Grabar(Erp.Info.General.Cl_Enumeradores.eTipo_action.grabar, info_sueldo, ref codigo, ref IdComprobante, ref mensaje))
                            {
                                si_grabo                         = true;
                                Comprobantes_Info                = new ro_Comprobantes_Contables_Info();
                                Comprobantes_Info.IdEmpresa      = param.IdEmpresa;
                                Comprobantes_Info.IdCbteCble     = IdComprobante;
                                Comprobantes_Info.IdTipoCbte     = Convert.ToInt32(info_sueldo.IdTipoCbte);
                                Comprobantes_Info.IdPeriodo      = periodoActual.IdPeriodo;
                                Comprobantes_Info.cb_Observacion = info_sueldo.cb_Observacion;;
                                Comprobantes_Info.CodCtbteCble   = "SUELDO";
                                Comprobantes_Info.IdNomina       = periodoActual.IdNomina_Tipo;
                                Comprobantes_Info.IdNominaTipo   = periodoActual.IdNomina_TipoLiqui;
                                Comprobantes_roles_Bus.GuardarDB(Comprobantes_Info);
                                if (info_provisiones._cbteCble_det_lista_info.Count() > 0)
                                {
                                    si_grabo = ucCon_GridDiarioContable2.Grabar(Erp.Info.General.Cl_Enumeradores.eTipo_action.grabar, info_provisiones, ref codigo, ref IdComprobante, ref mensaje);
                                }
                                if (si_grabo && info_provisiones._cbteCble_det_lista_info.Count() > 0)
                                {
                                    Comprobantes_Info                = new ro_Comprobantes_Contables_Info();
                                    Comprobantes_Info.IdEmpresa      = param.IdEmpresa;
                                    Comprobantes_Info.IdCbteCble     = IdComprobante;
                                    Comprobantes_Info.IdTipoCbte     = Convert.ToInt32(info_sueldo.IdTipoCbte);
                                    Comprobantes_Info.IdPeriodo      = periodoActual.IdPeriodo;
                                    Comprobantes_Info.cb_Observacion = info_sueldo.cb_Observacion;;
                                    Comprobantes_Info.CodCtbteCble   = "PROVISIONES";
                                    Comprobantes_Info.IdNomina       = periodoActual.IdNomina_Tipo;
                                    Comprobantes_Info.IdNominaTipo   = periodoActual.IdNomina_TipoLiqui;
                                    Comprobantes_roles_Bus.GuardarDB(Comprobantes_Info);
                                }
                                ro_Empleado_Novedad_Det_Bus novedades_bus = new ro_Empleado_Novedad_Det_Bus();
                                novedades_bus.ModificarEstadoCobroDB(periodoActual.IdEmpresa, periodoActual.IdNomina_Tipo, periodoActual.IdNomina_TipoLiqui, periodoActual.pe_FechaIni, periodoActual.pe_FechaFin);
                                periodoActual.Contabilizado = "S";
                                ro_periodo_x_ro_Nomina_TipoLiqui_Bus oRo_periodo_x_ro_Nomina_TipoLiqui_Bus = new Business.Roles.ro_periodo_x_ro_Nomina_TipoLiqui_Bus();
                                oRo_periodo_x_ro_Nomina_TipoLiqui_Bus.ModificarDB(periodoActual);


                                MessageBox.Show("El Rol ha sido Contabilizado con éxito", "INFORMACION", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                            else
                            {
                                MessageBox.Show("Ocurrio un error: " + mensaje, "ATENCION", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }