[Gelöst] Unbekannte Variable

29. März 2007 10:30

Hallo zusamen,

ich hab mal wieder ein kleines Problem, stehe allerdings nach dem ganzen Hin und Her gerade bisschen auf dem Schlauch ;)

Folgende Sachlage : Habe einen Report der gewisse Daten an eine Tabelle übergibt welche dann genutzt wird um einen Bericht über Crystal Reports zu erstellen. Funktioniert auch wunderbar, nur wenn ich jetzt ein weiteres Feld mit übergeben will, bringt er die Meldung dass die Variable nicht vorhanden ist und ich diese deklarieren soll. Hab warscheinlich irgendwo irgendeine Kleinigkeit vergessen, aber wie gesagt ... der Schlauch ist z.Z. gerade sehr lang ;)

Der Record zu der Tabelle für den späteren Crystal Report nennt sich recDrucktabelle. Hier gibt es dann Felder wie beispielsweise Pflichtiger-Anrede, Pflichtiger-Straße, u.s.w. In der Tabelle Kassenkonto sind alle Daten des Pflichtigers enthalten die ich benötige.

Zuerst wird folgendes geprüft ...

Code:
IF recKassenkonto.GET (Steuerpflichtige."Pflichtiger-Nummer") THEN BEGIN


Daraufhin werden die einzelnen Felder der Kassenkonto Tabelle der Drucktabelle zugewießen ...

Code:
  recDrucktabelle."Pers.ID" := recKassenkonto."Pers. ID";
  recKassenkonto.CALCFIELDS(Anrede,Adresse,PLZ,Ort,Ländercode);
  recDrucktabelle."Pflichtiger-Anrede" := recKassenkonto.Anrede;
  recDrucktabelle."Pflichtiger-Straße" := recKassenkonto.Adresse;
  ...


Funktioniert auch wunderbar. Wird alles gefüllt und der Crystal zeigt auch alles an. Es wird aber jetzt allerdings ein zusätzliches Feld benötigt. Hab es also zuerst in der Drucktabelle angelegt damit es auch vom Report gefüllt werden kann. Das Feld heisst Pflichtiger-Name 2. Dieses Feld ist schon im Kassenkonto vorhanden und wenn ich dieses jetzt wieder der Drucktabelle zuweißen will ...

Code:
  recDrucktabelle."Pflichtiger-Name 2" := recKassenkonto."Name 2"


Allerdings kommt hier dann die Meldung dass die Variable nicht deklariert sei. Vielleicht hab ich vergessen irgendwas zu kompilieren aber wie gesagt, ich komme gerade echt nicht drauf. Sollte mir wohl erstmal nen Kaffee holen wenn ich welchen trinken würde :D
Zuletzt geändert von CBT am 2. April 2007 15:54, insgesamt 1-mal geändert.

29. März 2007 10:38

Hmmm ... das sollte so schon funktionieren, wenn Quell- und Zielfeld existieren und vom gleichen Datentyp sind ...
Könntest Du vielleicht mal den gesamten Codeblock posten - und wie GENAU lautet die Fehlermeldung? Welche Variable wird vermisst?

29. März 2007 10:44

Existieren beide, bzw. hab das Feld in der Drucktabelle eben erst angelegt da es ja nicht vorhanden war. Sind beide Textfelder.

Pflichtiger-Name 2 sei eine unbekannte Variable.

Der komplette Code bzw. alles wichtige lautet wie folgt ...

Code:
recDrucktabelle.INIT;

recDrucktabelle."Pflichtiger-Nummer" := Steuerpflichtige."Pflichtiger-Nummer";
recDrucktabelle."Pflichtiger-Name" := Steuerpflichtige."Pflichtiger-Name";
recDrucktabelle."Pflichtiger-gültig ab" := Steuerpflichtige."Gültig ab";
recDrucktabelle."Pflichtiger-gültig bis" := Steuerpflichtige."Gültig bis";


recDrucktabelle.Objektnummer := Steuerpflichtige.Objektnummer;


IF recSteuerobjekte.GET(Steuerpflichtige.Objektnummer) THEN BEGIN

  recDrucktabelle.Objektlage := recSteuerobjekte.Objektbezeichnung;
  recDrucktabelle."Objekt-gültig ab" :=recSteuerobjekte.Beginndatum;
  recDrucktabelle."Objekt-gültig bis" := recSteuerobjekte.Endedatum;
 

IF recKassenkonto.GET (Steuerpflichtige."Pflichtiger-Nummer") THEN BEGIN

  recDrucktabelle."Pers.ID" := recKassenkonto."Pers. ID";
  recKassenkonto.CALCFIELDS(Anrede,Adresse,PLZ,Ort,Ländercode);
  recDrucktabelle."Pflichtiger-Anrede" := recKassenkonto.Anrede;
  recDrucktabelle."Pflichtiger-Straße" := recKassenkonto.Adresse;
  recDrucktabelle."Pflichtiger-PLZ" := recKassenkonto.PLZ;
  recDrucktabelle."Pflichtiger-Ort" := recKassenkonto.Ort;
  recDrucktabelle."Pflichtiger-Name 2" := recKassenkonto."Name 2";

recDrucktabelle.INSERT;

29. März 2007 10:46

evtl. mal das objekt speichern, ohne zu kompilieren und dann neu öffen.
klingt nämlich eher danach, das dein Objekt das Feld (noch) nicht kennt.

29. März 2007 10:49

Hast du die Feldnamen selber im C/AL-Code geschrieben oder mit dem C/AL Symbol Menu (F5)? Wenn nicht, dann mach das mal mit dem C/AL Symbol Menu. Vielleicht ist in der Feldbezeichnung noch ein Leerzeichen oder so, was man nicht direkt erkennt...

Gruß, Marc
Zuletzt geändert von Marc Teuber am 29. März 2007 10:50, insgesamt 1-mal geändert.

29. März 2007 10:50

Na ja ich hatte Navision zwichenzeitlich auch mal komplett geschlossen aber jetzt hab ich einfach mal das Obekt geschlossen wie tba es gesagt hat und dann wieder geöffnet ... und wie nicht anders zu erwarten ... es funktioniert :D Da fällt mir echt nix mehr ein ... Sorry Leute und besten Dank ^^

Edit : Die Felder waren selber geschrieben.