Formulario Detalle 2.0.N

De FlexiPymeDocs
Ir a la navegación Ir a la búsqueda

Formulario Detalle

Código de Referencia

using FlexiPyme.ui.extras;
using FlexiPyme.ui.formularios.especificos.detalle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FlexiDemo.Formularios.Ventas
{
    public class frmClientesDetalle : FlexiDetalle
    {
        public override void InicializarFormulario()
        {
            this.Titulo = "Detalle del Cliente";

            this.Tabla = "Clientes";
            this.CampoClave = "id";
            this.ParametroRecibido = "id";
            this.EdicionParametro = "id";
            this.EdicionCodigoFormulario = "frmClientesEdicion";

            FlexiDetalleGrupoCampos grupo = new FlexiDetalleGrupoCampos();
            grupo.Titulo = "Datos generales";

            grupo.AgregarCampo("razonSocial", "Razón Social", FlexiDetalleCampoTipo.CADENA);
            grupo.AgregarCampo("idClienteCategoria", "Categoría", FlexiDetalleCampoTipo.DEPENDIENTE, "ClientesCategorias", "id", "nombre");

            grupo.BuscarCampo("razonSocial").EstablecerAnchoGrid(1, 3, false);
            grupo.BuscarCampo("idClienteCategoria").EstablecerAnchoGrid(1, 2, true);

            this.AgregarGrupoCampo(grupo);


            grupo = new FlexiDetalleGrupoCampos();
            grupo.Titulo = "Datos auxiliares";

            grupo.AgregarCampo("cuit", "CUIT", FlexiDetalleCampoTipo.CADENA);

            grupo.BuscarCampo("cuit").CssClassTitulo = "tituloDetalle";
            grupo.BuscarCampo("cuit").CssClassValor = "valorDetalle";

            this.AgregarGrupoCampo(grupo);


            FlexiDetalleLista  lista = new FlexiDetalleLista();
            lista.Titulo = "Facturas2";
            lista.CodigoFormularioEdicion = "frmFacturaEdicion";
            lista.ParametroNuevo = "id";
            lista.Query = @"select f.*
                                from Facturas f
                            ";
            lista.QueryWhere = "f.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);

            lista.AgregarColumnaAccion("detalle", "frmFacturasEdicion", "id", "id");

            this.AgregarListaIzquierda(lista);

            lista = new FlexiDetalleLista();
            lista.Titulo = "Facturas";
            lista.CodigoFormularioEdicion = "frmFacturaEdicion";
            lista.ParametroNuevo = "id";
            lista.Query = @"select f.*
                                from Facturas f
                            ";
            lista.QueryWhere = "f.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);

            lista.AgregarColumnaAccion("detalle", "frmFacturasEdicion", "id", "id");

            this.AgregarListaDerecha(lista);

            lista = new FlexiDetalleLista();
            lista.Titulo = "Recibos";
            lista.CodigoFormularioEdicion = "frmRecibosEdicionEdicion";
            lista.ParametroNuevo = "id";
            lista.Totalizar = true;
            lista.AnchoDoble = true;
            lista.Query = @"select r.*, 
                                'a1' as col1, 'a2' as col2, 'a3' as col3, 'a1' as col4, 'a1' as col5, 'a1' as col6, 'a1' as col7, 'a1' as col8, 'a1' as col9, 'a1' as col10,
                                'a1' as col11, 'a2' as col12, 'a3' as col13, 'a1' as col14, 'a1' as col15, 'a1' as col16, 'a1' as col17, 'a1' as col18, 'a1' as col19
                                from Recibos r
                            ";
            lista.QueryWhere = "r.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            
            for (int i = 1; i <= 19; i++)
            {
                lista.AgregarColumna("col" + i, "C" + i, FlexiDetalleListaColumnaTipo.TEXTO);
            }
            lista.AgregarColumna("fecha", "Fecha", FlexiDetalleListaColumnaTipo.FECHA);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);
            lista.BuscarColumna("total").Totalizar = true;

            lista.AgregarColumnaAccion("detalle", "frmRecibosEdicion", "id", "id");
            
            this.AgregarListaIzquierda(lista);


            lista = new FlexiDetalleLista();
            lista.Titulo = "Facturas3";
            lista.CodigoFormularioEdicion = "frmFacturaEdicion";
            lista.ParametroNuevo = "id";
            lista.AnchoDoble = true;
            lista.Query = @"select f.*
                                from Facturas f
                            ";
            lista.QueryWhere = "f.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);

            lista.AgregarColumnaAccion("detalle", "frmFacturasEdicion", "id", "id");

            this.AgregarListaDerecha(lista);

            lista = new FlexiDetalleLista();
            lista.Titulo = "Facturas4";
            lista.CodigoFormularioEdicion = "frmFacturaEdicion";
            lista.ParametroNuevo = "id";
            lista.Query = @"select f.*
                                from Facturas f
                            ";
            lista.QueryWhere = "f.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);

            lista.AgregarColumnaAccion("detalle", "frmFacturasEdicion", "id", "id");

            this.AgregarListaIzquierda(lista);

            lista = new FlexiDetalleLista();
            lista.Titulo = "Facturas5";
            lista.CodigoFormularioEdicion = "frmFacturaEdicion";
            lista.ParametroNuevo = "id";
            lista.Query = @"select f.*
                                from Facturas f
                            ";
            lista.QueryWhere = "f.idCliente = @parametroRecibido";
            lista.AgregarColumna("numero", "Número", FlexiDetalleListaColumnaTipo.TEXTO);
            lista.AgregarColumna("total", "Total", FlexiDetalleListaColumnaTipo.MONEDA);

            lista.AgregarColumnaAccion("detalle", "frmFacturasEdicion", "id", "id");

            this.AgregarListaDerecha(lista);


        }

        public override void AntesDeVisualizar()
        {

        }

        public override void AntesDeCrearNuevo(string lista)
        {
            if (lista == "Recibos")
            {
                Dictionary<string, string> pars = new Dictionary<string, string>();
                pars.Add("id", "0");

                VariablesDeEntorno.GuardarValorEnVariable(this.WorkflowId, "ididCliente", this.IdEntidad);

                Navegacion.Redireccionar(this.WorkflowId, "frmRecibosEdicion", pars);

            }
        }
    }
}