AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Identifier expected

Ein Thema von euromode · begonnen am 25. Sep 2012 · letzter Beitrag vom 25. Sep 2012
Antwort Antwort
euromode

Registriert seit: 25. Sep 2012
2 Beiträge
 
#1

Identifier expected

  Alt 25. Sep 2012, 15:40
Datenbank: MySQL • Version: 2005 • Zugriff über: ?
hallo zusammen,

bin ein totaler neuanfänger was das programmieren angeht.

mein problem besteht darin;

es soll eine abfrage von der datenbank erstellt werden, die dann in eine excel datei geschrieben wird.

Am ende kommt diese fehlermeldung
Code:
Compiling
Compiler: [Error] (99:1): Identifier expected
Compiling failed
Hab hier auch mal den text, für jede kleine hilfe bin ich im voraus schon sehr dankbar.

Code:
program abfrage;
const CRLF = #13+#10;
var
  XlsApp, XlsWorkBook, XlsWorksheet: variant;
  cNETTOEINZEL,nAbZeile,i:integer;
  cGUID,cAUFNR,cBestellt,Verzeichnis,Dateiname,cARTNR:string;
  nBestellt,nNettoEinzel:currency;
  oDialog:TUDFDialog;
begin

  oDialog := TUDFDialog.Create;
  try
 
    oDialog.AddField('AUFNR.','AUFNR.',ftString,True,True,'',0);
   
    if oDialog.Execute then
    begin
           cAUFNR := oDialog.GetFieldValue('AUFNR.');
        oQuery.SQL.Text := 'SELECT kopfguid FROM kopf WHERE UPPER(AUFNR) LIKE UPPER ('+quotedstring(cAUFNR)+')';
        oQuery.Open;
        if oQuery.RecordCount = 1 then
        begin
          cGUID := oQuery.Fields.Fields[0].AsString;
        end
        else
        if oQuery.RecordCount > 1 then
        begin
          ShowMeldung('Mehr als 1 Ergebnis zu dieser Rechnungsnummer');
          exit;
        end
        else
        begin
          ShowMeldung('Rechnungsnummer: '+cAUFNR+' nicht gefunden!');
          exit;
        end
    end;
     

  Verzeichnis := '\D:\test\';
  Dateiname  := '123.xls';
 
  // Geschrieben wird ab Zeile 16 (in der ersten stehen die Überschriften)
  nAbZeile := 16;
 
  // Wir starten Excel im Hintergrund
  Dateiname := Verzeichnis + Dateiname;
 
  // Existiert die Datei?
  if not FileExists(Dateiname) then
  begin
    Dateiname := OpenDialog('Excel *.xls|*.xls','Exportdatei wählen');

    if not FileExists(Dateiname) then
    begin
      ShowMeldung('Die Datei : '+Dateiname+' ist nicht vorhanden!');
      exit;
    end;
  end;    
 
 
   XlsApp := CreateOleObject('Excel.Application');
  try
  XlsApp.Visible := False;
  XlsWorkbook := XlsApp.Workbooks.Open(Dateiname, True, False);
  XlsWorkbook := XlsApp.Workbooks[1];
  XlsWorksheet := Xlsworkbook.Worksheets[1];  
                                                                                        //(postyp in (1,2)) AND
    oQuery.SQL.Text := 'SELECT ARTNR, Bestellt, NETTOEINZEL,zeilenid FROM position WHERE kopfguid = '+quotedstring(cGUID)+' ORDER BY zeilenid';
    oQuery.Open;
    while not oQuery.eof do
    begin
      cARTNR := oQuery.Fields.Fields[0].Asstring;
      nBestellt := oQuery.Fields.Fields[1].AsCurrency;
      nNETTOEINZEL := oQuery.Fields.Fields[2].AsCurrency;
     
     
      //writeln(cARTNR);
     
     
      i:= nAbZeile;
       
      XlsWorksheet.Cells[i,'A'].Value := cARTNR;
      XlsWorksheet.Cells[i,'B'].Value := nBestellt;
      XlsWorksheet.Cells[i,'C'].Value := nNETTOEINZEL;  
     
      oQuery.Next;
     
      i:= i +1;
   
    end;
   
    //application.processmessages;
    finally
      begin
        oDialog.Free;
      end;
    end;
     
end.
  Mit Zitat antworten Zitat
Benutzerbild von MacGuyver
MacGuyver

Registriert seit: 9. Sep 2003
Ort: Wildeshausen
284 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Identifier expected

  Alt 25. Sep 2012, 16:04
Moin,

die Zeilennummern währen nicht schlecht.
Ist hinter dem finally das Problem? Da setzt man kein "begin".
Verschiebe das alles lieber in eine Funktion und halte den Aufruf ganz unten knapp.
Englisch eine Weltsprache? Zu kompliziert und der nahe Osten würde Englisch als Pflichtweltsprache nicht akzeptieren.
IDO wäre genau das Richtige: http://forum.idolinguo.de/index.php oder www.idolinguo.de
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.286 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Identifier expected

  Alt 25. Sep 2012, 16:07
Die uses-Klausel fehlt wohl auch, die ganzen Datentypen inkl. Dialog sind ja kaum in System.pas deklariert.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
euromode

Registriert seit: 25. Sep 2012
2 Beiträge
 
#4

AW: Identifier expected

  Alt 25. Sep 2012, 16:43
Zitat:
die Zeilennummern währen nicht schlecht.
Ist hinter dem finally das Problem? Da setzt man kein "begin".
Verschiebe das alles lieber in eine Funktion und halte den Aufruf ganz unten knapp.
in anderen foren übernimmt er die Zeilennummern, also er zeigt den fehler in der letzten zeile an.


Zitat:
Die uses-Klausel fehlt wohl auch, die ganzen Datentypen inkl. Dialog sind ja kaum in System.pas deklariert.
es ist ein warenwirtschaftssystem aus dem die daten geschrieben werden sollen und es ist mit delphi/pascal geschrieben, das script wird mit einem UDF Editor erstellt
  Mit Zitat antworten Zitat
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: Identifier expected

  Alt 25. Sep 2012, 17:15
Deddy meint, dass Delphi keine Sachen wie TUDFDialog kennt, ohne entsprechende Unit. Auch für Zugriffe auf OLE-Objekte müssen entsprechende Units eingebunden werden. Weiterhin fehlt in deinem Code zB auch die Deklaration für oQuery.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf