<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    El 19/12/2012 12:18 p.m., Martin Gomez escribió:
    <blockquote
cite="mid:CAFGJXk0jUt3Jb4XxEKtX+0_XB5+g-1WVPU2sfi5saTXNguQCrw@mail.gmail.com"
      type="cite">
      <meta http-equiv="Context-Type" content="text/html; charset=UTF-8">
      <div> para cada base de datos hay una función (distinta en cada
        caso) que te devuelve el valor del último id automático
        utilizado.
        <div> <br>
        </div>
        <div> aparentemente, en firebird la forma mas sencilla es
          ejecutar el INSERT con un RETURNING al final, en vez de
          Query.ExecSQL utilizas Query.Open y ya tenes el resultado. </div>
        <div> <br>
        </div>
        <div> <a moz-do-not-send="true"
            href="http://www.firebirdfaq.org/faq243/">http://www.firebirdfaq.org/faq243/</a><br>
        </div>
        <div> <br>
        </div>
      </div>
      <br>
    </blockquote>
    Hola Martín.. recién envié un mail que no se si llegó, pero ya logré
    el cometido:<br>
    en el returning hay que poner el nombre real del campo, en mi caso
    id, y luego obtenerlo con el Fieldbyname.<br>
    <br>
    El tema de los generadores, como dice maxi, es que te quedan varios
    huecos de números si la transacción falla, como me pasó a mi ahora
    probando.<br>
    Supongo que otra forma no hay, a no ser que se lleve un contador de
    números aparte para esto, tal como se haría en caso de los nros de
    factura, que no pueden andar quedando huecos por ahí)<br>
    <br>
    SAludos!<br>
    <br>
  </body>
</html>