Personal tools
You are here: Home Productos Mini Gestión Linux/Windows Tablas y campos propuestos
Document Actions

Tablas y campos propuestos

by admin last modified 2005-08-11 11:11

General

Todas las tablas podrían tener:

usuarioCreado
nombre de usuario que lo ha creado
momentoCreado
fecha/hora cuando se ha creado
usuarioModificado
nombre usuario última modificación
momentoModificado
fecha / hora última modificación

Son algunos de los campos que utiliza Dublin Core de Zope/CMF. Más adelante puede estuadiarse llevar un seguimiento más exhaustivo, por ejemplo, mediante triggers, o si sería mejor usar un analizador de LOGs para postgresql

Tabla "PAF": Presupuestos / Pedidos / Albaranes / Facturas / Facturas proformas, etc.

PAFId
(primary key. Tipo serial o mejor con nuestro propio nº hi_id-low_id): campo interno que se usa para enlazar esta tabla con PAFLineas
Tipo
Indica si es presupuesto, pedido, albarán, factura, etc.
Numero
Identificador/Referencia para los usuarios. Suele ser un nº único, dentro del mismo TD, así que se puede establer una restricción de unicidad entre los campos TipoDocumento+NumeroDocumento. En SICE se ha utilizado el esquema '[empresa+][Serie-]año/número', siendo año de 4 dígitos (podría pasarse a 2) y un número de longitud fija (ej, 00001), pero parametrizable para cada tipo de documento. En las búsquedas se permiten abreviaturas por comodidad del usuario (ej. al buscar un nº automáticamente busca añoActual/numeroExpandidoA5Digitos)
PersonaId
cliente, proveedor, etc. queda por determinar si es un nº interno o identificador del usuario para las personas. En general, los usuarios se adaptan al sistema de información. Históricamente, tenían tablas diferentes para clientes y proveedores, con lo que tenían contadores/identificadores diferentes. Los usuarios suelen memorizar una veintena de códigos de los clientes más frecuentes, los demás lo buscan por nombre. Inicialmente, recomendaría el uso de la clave interna, con una vista definida en la BD para que sea más fácil localizar los clientes, y una buena pantalla de selección.
Fecha
fecha del documento, que no es la misma de la fecha de creación.
Estado
estado actual del documento. Depende del TipoDocumento. No tengo tan claro cómo tratar / almacenarlo. El estado representa hasta qué punto el documento ha sido procesado hacia su próximo paso. En caso de Pedidos: no servido, parc. servido, servido, cancelado, terminado. Si se permite facturar pedido, realmente haría falta otro estado. O se usan estados diferentes, o se usa un array de estados, o se puede usar un campo de texto genérico que se rellena con una lista de tipo diccionario o algo parecido. El ciclo de los documentos y estados se deriva del modelo workflow. Dibujar el workflow puede ayudar al comprender esta parte.
DireccionDestino
(domicilio, C.P., Munipio, Provincia, Pais): es interesante que se copie del cliente al documento, porque así es más fácil modificarlo o personalizarlo. En la pantalla tendrá que existir una mandera fácil de elegir la dirección del cliente.
FormaEnvio
un valor sacado de una lista de valores. Más adelante, puede a lo mejor definirse si va a portes debidos / pagados, agencia transporte, etc.
FormaPago
un valor sacado de una lista de valores. Indica cómo han de crearse los cobros asociados al documento. Más adelante se asocia a una tabla que indica cómo han de crearse los cobros/pagos (fechas emisión / vencimientos e importes)
ImporteBruto
suma importes líneas sin aplicar impuestos
ImporteImpuestos
suma de los importes de los impuestos en las líneas
ImporteTotal
ImporteBruto+ImporteImpuestos
ImportePagado
Importe cobrado o pagado hasta el momento.

PAFLineas

PAFLineaId
(primary key, lo mismo que antes respecto high_id, low_id) sirve para identificar internamente la línea.
PAFId
(llave externa a PAF.Id)
ArticuloId
(llave externa a Productos.Id)
Linea
numero de la linea, util para ordenaciones personalizadas
DescripcionAdicional
en Sice encontramos la necesidad de permitir que los usarios puedan poner datos / comentarios adicionales a los artículos. En la pantalla y los impresos han de visualizarse ambos. En nuestras instalaciones suele haber algún artículo que no tiene nombre con lo que sólo se visualizaría esta descripción. Otra posibilidad sería la de copiar la descripción del artículo cada vez. Aunque más flexible, puede complicar el tratamiento posterior y ocupa mucho más espacio.
Referencia
para determinadas aplicaciones, es bueno, permitir una segunda referencia para poder distinguir artículos del mismo tipo, pero que tengan acabados diferentes. Mientras que el código del artículo es un dato que la empresa establece, la referencia se estable el cliente o nostros junto con el él.
Unidades
Nº de unidades del artículo indicado. No es el nº usado para calcular el importe total de la línea.
Peso
el peso en kilos de la mercancía. puede servir tanto para transporte o para calcular el importe
Bultos
usado en transporte
Precio
precio por unidad ("veáse PAFLineas v2":#PAFLineasV2)
Descuento
% dcto
ImporteDescuento
importe del dcto
ImporteImpuestos
importe de los impuestos, normalmente IVA
PorcentajeImpuesto
porcentaje de impuesto de este articulo
ImporteBruto
el importe de la línea sin aplicar descuentos o Impuestos. Normalmente es Unidades*Precio ("veáse PAFLineas v2":#PAFLineasV2)
ImporteTotal
importe neto, todos los datos aplicados.

Valores predefinidos:

En la tabla PAF hay valores que se repiten continuamente y se toman de una conjunto previamente establecido. Ejemplos son Series, Estado, Forma de Pago y Forma de Envio. Tambien el campo RegimenImpuesto de la tabla Persona (ver mas adelante)

Aqui tenemos dos tablas. En la principal se indican los campos para los que se van a establecer valores y en la segunda vienen especificados los valores en si.

Definidos:

Campo
nombre del campo que tendra estos valores
Descripcion
descripcion que se muestra al usuario en la pantalla de modificacion de definidos.

DefinidosValores:

Campo
nombre del campo (enlaza con Definidos)
Valor
posible valor que puede tomar este campo
Orden
el orden en el que le aparece al usuario

Tipos de Documentos

Por otro lado tenemos otra tabla para especificar los tipos de documentos.

Nombre
nombre de este documento
Descripcion
descripcion

PAFLineas v2:

Medidas
dependen del artículo. Algunos artículos se miden en longitud, otros en peso, alto y ancho, largo, grosor, etc. O se opta por poner campos fijos, o se usa un array o algo parecido. En este caso, sería bueno tener una consulta (vista) con todos los datos ya traducidos (kilos, alto, ancho, largo, etc.) Se usan habitualmente para calcular la CantidadFacturable.
CantidadFacturable
en caso normal = Unidades, pero en caso que el precio por metro, metro cuadrado, etc. este dato se calcula a partir de las medidas. No queda claro si es más interesante poner CantidadFacturable por Unidad, o ya multiplicado por las unidades. La fórmula que indica cómo se calcula está indicada en el artículo.
FormulaCantidadFacturable
fórmula para calcular la CantidadFacturable a partir de las medidas
FormulaPrecio
fórmula para calcular el precio a partir de las medidas u otro acabdo.
FormulaImporte
fórmula para calcular el importe, normalmente: CantidadFacturable*PrecioTarifa

Personas:

PersonaId
codigo autonumerico
Nombre
nombre y apellidos
NIF
numero de identificacion fiscal
RegimenImpuesto
Exento, normal, intracomunitario

PersonasDirecciones:

DireccionId
codigo autonumerico interno
PersonaId
codigo que enlaza con Personas
Orden
sirve para ordenar varias direcciones de una persona (la primera suele ser la direccion predeterminada)
Domicilio
trivial
Poblacion
trivial
Provincia
trivial
CodigoPostal
trivial
Pais
trivial
Telefono
trivial
EMail
trivial
Notas
para lo que no encaje en ninguno de los campos anteriores

Articulos:

ArticuloId
autonumerico interno
Referencia
codigo para el usuario
Nombre
nombre del articulo
Descripcion
descripcion del articulo
PrecioCompra
trivial
PrecioVenta
trivial
TipoImpuestoCompra
trivial
TipoImpuestoVenta
trivial

Powered by Plone, the Open Source Content Management System

This site conforms to the following standards: