Problème avec TIBDataSet et InsertSQL ?
Bonjour,
J'ai un soucis avec mon TIBDataSet lorsque je veux y effectuer une insertion.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
if not DataModuleMETAR.IBDataSetMETAR.Active then DataModuleMETAR.IBDataSetMETAR.Open;
DataModuleMETAR.IBDataSetMETAR.Insert;
DataModuleMETAR.IBDataSetMETAR.ParamByName('ICAO').AsString := DataModuleMETAR.IBDataSetStation.FieldByName('ICAO').AsString;
DataModuleMETAR.IBDataSetMETAR.ParamByName('HORAIRE').AsDateTime := METAR_Date;
DataModuleMETAR.IBDataSetMETAR.ParamByName('TEMPERATURE').AsInteger := METAR_Temperature;
DataModuleMETAR.IBDataSetMETAR.ParamByName('POINTDEROSEE').AsInteger := METAR_Point2Rosee;
DataModuleMETAR.IBDataSetMETAR.ParamByName('HUMIDITE').AsInteger := METAR_HumiditeRelative;
DataModuleMETAR.IBDataSetMETAR.ParamByName('PRESSION').AsInteger := METAR_PressionAtmospherique;
DataModuleMETAR.IBDataSetMETAR.ParamByName('VENT_DIRECTION').AsInteger := METAR_VentDirection;
DataModuleMETAR.IBDataSetMETAR.ParamByName('VENT_VITESSE').AsInteger := METAR_VentVitesse;
DataModuleMETAR.IBDataSetMETAR.ParamByName('METAR').AsString := METAR;
DataModuleMETAR.IBDataSetMETAR.Post;
DataModuleMETAR.IBTransactionMETAR.Commit; |
Dans mon composant TIBDataSet, j'ai le code suivant pour InsertSQL :
Code:
1 2 3 4 5 6 7
|
insert into METAR
(HORAIRE, HUMIDITE, ICAO, METAR, POINTDEROSEE, PRESSION, TEMPERATURE,
VENT_DIRECTION, VENT_VITESSE)
values
(:HORAIRE, :HUMIDITE, :ICAO, :METAR, :POINTDEROSEE, :PRESSION, :TEMPERATURE,
:VENT_DIRECTION, :VENT_VITESSE) |
Cependant lorsque j'execute la première ligne :
Code:
1 2
|
DataModuleMETAR.IBDataSetMETAR.ParamByName('ICAO').AsString := DataModuleMETAR.IBDataSetStation.FieldByName('ICAO').AsString; |
J'ai une exception ici qui est la suivante :
Citation:
Champ "ICAO" non trouvé
Lorsque je débogue, j'ai bien :
Citation:
Expression : DataModuleMETAR.IBDataSetStation.FieldByName('ICAO').AsString;
Résultat : "CYUL"
Je ne vois pas d'où vient cette erreur...
Merci pour votre aide,
MaTHieU_