Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   id del registro (https://www.clubdelphi.com/foros/showthread.php?t=70095)

mantraxer21 29-09-2010 18:12:56

id del registro
 
Estimados:

estoy trabajando con DataSet y tdbedit (varios), uno de ellos se llama TXTATENCION y quiero que al momento de hacer click en "Nuevo Registro" me aparesca en "TXTATENCION" (el número del registro nuevo de la base de datos)

Estoy con Firebird.


Espero me puedan orientar.

Gracias

Saludos

ecfisa 29-09-2010 18:36:45

Hola.

No sé como incrementas el campo: On New Record, On Post u On Server, así que posiciono en el último, muestro el próximo y luego añado. (CAMPO_ID es el nombre del campo incremental en el ejemplo).

Ejemplo:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  IBDataSet1.Last;
  TXTATENCION.Text:= IntToStr(IBDataSet1.FieldByName('CAMPO_ID').AsInteger + 1);
  IBDataSet1.Append;
end;

Saludos. :)

mantraxer21 30-09-2010 02:09:51

Gracias
 
Muchas Gracias ecfisa, la verdad lo tengo el nuevo registro en "On Post", en el generator me muestra value 2954, pero al momento de hacer la rutina que me mostraste me aparece valor (en el txt) 197 ... pork no coincide con el valor que tiene el generador ???

Saludos

ecfisa 30-09-2010 20:29:57

Hola mantraxer.

Tendría que ver el código con que obtenes los valores del generador...

De todos modos, si tu intención es mostrar códigos consecutivos mediante el generador, no es buena idea.
Los generadores están diseñados para ser seguros en un entorno multiusuario. Su función es asegurar la unicidad
del código y un número identificador desaparece luego de generado.

¿ El por que de esto ?
Supongamos que el usuario A obtiene el identificador 1089 y seguido el usuario B recibe el 1090.
Luego el usuario A se arrepiente y hace un rollback...
Es imposible obtener una secuencia de numeros consecutivos sin brechas utilizando generadores.

Aca te pongo unos links que tratan sobre generadores en Firebird, hay mucho más en la web si querés profundizar.

Link1
Link2


Saludos.:)

mantraxer21 30-09-2010 20:35:30

Gracias (Solucionado)
 
Muchas Gracias.

la verdad si lo había pensado, pero el cliente queria algo que ya había tenido y obviamente se está modificando, es solo un tema de costumbre...

Muchas gracias, revisaré los Link !


La franja horaria es GMT +2. Ahora son las 03:21:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi