Ayuda sobre esquema de contabilizacion de transaciones

08/10/2004 - 13:46 por Rossy P | Informe spam
Hola. Un cliente me pide lo siguiente:

El sistema de gestion tiene varios tipos de transacciones contables:
factura, cheque, recibo de cobro, nota de debito, deposito, entrada de
diario, etc., etc.

Ojo: cuando menciono transacciones aqui me refiero a transacciones contables
(o documentos contables) para no confundir con el concepto "transaccion" de
sql server

Como es logico yo tengo una tabla separada para cada tipo de transaccion o a
lo mas dos o tres tipos relacionados en la misma tabla. Por ej. una tabla de
transacciones bancarias, otra de transacciones de clientes, el asunto es que
son varias tablas para alojar los encabezados de estas transacciones. El
quiere que cada transaccion registrada genere en linea a la contabilidad su
codificacion contable transaccion por transaccion (no en resumen, como
acostumbramos). Veo como un poco complicado esto de tener una tabla
adicional de detalle para cada tabla de transacciones donde guardar la
codificacion contable de cada transaccion. Por que ? porque los resumenes y
consultas se harian de muchisimas tablas (muchos joins). Incluso para
arrojar los movimientos de una cuenta en un periodo de tiempo (mayor
auxiliar) tendria que buscar en distintas tablas porque la misma cuenta
puede estar referenciada un diversos tipos de documentos , en su
codificacion contable..

Por otro lado si decido tener una sola tabla para incluir todos los tipos de
transacciones en la misma para poder tener una sola de detalles para las
cuentas de cada transaccion, tengo la duda de si no haria que crezcan
demasiado dichas tablas produciendo lentitud en el acceso para los reportes.

A lo mejor lo estoy enfocando mal espero me puedan dar alguna idea que hagan
mas practica la programacion de este esquema y que no provoque una baja
sensible de la velocidad porque las tablas sean demasiado grandes.

Cualquier ayuda sera bienvenida porque me tiene la cabeza confundida y el
cliente me esta presionando (ya saben lo que eso significa no ? :).

Rossy Perez
 

Leer las respuestas

#1 Maxi
08/10/2004 - 14:11 | Informe spam
Hola, mira, hay veces que por diseño no se puede poner todo en una sola
tabla, tambien es cierto que poner todo en una sola tabla tiene sus
problemitas, por ej: entendimiento del contenido!!

Si tienes muchas tablas y estan muy bien definido los indices, no deberias
terner problemas de performance!!

Una alternativa podria ser:

Crearte una vista indexada con los Join y consultar esta vista!! este tipo
de tecnicas suelen ser muy eficientes


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Rossy P" escribió en el mensaje
news:
Hola. Un cliente me pide lo siguiente:

El sistema de gestion tiene varios tipos de transacciones contables:
factura, cheque, recibo de cobro, nota de debito, deposito, entrada de
diario, etc., etc.

Ojo: cuando menciono transacciones aqui me refiero a transacciones


contables
(o documentos contables) para no confundir con el concepto "transaccion"


de
sql server

Como es logico yo tengo una tabla separada para cada tipo de transaccion o


a
lo mas dos o tres tipos relacionados en la misma tabla. Por ej. una tabla


de
transacciones bancarias, otra de transacciones de clientes, el asunto es


que
son varias tablas para alojar los encabezados de estas transacciones. El
quiere que cada transaccion registrada genere en linea a la contabilidad


su
codificacion contable transaccion por transaccion (no en resumen, como
acostumbramos). Veo como un poco complicado esto de tener una tabla
adicional de detalle para cada tabla de transacciones donde guardar la
codificacion contable de cada transaccion. Por que ? porque los resumenes


y
consultas se harian de muchisimas tablas (muchos joins). Incluso para
arrojar los movimientos de una cuenta en un periodo de tiempo (mayor
auxiliar) tendria que buscar en distintas tablas porque la misma cuenta
puede estar referenciada un diversos tipos de documentos , en su
codificacion contable..

Por otro lado si decido tener una sola tabla para incluir todos los tipos


de
transacciones en la misma para poder tener una sola de detalles para las
cuentas de cada transaccion, tengo la duda de si no haria que crezcan
demasiado dichas tablas produciendo lentitud en el acceso para los


reportes.

A lo mejor lo estoy enfocando mal espero me puedan dar alguna idea que


hagan
mas practica la programacion de este esquema y que no provoque una baja
sensible de la velocidad porque las tablas sean demasiado grandes.

Cualquier ayuda sera bienvenida porque me tiene la cabeza confundida y el
cliente me esta presionando (ya saben lo que eso significa no ? :).

Rossy Perez







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.772 / Virus Database: 519 - Release Date: 01/10/2004

Preguntas similares