Saltar a contenido

Lista - Presupuestos de venta

Gestiona los productos y servicios ofertados en presupuestos de venta a clientes. Incluye control exhaustivo de precios unitarios, descuentos (fijos y porcentuales), impuestos, categorías de venta, saldo extra promocional, y precios mínimos permitidos. Permite gestionar sustituciones de productos, elementos de packs, suscripciones, y control de stock con reservas. Incorpora validaciones automáticas de precios mínimos, gestión de catálogos de venta por tipo de cliente, cálculo automático de totales con impuestos incluidos o excluidos, y soporte para operaciones intracomunitarias con clasificación fiscal específica para España.

Información General

Propiedad Valor
ID 3c58d060-654c-43d6-b411-1a7aa95cbc58
Tabla PostgreSQL tpr_30040105557_e
Etiqueta Plural Productos de presupuesto de venta
Texto principal automatico No
Sección Listadora Presupuestos de venta (ff4ea09c-1b83-462f-b782-60b8717d92a9)
Sección Base Base Lista - Presupuestos de venta (1334f04e-4478-42ba-81df-50029387b99a)

Campos

Total de campos: 90 (12 del sistema, 78 personalizados)

Campos del Sistema

Campo Tipo Rol Columna PostgreSQL Relación Atributos
ID Relación - id Lista - Presupuestos de venta -
Concepto Texto - nombre - -
Fecha Alta Dato Fecha Y Hora - fecha - -
Editado Fecha Y Hora - fecham - -
Eliminado Sí/No - eliminado - -
Usuario Creador del dato Relación - usuarioid Base - Entidades -
Sección (Relación Sistema) Relación - plantillapid - 🔴 Obligatorio
Posición (Orden) Decimal - posicion - -
Modificado Sí/No - modificado - -
Fecha Indice Actividad Fecha Y Hora - fechaia - -
Presupuesto de venta (Listador) (Relación) Relación - idrelacionlistador Presupuestos de venta 🔴 Obligatorio
Presupuesto de venta (Listador) Eliminadoo * Sí/No - listadoreliminado - -

Campos Personalizados

Campo Tipo Pestaña Columna Atributos Notas
Proyecto Relación General pr_30040336365 - -
Fecha Dato Fecha Y Hora Registro pr_3004010555172 🔴 Obligatorio, 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Fecha Dato
Total concepto impuestos Decimal General pr_4004010567442 🔒 Bloqueado, 📊 Cualquier valor numérico -
Fecha Alta del registro Fecha Y Hora Registro pr_3004010555174 🔴 Obligatorio Autorrellenado (Siempre): Fecha y Hora actual
Suma descuentos de producto (Con impuestos) Decimal Detalles pr_4004010567440 🔒 Bloqueado, 📊 Cualquier valor numérico -
Total descuentos Decimal General pr_4004010567439 🔒 Bloqueado, 📊 Cualquier valor numérico -
Cantidad (Unidades) Decimal Avanzado pr_4004010567438 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Cantidad de productos que se pueden facturar Decimal General pr_50040115761 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Cantidad (Medida Base Por Und.) Decimal Avanzado pr_4004010567433 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Producto / Cantidad (Medida Base)
Medida (Base) Relación Avanzado pr_4004010567496 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre): Campo : Producto / Medida (Base)
Impuestos incluidos Sí/No General pr_4004010567413 🔒 Bloqueado Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Precios con impuestos incluidos
Total descuentos (Sin Impuestos) Decimal Detalles pr_4004010567431 🔒 Bloqueado, 📊 Cualquier valor numérico -
Suma Decimal General pr_50040106483 🔒 Bloqueado, 📊 Cualquier valor numérico -
Precio unidad (Con impuestos) Decimal Detalles pr_50040106482 🔒 Bloqueado, 📊 Cualquier valor numérico -
Descuento fijo unidad (Sin impuestos) Decimal Detalles pr_4004010567454 🔒 Bloqueado, 📊 Cualquier valor numérico -
Autor del alta Relación Registro pr_3004010555171 🔴 Obligatorio Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* )
Elemento Catálogo Relación Referencias pr_4004010567505 🔒 Bloqueado, 👁 Oculto -
Producto no sustituido Relación Referencias pr_4004010567502 🔒 Bloqueado, 👁 Oculto -
Suma descuentos de producto (Sin impuestos) Decimal Detalles pr_4004010567452 🔒 Bloqueado, 📊 Cualquier valor numérico -
Tipo movimiento Relación Avanzado pr_4004010567501 🔴 Obligatorio, 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Tipo de Factura
Permitir productos fuera de catálogo Sí/No General pr_4004010567418 - Autorrellenado (Siempre): Campo (Empresa Actual): Permitir vender productos fuera de catálogo · Indicando esta opción se permitirá seleccionar productos que no estén en el catálogo que se ha asignado a la entidad o transacción.
Suma descuentos generales Decimal Detalles pr_4004010567449 🔒 Bloqueado, 📊 Cualquier valor numérico -
Peso unidad Decimal Detalles pr_50040106481 🔒 Bloqueado, 📊 Cualquier valor numérico -
Cantidad de productos que se pueden reservar Decimal Desarrollo pr_4004010567447 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Producto es sustitución Sí/No Avanzado pr_4004010567417 🔒 Bloqueado, 👁 Oculto Indica si el producto seleccionado ha sido una sustitución.
Producto sustituido Relación Referencias pr_4004010567499 🔒 Bloqueado, 👁 Oculto -
Suma descuentos generales (Con impuestos) Decimal Detalles pr_4004010567445 🔒 Bloqueado, 📊 Cualquier valor numérico -
Saldo extra emitido Decimal General pr_4004010567444 🔒 Bloqueado, 📊 Cualquier valor numérico -
Porcentaje de impuestos Decimal Impuestos pr_4004010567470 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Ubicación Principal Relación General pr_3004010555170 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Ubicación Principal
Hora local Hora Registro pr_3004010555173 🔒 Bloqueado, 👁 Oculto -
Medida Relación General pr_4004010567506 🔴 Obligatorio Autorrellenado (Siempre): Campo : Producto / Medida (Accesible)
Cantidad Decimal General pr_4004010567463 🔴 Obligatorio, 📊 Mayores que 0 Autorrellenado (Siempre): Número: 1
Destinador Relación General pr_3004010555177 🔒 Bloqueado, 👁 Oculto -
Precio unidad Decimal General pr_4004010567461 📊 Cualquier valor numérico -
Suma (Con impuestos) Decimal Detalles pr_4004010567459 🔒 Bloqueado, 📊 Cualquier valor numérico -
Cantidad (Medida Base) Decimal Avanzado pr_4004010567460 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Total concepto (Sin impuestos) Decimal Detalles pr_4004010567458 🔒 Bloqueado, 📊 Cualquier valor numérico -
Total concepto (Con impuestos) Decimal Detalles pr_4004010567457 🔒 Bloqueado, 📊 Cualquier valor numérico -
Descuentos Generales Porciento Decimal General pr_4004010567456 🔒 Bloqueado, 📊 Positivos o 0 -
Descuento fijo unidad (Con impuestos) Decimal Detalles pr_4004010567488 🔒 Bloqueado, 📊 Cualquier valor numérico -
Cantidad productos vendibles desde presupuestos Decimal Desarrollo pr_4004010567487 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico -
Total concepto Decimal General pr_4004010567482 🔒 Bloqueado, 📊 Cualquier valor numérico -
Suma descuentos generales (Sin impuestos) Decimal Detalles pr_4004010567485 🔒 Bloqueado, 📊 Cualquier valor numérico -
Descuento % Decimal General pr_4004010567484 📊 Positivos o 0 -
Catálogo Relación Referencias pr_4004010567509 🔒 Bloqueado, 👁 Oculto Catálogo referencia de precios.
Precio unidad (Sin impuestos) Decimal Detalles pr_4004010567480 🔒 Bloqueado, 📊 Cualquier valor numérico -
Evaluar stock Sí/No Detalles pr_4004010567429 - Autorrellenado (Siempre): Campo : Producto / Evaluar Stock
Suma descuentos de producto Decimal Detalles pr_4004010567476 🔒 Bloqueado, 📊 Cualquier valor numérico -
Total descuentos (Con Impuestos) Decimal Detalles pr_4004010567475 🔒 Bloqueado, 📊 Cualquier valor numérico -
Empleado Relación General pr_3004010555169 🔴 Obligatorio, 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Empleado
Entidad Relacionada Relación Referencias pr_4004010567508 🔒 Bloqueado, 👁 Oculto Autorrellenado (Siempre, Listador): Campo : Presupuesto de venta (Listador) (Relación) / Cliente
Importe descuento porcentual (Por unidad) (Sin impuestos) Decimal Detalles pr_4004010567474 🔒 Bloqueado, 📊 Cualquier valor numérico -
Importe descuento porcentual (Por unidad) (Con impuestos) Decimal Detalles pr_4004010567471 🔒 Bloqueado, 📊 Cualquier valor numérico -
Aplicar recargo de equivalencia Sí/No Detalles pr_4004010567427 🔒 Bloqueado -
Categoría de venta Relación General pr_10040136181 🔴 Obligatorio Autorrellenado (Cadena_Rellenada): Campo : Producto / Categoría de Venta por defecto
Elemento de pack Relación Referencias pr_10040148423 👁 Oculto -
Unidades deseadas Decimal General pr_100401699817 👁 Oculto, 📊 Cualquier valor numérico .
Clave de operación intracomunitaria Texto Avanzado pr_300402429918 - -
Suma descuentos Porciento Decimal Detalles pr_10040255201 🔒 Bloqueado, 📊 Cualquier valor numérico -
Suma (Sin impuestos) Decimal Detalles pr_60040255191 🔒 Bloqueado, 📊 Cualquier valor numérico -
Importe descuento porcentual (Por unidad) Decimal Detalles pr_10040256632 🔒 Bloqueado, 📊 Cualquier valor numérico -
Recurso Relación General pr_20040504623 - -
Suscripción de cliente Relación General pr_40040414102 - -
Ampliación de suscripción Relación General pr_40040414103 - -
Producto Relación General pr_4004010567495 - -
Tipo Entero General pr_60040504612 🔴 Obligatorio, 🔒 Bloqueado, 📊 Cualquier valor numérico Autorrellenado (Siempre): Número entero: 1
Impuestos Relación General pr_4004010567498 🔴 Obligatorio -
Tipo de Producto Entero General pr_40735201 📊 Cualquier valor numérico -
ES - Base imponible a coste Decimal Avanzado pr_50735203 🔒 Bloqueado, 📊 Cualquier valor numérico -
Inversión del sujeto pasivo Sí/No Avanzado pr_50735204 - -
ES - Impuestos Causa Entero Avanzado pr_50735205 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Impuestos / ES - Causa (Sujeción)
ES - Impuestos Tipo Entero Avanzado pr_40735202 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Impuestos / ES - Tipo
ES - Clave Régimen Entero Avanzado pr_50735201 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Impuestos / ES - Clave Régimen
ES - Clasificación de Operación Entero Avanzado pr_50735202 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Impuestos / ES - Clasificación de Operación
Descuento fijo unidad Decimal General pr_4004010567451 📊 Cualquier valor numérico -
Saldo extra unidad Decimal General pr_4004010567455 👁 Oculto, 📊 Cualquier valor numérico -
Precio mínimo Decimal General pr_4004010567481 📊 Cualquier valor numérico El precio mínimo por el que se puede vender este producto.

Scripts

Total de scripts: 16

Código de Scripts

Lógica de negocio ejecutada en los formularios automáticamente

Formulario_TickRecalculo

num Proyecto_BloqueadoPorGeneral = 0
txt Proyecto_BloqueadoPorGeneralMotivo = 'Este campo está bloqueado porque ha seleccionado un proyecto general.'

if C.RelacionElementoContenedorListador.ReferenciaProyectoGeneral <> ''
    C.ReferenciaProyecto = C.RelacionElementoContenedorListador.ReferenciaProyectoGeneral
    V.Proyecto_BloqueadoPorGeneral = 1 
end if 




F.CampoBloqueadoMotivo(S.Fields.PresupuestosDeVentaLista.ReferenciaProyecto.ID,v.Proyecto_BloqueadoPorGeneralMotivo,v.Proyecto_BloqueadoPorGeneral)

Formulario_Iniciado_AgregarNuevo

if C.ReferenciaImpuestos = ''

    C.ReferenciaImpuestos = C.RelacionElementoContenedorListador.ReferenciaImpuestoPredeterminado 

end if

Campo_Cambiado

if C.ImpuestosIncluidos
    C.ReferenciaImpuestos = C.ReferenciaElementoCatalogo.ReferenciaImpuesto 
    C.ImportePrecioUnidad = C.ReferenciaElementoCatalogo.ImportePrecioConImpuestos 
    C.ImporteDescuentoFijoUnidad = C.ReferenciaElementoCatalogo.ImporteDescuentoFijoImpuestosIncluidos 
    C.DescuentoPorciento = C.ReferenciaElementoCatalogo.DescuentoPorciento 
    C.ImporteSaldoExtraUnidad = C.ReferenciaElementoCatalogo.ImporteSaldoPromocionalFijoExtra 
else
    C.ReferenciaImpuestos = C.ReferenciaElementoCatalogo.ReferenciaImpuesto 
    C.ImportePrecioUnidad = C.ReferenciaElementoCatalogo.ImportePrecioSinImpuestos 
    C.ImporteDescuentoFijoUnidad = C.ReferenciaElementoCatalogo.ImporteDescuentoFijoImpuestosNoIncluidos 
    C.DescuentoPorciento = C.ReferenciaElementoCatalogo.DescuentoPorciento 
    C.ImporteSaldoExtraUnidad = C.ReferenciaElementoCatalogo.ImporteSaldoPromocionalFijoExtra 
end if

Campos utilizados: - Lista - Presupuestos de venta > Elemento Catálogo

Campo_ComboAplicarFiltro

if C.ReferenciaEntidadRelacionada <> ''
    F.CampoDesplegableAplicarFiltro(S.Fields.SuscripcionesDeClientesBase.ReferenciaCliente.ID,'=',C.ReferenciaEntidadRelacionada)
    F.ListadoAvisoDesplegable(F.Concat2('Mostrando las suscripciones de ',C.ReferenciaEntidadRelacionada.TextoPrincipal),1)
End If

Campos utilizados: - Lista - Presupuestos de venta > Suscripción de cliente

Campo_ComboAplicarFiltro

if C.ReferenciaSuscripcionDeCliente <> ''

    F.CampoDesplegableAplicarFiltro(S.Fields.AmpliacionesDeSuscripcionesDeClientesBase.ReferenciaSuscripcionDeCliente.ID,'=',C.ReferenciaSuscripcionDeCliente)
    F.ListadoAvisoDesplegable(F.Concat2('Mostrando renovaciones de suscripción ',C.ReferenciaSuscripcionDeCliente.TextoPrincipal),1)


elseif C.ReferenciaEntidadRelacionada <> ''

    F.CampoDesplegableAplicarFiltro(S.Fields.AmpliacionesDeSuscripcionesDeClientesBase.ReferenciaCliente.ID,'=',C.ReferenciaEntidadRelacionada)
    F.ListadoAvisoDesplegable(F.Concat2('Mostrando renovaciones del cliente',C.ReferenciaEntidadRelacionada.TextoPrincipal),1)



End If

Campos utilizados: - Lista - Presupuestos de venta > Ampliación de suscripción

Formulario_PreACeptar

if C.ReferenciaAmpliacionDeSuscripcion <> ''
    if C.ReferenciaSuscripcionDeCliente <> ''
        if C.ReferenciaSuscripcionDeCliente <> C.ReferenciaAmpliacionDeSuscripcion.ReferenciaSuscripcionDeCliente 
            F.MsgBox('La renovación no pertenece a la suscripción seleccionada.',1)
            F.CancelarEvento 
        End If
    end if
End If

Campo_Cambiado

if C.ReferenciaRecurso <> ''


    C.TextoPrincipal = C.ReferenciaRecurso.TextoPrincipal 

    if C.ReferenciaRecurso.ReferenciaDetalles.ReferenciaCategoriaDeVenta <> ''
        C.ReferenciaCategoriaDeVenta = C.ReferenciaRecurso.ReferenciaDetalles.ReferenciaCategoriaDeVenta 
    end if


    if C.ReferenciaRecurso.ReferenciaImpuestoDeVenta <> ''
        C.ReferenciaImpuestos = C.ReferenciaRecurso.ReferenciaImpuestoDeVenta
    else
        if C.ReferenciaRecurso.ReferenciaDetalles.ReferenciaImpuestoEnVentas <> ''
            C.ReferenciaImpuestos = C.ReferenciaRecurso.ReferenciaDetalles.ReferenciaImpuestoEnVentas
        end if
    end if


    if C.ImpuestosIncluidos
        C.ImportePrecioUnidad = C.ReferenciaRecurso.ImportePrecioDeVentaConImpuestos 
    else
        C.ImportePrecioUnidad = C.ReferenciaRecurso.ImportePrecioDeVentaSinImpuestos 
    end if



end if

Campos utilizados: - Lista - Presupuestos de venta > Recurso

Formulario_TickRecalculo

num categoriabloqueada = 0
num impuestobloqueado = 0

if C.RelacionElementoContenedorListador.ReferenciaCategoriaGeneral <> ''
    C.ReferenciaCategoriaDeVenta = C.RelacionElementoContenedorListador.ReferenciaCategoriaGeneral
    V.categoriabloqueada = 1
end if


if C.RelacionElementoContenedorListador.ReferenciaImpuestoGeneralAplicado <> ''
    C.ReferenciaImpuestos = C.RelacionElementoContenedorListador.ReferenciaImpuestoGeneralAplicado
    V.impuestobloqueado = 1
end if


F.CampoBloqueadoMotivo(S.Fields.PresupuestosDeVentaLista.ReferenciaCategoriaDeVenta.ID,'Se ha indicado en Categoria general.',V.categoriabloqueada)
F.CampoBloqueadoMotivo(S.Fields.PresupuestosDeVentaLista.ReferenciaImpuestos.ID,'Se ha indicado en Impuesto general.',V.impuestobloqueado)

Campo_Cambiado

if C.ReferenciaImpuestos.EsSuplido
    C.Tipo = S.Enums.cotizacionfilatipo.suplido 
else
    C.Tipo = S.Enums.cotizacionfilatipo.ordinario 
end if

Campos utilizados: - Lista - Presupuestos de venta > Impuestos

Campo_ComboAplicarFiltro

F.CampoDesplegableAplicarFiltro(S.Fields.LotesDeProductosBase.ReferenciaUbicacionPrincipal.id,'=',C.ReferenciaUbicacionPrincipal)
F.CampoDesplegableAplicarFiltro(S.Fields.LotesDeProductosBase.ReferenciaProducto.id,'=',C.ReferenciaProducto)
F.CampoDesplegableAplicarFiltro(S.Fields.LotesDeProductosBase.StockDisponible.id,'>',0)

Campos utilizados: - Lista - Presupuestos de venta > Lote (Obsoleto)

Formulario_PreACeptar

if  C.ImportePrecioMinimo > 0
    If   C.ImportePrecioMinimo > C.ImportePrecioUnidad
        If F.PreguntarSiNo('Precio demasiado bajo','El precio de venta por unidad es inferior al precio de venta mínimo. ¿Desea continuar?',1) = 0 
            F.CancelarEvento 
        End If
    Else
        If  C.ImportePrecioMinimo > (C.ImporteTotalConcepto / C.CantidadUnidades)
            If F.PreguntarSiNo('Precio demasiado bajo','El precio final por unidad es inferior al precio de venta mínimo. ¿Desea continuar?',1) = 0 
                F.CancelarEvento 
            End If
        End If 
    End If
End If

Formuario_RecalcularListado

C.CantidadProductosVendiblesDesdePresupuestos = C.CantidadUnidades

If C.EvaluarStock y C.RelacionElementoContenedorListador.ReferenciaCliente  <>  ''
    C.CantidadDeProductosQueSePuedenReservar = C.CantidadUnidades
else
    C.CantidadDeProductosQueSePuedenReservar = 0
End If


if C.RelacionElementoContenedorListador.ReferenciaCliente  <>  ''
    C.CantidadDeProductosQueSePuedenFacturar = C.CantidadUnidades 
else
    C.CantidadDeProductosQueSePuedenFacturar = 0
End If

Campo_ComboAplicarFiltro

F.CampoDesplegableAplicarFiltro(S.Fields.ImpuestosBase.Activo.id,'=',1)

Campos utilizados: - Lista - Presupuestos de venta > Impuestos

Campo_ComboAplicarFiltro

If C.PermitirProductosFueraDeCatalogo = 0
    F.CampoDesplegableAplicarAlgoritmoCM(S.Algorithms.AlgoritmoBusquedaProductosEnCatalogosDeVentaPorTipoDeClienteYImpuestosIncluidosPorUbicacion.id,C.RelacionElementoContenedorListador.ReferenciaTipoDeCliente,C.ImpuestosIncluidos,C.ReferenciaUbicacionPrincipal)
    F.ListadoAvisoDesplegable('Únicamente se están mostrando los productos asociados a catálogos.',1)
else
    F.ListadoAvisoDesplegable('Únicamente se están mostrando los productos asociados a catálogos.',0)
End If

Campos utilizados: - Lista - Presupuestos de venta > Producto

Campo_Cambiado

if C.UnidadesDeseadasObsoleto <> 0
     C.Cantidad = C.ReferenciaElementoDePack.Cantidad 
 end if

Campos utilizados: - Lista - Presupuestos de venta > Lote (Obsoleto)

Campo_Cambiado

@! Reserva
@ Se ha modificado el producto seleccionado, desasocio la reserva.


If C.ReferenciaProducto <> ''



    If C.ReferenciaProducto.AlertaAlVender <> '' 
        F.MsgBox(C.ReferenciaProducto.AlertaAlVender,0) 
    End If

End If


If C.ReferenciaProducto <> ''
    if C.ReferenciaProducto.NombrePublico <> ''
        C.TextoPrincipal = C.ReferenciaProducto.NombrePublico 
    else
        C.TextoPrincipal = C.ReferenciaProducto.TextoPrincipal 
    End If
End If

Campos utilizados: - Lista - Presupuestos de venta > Producto


← Volver al índice