public ActionResult Modificar(cp_retencion_Info model)
        {
            bus_retencion   = new cp_retencion_Bus();
            model.IdUsuario = Session["IdUsuario"].ToString();
            model.detalle   = List_cp_retencion_det.get_list(Convert.ToDecimal(model.IdTransaccionSession));
            model.info_comprobante.lst_ct_cbtecble_det = List_ct_cbtecble_det_List.get_list(Convert.ToDecimal(model.IdTransaccionSession));
            //info_param_op = Session["info_param_op"] as cp_parametros_Info;
            //model.info_comprobante.IdTipoCbte = (int)info_param_op.pa_IdTipoCbte_x_Retencion;

            string mensaje = bus_retencion.validar(model);

            if (!validar(model, ref mensaje))
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            if (mensaje != "")
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                cargar_combos_detalle();
                return(View(model));
            }
            else
            {
                var lista_cp_codigo_SRI = lst_codigo_retencion.get_list();

                if (lista_cp_codigo_SRI.Count > 0)
                {
                    model.detalle.ForEach(item =>
                    {
                        cp_codigo_SRI_Info info_ = lista_cp_codigo_SRI.Where(v => v.IdCodigo_SRI == item.IdCodigo_SRI).FirstOrDefault();
                        item.re_Codigo_impuesto  = info_.co_codigoBase;
                        if (info_.IdTipoSRI == "COD_RET_IVA")
                        {
                            model.re_Tiene_RFuente = "S";
                            item.re_tipoRet        = "IVA";
                        }
                        if (info_.IdTipoSRI == "COD_RET_FUE")
                        {
                            model.re_Tiene_RTiva = "S";
                            item.re_tipoRet      = "RTF";
                        }
                    });
                }

                if (bus_retencion.modificarDB(model))
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ViewBag.mensaje = mensaje;
                    cargar_combos(model.IdEmpresa);
                    cargar_combos_detalle();
                    return(View(model));
                }
            }
        }
Beispiel #2
0
        void ucGe_Menu_Mantenimiento_x_usuario_event_btnModificar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                Info_OrdenGiro = (cp_orden_giro_Info)UltraGrid_OrdenGiro.GetFocusedRow();

                if (Info_OrdenGiro == null)
                {
                    MessageBox.Show("Seleccione una fila", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                else
                {
                    if (Info_OrdenGiro.Estado == "I")
                    {
                        MessageBox.Show("La Factura #: " + Info_OrdenGiro.co_serie + "-" + Info_OrdenGiro.co_factura + "/" + Info_OrdenGiro.IdCbteCble_Ogiro + " está anulada, solo puede consultar.", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        llamaFRM(Cl_Enumeradores.eTipo_action.consultar, Info_OrdenGiro);
                    }
                    else
                    {
                        cp_orden_pago_det_Bus         bus_opDet   = new cp_orden_pago_det_Bus();
                        List <cp_orden_pago_det_Info> lista_opDet = new List <cp_orden_pago_det_Info>();
                        string mensaje = "";
                        lista_opDet = bus_opDet.Get_List_OrdenPagoDetalle(Info_OrdenGiro.IdEmpresa, Info_OrdenGiro.IdCbteCble_Ogiro, Info_OrdenGiro.IdTipoCbte_Ogiro, ref mensaje);

                        if (lista_opDet.Count != 0)
                        {
                            MessageBox.Show("La Factura #: " + Info_OrdenGiro.co_serie + "-" + Info_OrdenGiro.co_factura + "/" + Info_OrdenGiro.IdCbteCble_Ogiro + " tiene asociadas Ordenes de Pago. No se puede modificar completamente", "Sistemas", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            llamaFRM(Cl_Enumeradores.eTipo_action.actualizar_proceso_cerrado, Info_OrdenGiro);
                            return;
                        }

                        cp_retencion_Bus  bus_Retencion = new cp_retencion_Bus();
                        cp_retencion_Info info          = new cp_retencion_Info();

                        info = bus_Retencion.Get_Info_retencion(Info_OrdenGiro.IdEmpresa, Info_OrdenGiro.IdCbteCble_Ogiro, Info_OrdenGiro.IdTipoCbte_Ogiro);

                        if (info != null)
                        {
                            llamaFRM(Cl_Enumeradores.eTipo_action.actualizar, Info_OrdenGiro);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Beispiel #3
0
        private void cmb_Generar_XML_Click(object sender, EventArgs e)
        {
            try
            {
                string MensajeError = "";



                int i = Info_Retencion.IdEmpresa;


                if (UC_numRetencion.rbt_doc_Electronico.Checked == true)
                {
                    if (BindingList_codigoSRI.Count == 0)
                    {
                        MessageBox.Show("La retencion no contiene detalle", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return;
                    }

                    cp_retencion_Bus bus_retenciones = new cp_retencion_Bus();
                    if (bus_retenciones.Generacion_xml_SRI(Info_Retencion.IdEmpresa, Info_Retencion.IdRetencion, ref MensajeError))
                    {
                        MessageBox.Show("Se genero correctamente el XML", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("No se pudo generar el XML :\n\n" + MensajeError, param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show("No puede generar XML para documento PRE-IMPRESO", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch (Exception ex)
            {
                string NameMetodo = System.Reflection.MethodBase.GetCurrentMethod().Name;
                MessageBox.Show(NameMetodo + " - " + ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Log_Error_bus.Log_Error(NameMetodo + " - " + ex.ToString());
            }
        }
Beispiel #4
0
 private void UltraGrid_OrdenGiro_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e)
 {
     try
     {
         if (e.Column.Name == colTotal_Retencion.Name)
         {
             Info_OrdenGiro = (cp_orden_giro_Info)UltraGrid_OrdenGiro.GetFocusedRow();
             cp_retencion_Info InfoRetencion = new cp_retencion_Info();
             cp_retencion_Bus  BusRetencion  = new cp_retencion_Bus();
             InfoRetencion = BusRetencion.Get_Info_retencion(Convert.ToInt32(Info_OrdenGiro.IdEmpresa_ret), Convert.ToDecimal(Info_OrdenGiro.IdRetencion));
             frmCP_RetencionMant frm = new frmCP_RetencionMant();
             frm.Set_Accion(Cl_Enumeradores.eTipo_action.consultar);
             frm.Set_Info_Retencion(InfoRetencion);
             frm.ShowDialog();
         }
     }
     catch (Exception ex)
     {
         Log_Error_bus.Log_Error(ex.ToString());
         MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }