Ver Mensaje Individual
  #4  
Antiguo 22-03-2007
Neomanar Neomanar is offline
Miembro
 
Registrado: ago 2005
Posts: 18
Reputación: 0
Neomanar Va por buen camino
Unhappy No hay caso

Gracias por sus respuestas, pero lamentablemente no pude solucionarlo.
El query (QUsers) es sencillo: su SQL es "select * form usuarios".
A este query lo uso para mostrar la lista de usuarios en un TListView.
A su vez, en el form donde muestro dicho ListView tengo un TIBSQL cuya propiedad SQL la completo segun quiera insertar, borrar o modificar. A continuación los códigos:
FUsers.IBSQL.SQL.Clear;
FUsers.IBSQL.SQL.Add('UPDATE USUARIOS');
FUsers.IBSQL.SQL.Add('SET USERID='''+EUserId.Text+
''',APELLIDO='''+EApellido.Text+
''',NOMBRES='''+ENombres.Text+'''');
FUsers.IBSQL.SQL.Add('WHERE USERID='''+OrigKeyValue+'''');
end;
FUsers.IBSQL.ExecQuery;
dm_Users.TRUsers.CommitRetaining;
FUsers.QUsers.Active:=false; FUsers.QUsers.Active:=true;

donde:
QUsers es el IBQuery de la consulta
dm_users es el data module donde está la base de datos y el IBTransaction
TRUsers es la transacción a la que apuntan tanto el IBQuery como el IBSql

Todos los componentes apuntan a la misma transacción. Luego de este código en el que refresco el contenido de QUsers, borro el contenido del ListView y recorro secuencialmente QUsers para agregar los usuarios existentes, con los cambios realizados. Es aquí donde el ListView me vuelve a mostrar los datos originales, y sólo cerrando la aplicación y volviéndola a abrir puedo ver los datos actualizados. Les sirve esta info??
Responder Con Cita