Fehlermeldung Identifier not found

Rund um die LCL und andere Komponenten
Antworten
Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

[gelöst] Hallo, ich suche mir (Anfänger) gerade einen Wolf! Folgendes Problem: Ich habe ein Formular entwickelt, auf dem Editfelder vorhanden sind, die mehrheitlich auf Visible=false gesetzt sind. Das Formular wird mit "TFMArtStamm" als Type mit den entsprechenden Elementen gezeigt.
Nun habe ich eine Procedure geschrieben, die bestimmte Editfelder dieses Formulares auf Visible=true setzt (setzen soll....). Aber der Kollege meint, "Identifier not found" und zeigt den ersten (angeblich) nicht gefundenen Feldnamen an.
Den Procedurekopf habe ich mit "procedure Historie" unter der Formulardefinition aufgenommen - damit müßten die Feldnamen doch bekannt sein und es müßte funzen; oder? (na ja, offensichtlich nicht). Die Procedure selbst ist wie folgt definiert
"procedure Historie (Wert1, Wert2 : integer);" und fragt Case-Bedingungen von Wert1 bzw. Wert2 ab....

Was habe ich denn falsch gemacht bzw. was fehlt?
Zuletzt geändert von Joachim Raap am Do 30. Apr 2020, 17:26, insgesamt 1-mal geändert.

Mathias
Beiträge: 6165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Fehlermeldung Identifier not found

Beitrag von Mathias »

Kannst du nicht die Fehlermeldung und den dazugehörigen Code ins Forum stellen ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
Winni
Beiträge: 1577
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Fehlermeldung Identifier not found

Beitrag von Winni »

Hi!

So wie Du das beschreibst, glaube ich, Du hast vergessen, dass Deine prozedure Teil von TFMArtStamm ist.

So geht das:

Code: Alles auswählen

procedure TFMArtStamm.Historie;
begin
....
end;
Hab ich richtig geraten?

Winni

Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Re: Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

winni: ne - habe ich auch probiert und so steht es derzeit im Code
Matthias: hier ein zusammengedampfte Code (die ganze Unit ist inzwischen zu groß) - reicht hoffentlich
Zuletzt geändert von Joachim Raap am Fr 8. Mai 2020, 13:24, insgesamt 1-mal geändert.

Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Re: Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

Ach ja - aufgerufen wird die Procedure mit "FMArtStamm.PreisHistorie(AnzeigeEKP, AnzeigeVKP);"
"AnzeigeEKP" und "AnzeigeVKP" sind Integer.

Mathias
Beiträge: 6165
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Fehlermeldung Identifier not found

Beitrag von Mathias »

@Joachim Raap

Bitte markiere deinen Code un klicke auf das </> Symbol.
Dann ist dein Code besser lesbar.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
Ally
Beiträge: 263
Registriert: Do 11. Jun 2009, 09:25
OS, Lazarus, FPC: Win und Lazarus Stable release
CPU-Target: x64

Re: Fehlermeldung Identifier not found

Beitrag von Ally »

Hallo Joachim,

probiere mal procedure PreisHistorie(EKPNext,VKPNext:integer); an Stelle von procedure PreisHistorie();

Gruß Roland
Zuletzt geändert von Ally am Do 30. Apr 2020, 16:44, insgesamt 1-mal geändert.

wennerer
Beiträge: 507
Registriert: Di 19. Mai 2015, 20:05
OS, Lazarus, FPC: Linux Mint 20 Cinnamon,Lazarus 2.2.6 (rev lazarus_2_2_6) FPC 3.2.2 x86_64-linux-
CPU-Target: x86_64-linux-gtk2

Re: Fehlermeldung Identifier not found

Beitrag von wennerer »

Hi Joachim,
trag mal oben zwischen die leeren Klammern deine Variablen ein.

Code: Alles auswählen

procedure BtSpeichernClick(Sender: TObject);
procedure CBAnzeigeLVChange(Sender: TObject);
procedure EdtStaNrEnter(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure LVArtStammClick(Sender: TObject);
procedure PreisHistorie(); //Hier fehlt es  procedure PreisHistorie(AnzeigeEKP, AnzeigeVKP:integer);

FMArtStamm.PreisHistorie(AnzeigeEKP, AnzeigeVKP);
und die Variable EdtEKP2 finde ich oben auch nicht, ich seh nur EdtEKPab12. Vielleicht bringt dich das schon weiter.

Viele Grüße Bernd

Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Re: Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

Hallo Bernd funktioniert weder mit den "Übergabevariablen" noch mit den in der Procedure verwendeten Variablen - Identifiert not found "EdtEKP2" (heul)

Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Re: Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

Bernd - Du bist mein Held!!!!!
"EdtEKP2" gibt es auch nicht (mehr) - die heißt jetzt "FSEdtEKP2"! Klar das der Kollege rumzickt!!!!
Danke!!!!!

Joachim Raap
Beiträge: 143
Registriert: Mo 30. Mär 2020, 12:37

Re: Fehlermeldung Identifier not found

Beitrag von Joachim Raap »

............und Dir Roland auch!!!!

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Fehlermeldung Identifier not found

Beitrag von af0815 »

Wenn man was geändert hat bei der Deklaration kann man das mit Shift+Strg+C synchnosieren in Lazarus. Steht man im implemnetierungsteil so wird das Interface gesynct und umgekehrt.
Will man den Namen der funktion bzw. procedure ändern verwendet man besse F2 im interfaceteil.

Als Beginner mit Lazarus, sollte man sich die Shortcuts der IDE mal ansehen, die können einem das Leben viel leichter machen (Siehe Strg+j)

Irgendwo hatten wir die Shortcuts mal gesammelt hier im Forum (ist schon länger her) oder zumindest einen Link drauf.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: Fehlermeldung Identifier not found

Beitrag von sstvmaster »

af0815 hat geschrieben:
Do 30. Apr 2020, 18:23
Irgendwo hatten wir die Shortcuts mal gesammelt hier im Forum (ist schon länger her) oder zumindest einen Link drauf.
Meinst du das? viewtopic.php?p=16836#p16836

Oder:
- https://wiki.freepascal.org/Lazarus_IDE_Tools/de
- https://wiki.freepascal.org/Lazarus_IDE_Shortcuts
LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Fehlermeldung Identifier not found

Beitrag von af0815 »

An den Link im Forum habe ich mich erinnert, war ja eh fast gestern 2008 :D

Ich glaube die anderen sind aktueller.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten