Ver Mensaje Individual
  #1  
Antiguo 04-03-2007
Tauro78 Tauro78 is offline
Miembro
 
Registrado: sep 2006
Posts: 88
Reputación: 18
Tauro78 Va por buen camino
Como obtener el numero generado en un MDODataSet ?

Como obtener el numero generado en un MDODataSet ?
hola quisiera saber lo siguiente:
Estoy usando MDO y FB2; como puedo hacer para obtener el nro_cliente que
es generado por un generador luego de hacer el Commit ?
Supongo que necesitaria leer el valor en algun parametro de salida de QInsert
pero no encuentro la forma.
He probado con dmTablas.DSetClientesNRO_CLIENTE.Value pero no funciona.
Quiero obtener el nuevo valor para mostrarselo al usuario por medio de un
mensaje luego de haber realizado un alta de cliente.

Código Delphi [-]
 
try
dmTablas.TDSetClientes.StartTransaction;
dmTablas.DSetClientes.QInsert.Close;
dmTablas.DSetClientes.QInsert.ParamByName('NRO_CLIENTE').AsInt64 := dmTablas.DSetClientes.GeneratorLink.GetGenValue;
dmTablas.DSetClientes.QInsert.ParamByName('NOMBRE').AsString := UpperCase(Edit6.Text);
dmTablas.DSetClientes.QInsert.ParamByName('DIRECCION').AsString := Edit7.Text;
dmTablas.DSetClientes.QInsert.ParamByName('LOCALIDAD').AsString := Edit8.Text;
dmTablas.DSetClientes.QInsert.ParamByName('RUC').AsString := Edit9.Text;
dmTablas.DSetClientes.QInsert.Prepare;
dmTablas.DSetClientes.QInsert.ExecQuery;
dmTablas.TDSetClientes.Commit;
Mensaje := 'El Cliente se grabó con el número: ' + IntToStr(dmTablas.DSetClientesNRO_CLIENTE.Value);
            MessageDlg(Mensaje + #13#10, MtInformation, [MbOK], 0);
except
dmTablas.TDSetClientes.Rollback;
raise;
end;

Espero haber sido claro, gracias anticipadas.
Responder Con Cita