Newsgrupos.com  

Retroceder   Newsgrupos.com > Forum > Newsgroup es.comp.lenguajes.* Foro > Newsgroup es.comp.lenguajes.delphi
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 05-08-2004, 01:15:17
Azku
 
Mensajes: n/a
Predeterminado Problemas con ADO y actualizaciones por lotes

Hola, tengo un problema que me trae de cabeza. La cuestion es que no acabo
de entender muy bien como funcionan las actualizaciones por lotes con los
componentes de ADO. Tengo un ADOQuery y si hago varias operaciones de
edicion e inserción se supone que deberian almacenarse en la cache del
componente hasta que ejecute UpdateBatch o CancelBatch para confirmar o
rechazar los cambios. El problema es que si hago varias modificaciones y
ejecuto UpdateBatch solamente se guarda la ultima modificacion que he hecho.
Os pongo el codigo que utilizo por si alguien puede echarme una mano.
Gracias de antemano.
Un saludo.
J

procedure TfrmDescriptores.FormCreate(Sender: TObject);
begin
ADOQuery1.Open;
end;

procedure TfrmDescriptores.btnModificarClick(Sender: TObject);
var
Materia: String;
begin
Materia:=ADOQuery1.FieldByName('Materia').AsString ;
ADOQuery1.Edit;
if InputQuery ('Modificar descriptor', 'Introduzca el nombre del
descriptor'
, Materia) then
ADOQuery1.FieldByName('Materia').AsString:=Materia ;
ADOQuery1.Post;
end;

procedure TfrmDescriptores.btnNuevoClick(Sender: TObject);
var
Materia: String;
begin
Materia:='';
ADOQuery1.Append;
if InputQuery ('Insertar descriptor', 'Introduzca el nombre del
descriptor'
, Materia) then
ADOQuery1.FieldByName('Materia').AsString:=Materia ;
ADOQuery1.Post;
end;

procedure TfrmDescriptores.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
if (ModalResult=mrOk) and (ADOQuery1.UpdateStatus <> DB.usUnmodified)then
ADOQuery1.UpdateBatch
else if (ModalResult=mrCancel) and (ADOQuery1.UpdateStatus <>
DB.usUnmodified) then
begin
if Application.MessageBox(
'Algunos datos han sido modificados. ¿Desea salir sin guardar los
cambios?',
'AGESBI',MB_YESNO+MB_ICONINFORMATION+MB_DEFBUTTON2 ) = idYes then
ADOQuery1.CancelBatch
else
CanClose:=False;
end;
end;

procedure TfrmDescriptores.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if ADOQuery1.Active then ADOQuery1.Close;
end;


Responder Con Cita
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Newsgrupos.com
Standard Sponsored Links

Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas con actualizaciones alalaguna Newsgroup microsoft.public.es.update_services 0 21-07-2008 08:45:01
Problemas con actualizaciones csantarelli Newsgroup microsoft.public.es.windowsxp 5 11-02-2008 18:22:45
Problemas con la actualizaciones Jean Newsgroup microsoft.public.es.seguridad 4 06-07-2007 06:40:19
Problemas con Actualizaciones ANTONIO Newsgroup microsoft.public.es.update_services 12 25-07-2005 02:01:13
Problemas actualizaciones Jaime Ourense Newsgroup microsoft.public.es.office2000 4 08-01-2005 18:38:51





Powered by: vBulletin, Versión 3.6.8
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.

LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc.