Post by Jaime Casanovaademas de que el distinct que estas usando parece
una funcion que
aparentemente solo afecta a la primera columna (otra
vez fuera del
estandar, imagino que es similar al distinct on de
postgres)
mi solucion fue poner en el FROM un subquery que
obtenga el substring
y le de el nombre que quieres, el group by es para
evitar que se
repitan los valores. tambien encontre que es mas
eficiente hacer un
join con la misma tabla para obtener la descripcion
en vez de con un
subquery...
viendo el query real que intentas re-escribir veo
que el problema es
mas complejo de lo que habias dicho y por lo tanto
segun veo debes
añadir un subquery mas para el sum... mmm...
Post by Orlando Ramirezy a Alvaro Herrera por el suyo en donde lo mas
saltante es su ironica frase: Que modelo tan
horrible. Lo que no
Post by Orlando Ramirezcomprende Alvaro es que existen estructuras de
datos en donde el usuario lo
Post by Orlando Ramireztiene definido de esa manera y se vienen usando
asi por siglos. En este caso
Post by Orlando Ramirezconcreto, esta es una tabla que contiene un plan
de cuentas contable.
que se haya usado por siglos no lo hace un modelo
*bonito*, de hecho
yo concuerdo con alvaro... el simple hecho de que el
modelo te permita
crear una cuenta detalle sin su respectivo padre (la
cuenta de 8
digitos parece ser el padre de las de mas digitos)
muestra ptimizar
consultas, aun asi necesitas esa consulta con varias
subconsultas que
no me parece muy optimo que digamos... y no digamos
del trabajo de
actualizar esa tabla en cada movimiento contable (el
saldo de la
cuenta detalle y la de sus padres =()
lo siento, pero que la gente haya pensado durante
siglos que el sol
giraba alrededor de la tierra no lo hizo verdad...
del mismo modo que
ese modelo se haya usado (tambien he visto esas
cosas en mi pais) no
lo hace un buen modelo... solo un error muy
replicado...
--
Atentamente,
Jaime Casanova
Saben que estoy leyendo este thread, por que me mande
una critica, no fue lo tecninca que fue esta, pero
despues me decidi a ver que solucion puedo aportar.
Me queda claro lo que decis distinct on debe ser la
solucion, asi como seria distinct row en mssql, el
distinct si asi se usa en sysbase, estoy seguro 99%
seguro que rompe el standard.
Y la verdad que viendo programas contables exitosos,
como Tango de Argentina y Memory de Uruguay,
exportados en Latino America con este fin, y algunos
de la madre patria, de los cuales librerias
prestigiosas como Anaya han publicado mucha
literatura, todos tienen su plan de cuenta organizado
de esta manera.
Y tiene su explicacion que el mismo campo de codigo
del rubro y subrubros del plan de cuenta sean
almacenados en la misma tabla.
Donde la dependencia como en el siguiente plan de
cuentas es de solo un digito por vez, o sea
1 es padre de 11,12,13 a su ves 11 es padre de 111,
112,113, 114, y 12 es es padre de 121, 122,123, 124
y asi sucesivamete segun la necesidad de ampliar este
tree (arbol), El tema es que se puede pedir el saldo
en cualquier nivel del arbol para una rama dada, no
necesariamente de 4 en 4 o de 3 en 3.
Igualmente voy a volver a la fuente del thread, por
que si vi otras cosas que no me gustaron, pero no
precisamente en este punto, te dejo aqui un plan de
cuenta x para que sea este quien detalle mejor el
problema que mi pobre ejemplo.
Atte.
Gabriel Hermes Colina Zambra.
"1","ACTIVO"
"11","DISPONIBILIDADES"
"111","CAJA"
"1111","Caja Moneda Nacional"
"112","BANCOS"
"1121","Bancos Moneda Nacional"
"1122","Bancos M. Extranjera "
"12","EXIGIBLE"
"121","DEUDORES VARIOS"
"1211","Deudores de Plaza"
"1212","Ventas c/tarjeta"
"122","CREDITOS DIVERSOS"
"1221","Cuenta de Socios"
"1222","I.V.A. s/compras 23%"
"1223","I.V.A. s/gastos 23%"
"1224","I.V.A. retenido "
"1225","I.R.I.C. anticipos"
"1226","Anticipos Patrimonio"
"1227","Cofis compras"
"1228","Anticipos Cofis"
"1291","Creditos solicitados"
"1292","Cred.Pasa al prox.ej."
"13","REALIZABLE"
"131","BIENES DE CAMBIO"
"1311","Mercaderias de Reventa"
"14","FIJO"
"141","BIENES DE USO"
"1411","Muebles y Utiles"
"141101","Muebles y utiles"
"141102","Instalaciones"
"141103","Vehiculos"
"1412","Inmuebles"
"1413","Maquinas y Herramient."
"1414","Vehiculos"
"1415","Mejoras e Inm arrend."
"145","AMORTIZ.ACUMULADAS"
"1451","Amort.Ac.Mueb.y Utiles"
"1452","Amort.Ac.Inmuebles"
"1453","Amort.Ac.Maq.y Herram."
"1454","Amort.Ac.Vehiculos"
"1455","Amort.INm arre"
"1461","Otros Activos"
"2","PASIVO"
"21","EXIGIBLE"
"211","DEUDAS COMERCIALES"
"2111","Acreedores Varios"
"2112","Cheques Difereidos"
"2113","cuentas a pagar"
"2114","Acreedores gastos"
"212","DEUDAS FINANCIERAS"
"2121","Prestamos Bancarios"
"2122","Prestamos Mda.Extranj."
"2123","Intereses a Pagar"
"2124","Intereses Mda.Extranj."
"2125","Intereses a Vencer"
"2126","Cheques dif. a vencer"
"213","DEUDAS DIVERSAS"
"2131","B.P.S."
"2132","Cta.Socios-S.Acreed."
"2133","I.V.A. s/ventas 23%"
"2135","D.G.I. - I.V.A."
"2136","Cofis Ventas"
"2137","Cofis Pago"
"3","PATRIMONIO"
"311","CAPITAL"
"3111","Capital Integrado"
"312","AJUSTES AL PATRIMONIO"
"3121","Revaluos Fiscales"
"3122","Revaluos Voluntarios"
"313","RESERVAS"
"3131","Reservas Legales"
"3132","Reservas Voluntarias"
"321","RESULTADOS"
"3211","Result.Ejerc.Anterior."
"3212","Result.del Ejercicio"
"4","INGRESOS"
"411","VENTAS BRUTAS"
"4111","Ventas Tasa Basica"
"421","INGRESOS FINANCIEROS"
"431","OTROS INGRESOS"
"4311","Descuentos Obtenidos"
"5","GASTOS"
"51","COSTO DE LO VENDIDO"
"5101","Compra de Mercaderias"
"52","GASTOS DE PRODUCCION"
"5201","Sueldos y Jornales"
"5202","Cargas Sociales"
"5203","Gastos Generales"
"5204","Rep. y Mantenimiento"
"5205","Gastos de Representac."
"5206","Gastos de Fletes"
"5207","Gastos de Vehiculos"
"5208","Servicios Contratados"
"5209","Papeleria e Imprenta"
"5211","Antel"
"5212","Impuestos"
"5213","Descuentos Concedidos"
"5214","Alquileres"
"5215","Seguros"
"5216","Consumo de Combustible"
"5217","Gastos Comunes Ute"
"5218","Gastos Comunes Sereno"
"5219","Gastos Comunes Limpiez"
"5221","Gastso Comunes Cajera"
"5222","Taxi"
"5223","gastos comunes"
"5224","gasto computacion"
"5225","Gastos central"
"54","GASTOS FINANCIEROS"
"5401","Intereses y Descuentos"
"5402","Diferencias de cambio"
"5403","Gastos de Tarjeta"
"5404","Costo Administrativo"
"5405","Multas y Recargos"
"5407","Gastos Bancarios"
"5408","Cofis no descontado"
"5409","Imp.PAt e Iric"
"5411","Amortizacion"
"55","RESULTADOS"
"5501","Resultados ej-2002"
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
Regístrate ya - http://correo.espanol.yahoo.com/