Bonjour,

je récupère des données d'une base de données via un objet COM dont je ne maîtrise pas le code. Cet objet me retourne un RecordSet ADO mais je souhaiterais modifier certains champs.

J'arrive parfaitement à me "balader" dans le Recordset, supprimer des enregistrements mais impossible de modifier un champ de l'enregistrement...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
var
  RecordSetADO: OLEVariant;
begin
  [...]
  RecordSetADO.MoveFirst;
  while not RecordSetADO.Eof do
  begin
      RecordSetADO.Fields['Mon_champ'].Value := 'toto';
      RecordSetADO.MoveNext;
  end;
  [...]
end;
Mais lors de l'écriture de la valeur il plante et me dit : "Une opération en plusieurs étapes a généré des erreurs. Vérifiez chaque valeur d'état."

Pourtant ça a l'air de correspondre à la marche à suivre ...

Ai-je le droit d'écrire directement dans le champ? Si non comment dois-je procéder ?

Merci d'avance