Re: Como convertir los SELECT que usan AS en otros manejadores a Postrgres

From: Gabriel Hermes Colina Zambra <hermeszambra(at)yahoo(dot)com>
To: Jaime Casanova <systemguards(at)gmail(dot)com>, Orlando Ramirez <orlan2_r(at)yahoo(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Como convertir los SELECT que usan AS en otros manejadores a Postrgres
Date: 2007-05-13 15:48:36
Message-ID: 237254.82235.qm@web63705.mail.re1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

> ademas 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...
>
> > y a Alvaro Herrera por el suyo en donde lo mas
> saltante es su ironica frase: Que modelo tan
> horrible. Lo que no
> > comprende Alvaro es que existen estructuras de
> datos en donde el usuario lo
> > tiene definido de esa manera y se vienen usando
> asi por siglos. En este caso
> > concreto, 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/

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Victor Lopez 2007-05-13 15:50:13 Re: configure según distribución?
Previous Message usuario anonimo 2007-05-13 15:22:20 Re: 127.0.0.1 y localhost