using Exferia_Aplicacion.General;
using Exferia_Aplicacion.Modelos_Listado_Filtros;
using Exferia_Aplicacion.Visualizacion;
using Exferia_EntityFramework;
using Exferia_General;
using Exferia_Ventas._0_Modelos;
using Exferia_Ventas.General;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using static Exferia_Aplicacion.General.Enumerados;
using static Exferia_Aplicacion.General.Imagenes;

namespace Exferia_Ventas._3_Vistas.Listados
{
    public class ABS_Listado_VTA_AlbaranesCabecera_AUX_1 : ABS_Listado
    {
        //Variables privadas
        private INTERNO_ValoresGenerales_Modelo g_mdl_INTERNO_ValoresGenerales_Modelo = null;
        private Dictionary<string, INTERNO_ABS_Listado_ColumnasDatos_Modelo> g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo = new Dictionary<string, INTERNO_ABS_Listado_ColumnasDatos_Modelo>();

        //Constructor
        public ABS_Listado_VTA_AlbaranesCabecera_AUX_1(INTERNO_ValoresGenerales_Modelo _mdl_INTERNO_ValoresGenerales_Modelo)
        {
            g_mdl_INTERNO_ValoresGenerales_Modelo = _mdl_INTERNO_ValoresGenerales_Modelo;

            Rellenar_Columnas();
        }

        private void Rellenar_Columnas()
        {
            //id
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.id), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(true, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.id), "id", G_ENUM_TIPOSDATOS.LONG, true, 0, false, false, true, false, "", null));

            //Bolsa
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Bolsa), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Bolsa), "Bolsa", G_ENUM_TIPOSDATOS.BOOLEAN, false, 60, true, false, true, false, "", null));

            //Estado
            INTERNO_Filtro_Opciones_Modelo mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO = new INTERNO_Filtro_Opciones_Modelo();
            mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO.MULTISELECCION = true;
            mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO.LISTADO = new List<INTERNO_Filtro_Opciones_Listado_Modelo>();
            mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables.G_STR_ESTADO_CONTABILIDAD_ABIERTO_TEXTO, Variables.G_STR_ESTADO_CONTABILIDAD_ABIERTO_TEXTO));
            mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables.G_STR_ESTADO_CONTABILIDAD_CERRADO_TEXTO, Variables.G_STR_ESTADO_CONTABILIDAD_CERRADO_TEXTO));
            mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO.TIPO = 1;
            List<INTERNO_ABS_Listado_CondicionesColores_Modelo> lst_INTERNO_ABS_Listado_CondicionesColores_Modelo = new List<INTERNO_ABS_Listado_CondicionesColores_Modelo>();
            lst_INTERNO_ABS_Listado_CondicionesColores_Modelo.Add(new INTERNO_ABS_Listado_CondicionesColores_Modelo(new INTERNO_CodigoDescripcion_Modelo(Variables.G_MDL_INTERNO_CODIGODESCRIPCION_TIPOBUSQUEDA_GENERAL_IGUALA.Codigo, Variables.G_MDL_INTERNO_CODIGODESCRIPCION_TIPOBUSQUEDA_GENERAL_IGUALA.Descripcion), Variables.G_STR_ESTADO_CONTABILIDAD_ABIERTO_TEXTO, Colores.G_COLOR_ESTADONOSELECCIONABLE_LETRA, Colores.G_COLOR_ESTADONOSELECCIONABLE_FONDO));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Estado_Texto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Estado_Texto), "Estado", G_ENUM_TIPOSDATOS.OPCIONES, false, 100, true, false, true, false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Estado_Texto), lst_INTERNO_ABS_Listado_CondicionesColores_Modelo, false, mdl_INTERNO_Filtro_Opciones_Modelo_ESTADO));

            //Delegacion
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_DELEGACION = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idDelegacion), nameof(GEN_Delegaciones), nameof(GEN_Delegaciones.id), nameof(GEN_Delegaciones.codigo), nameof(GEN_Delegaciones.descripcion), nameof(GEN_Delegaciones.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Delegacion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Delegacion), "Delegación", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, true, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_DELEGACION, "", true));

            //numeroAlbaran
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.numeroAlbaran), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.numeroAlbaran), "Nº Albaran", G_ENUM_TIPOSDATOS.LONG, false, 100, true, true, true, false, "", null));

            //fecha
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.fecha), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.fecha), "Fecha ", G_ENUM_TIPOSDATOS.DATETIME, false, 100, true, true, true, false, "", null));

            //Cliente Codigo
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_Codigo), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_Codigo), "Cliente código", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, true, false, "", null));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_RazonSocial), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_RazonSocial), "Cliente razón social", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, true, false, "", null));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_NombreComercial), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Cliente_NombreComercial), "Cliente nombre comercial", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, false, false, "", null));

            //Cliente
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_CLIENTE = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idCliente), nameof(MAE_Clientes), nameof(MAE_Clientes.id), nameof(MAE_Clientes.codigo), nameof(MAE_Clientes.razonSocial), nameof(MAE_Clientes.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idCliente), "Cliente", Enumerados.G_ENUM_TIPOSDATOS.RELACIONADA, true, 0, true, true, false, true, "", null, true, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_CLIENTE, "", true));

            //Descripcion
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.descripcion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.descripcion), "Descripción", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, false, false, "", null));

            //Moneda
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_MONEDA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idMoneda), nameof(GEN_Monedas), nameof(GEN_Monedas.id), nameof(GEN_Monedas.moneda), nameof(GEN_Monedas.descripcion), nameof(GEN_Monedas.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Moneda), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Moneda), "Moneda", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_MONEDA));

            //ImpuestoCabecera
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_IMPUESTOCABECERA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idImpuestoCabecera), nameof(GEN_ImpuestosCabecera), nameof(GEN_ImpuestosCabecera.id), nameof(GEN_ImpuestosCabecera.codigo), nameof(GEN_ImpuestosCabecera.descripcion), nameof(GEN_ImpuestosCabecera.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ImpuestoCabecera), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ImpuestoCabecera), "Impuesto", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_IMPUESTOCABECERA));

            //Empleado
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_EMPLEADO = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idEmpleado), nameof(MAE_Empleados), nameof(MAE_Empleados.id), nameof(MAE_Empleados.codigo), nameof(MAE_Empleados.nombre), nameof(MAE_Empleados.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Empleado), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Empleado), "Empleado", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_EMPLEADO));

            //Empresa
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_EMPRESA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idEmpresa), nameof(GEN_Empresas), nameof(GEN_Empresas.id), nameof(GEN_Empresas.codigo), nameof(GEN_Empresas.descripcion), nameof(GEN_Empresas.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Empresa), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Empresa), "Empresa", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_EMPRESA));

            //PredefinidoCabecera_ALBARAN
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_PREDEFINIDOCABECERA_ALBARAN = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idPredefinidoCabecera_Albaran), nameof(CTA_PredefinidosCabeceras), nameof(CTA_PredefinidosCabeceras.id), nameof(CTA_PredefinidosCabeceras.codigo), nameof(CTA_PredefinidosCabeceras.descripcion), nameof(CTA_PredefinidosCabeceras.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.PredefinidoCabeceraAlbaran), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.PredefinidoCabeceraAlbaran), "Predefinido (Albaran)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_PREDEFINIDOCABECERA_ALBARAN));

            //ClaveAnalitica
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_CLAVEANALITICA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idClaveAnalitica), nameof(CTA_PredefinidosCabeceras), nameof(CTA_PredefinidosCabeceras.id), nameof(CTA_PredefinidosCabeceras.codigo), nameof(CTA_PredefinidosCabeceras.descripcion), nameof(CTA_PredefinidosCabeceras.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ClaveAnalitica), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ClaveAnalitica), "Clave analítica", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_CLAVEANALITICA));

            //Facturas
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_FACTURAS = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idFacturaCabecera), nameof(VTA_FacturasCabecera), nameof(VTA_FacturasCabecera.id), nameof(VTA_FacturasCabecera.numeroFactura), nameof(VTA_FacturasCabecera.fecha), nameof(VTA_FacturasCabecera.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Facturas), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Facturas), "Factura", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_FACTURAS));

            //Ejercicio
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_EJERCICIO = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.idEjercicio), nameof(GEN_EjerciciosActivos_Empresa), nameof(GEN_EjerciciosActivos_Empresa.id), nameof(GEN_EjerciciosActivos_Empresa.anioControl), nameof(GEN_EjerciciosActivos_Empresa.descripcion), nameof(GEN_EjerciciosActivos_Empresa.fechaBorrado),"","","","","",nameof(GEN_EjerciciosActivos_Empresa.idEmpresa), g_mdl_INTERNO_ValoresGenerales_Modelo.lng_idEmpresa, nameof(GEN_EjerciciosActivos_Empresa.anioControl), 1);
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Ejercicio), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Ejercicio), "Ejercicio", G_ENUM_TIPOSDATOS.RELACIONADA, false, 100, true, false, false, true, "", null, false,null, mdl_INTERNO_Filtro_Relacionadas_Modelo_EJERCICIO, "",true));

            //total_bruto
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_bruto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_bruto), "Total bruto", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null, true));

            //total_baseImponible
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_baseImponible), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_baseImponible), "Total base imponible", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null, true));

            //total_impuesto
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_impuesto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_impuesto), "Total impuesto", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null, true));

            //total_recargo
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_recargo), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_recargo), "Total recargo", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null, true));

            //total_descuentoFinalAlbaran
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_descuentoFinalAlbaran), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total_descuentoFinalAlbaran), "Total dto. final de albaran", G_ENUM_TIPOSDATOS.DECIMAL, false, 130, true, false, false, false, "", null, true));

            //total
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.total), "Total", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, true, false, "", null, true));

            //Agencia
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_AGENCIA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Agencia_Id), nameof(HRM_Agencias), nameof(HRM_Agencias.id), nameof(HRM_Agencias.codigo), nameof(HRM_Agencias.razonSocial), nameof(HRM_Agencias.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Agencia), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Agencia), "Agencia", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_AGENCIA));

            //EntredaSalida
            INTERNO_Filtro_Opciones_Modelo mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA = new INTERNO_Filtro_Opciones_Modelo();
            mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA.MULTISELECCION = true;
            mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA.LISTADO = new List<INTERNO_Filtro_Opciones_Listado_Modelo>();
            mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables_Ventas.G_MDL_ALBARAN_ENTRADASALIDA_ENTRADA.Descripcion, Variables_Ventas.G_MDL_ALBARAN_ENTRADASALIDA_ENTRADA.Descripcion));
            mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables_Ventas.G_MDL_ALBARAN_ENTRADASALIDA_SALIDA.Descripcion, Variables_Ventas.G_MDL_ALBARAN_ENTRADASALIDA_SALIDA.Descripcion));
            mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA.TIPO = 1;
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.EntradaSalida_Texto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.EntradaSalida_Texto), "Entrada/Salida", G_ENUM_TIPOSDATOS.OPCIONES, false, 100, true, false, false, false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Estado_Texto), null, false, mdl_INTERNO_Filtro_Opciones_Modelo_ENTRADASALIDA));
            
            //FechaEntrega
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.FechaEntrega), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.FechaEntrega), "Fecha entrega", G_ENUM_TIPOSDATOS.DATETIME, false, 100, true, false, false, false, "", null));

            //HoraEntrega
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.HoraEntrega), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.HoraEntrega), "Hora entrega", G_ENUM_TIPOSDATOS.HORASIMPLE, false, 100, true, false, false, false, "", null));

            #region Origen
            //PaisOrigen
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_PaisOrigen = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Pais_Id), nameof(GEN_Paises), nameof(GEN_Paises.id), nameof(GEN_Paises.codigo_ISO2D), nameof(GEN_Paises.descripcion), nameof(GEN_Paises.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Pais), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Pais), "País (origen)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_PaisOrigen));

            //Origen_CodigoPostal
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_CodigoPostal), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_CodigoPostal), "Código postal (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 100, true, false, false, false, "", null));

            //Origen_Remitente
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Remitente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Remitente), "Remitente (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Origen_Provincia
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Provincia), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Provincia), "Provincia (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Origen_Municipio
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Municipio), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Municipio), "Municipio (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Origen_Poblacion
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Poblacion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Poblacion), "Población (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Origen_Direccion
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Direccion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Origen_Direccion), "Dirección (origen)", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, false, false, "", null));
            
            #endregion
            
            #region Destino
            //PaisDestino
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_PaisDestino = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Pais_Id), nameof(GEN_Paises), nameof(GEN_Paises.id), nameof(GEN_Paises.codigo_ISO2D), nameof(GEN_Paises.descripcion), nameof(GEN_Paises.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Pais), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Pais), "País (destino)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_PaisDestino));

            //Destino_CodigoPostal
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_CodigoPostal), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_CodigoPostal), "Código postal (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 100, true, false, false, false, "", null));

            //Destino_Destinatario
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Destinatario), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Destinatario), "Destinatario (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Destino_Provincia
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Provincia), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Provincia), "Provincia (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Destino_Municipio
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Municipio), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Municipio), "Municipio (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Destino_Poblacion
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Poblacion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Poblacion), "Población (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 150, true, false, false, false, "", null));

            //Destino_Direccion
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Direccion), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Destino_Direccion), "Dirección (destino)", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, false, false, "", null));
            #endregion

            //PerfilAlbaran
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_PerfilAlbaran = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.PerfilAlbaran_Id), nameof(HRM_AlbaranPerfil_Cabecera), nameof(HRM_AlbaranPerfil_Cabecera.id), nameof(HRM_AlbaranPerfil_Cabecera.codigo), nameof(HRM_AlbaranPerfil_Cabecera.descripcion), nameof(HRM_AlbaranPerfil_Cabecera.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.PerfilAlbaran), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.PerfilAlbaran), "Perfil del albaran", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_PerfilAlbaran));

            //TipoPortes
            INTERNO_Filtro_Opciones_Modelo mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES = new INTERNO_Filtro_Opciones_Modelo();
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.MULTISELECCION = true;
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.LISTADO = new List<INTERNO_Filtro_Opciones_Listado_Modelo>();
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_PAGADOS.Descripcion, Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_PAGADOS.Descripcion));
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_DEBIDOS.Descripcion, Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_DEBIDOS.Descripcion));
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.LISTADO.Add(new INTERNO_Filtro_Opciones_Listado_Modelo(Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_SERVICIO.Descripcion, Variables_Ventas.G_MDL_ALBARAN_TIPOPORTES_SERVICIO.Descripcion));
            mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES.TIPO = 1;
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoPortes_Texto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoPortes_Texto), "Tipo portes", G_ENUM_TIPOSDATOS.OPCIONES, false, 100, true, false, false, false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Estado_Texto), null, false, mdl_INTERNO_Filtro_Opciones_Modelo_TIPOPORTES));

            //Portes_ConCargoCliente
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Portes_ConCargoCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Portes_ConCargoCliente), "Con cargo a cliente(portes)", G_ENUM_TIPOSDATOS.BOOLEAN, false, 100, true, false, false, false, "", null));

            //Largo
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Largo), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Largo), "Largo", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Ancho
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Ancho), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Ancho), "Ancho", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Alto
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Alto), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Alto), "Alto", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Volumen
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Volumen), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Volumen), "Volumen", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            
            //TipoTransporteCliente
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_TIPOTRANSPORTECLIENTE = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteCliente_Id), nameof(MAE_TiposTransportes), nameof(MAE_TiposTransportes.id), nameof(MAE_TiposTransportes.codigo), nameof(MAE_TiposTransportes.descripcion), nameof(MAE_TiposTransportes.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteCliente), "Tipo de transporte (cliente)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_TIPOTRANSPORTECLIENTE));

            //Soporte
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_SOPORTE = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Soporte_Id), nameof(SGA_Soportes), nameof(SGA_Soportes.id), nameof(SGA_Soportes.codigo), nameof(SGA_Soportes.descripcion), nameof(SGA_Soportes.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Soporte), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Soporte), "Soporte", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_SOPORTE));

            //TarifasCliente
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_TARIFACLIENTE = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasCliente_Id), nameof(HRM_TarifasCabecera), nameof(HRM_TarifasCabecera.id), nameof(HRM_TarifasCabecera.codigo), nameof(HRM_TarifasCabecera.descripcion), nameof(HRM_TarifasCabecera.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasCliente), "Tarifa (cliente)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_TARIFACLIENTE));

            //TipoTransporteAgencia
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_TIPOTRANSPORTEAGENCIA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteAgencia_Id), nameof(MAE_TiposTransportes), nameof(MAE_TiposTransportes.id), nameof(MAE_TiposTransportes.codigo), nameof(MAE_TiposTransportes.descripcion), nameof(MAE_TiposTransportes.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteAgencia), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TipoTransporteAgencia), "Tipo de transporte (agencia)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_TIPOTRANSPORTEAGENCIA));

            //TarifasAgencia
            INTERNO_Filtro_Relacionadas_Modelo mdl_INTERNO_Filtro_Relacionadas_Modelo_TARIFAAGENCIA = new INTERNO_Filtro_Relacionadas_Modelo(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasAgencia_Id), nameof(HRM_TarifasCabecera), nameof(HRM_TarifasCabecera.id), nameof(HRM_TarifasCabecera.codigo), nameof(HRM_TarifasCabecera.descripcion), nameof(HRM_TarifasCabecera.fechaBorrado));
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasAgencia), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.TarifasAgencia), "Tarifa (agencia)", G_ENUM_TIPOSDATOS.RELACIONADA, false, 250, true, false, false, true, "", null, false, null, mdl_INTERNO_Filtro_Relacionadas_Modelo_TARIFAAGENCIA));

            //IncrementoPorcentaje
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.IncrementoPorcentaje), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.IncrementoPorcentaje), "Incremento (%)", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //IncrementoImporte
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.IncrementoImporte), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.IncrementoImporte), "Incremento", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Reembolso
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Reembolso), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Reembolso), "Reembolso", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //ReembolsoComision
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ReembolsoComision), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ReembolsoComision), "Reemb. Comisión (%)", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //ReembolsoImporte
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ReembolsoImporte), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.ReembolsoImporte), "Reemb. Importe", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Reembolso_ConCargoCliente
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Reembolso_ConCargoCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Reembolso_ConCargoCliente), "Con cargo a cliente(reembolso)", G_ENUM_TIPOSDATOS.BOOLEAN, false, 100, true, false, false, false, "", null));

            //Seguro
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Seguro), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Seguro), "Imp. asegurado", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //SeguroComision
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.SeguroComision), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.SeguroComision), "Seg. Comisión (%)", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //SeguroImporte
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.SeguroImporte), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.SeguroImporte), "Seg. Importe", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Desembolso
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Desembolso), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Desembolso), "Desembolso", G_ENUM_TIPOSDATOS.DECIMAL, false, 100, true, false, false, false, "", null));

            //Desembolso_ConCargoCliente
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Desembolso_ConCargoCliente), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Desembolso_ConCargoCliente), "Con cargo a cliente(desembolso)", G_ENUM_TIPOSDATOS.BOOLEAN, false, 100, true, false, false, false, "", null));

            //Condiciones
            g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo.Add(nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Condiciones), new INTERNO_ABS_Listado_ColumnasDatos_Modelo(false, nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.Condiciones), "Condiciones", G_ENUM_TIPOSDATOS.TEXT, false, 200, true, false, false, false, "", null));
            
        }

        public override List<dynamic> LISTADO()
        {
            return Registros;
        }

        public override INTERNO_OpcionesDetalle_Modelo DATOS_OPCION()
        {
            return Datos_Generales.PRV_Opciones_Buscar_Detalles(Variables.G_STR_OPCION_VTA_ALBARANESCABECERA_AUX_1);
        }

        public override string NOMBRELISTADO_ALMACENARCONFIGURACION()
        {
            return Variables.G_STR_OPCION_VTA_ALBARANESCABECERA_AUX_1;
        }

        public override Dictionary<string, INTERNO_ABS_Listado_ColumnasDatos_Modelo> LISTADO_COLUMNAS()
        {
            return g_dct_INTERNO_ABS_Listado_ColumnasDatos_Modelo;
        }

        public override string ORDENACION_NOMBRECOLUMNA_PORDEFECTO()
        {
            return nameof(INTERNO_VTA_AlbaranesCabecera_Listado_Modelo.numeroAlbaran);
        }

        public override string ORDENACION_TIPO_PORDEFECTO()
        {
            return "0";
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_1()
        {
            return null;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_2()
        {
            return null;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_3()
        {
            //Boton de procesos
            INTERNO_Listado_BotonesAuxiliares_Modelo mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL = new INTERNO_Listado_BotonesAuxiliares_Modelo();
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Boton_Visible = true;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Boton_Nombre = "Convertir a factura";
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Boton_Imagen = Imagenes.G_ENUM_IMAGENES.G_IMG_DESOLICITUDAPEDIDO;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Tipo_Seleccion_Registros = G_ENUM_TIPOSELECCION_LISTADO.SoloSeleccionados_RegistroBD;

            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Nombre_Libreria = Variables.G_STR_LIBRERIA_VENTAS;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Nombre_Clase = Variables.G_STR_LIBRERIA_OPCIONES;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Nombre_Procedimiento = Variables.G_STR_OPCION_VTA_ALBARANESCABECERA_PROCESOS_CONVERTIRAVTA_FACTURACABECERA;

            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.Opcion_Principal = Variables.G_STR_OPCION_VTA_ALBARANESCABECERA;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.TipoPermiso = G_ENUM_PERMISOS.Anadir;
            mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL.MenuBotonesIzquierdo = false;

            return mdl_INTERNO_Listado_BotonesAuxiliares_Modelo_FINAL;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_4()
        {
            return null;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_5()
        {
            return null;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_6()
        {
            return null;
        }

        public override INTERNO_Listado_BotonesAuxiliares_Modelo BOTONAUXILIAR_7()
        {
            return null;
        }

        public override List<INTERNO_ArbolSecundarioSeleccion_Modelo> LISTADO_ARBOLSECUNDARIOSELECCION()
        {
            return null;
        }

        public override List<INTERNO_Listado_Paginado_Filtro_Modelo> FILTRADO_PARAPAGINADO()
        {
            return null;
        }

        public override List<string> LISTADOCAMPOS_ENVIAR_A_MANTENIMIENTO()
        {
            return null;
        }
    }
}
