Einzelnen Beitrag anzeigen

DenjoR

Registriert seit: 3. Jun 2009
4 Beiträge
 
#1

delphi BDE Datenbank Abfrage Help

  Alt 3. Jun 2009, 16:58
So hallo erstmal
Ich bin noch Delphi Neuling und plage mich gerade mit dem versuch einer abfrage ab.

Ich habe per Datenbank tutorial MYbase folgendes erstellt:

1 Datenbank mit 4 Feldern | Datum | Ansprachen | Termine | Abschluesse |

folgende abfrage möchte ich erstellen :

-wenn das Datum mit dem heutigen übereinstimmt
-dann letzten datensatz feld:ansprachen editieren
-sonst neuer Datensatz

bisher sieht das in etwa so aus:

procedure TForm2.Button1Click(Sender: TObject);
var Ansprachen1:integer;
var Datum: TDate ;
begin
Datum := Date();
ClientDataSet1.LoadFromFile('pa.xml');
ClientDataset1.last;
if ClientDataset1.FieldByName('Datum').AsString = datetoStr(Datum) then
ClientDataset1.Edit;
ClientDataset1.FieldByName('Datum').Asstring :=datetostr( date());
ClientDataset1.FieldByName('Ansprachen').Asstring := inttoStr(+3);
ClientDataset1.Post;
ClientDataSet1.SaveToFile('pa.xml', dfXML);

--------------------------------------------------------------

ClientDataSet1.LoadFromFile('pa.xml');
if ClientDataset1.FieldByName('Datum').AsString <> datetoStr(Datum) then
ClientDataset1.Append;
ClientDataset1.FieldByName('Datum').Asstring :=datetostr( date());
ClientDataset1.FieldByName('Ansprachen').Asstring := inttoStr(+5);
ClientDataset1.Post;
ClientDataSet1.SaveToFile('pa.xml', dfXML);


der untere teil muss falsch sein da ich dort ein Fehler ausgeworfen kriege.
der obere teil funktioniert in soweit das er die zahl verändert und keinen neuen Datensatz macht.

naja wäre für jeden Denkansatz sowie Programmierungshilfe dankbar

Fehlermeldung :

Im projekt test.exe ist eine Exception der Klasse EDataBaseError mit der Meldung 'ClientDataSet1atenmenge weder im Editiermodus -noch im einfügemodus' aufgetreten

was halt noch nicht funktioniert ist die abfrage an sich bzw kann ich sie nicht testen da

-wenn ich im oberen teil statt ClientDataset1.Edit, ClientDataset1.Append schreibe kommt die fehlermeldung
-die fehler meldung kommt auch wenn ich ClientDataset1.Edit belasse aber die if abfrage auf undlgeich ändere.
Ich fumel da jetzt schon ne ganze zeit rum komm einfach nicht auf die Lösung

MFG

denjoR
  Mit Zitat antworten Zitat