Anmelden

View Full Version : SQL-Fehler 0312



Seiten : 1 [2]

alex61
05-08-16, 11:57
Hallo !
hat leider nix gebracht. Aber die Variable ist schon in der Source zu sehen.
Eine Variable heisst LoeschDatum und LDatum ist mit LIKE aus LoeschDatum entstanden.

B.Hauser
05-08-16, 13:04
Soweit ich da sehe übergibst Du das Datum als Parameter.
Versuch mal folgendens:
Definiere zusätzlich eine lokale Variable für das Datum (gerne auch über LIKE), übertrage den Parameter-Wert in diese Variable und verwende diese Variable als Host-Variable im SQL

Der Precompiler kann wahrscheinlich Variablen, die nur als Eingabs-Parameter über LIKE und Arbeistvariable definiert sind, nicht verwenden (deshalb die Fehlermeldung)

Birgitta

Fuerchau
05-08-16, 13:07
Ich habe es auch schon erlebt, dass der Precompiler mit Variablen, die in der Quelle mehrfach vorkommen nicht eindeutig umgehen kann.
Namen im Prototype (PR-Definition) sind nicht erforderlich oder können auch anders heißen als die PI-Definition. Nenne die Variable in der PR einfach mal anders.
Wenn das auch nichts hilft, musst du die PI-Variable in eine lokale Variable übertragen.
Der SQL-Procompiler generiert generell globale Variablen SQLnnnn und dafür benötigt er einen eindeutigen Bezug. Der ist hier wohl nicht gewährleistet.

alex61
05-08-16, 13:26
Hallo und danke für die Info. Hat leider nicht funktioniert. Kommt selber SQL-Fehler, diesmal wird dann natürlich auf die neue lokale Variable verwiesen. Komisch ist nur, dass ich vor wenigen Tagen ein fast identisches Programm fehlerfrei übersetzen konnte und das tut auch. Einziger Unterschied: Die Vergleichsoperatoren im SQL waren vom Typ her alphanumerisch.

Fuerchau
05-08-16, 13:29
Definiere die neue lokale Variable mal ohne Like. Der Name darf auch nicht sonst in der Quelle vorkommen. Das soll der Precompiler wohl erst ab V7R2 beherrschen.

alex61
05-08-16, 13:52
ich hab's jetzt zum Fliegen gebracht. Ursache war: Habe Feld 'LOESCHDATUM' mit Deklarationsart 'S'
definiert. War zuvor ohne definiert. Programm liefert gewünschtes Ergebnis.
Besten Dank an alle, die mir mitgeholfen haben. Schönes WE
Gruss A.