Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Bases de Datos General (http://www.forosdelweb.com/f21/)
-   -   Normalizacion de tabla (http://www.forosdelweb.com/f21/normalizacion-tabla-344450/)

ane_aaron 24/10/2005 15:01

Normalizacion de tabla
 
Hola tengo esta tabla que pertenece a un sistema de contabilidad:

Código:

idpartida    idcuenta    concepto    debe          haber

1              1        xxxxxxx    5000          0
2              2        xxxxxxx      0            3000
3              3        xxxxxxx      0            2000
4              4        xxxxxxx    1000          0
5              1        xxxxxxx      0            4000



¿Es corecta? o tengo que cambiarla a esta:


Código:

idpartida    idcuenta    concepto    tipo          monto

1              1        xxxxxxx    debe          5000
2              2        xxxxxxx    haber        3000
3              3        xxxxxxx    haber        2000
4              4        xxxxxxx    debe          1000
5              1        xxxxxxx    haber        4000


Linterns 24/10/2005 16:17

voy por la segunda :arriba:

si existe el debe no puede existir el haber y en la primera si puede ser posible

ane_aaron 24/10/2005 16:47

Objecion
 
Por medio de la programacion se puede restringir

Linterns 26/10/2005 12:03

Cita:

Iniciado por ane_aaron
Por medio de la programacion se puede restringir

Si la puedes restringir pero que pasa con los datos que son introducidos a traves de un query o por transacciones de importacion? lo mejor es como te he dicho :-)

ane_aaron 27/10/2005 09:14

El que sabe sabe
 
Ni hablar gracias ya lo modifique.

ane_aaron 27/10/2005 09:21

Oye, que opinas de esta otra tabla:

Cita:

Iniciado por ane_aaron
Gracias, no sabia ni por donde entarle, porfa checa esto y denme tu opinion (cambie algunos nombres para hacerlo mas generico) a ver si capte tu idea:

1. Para el numero de cuenta se concatenarian los niveles: 21000000 Terrenos,¿Sera necesario almacenarlo como un campo?
2. El campo ultimo_nivel indica que la cuenta puede ser incluida en las partidas: 1 puede incluirse. 0 no puede incluirse, es una cuenta que agrupa a otras.
3. Las consultas las veo medio dificiles con esta estructura.
Código:

+----------+---------+---------+---------+---------+----------------------------------------------------+--------------+
| idcuenta | nivel_1 | nivel_2 | nivel_3 | nivel_4 | nombre                                            | ultimo_nivel |
+----------+---------+---------+---------+---------+----------------------------------------------------+--------------+
|        1 | 11      | 00      | 00      | 00      | Caja y Banco                                      |            0 |
|        2 | 11      | 01      | 00      | 00      | Efectivo                                          |            1 |
|        3 | 11      | 02      | 00      | 00      | Caja chica                                        |            1 |
|        4 | 11      | 03      | 00      | 00      | Bancos                                            |            0 |
|        5 | 11      | 03      | 01      | 00      | Banco de Reservas                                  |            1 |
|        6 | 11      | 03      | 02      | 00      | Banco Popular                                      |            1 |
|        7 | 11      | 03      | 03      | 00      | Banco del Comercio                                |            1 |
|        8 | 12      | 00      | 00      | 00      | Cuentas por Cobrar                                |            0 |
|        9 | 12      | 01      | 00      | 00      | Cuentas por cobrar clientes                        |            1 |
|      10 | 12      | 02      | 00      | 00      | Cuentas por cobrar funcionarios y empleados        |            1 |
|      11 | 12      | 03      | 00      | 00      | Otras cuentas por cobrar                          |            1 |
|      12 | 12R    | 00      | 00      | 00      | Reservas para cuentas incobrables                  |            1 |
|      13 | 13      | 00      | 00      | 00      | Inventarios                                        |            0 |
|      14 | 13      | 01      | 00      | 00      | Mercanc�s                                          |            1 |
|      15 | 13      | 02      | 00      | 00      | Materia prima                                      |            1 |
|      16 | 13      | 03      | 00      | 00      | Productos en proceso                              |            1 |
|      17 | 13      | 04      | 00      | 00      | Productos terminados                              |            1 |
|      18 | 21      | 00      | 00      | 00      | Terrenos                                          |            1 |


La estructure asi porque lascuentas tienen una relacion con si mismas. Agunas agrupan a otras y solo algunas se consideran de ultimo nivel. Deberia hacer Cuatro tablas, una para cada nivel?
nota: no todas las cuentas tienen el mismo nivel de agrupacion

Linterns 27/10/2005 14:03

pues te recomendaria una estructura mas o menos asi

TABLA
-------
cuenta (identificador unico, numero de cuenta)
Nombre (descripcion)
Nivel (nivel al que pertenece)
bandera (Bandera para determinar si es de detalle o de resumen)
Padre (numero de cuenta padre si es que tiene)


La zona horaria es GMT -6. Ahora son las 08:48.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.