## precli
Titulo: Pedidos / Presupuestos a clientes / Ordenes de Fabricación (precli)

Descripcion:
- Tabla de CABECERA de pedidos y presupuestos emitidos a clientes.
- Cada registro representa un documento comercial o productivo, segun tipodoc.

Reglas de negocio:
- tipodoc solo puede ser:
  - 'PC' Pedido / Presupuesto de cliente
  - 'OF' Orden de fabricación
- numpre es secuencial por serie.
- Fecha oficial del documento: precli.ffaccl.
- Estado del documento: precli.marcapre.
- La diferencia entre presupuesto y pedido aceptado se determina EXCLUSIVAMENTE por marcapre.
- La tarifa aplicada (precli.tarifa) determina el PVP del articulo.
- El descuento de articulo (precli.dtoart) determina el descuento aplicado.
- No unir nunca con documentos de proveedor (pedpro, facpro, etc.).

@document_context:
- precli es una tabla de CABECERA que representa DOS tipos de documentos distintos.
- El significado funcional del documento depende EXCLUSIVAMENTE de tipodoc.

tipodoc = 'PC'
- Pedido o Presupuesto de cliente.
- Documento COMERCIAL.
- Puede generar albaranes (albcli).
- Puede tener lineas servidas o pendientes.

tipodoc = 'OF'
- Orden de fabricación.
- Documento PRODUCTIVO, NO comercial.
- No representa una venta.
- No debe incluirse en informes de ventas ni facturación.

@lifecycle_pc (orientativo):
- Presupuesto pendiente:
  - tipodoc = 'PC'
  - marcapre = 'P'
  - (en lineasdoc, por defecto: servido = 0)

- Pedido aceptado/en curso:
  - tipodoc = 'PC'
  - marcapre IN ('T','L','F','O')

- Pedido servido/fabricado:
  - Puede existir albaran asociado
  - La trazabilidad pedido -> albaran NO se detecta por lineasdoc tipodoc='PC'
    sino por lineasdoc con tipodoc='SV' (ver @trazabilidad_pedido_albaran)

@keys:
- precli.tipodoc
- precli.seriepre
- precli.numpre

@joins:
- Relacion cabecera-lineas (solo para tipodoc IN ('PC','OF')):
  precli.tipodoc  = lineasdoc.tipodoc
  AND precli.seriepre = lineasdoc.seriepre
  AND precli.numpre   = lineasdoc.numpre

- Relacion con cliente:
  precli.codigoc = cliente.codigoc

- Relacion con vendedor:
  precli.vende = vende.vende

@filters:
- precli.tipodoc = 'PC' para pedidos/presupuestos de cliente
- precli.tipodoc = 'OF' para ordenes de fabricacion

@trazabilidad_pedido_albaran:
- No existe relacion directa precli -> albcli sin pasar por lineasdoc.
- Un pedido PC "ha generado albaran" si existe al menos una linea en lineasdoc
  que represente el albaran (tipodoc='SV') y que referencie a ese pedido.

Condicion canonica (recomendada):
- EXISTS una linea ld_sv en lineasdoc tal que:
  ld_sv.tipodoc = 'SV'
  AND ld_sv.seriepre = precli.seriepre
  AND ld_sv.numpre   = precli.numpre
  AND COALESCE(ld_sv.numalb,0) > 0

@sql_rules (especificas de precli):
- precli es SIEMPRE una tabla de CABECERA.
- No contiene datos de articulo.
- Si se necesita relacionar un pedido (precli) con su albaran (albcli),
  el JOIN debe hacerse SIEMPRE a traves de lineasdoc.
- Si la consulta es solo sobre albcli, NO incluir precli ni lineasdoc
  salvo que se pida trazabilidad pedido-albaran.
- No unir precli con documentos de proveedor.

@domains:
- CLIENTE

@notes:
- doc_id = precli.seriepre || '/' || precli.numpre
- En cualquier listado de documentos de precli, SIEMPRE incluir:
  precli.seriepre y precli.numpre (o doc_id).
- Fecha oficial del documento: precli.ffaccl.
- Las reglas generales de generacion SQL, glosario y formato
  estan definidas en SQL_RULES.md.
- En caso de discrepancia, SQL_RULES.md TIENE PRIORIDAD.


## Campo: precli.tipodoc
TABLA: precli
CAMPO: tipodoc
TIPO: varchar(2)

DESCRIPCION: 
- Identificador del tipo de documento. Define la familia documental y las reglas asociadas.

VALORES:
- PC = Pedido / Presupuesto de cliente
- OF = Orden de fabricación (en este caso, reutiliza precli)

REGLAS:
- tipodoc determina las tablas válidas para joins y los flujos posteriores.
- En la tabla precli, tipodoc puede ser 'PC' si es pedido/presupuesto cliente 
- En la tabla precli, tipodoc puede ser 'OF' si es una orden de fabricación.

## Campo: precli.seriepre
TABLA: precli
CAMPO: seriepre
TIPO: varchar(2)

DESCRIPCION:
- Serie del documento (pedido/presupuesto cliente/Orden de fabricación)
VALORES:

REGLAS:
- Campo obligatorio en resultados de listados/resúmenes de documentos (junto con numpre).
- Formato visible del documento: seriepre + numpre.


## Campo: precli.numpre
TABLA: precli
CAMPO: numpre
TIPO: numeric(6)

DESCRIPCION:
- Número del documento (pedido/presupuesto cliente/Orden de fabricación)

VALORES:

REGLAS:
- Campo obligatorio en resultados de listados/resúmenes de documentos (junto con seriepre).
- Formato visible del documento: seriepre + numpre.


## Campo: precli.marcapre
TABLA: precli
CAMPO: marcapre
TIPO: varchar(1)

DESCRIPCION:
- Estado del documento (y diferencia presupuesto vs pedido)

VALORES:
- P = Pend.Aceptar (presupuesto)
- T = Terminado aceptado (pedido) o Terminado de fabricar (Orden de fabricación) 
- A = Anulado/Rechazado (presupuesto)
- L = Albaranado (Servido al cliente)
- F = Para Fábricar
- O = Ocupado sirviendo/fabricando  

REGLAS:
- Presupuesto pendiente: marcapre='P' 
- Pedido aceptado/en curso: marcapre IN ('T','L','F','O'). Rechazado: marcapre='A'.
- Es pedido si tipodoc = 'PC'
- Es orden de fabricación si tipodoc = 'OF'  

## Campo: precli.fvalidez
TABLA: precli
CAMPO: fvalidez
TIPO: date

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.facepta
TABLA: precli
CAMPO: facepta
TIPO: date

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.ffaccl
TABLA: precli
CAMPO: ffaccl
TIPO: date

DESCRIPCION:
-Fecha de emisión del documento (fecha oficial para filtros)

VALORES:

REGLAS:
- Usar para filtros por fecha de documento.
- Campo obligatorio en resultados de listados/resúmenes de documentos


## Campo: precli.tipofcl
TABLA: precli
CAMPO: tipofcl
TIPO: varchar(1)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.tcantcl
TABLA: precli
CAMPO: tcantcl
TIPO: numeric(19,6)

DESCRIPCION:
- Total cantidades de productos en el documento, que corresponde a la suma del campo “lineasdoc.cantidad”  

VALORES:

REGLAS:


## Campo: precli.tfaccl
TABLA: precli
CAMPO: tfaccl
TIPO: numeric(19,6)

DESCRIPCION:
- Importe total del documento.
- Importe Impuestos incluídos.
- Corresponde a la suma del campo “lineasdoc.tlineaii”

VALORES:

REGLAS:


## Campo: precli.codigoc
TABLA: precli
CAMPO: codigoc
TIPO: varchar(9)

DESCRIPCION:
- Código del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.rsocialc
TABLA: precli
CAMPO: rsocialc
TIPO: varchar(30)

DESCRIPCION:
- Razón social/Nombre del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.direccic
TABLA: precli
CAMPO: direccic
TIPO: varchar(50)

DESCRIPCION:
- Dirección del cliente según tabla “Cliente”


VALORES:

REGLAS:


## Campo: precli.poblacic
TABLA: precli
CAMPO: poblacic
TIPO: varchar(30)

DESCRIPCION:
- Población del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.cpostalc
TABLA: precli
CAMPO: cpostalc
TIPO: varchar(6)

DESCRIPCION:
- Código postal del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.provincc
TABLA: precli
CAMPO: provincc
TIPO: varchar(20)

DESCRIPCION:
- Provincia del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.cifc
TABLA: precli
CAMPO: cifc
TIPO: varchar(12)

DESCRIPCION:
- CIF/NIF del cliente según tabla “Cliente”

VALORES:

REGLAS:


## Campo: precli.vende
TABLA: precli
CAMPO: vende
TIPO: varchar(3)

DESCRIPCION:
- Código del vendedor del documento, que por defecto es el de la tabla de “cliente” y que servirá para saber comisiones u operaciones realizadas  

VALORES:

REGLAS:


## Campo: precli.tarifa
TABLA: precli
CAMPO: tarifa
TIPO: varchar(1)

DESCRIPCION:
- Tarifa de la tabla de artículos que se usará

VALORES:
- “1”,”2”,”3”

REGLAS:
- Tarifa del documento. 
- Por defecto toma el valor de cliente.tarifa
- Puede sobrescribirse. 
- Mapea a articu.pvp1/pvp2/pvp3.  


## Campo: precli.dtogral
TABLA: precli
CAMPO: dtogral
TIPO: numeric(4,1)

DESCRIPCION:
- Descuento general que se aplica al documento, por defecto según tabla “Cliente”  

VALORES:

REGLAS:


## Campo: precli.dtopp
TABLA: precli
CAMPO: dtopp
TIPO: numeric(4,1)

DESCRIPCION:
- Descuento por pronto pago que se aplica al documento, por defecto según tabla “Cliente”  

VALORES:

REGLAS:


## Campo: precli.fpago
TABLA: precli
CAMPO: fpago
TIPO: varchar(1)

DESCRIPCION:
- Forma de pago que se aplica por defecto para el cobro de este documento, por defecto según tabla “Cliente” 

VALORES:
- P = Pendiente
- C = Contado/Cobrado
- A = Aplazado

REGLAS:
- P = Pendiente de cobro sin forma de pago definida
- C = Cobrado al emitir
- A = Aplazado y permite vencimientos (1..9)


## Campo: precli.acuenta
TABLA: precli
CAMPO: acuenta
TIPO: numeric(19,6)

DESCRIPCION:
- Importe cobrado a cuenta si entrega algún dinero

VALORES:

REGLAS:


## Campo: precli.rec
TABLA: precli
CAMPO: rec
TIPO: varchar(1)

DESCRIPCION:
- Si el cliente está acogido al régimen de recargo de equivalencia, que se sumará al importe del IVA para calcular los impuestos

VALORES:

REGLAS:
- Indica si aplica Recargo de Equivalencia; si aplica se usan re1..re6.


## Campo: precli.impbruto
TABLA: precli
CAMPO: impbruto
TIPO: numeric(19,6)

DESCRIPCION:
- Total del importe del documento sin tener en cuenta los descuentos, que corresponde a la suma del campo “lineasdoc.cantidad x lineasdoc.precio”
  

VALORES:

REGLAS:


## Campo: precli.tdtogral
TABLA: precli
CAMPO: tdtogral
TIPO: numeric(19,6)

DESCRIPCION:
- Total importe del descuento general aplicado al precli.impbruto del documento 

VALORES:

REGLAS:
- Es el primer descuento que se aplica

## Campo: precli.tdtopp
TABLA: precli
CAMPO: tdtopp
TIPO: numeric(19,6)

DESCRIPCION:
- Total importe del descuento por pronto pago aplicado al precli.impbruto del documento

VALORES:

REGLAS:
- - Es el segundo descuento que se aplica


## Campo: precli.ttdtos
TABLA: precli
CAMPO: ttdtos
TIPO: numeric(19,6)

DESCRIPCION:
- Total importe de todos los descuentos aplicados “tdtogral+tdtopp” además de la suma de los descuentos aplicados a cada línea, que sería el campo “lineasdoc.dto”  

VALORES:

REGLAS:


## Campo: precli.portes
TABLA: precli
CAMPO: portes
TIPO: numeric(19,6)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.ivaporte
TABLA: precli
CAMPO: ivaporte
TIPO: numeric(4,1)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.marcafac
TABLA: precli
CAMPO: marcafac
TIPO: varchar(1)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.conduce
TABLA: precli
CAMPO: conduce
TIPO: varchar(30)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.matricam
TABLA: precli
CAMPO: matricam
TIPO: varchar(10)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.dnicond
TABLA: precli
CAMPO: dnicond
TIPO: varchar(12)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.descarga
TABLA: precli
CAMPO: descarga
TIPO: varchar(40)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.destino
TABLA: precli
CAMPO: destino
TIPO: varchar(15)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.refer
TABLA: precli
CAMPO: refer
TIPO: varchar(10)

DESCRIPCION:
- Es una máscara para filtrar al hacer consultas e informes por caracteres, por ejemplo 30???????? significa que seleccione los documentos cuya referencia empiece por 30  

VALORES:

REGLAS:


## Campo: precli.observa
TABLA: precli
CAMPO: observa
TIPO: varchar(30)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.base1
TABLA: precli
CAMPO: base1
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible1 para el tipo de IVA1 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva1
TABLA: precli
CAMPO: iva1
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA1

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Tener en cuenta que no sabemos que IVA habrá en este campo, será el que se use si es 1  
- Porcentaje IVA del tramo. Si no se usa, 0.

## Campo: precli.re1
TABLA: precli
CAMPO: re1
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 1

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Tener en cuenta que no sabemos que Recargo Equivalencia habrá en este campo, será el que se use si es 1  
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.base2
TABLA: precli
CAMPO: base2
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible2 para el tipo de IVA2 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva2
TABLA: precli
CAMPO: iva2
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA2

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Porcentaje IVA del tramo. Si no se usa, 0.


## Campo: precli.re2
TABLA: precli
CAMPO: re2
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 2

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.base3
TABLA: precli
CAMPO: base3
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible3 para el tipo de IVA3 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva3
TABLA: precli
CAMPO: iva3
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA3

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Porcentaje IVA del tramo. Si no se usa, 0.


## Campo: precli.re3
TABLA: precli
CAMPO: re3
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 3

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.base4
TABLA: precli
CAMPO: base4
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible4 para el tipo de IVA4 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva4
TABLA: precli
CAMPO: iva4
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA4

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Porcentaje IVA del tramo. Si no se usa, 0.


## Campo: precli.re4
TABLA: precli
CAMPO: re4
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 4

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.base5
TABLA: precli
CAMPO: base5
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible5 para el tipo de IVA5 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva5
TABLA: precli
CAMPO: iva5
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA5

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Porcentaje IVA del tramo. Si no se usa, 0.


## Campo: precli.re5
TABLA: precli
CAMPO: re5
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 5

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.base6
TABLA: precli
CAMPO: base6
TIPO: numeric(19,6)

DESCRIPCION:
- Base imponible6 para el tipo de IVA6 que encuentre en el documento

VALORES:

REGLAS:


## Campo: precli.iva6
TABLA: precli
CAMPO: iva6
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje del IVA6

VALORES:
- Según valor campos "datosemp.iva1emp", "datosemp.iva2emp","datosemp.iva3emp","datosemp.iva4emp","datosemp.iva5emp","datosemp.iva6emp"

REGLAS:
- Porcentaje IVA del tramo. Si no se usa, 0.


## Campo: precli.re6
TABLA: precli
CAMPO: re6
TIPO: numeric(4,2)

DESCRIPCION:
- Porcentaje del recargo de equivalencia 6

VALORES:
- Según valor campos "datosemp.rec1emp", "datosemp.rec2emp","datosemp.rec3emp","datosemp.rec4emp","datosemp.rec5emp","datosemp.rec6emp"

REGLAS:
- Porcentaje RE del tramo. Si no aplica, 0.


## Campo: precli.tptsiva
TABLA: precli
CAMPO: tptsiva
TIPO: numeric(19,6)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.tptsre
TABLA: precli
CAMPO: tptsre
TIPO: numeric(19,6)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa1
TABLA: precli
CAMPO: cventa1
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv1
TABLA: precli
CAMPO: impv1
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa2
TABLA: precli
CAMPO: cventa2
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv2
TABLA: precli
CAMPO: impv2
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa3
TABLA: precli
CAMPO: cventa3
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv3
TABLA: precli
CAMPO: impv3
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa4
TABLA: precli
CAMPO: cventa4
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv4
TABLA: precli
CAMPO: impv4
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa5
TABLA: precli
CAMPO: cventa5
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv5
TABLA: precli
CAMPO: impv5
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cventa6
TABLA: precli
CAMPO: cventa6
TIPO: varchar(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.impv6
TABLA: precli
CAMPO: impv6
TIPO: numeric(9)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.netofcli
TABLA: precli
CAMPO: netofcli
TIPO: numeric(19,6)

DESCRIPCION:
- Total del documento sin incluir impuestos

VALORES:

REGLAS:


## Campo: precli.dtoart
TABLA: precli
CAMPO: dtoart
TIPO: varchar(1)

DESCRIPCION:
- Número de descuento que aplica de la ficha del artículo (articu.dto1,articu.dto2,articu.dto3) 

VALORES:
- "0","1","2","3"

REGLAS:
- Se mapea a 0 si es "0"
- Si es "1","2" o "3", se mapea segun el valor de los campos "articu.dto1","articu.dto2","articu.dto3"


## Campo: precli.retencio
TABLA: precli
CAMPO: retencio
TIPO: numeric(4,1)

DESCRIPCION:
- Porcentaje de retención si se aplicara

VALORES:

REGLAS:


## Campo: precli.ptsreten
TABLA: precli
CAMPO: ptsreten
TIPO: numeric(19,6)

DESCRIPCION:
- Importe de la retención de retención si se aplicara

VALORES:

REGLAS:


## Campo: precli.respecia
TABLA: precli
CAMPO: respecia
TIPO: varchar(1)

DESCRIPCION:
- Si la retención es del régimen especial

VALORES:
- "S","N"

REGLAS:


## Campo: precli.modulo
TABLA: precli
CAMPO: modulo
TIPO: varchar(3)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.hora
TABLA: precli
CAMPO: hora
TIPO: varchar(5)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.apartado
TABLA: precli
CAMPO: apartado
TIPO: varchar(1)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.reparto
TABLA: precli
CAMPO: reparto
TIPO: varchar(1)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.fentrega
TABLA: precli
CAMPO: fentrega
TIPO: date

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.nombrer
TABLA: precli
CAMPO: nombrer
TIPO: varchar(50)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.direcr
TABLA: precli
CAMPO: direcr
TIPO: varchar(50)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.poblar
TABLA: precli
CAMPO: poblar
TIPO: varchar(50)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.cifr
TABLA: precli
CAMPO: cifr
TIPO: varchar(12)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.tfnor
TABLA: precli
CAMPO: tfnor
TIPO: varchar(15)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.fechap
TABLA: precli
CAMPO: fechap
TIPO: date

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.horap
TABLA: precli
CAMPO: horap
TIPO: varchar(5)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.textofechap
TABLA: precli
CAMPO: textofechap
TIPO: varchar(100)

DESCRIPCION:

VALORES:

REGLAS:


## Campo: precli.estadofab
TABLA: precli
CAMPO: estadofab
TIPO: varchar(1)

DESCRIPCION:
- Indica si está ocupado fabricando

VALORES:
- ''  = Pendiente de servir
- 'B' = Bloqueado por un usuario fabricando
- 'S' = Fabricado/Servido y Terminado de fabricar

REGLAS:


## Campo: precli.nseriepc
TABLA: precli
CAMPO: nseriepc
TIPO: varchar(50)

DESCRIPCION:
- Número de serie del PC que está utilizando el pedido durante la fabricación. Actúa como bloqueo lógico para indicar que el pedido está siendo fabricado y evitar que otro PC o usuario pueda entrar o modificarlo mientras esté ocupado.  

VALORES:
- Número de serie del PC que lo tiene bloqueado = sirviendo
- '' = NADIE

REGLAS:
-  Si tiene valor, el pedido se considera en fabricación (ocupado). Debe bloquear accesos concurrentes.  
