Servus,
ich habs normal eher so mit JAVA, von daher diese wahrscheinlich relativ simple Frage, Code folgt anschließend:
Ich bekommen in einer Funktion einen Pointer auf ein struct übergeben. Zu Beginn der Funktion hole ich mir das eigentliche struct und möchte nun anschließend auf die einzelnen struct Variablen zugreifen. Allerdings sind alle Variablen leer, was eigentlich nicht sein kann, da die Variablen im nächsten Schritt per SQL* in eine Oracle Datenbank geschrieben werden und diese offensichtlich auch dort ankommen. Ich vermute mal, dass ich irgendwie falsch auf das struct Zugreife.....
ich habs normal eher so mit JAVA, von daher diese wahrscheinlich relativ simple Frage, Code folgt anschließend:
Ich bekommen in einer Funktion einen Pointer auf ein struct übergeben. Zu Beginn der Funktion hole ich mir das eigentliche struct und möchte nun anschließend auf die einzelnen struct Variablen zugreifen. Allerdings sind alle Variablen leer, was eigentlich nicht sein kann, da die Variablen im nächsten Schritt per SQL* in eine Oracle Datenbank geschrieben werden und diese offensichtlich auch dort ankommen. Ich vermute mal, dass ich irgendwie falsch auf das struct Zugreife.....
Code:
X_Tree function(
XDa_ClustId cId,
XDa_StructId sId,
struct meinStruct* input,
X_Env env)
{
X_Tree root;
/* Copy the key */
vMeinStruct = *input;
printf(" Kommentar: %c \n FLNO: %c \n Callsign: %c \n" ,
vMeinStruct.kommentar, // da kommt nur leerer Mist bei rum
vMeinStruct.listEntry, // da kommt nur leerer Mist bei rum
vMeinStruct.arcid); // da kommt nur leerer Mist bei rum
// Komischerweise funktioniert aber dieser SQL Aufruf
// die Werte sind danach in der DB gefüllt
EXEC SQL
INSERT INTO
MYSCHEMA.MYTABLE2 (
LIST_ENTRY,
ARCID)
VALUES (
:vMeinStruct.listEntry,
:vMeinStruct.arcid);
[.......]
return root;
}
Zuletzt bearbeitet: