Re: Como crear codigos compuestos

From: "Julio Rivero" <jcrmlima(at)gmail(dot)com>
To: "MIGUEL CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>
Cc: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Como crear codigos compuestos
Date: 2007-08-18 17:38:43
Message-ID: d34a12b60708181038w696b58aft818a0119c5343b92@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

mmm, bueno, pero no te olvides de ver la manera de intentar bloquear la
tabla cuando generas el código y una vez que has grabado y generado todo con
normalidad sueltas la tabla... digo esto por el tema de concurrencia.

Una vez me tope con un caso así, lo que hice fue crear códigos a los
clientes o cualquier otro PK con una secuencia pero al usuario le mostraba
el concatenado con caracteres (por ejemplo, creaba el primer cliente, mi
secuencia me devolvia 1, a lo que yo mostraba XX1 pero concatenado ojo, solo
mostraba, por dentro estaba el código 1 como PK de tipo entero), aunque
luego los convenci para tener una sola nomenclatura y con enteros como
códigos, depdende de como lo puedas manejar.

On 8/18/07, MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe> wrote:
>
> Ante todo gracias por las sugerencias.
>
> Explico :
> Los codigos compuestos son para poder asociar rapidamente al cliente, si
> por ejemplo:
>
> A006 me dice que el cliente empieza con A, y es Antonio meza cuadra,
>
> cuando buscan hacen referencia al A006, o dicen " Ah!! ese cliente es
> A006" o Antonio Meza Cuadra que cliente es ? es A006.
>
> Si lo pusiera correlativo diria que es el cliente "6",
>
> Gracias a todos .
>
> Solo manejamos clientes con este tipo de nomenclatura al igual en las
> rutas "T01", "T25"
>
> Miguel
>
>
> -----Mensaje original-----
> *De:* Julio Rivero [mailto:jcrmlima(at)gmail(dot)com]
> *Enviado el:* Sábado, 18 de Agosto de 2007 11:57 a.m.
> *Para:* Arturo Munive [pgsql-es-ayuda]
> *CC:* MIGUEL CANCHAS; pgsql-es-ayuda(at)postgresql(dot)org
> *Asunto:* Re: [pgsql-es-ayuda] Como crear codigos compuestos
>
> Ah!, claro, tienes que bloquear la tabla, ahora, porque la necesidad de
> códigos compuestos?, no puedes utilizar secuencias y te ahorras un huevo de
> cosas????
>
> On 8/18/07, Arturo Munive [pgsql-es-ayuda] <arturomunive(at)gmail(dot)com> wrote:
> >
> > Julio Rivero escribió:
> > > Te falto: "Por favor"
> > >
> > > Puedes hacer un algoritmo que te extraiga la primera letra (obviamente
> >
> > > en una variable) de lo que estas ingresando o capturando, puedes
> > > utilizar substr para obtener el primer caracter, luego hacer un select
> > > a tu tabla con una condición, trayendo el último registro, algo así
> > como:
> > >
> > > Select count(*)
> > > From tabla
> > > Where substr(campo,1,1) = 'primera_letra_extraida';
> > >
> > > Luego le sumas 1 y lo concatenas:
> > > primera_letra_extraida||correlativo::text
> > Bloquea las tablas para que no se repita el codigo (mmm opinion personal
> > no me gusta ese tipo de codigos)
> >
> > --
> > __ ___ _____ _ ___ ___ _ _ _ _
> > _ ____
> > / /\ | |_) | | | | | | |_) / / \ | |\/| | | | | |\ | | | \ \ / |
> > |_
> > /_/--\ |_| \ |_| \_\_/ |_| \ \_\_/ |_| | \_\_/ |_| \|
> > |_| \_\/ |_|__
> >
> >
>
>
> --
> Saludos
> Att,
> JR
> Movil: 98055573
>
>

--
Saludos
Att,
JR
Movil: 98055573

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message eea 2007-08-18 17:52:13 Re: Como crear codigos compuestos
Previous Message Agustin Casiva 2007-08-18 17:34:01 Re: Sobre consulta en Postgres