Plugin FastPresupuesto para FacturaScripts

Este es un plugin gratuito que puedes descargar aquí y luego instalar en FacturaScripts. Lee la guía de cómo instalar un plugin.

Descargar Contacto

FastPresupuesto

Plugin para crear presupuestos rápidos sin seleccionar un cliente real en el formulario, manteniendo compatibilidad con la lógica interna de FacturaScripts.

Para Usuarios

Qué hace

  • Añade un botón Nuevo presupuesto rápido en ListPresupuestoCliente.
  • Abre un modal para introducir:
    • Nombre
    • Teléfono
    • Email
  • Crea un PresupuestoCliente directamente y abre su edición.

Flujo funcional

  1. Entras en Ventas > Presupuestos.
  2. Pulsas Nuevo presupuesto rápido.
  3. Rellenas nombre, teléfono y email.
  4. Se crea el presupuesto y se abre en edición.

Restricción importante

  • El plugin usa un cliente técnico (FASTPRES) para cumplir requisitos internos del ERP.
  • Si un documento con ese cliente se intenta cerrar en estado no editable (caso factura), se bloquea y se pide asignar cliente real.

Qué verás en el presupuesto

Cuando el cliente del documento es FASTPRES, en cabecera aparecen inputs destacados (borde rojo) para:

  • Nombre
  • Teléfono
  • Email

Para Técnicos

Objetivo técnico

Permitir creación rápida con datos de contacto, sin romper:

  • SalesDocument::getSubject()
  • Calculator::apply()
  • flujo estándar de guardado/estados

Estrategia

En vez de dejar codcliente vacío (incompatible con cálculos y validaciones), se usa un cliente técnico fijo:

  • Init::TECHNICAL_CUSTOMER_CODE = FASTPRES

Implementación por archivos

Init.php

  • Registra extensiones de:
    • Extension\Controller\ListPresupuestoCliente
    • Extension\Model\PresupuestoCliente
    • Extension\Model\FacturaCliente
  • Registra SalesHeaderHTMLMod.
  • En update() crea el cliente técnico si no existe.

Extension/Controller/ListPresupuestoCliente.php

  • Añade botón/modal de alta rápida.
  • Acción create-fast-presupuesto:
    • Valida token.
    • Valida nombre obligatorio.
    • Valida formato email.
    • Crea presupuesto con cliente técnico.
    • Guarda contacto en campos custom y en campos espejo del documento.

Extension/Model/PresupuestoCliente.php

  • testBefore() para presupuesto rápido:
    • sanea datos.
    • valida nombre y email.
    • sincroniza campos espejo.

Mod/SalesHeaderHTMLMod.php

  • Solo actúa si modelClassName() === PresupuestoCliente y cliente FASTPRES.
  • Renderiza inputs custom (nombre/teléfono/email) en cabecera.
  • Aplica cambios y sincroniza espejo al guardar.

Extension/Model/FacturaCliente.php

  • Bloquea guardado en estado no editable si el cliente sigue siendo FASTPRES.

Table/presupuestoscli.xml

Añade columnas propias del plugin:

  • contacto_telefono (varchar(20))
  • contacto_email (varchar(150))

Mapeo de datos

Campos de trabajo (plugin)

  • nombrecliente
  • contacto_telefono
  • contacto_email

Campos espejo (documento estándar)

Para que salga correctamente en el PDF estándar sin tocar Core:

  • direccion <= contacto_email
  • provincia <= contacto_telefono

PDFDocument imprime nombrecliente y bloque de dirección (direccion, provincia, etc.), por eso se usa este espejo.

Traducciones

  • Archivo: Translation/es_ES.json
  • Constantes PHP: Lib/TransKeys.php
  • En XML se usan directamente keys de traducción.

Calidad de código

El plugin incluye configuración local:

  • phpstan nivel 5 + strict rules
  • php-cs-fixer
  • scripts en composer.json

Comandos (desde Plugins/FastPresupuesto):

  • composer run phpstan
  • composer run cs:check
  • composer run cs:fix

Notas de mantenimiento

  • Si cambia la plantilla PDF base del ERP, revisar el mapeo espejo.
  • Si en el futuro se quiere mostrar teléfono/email de forma nativa en PDF, hacerlo vía extensión PDF en plugin, no tocando Core.
FastPresupuesto

Quizás quieras contactar con el desarrollador para solicitar soporte, hacer una consulta o proponer una colaboración. El desarrollador es un experto certificado en la plataforma y tiene experiencia en el desarrollo de plugins para FacturaScripts.

Ver perfil

Relacionado

ActivityLogs
ActivityLogs

Registra y monitorea en detalle la actividad de usuarios en FacturaScripts, con auditoría, exclusión de URLs y rotación automática de logs para mejorar seguridad y rendimiento.

ActualizarDatosCliente
ActualizarDatosCliente

Sincroniza facturas con los datos actualizados del cliente con un clic, evitando correcciones manuales y ahorrando tiempo.

VisorErrores
VisorErrores

Visualiza centralmente los errores críticos del ERP (MyFiles/crash_xxx_.json) para facilitar a administradores y usuarios avanzados su detección y resolución.

GestionEncargosPericiales
GestionEncargosPericiales

Gestiona, controla y factura encargos periciales de forma centralizada, coordinando peritos, talleres y vehículos para mejorar la trazabilidad.

MegaInvoicer
MegaInvoicer

Facturación masiva de albaranes (compra/venta) individual o agrupada por cliente/proveedor, respetando empresa/serie/divisa/almacén/descuentos y opcional línea con datos del albarán.

FirmeAqui
FirmeAqui

Recoge firmas electrónicas desde PC, tablet y móvil, integrándolas de forma segura e inmutable en los documentos para validar y agilizar la gestión documental.

FastPresupuesto

FastPresupuesto Plugin para crear presupuestos rápidos sin seleccionar un cliente real en el formulario, manteniendo compatibilidad con la lógica interna de FacturaScripts. Para Usuarios Qué hace Añade un botón Nuevo presupuesto rápido en ListPresupuestoCliente.Abre un modal...

28-04-2026
Ya disponible FastPresupuesto 1

Ya está disponible la versión 1 del plugin FastPresupuesto. Esta publicación resume los cambios principales disponibles en esta versión. FastPresupuesto Plugin para crear presupuestos rápidos sin seleccionar un cliente real en el formulario, manteniendo compatibilidad con la...

28-04-2026
Cookies
Usamos cookies en nuestro sitio web para brindarte la experiencia más relevante recordando tus preferencias y visitas repetidas. Al hacer clic en "Aceptar", aceptas el uso de TODAS las cookies necesarias.
Copyright (c) 2013-2026 FacturaScripts
0.04349s

Soporte