OT - Modelo de manejo de correlativos

363 views
Skip to first unread message

Luis Mata

unread,
Sep 21, 2011, 12:36:11 PM9/21/11
to publice...@googlegroups.com
Buen dia
 
Me gustaria que me ayuden con sus experiencias, me gustaria saber como manejan sus correlativo, osea el formato usado para cada documento interno; como ingresos, salidas, OC, despachos.. ETC...
Con los documentos legales(FAC, BOL, GUIA. N/C Y N/D).
- Como tiene sus campos en tipo numerico carcater
- para documentos internos usan este formato: 2011-00100 o es solo un numero correlativo del 1 al N...
 
Lo consulto por el tema de relaciones dentro de una BD, por lo que estos exigen que los tipos de datos sean idénticos para poder relacionarlos. Mi problema surgio en el proceso de emision de guia:
 
Donde cada GUIA referencia a una factura o boleta que es tipodoc+numdoc(Int) hasta aquí muy bien, pero cuando surge el problema que una guía debe también referenciar a un requerimiento interno que tiene formato :tipodoc + 2011-00001(char), aquí truena..
 
Experiencias por favor...


logo2 Mata Figueroa, Luis A.
Procesos, Tecnología de la Información y telecomunicaciones
TELF: (00 51 1) 617-4613
RPC : (00 51) 993597297
FAX : (00 51 1) 617-4601
lm...@cclf.com.pe
www.cclf.com.pe
imgfrm siguenos-fb

logo2[1].png
imgfrm[1].png
siguenos-fb[1].gif
Message has been deleted

Marco Plaza

unread,
Sep 21, 2011, 3:23:47 PM9/21/11
to Comunidad de Visual Foxpro en Español
Hola Luis, añadir la columna número de guia al requerimiento interno
no te resuelve?


Marco Plaza


On Sep 21, 12:36 pm, "Luis Mata" <lm...@cclf.com.pe> wrote:
> Buen dia
>
> Me gustaria que me ayuden con sus experiencias, me gustaria saber como manejan sus correlativo, osea el formato usado para cada documento interno; como ingresos, salidas, OC, despachos.. ETC...
> Con los documentos legales(FAC, BOL, GUIA. N/C Y N/D).
> - Como tiene sus campos en tipo numerico carcater
> - para documentos internos usan este formato: 2011-00100 o es solo un numero correlativo del 1 al N...
>
> Lo consulto por el tema de relaciones dentro de una BD, por lo que estos exigen que los tipos de datos sean idénticos para poder relacionarlos. Mi problema surgio en el proceso de emision de guia:
>
> Donde cada GUIA referencia a una factura o boleta que es tipodoc+numdoc(Int) hasta aquí muy bien, pero cuando surge el problema que una guía debe también referenciar a un requerimiento interno que tiene formato :tipodoc + 2011-00001(char), aquí truena..
>
> Experiencias por favor...
>
> --------------------------------------------------------------------------------
>
>         Mata Figueroa, Luis A.
>       Procesos, Tecnología de la Información y telecomunicaciones
>       TELF: (00 51 1) 617-4613
>       RPC : (00 51) 993597297
>       FAX : (00 51 1) 617-4601
>       lm...@cclf.com.pe
>      www.cclf.com.pe 
>
>  logo2[1].png
> 16KViewDownload
>
>  imgfrm[1].png
> 59KViewDownload
>
>  siguenos-fb[1].gif
> 2KViewDownload

mpulla

unread,
Sep 21, 2011, 3:39:53 PM9/21/11
to Comunidad de Visual Foxpro en Español
Hola Luis

En lo personal no me gusta relacionar tablas con la combinacion de
varios campor por lo que creo llaves artificiales, es decir campos
autonumericos por tabla y relacionarlos por estos, asi evito estos
problemas.

Saludos.
Mauricio.

Marco Plaza

unread,
Sep 21, 2011, 3:43:16 PM9/21/11
to Comunidad de Visual Foxpro en Español
es verdad la tendencia es incluso usar GUIDs.. te facilitaría también
trabajar desconectado.

Saludos.

Marco Plaza

Luis Mata

unread,
Sep 21, 2011, 10:00:53 PM9/21/11
to Comunidad de Visual Foxpro en Español
lo que sucede es que si quieres tener un sistema multiempresa, multisucursal, mutialmacenes y manejar un correlativo de documentos para cada uno, si o si debes de tener PK compuestos.
Codtie+tdoc+numdoc mínimo.
lo que sucede es que surge un problema  a la hora de generar la guía de remisión, por integridad de datos cada guía debe de tener una referencia que debe de ser un documentos de venta(Fac o Bol) de uno a uno, hasta ahí todo bien y asegurado.
pero que sucede cuando se debe de hacer una guía de transporte entre sucursales o sea interno donde no hay transacción de por medio, Aquí se rompe la integridad, porque los productos salen y se descargan del almacén mediante una documento de salida interna. Y la tabla guie tendría referencia a transacciones de ventas y a la misma vez a las Salidas internas.. difícil si o no?
Aquí o rompes la integridad referencial y pones en riesgo tus datos en tu base de datos ò busca la solución, para eso nos pagan si o no?
Si rompes la integridad pasaría lo siguiente:
- Se puede anular una facture donde ya se a emitido una guía de salida de mercadería... muy riesgoso
 
Solución
image
dos series para emision de guias de remission(uno para ventas y otro para Notas de salidas) y una entidad adicional, con esto proteges la integridad de tus datos, tus procesos, los documentos y los intereses del empresario.
algunos pueden decir que sale caro, pero mas caro es cuando es posible las estafas sistemáticas,
 
 
 
 
-----Original Message-----
From: Marco Plaza
Sent: Wednesday, September 21, 2011 2:21 PM
To: Comunidad de Visual Foxpro en Español
Subject: [vfp] Re: OT - Modelo de manejo de correlativos
 
Hola Luis, no te sirve añadir el campo de la llave foránea?
 
On Sep 21, 12:36 pm, "Luis Mata" <lm...@cclf.com.pe> wrote:
> Buen dia
>
> Me gustaria que me ayuden con sus experiencias, me gustaria saber como manejan sus correlativo, osea el formato usado para cada documento interno; como ingresos, salidas, OC, despachos.. ETC...
> Con los documentos legales(FAC, BOL, GUIA. N/C Y N/D).
> - Como tiene sus campos en tipo numerico carcater
> - para documentos internos usan este formato: 2011-00100 o es solo un numero correlativo del 1 al N...
>
> Lo consulto por el tema de relaciones dentro de una BD, por lo que estos exigen que los tipos de datos sean idénticos para poder relacionarlos. Mi problema surgio en el proceso de emision de guia:
>
> Donde cada GUIA referencia a una factura o boleta que es tipodoc+numdoc(Int) hasta aquí muy bien, pero cuando surge el problema que una guía debe también referenciar a un requerimiento interno que tiene formato :tipodoc + 2011-00001(char), aquí truena..
>
> Experiencias por favor...
>
> --------------------------------------------------------------------------------
>
>         Mata Figueroa, Luis A.
>       Procesos, Tecnología de la Información y telecomunicaciones
>       TELF: (00 51 1) 617-4613
>       RPC : (00 51) 993597297
>       FAX : (00 51 1) 617-4601
>       lm...@cclf.com.pe
>      www.cclf.com.pe
>
image[1].png

mpulla

unread,
Sep 22, 2011, 9:06:43 AM9/22/11
to Comunidad de Visual Foxpro en Español
Hola Luis.

Unir como mimo estos campos para tener una llave unica para manejarete
como dices esta bien, pero puedes crear llaves artificiales para hacer
mas simple la relacion en entre tus tablas, anexa un campo
autonumerico a a factura y un campo entero a guias y relacionales,
luego las consultas prodrian seguir siendo por los campos que tienes,
pero para mi seria mejor hacer las joins por los nuevos campos, en
cuanto a la integridad referenciales seria por los nuevos campos.

Saludos.
Mauricio.






On 21 sep, 21:00, "Luis Mata" <lm...@cclf.com.pe> wrote:
> lo que sucede es que si quieres tener un sistema multiempresa, multisucursal, mutialmacenes y manejar un correlativo de documentos para cada uno, si o si debes de tener PK compuestos.
> Codtie+tdoc+numdoc mínimo.
> lo que sucede es que surge un problema  a la hora de generar la guía de remisión, por integridad de datos cada guía debe de tener una referencia que debe de ser un documentos de venta(Fac o Bol) de uno a uno, hasta ahí todo bien y asegurado.
> pero que sucede cuando se debe de hacer una guía de transporte entre sucursales o sea interno donde no hay transacción de por medio, Aquí se rompe la integridad, porque los productos salen y se descargan del almacén mediante una documento de salida interna. Y la tabla guie tendría referencia a transacciones de ventas y a la misma vez a las Salidas internas.. difícil si o no?
> Aquí o rompes la integridad referencial y pones en riesgo tus datos en tu base de datos ò busca la solución, para eso nos pagan si o no?
> Si rompes la integridad pasaría lo siguiente:
> - Se puede anular una facture donde ya se a emitido una guía de salida de mercadería... muy riesgoso
>
> Solución
>
>  image[1].png
> 49 KVerDescargar

elkin dario uribe torres

unread,
Sep 22, 2011, 9:27:51 AM9/22/11
to publice...@googlegroups.com
Luis no se si te entendi lo que buscas, pero para el caso de traslados de mercancia entre sucursales lo que manejo son dos tipos de movimientos diferentes por ejemplo para el caso de inventarios los que manejo son estos:

10 Compras de mercancia
20 Devoluciones en ventas
30 Entradas especiales (traslados de mercancia entre sucursales)
40 Ajustes de inventario
50 Ventas de mercancia
60 Devoluciones al proveedor
70 Salidas especiales (traslados de mercancia entre sucursales)
80 Guias de despacho (ventas)

Como puedes ver cada que se utiliza un tipo 70 se verifica que en la otra sucursal (o destino) se encuentre la transaccion de entrada osea tipo 30, lo cual implica que no quedaria coja o estarian rebajando el inventario.  Teniendo en cuenta que cada tipo de transaccion tiene un correlativo o consecutivo diferente dado para cada uno como son Prefijo (5 caracteres) y numero (15 caracteres), por lo tanto el prefijo es diferente para cada sucursal.

Saludos


Elkin Uribe
image[1].png

Luis Mata

unread,
Sep 22, 2011, 10:19:13 AM9/22/11
to publice...@googlegroups.com
Así es, pero a lo que voy es específicamente en la Guía de Transporte, y el dilema viene en las relaciones de SQLServer y la integridad referencial entre sus datos.
 
Ejm:
Relacion
Codtie+tdoc+numerotrans –> codtie+tdoc+numeroguia([Referencia]Codtie+tdoc+numerotrans)
Aquí solo intervienen dos tablas Tab_Cab_Trans y Tab_Cab_Guia, de esa forma se respeta que la referencia si o si y no puede haber un vacío en los campos NumeroTrans.
 
Pero que hay si también se hace guía con Ordenes de Salida es otra tabla Tab_cab_Salidas de relacionar si te permite hacerlo, pero rompiendo la integridad referencial de la relación entre tablas.
 
Lo que trato de hacer es que cada documento GUIA tenga un documento que lo sustente y que ninguno se haga si no tiene esa referencia.
 
Ya que las empresas informales, hacen guías manuales, se saltan los correlativos, al final existen sospechas de que se están robando la mercadería.
 
Y como yo soy bien pegado a NO AUTOMATIZAR EL DESORDEN sino sugerir modificaciones de procesos y políticas que den la tranquilidad del caso y las auditorias sean mucho mas fáciles y eficientes, me meto en este tipo de lios .. jajajaja.
 
El que desea puede hacer el pequeño diseño de abajo y trate de insertar datos que no este referenciados en la primera tabla, imposible no se puede... esa es la idea


logo2
Mata Figueroa, Luis A.
Procesos, Tecnología de la Información y telecomunicaciones
TELF: (00 51 1) 617-4613
RPC : (00 51) 993597297
FAX : (00 51 1) 617-4601
lm...@cclf.com.pe
www.cclf.com.pe
imgfrm siguenos-fb

logo2[3].png
imgfrm[3].png
siguenos-fb[3].gif
image[1].png

Luis Mata

unread,
Sep 22, 2011, 10:21:32 AM9/22/11
to Comunidad de Visual Foxpro en Español
Hola
 
No se puede colocar un auto numérico ya que las facturas, guías..etc. tiene serie 103, 002, 001, 204...etc mas el correlativo de cada uno
 


logo2
Mata Figueroa, Luis A.
Procesos, Tecnología de la Información y telecomunicaciones
TELF: (00 51 1) 617-4613
RPC : (00 51) 993597297
FAX : (00 51 1) 617-4601
lm...@cclf.com.pe
www.cclf.com.pe
imgfrm siguenos-fb

logo2[3].png
imgfrm[3].png
siguenos-fb[3].gif

Miguel Antúnez

unread,
Sep 22, 2011, 10:46:05 AM9/22/11
to publice...@googlegroups.com
En lo personal lo manejo de la siguiente forma:
una tabla de puntos de venta (sucursales)
donde manejo la serie de los documentos y el correlativo de los documentos (factura,boleta, guía,etc.)
en la tabla de ventas(facturas,boletas)
el  Primary Key  es tipo identity(1,1). 
un indice único del campo documento generado ejemplo (FC00200004554) las 2 primeras tipo de documento, las 3 siguientes  serie de sucursal, e el restante el correlativo del documento.

así mis relaciones entre tablas no se hacen tan engorrosas manejando claves compuestas.

Saludos. 
--
Miguel Angel Antúnez Camones
Especialista en SQL Server

mant...@frenosa.com.pe
mant...@gmail.com
miguel_...@msn.com
Cel. 997914428

Microsoft Active Professional
Membresía FY11-4D8A908D4C470
siguenos-fb[3].gif
logo2[3].png
imgfrm[3].png

mpulla

unread,
Sep 22, 2011, 11:01:22 AM9/22/11
to Comunidad de Visual Foxpro en Español
Hola Luis.

El poner un autonumerico a tus tablas no va a alterar en nada tu forma
de llevar tus facturas y guias.

En mi caso tengo

Aqui tengo una llave compuesta que hace unico a mi registro No. Serie
+ Punto de venta + Correlativo y mi campo para integridad referencial
es el campo autonumerico que tambien es unico.


Factura.
iFacturaId (autonumerico)
No. Serie
Punto de venta
Correlativo
"
"

FacturaDetalle
iFDetalle (autonumerico)
iFacturaId
iItem
nCantidad
"
"

La relacion entre las tablas es
Factura.iFacturaId = FacturaDetalle.iFacturaId

si fuera una llave compuesta seria algo asi
Factura.cSerie= FacturaDetalle.cSerie And Factura.iPuntoVta =
FacturaDetalle.iPuntoVta And Factura.cNo = FacturaDetalle.cNo

En mis estructura de db esto me evita tener que relacionar por llaves
compuestas, que no estan mal, pero en lo personal no me gustan y trato
de evitarlas en lo posible.

Saludos.
Mauricio

Luis Mata

unread,
Sep 22, 2011, 11:03:12 AM9/22/11
to Comunidad de Visual Foxpro en Español
Ok, Gracias.
 


logo2 Mata Figueroa, Luis A.
Procesos, Tecnología de la Información y telecomunicaciones
TELF: (00 51 1) 617-4613
RPC : (00 51) 993597297
FAX : (00 51 1) 617-4601
lm...@cclf.com.pe
www.cclf.com.pe
imgfrm siguenos-fb

 
From: mpulla
Sent: Thursday, September 22, 2011 10:01 AM
Subject: [vfp] Re: OT - Modelo de manejo de correlativos
 
logo2[3].png
imgfrm[3].png
siguenos-fb[3].gif
Reply all
Reply to author
Forward
0 new messages