Ver Mensaje Individual
  #108  
Antiguo 07-07-2013
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Reputación: 23
José Luis Garcí Va camino a la fama
ahora la tabla detalle

Cita:
CREATE TABLE DETALLE (
ID INTEGER NOT NULL,
IDENTIFICADOR INTEGER NOT NULL, //............................................. FOREIGN KEY con el id de documentos
TIPODOCUMENTO T20 NOT NULL /* T20 = VARCHAR(20) */, //............................................. tipo de documento (XPAF)
NUMERODOCUMENTO T20 NOT NULL /* T20 = VARCHAR(20) */, //............................................. código del documento (XPAF)
SERIE T3 NOT NULL /* T3 = VARCHAR(3) */, //............................................. Serie del documento (XPAF)
CODIGOARTICULO T20 NOT NULL /* T20 = VARCHAR(20) */, //............................................. Código del artículo (XPAF)
DESCRIPCIONARTICULO T80 /* T80 = VARCHAR(80) */, //............................................. 1 (ver en post anterior) (XPAF)
CANTIDAD INTEGER NOT NULL, //............................................. Cantidad o unidades del artículo (XPAF)
PRECIOUNIDAD POR NOT NULL /* POR = NUMERIC(15,4) */, //............................................. Precio de la unidad (XPAF)
IMPUESTO POR NOT NULL /* POR = NUMERIC(15,4) */, //............................................. Porcentaje del impuesto (XPAF)
DESCUENTO POR NOT NULL /* POR = NUMERIC(15,4) */, //............................................. Porcentaje del descuento (XPAF)
COMISION POR NOT NULL /* POR = NUMERIC(15,4) */, //............................................. Porcentaje de la comisión (XPAF)
PESOUNIDAD POR /* POR = NUMERIC(15,4) */, //............................................. peso de cada unidad (XPAF)
MININOTA VARCHAR(150), //............................................. Campo texto de 150 caracteres, para ampliar detalles (XPAF)
CAMPOLIBRE T80 /* T80 = VARCHAR(80) */, //............................................. Campo libre ya que la ley va cambiando o podemos necesitar (XPAF)
MODIFICADO INTEGER NOT NULL, //............................................. Número de veces que se ha modificado (XPAF)
SERVICIO LOG /* LOG = CHAR(1) */, //............................................. Es un servicio (XPAF)
IDPRECIOESPECIAL INTEGER, //............................................. Número del ID, si el precio tomado es precio especial para el cliente (1) (XPAF)
ALMACEN T20 /* T20 = VARCHAR(20) */, //............................................. Almacén del que sale la mercancía (XPAF)
NUMEROPRESUPUESTO T20 /* T20 = VARCHAR(20) */, //............................................. Número (Código) del presupuesto que viene (2) (PAF)
NUMEROPEDIDO T20 /* T20 = VARCHAR(20) */, //............................................. Número (Código) del pedido que viene (2) (AF)
FECHAPEDIDO DATE, //............................................. Fecha del pedido del que viene (2) (AF)
NUMEROALABARAN T20 /* T20 = VARCHAR(20) */, //............................................. Número (Código) del albarán que viene (2) (A)
FECHAALBARAN T20 /* T20 = VARCHAR(20) */ //............................................. Fecha del albarán del que viene (2) (A)
);

/******************************************************************************/
/* Foreign Keys */
/******************************************************************************/

// ALTER TABLE DETALLE ADD CONSTRAINT FK_DETALLE_1 FOREIGN KEY (IDENTIFICADOR) REFERENCES DOCUMENTOS (ID) ON DELETE CASCADE ON UPDATE CASCADE;
1) si tiene precio especial, no le afecta ni rapel, ni otros

2) El cliente normalmente quiere que en el documento de unión (albarán o factura) aparezca reflejado por documentos para el poder revisarlos y comprobar, por ello debemos crear un registro que
especifique según sea el caso de manera que si es un albarán sería 'Pedido 120001 fecha 07/072012' y si fuera una factura sería 'Albarán 120025 fecha 30/07/2012', detallando despues de
cada linea del pedido o albarán.
Este no sería el caso si el cliente tiene un rapel o escandallo con cierre final, ya que para ello debemos unir todos los campos con el mismo código de articulo, para obtener la cantidad de
unidades y ver que precio se le asigna, por lo que el precio del albarán o de la factura difieren, pero aún así debemos registrar de que albaranes o pedido bien, pero lo haríamos al pie del
documento dentro de sus notas.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita