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
Este plugin no funciona o está abandonado. Algunos programadores publican plugins para FacturaScripts, pero luego, por distintos motivos, no tienen tiempo suficiente para continuar con el desarrollo. Por favor, considera la opción de patrocinar FacturaScripts para que podamos asumir el desarrollo de estos plugins abandonados o reemplazarlos.

# 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.

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

ActualizarDatosCliente
ActualizarDatosCliente

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

GestionEncargosPericiales
GestionEncargosPericiales

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

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.

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.

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.

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...

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...

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.05809s

Soporte