Yo lo veo así: Si la tabla se va a bloquear, significa que cuando alguien esté creando una factura el programa le va a marcar error. Si agregar un índice unique en serie y folio, también a alguien le marcará error, no es así?
2016-04-20 6:48 GMT-05:00 Kernel <jucab...@gmail.com>: > El 19/04/2016 a las 20:26, Alvaro Herrera escribió: > >> Kernel escribió: >> >>> Hola, >>> >>> Voy a hacer un proceso de facturacion y necesito asegurar que nadie pueda >>> facturar en el mismo momento que yo. >>> >> >> ¿cuál es la razón para esta restricción? >> >> > El problema es el numero de factura, se me podria duplicar, un usuario > podria estar haciendo un proceso de 100 facturas y otro solo una, dentro de > la misma serie. > > Este es el proceso resumido. (es bdl de 4js) > > > BEGIN WORK > > TRY > declare aux_3410_serie cursor for > select * > from fseries > where fseries.empresa = act.empresa > and fseries.serie >= r.serie_ini > and fseries.serie <= r.serie_fin > order by fseries.serie > > foreach aux_3410_serie into aux2.* > > declare albaranes cursor for > select albaranes > where serie = aux2.serie > and fecha >= r.fecha_ini > and fecha <= r.fecha_fin > and .... (limites del usuario) > > > FOREACH albaranes ..... > ...... > ...... > LET aux2.factura = aux2.factura + 1 > insert into facturas values > (act.empresa,aux2.serie.aux2.factura ...... > borrar albaran y pasa al historico > > update fseries > set factura = aux2.factura > where fseries.empresa = > act.empresa and serie = aux2.serie > > end foreach > > end foreach > > COMMIT WORK > CATCH > ROLLBACK WORK > END TRY > > > - > Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org > ) > Para cambiar tu suscripción: > http://www.postgresql.org/mailpref/pgsql-es-ayuda > -- Lindolfo Iván Perales Mancinas Solo existen 10 tipos de personas en el mundo, las que saben binario y las que no.