Hallo Freunde.
Ich habe versucht, folgende Syntax auszuführen:
DEFINE !init_variable_code(name_variable=!TOKENS(1)).
DATASET ACTIVATE MEM_PLM.
DATASET COPY any.
DATASET NAME !name_variable
DATASET ACTIVATE !name_variable.
SELECT IF CODE_VARIABLE=!name_variable.
EXECUTE.
!ENDDEFINE
!init_variable_code name_variable='WC'
Leider funktioniert folgender Befehl nicht:
DATASET NAME !name_variable
Hat jemand eine Idee, wie ich das Problem lösen könnte? Oder geht es schlichtweg nicht?
Vielen Dank
Macro: Verwende dataset aus Macro-Argument
-
- Beiträge: 10
- Registriert: 21.02.2011, 10:09
-
- Beiträge: 2391
- Registriert: 06.02.2011, 19:58
re
Ganz einfach: keine Hochkomma bei DatenSet1. Und nicht den Punkt hinter Enddefine vergessen.
also so:
also so:
Code: Alles auswählen
DEFINE !init_variable_code(name_variable=!TOKENS(1)).
DATASET ACTIVATE !name_variable.
!ENDDEFINE.
!init_variable_code name_variable=DatenSet2
drfg2008
-
- Beiträge: 10
- Registriert: 21.02.2011, 10:09
Ja, ich nehme gewöhnlich !ENCLOSE. Und mit !QUOTE kann man Hochkommata hinzufügen.
Funktioniert wunderbar.
DEFINE !init_variable_code(dataset_name=!TOKENS(1)).
DATASET ACTIVATE MEM_PLM.
DATASET COPY !dataset_name.
DATASET ACTIVATE !dataset_name.
SELECT IF CODE_VARIABLE=!QUOTE(!dataset_name).
EXECUTE.
!ENDDEFINE.
!init_variable_code dataset_name=MP.
Funktioniert wunderbar.
DEFINE !init_variable_code(dataset_name=!TOKENS(1)).
DATASET ACTIVATE MEM_PLM.
DATASET COPY !dataset_name.
DATASET ACTIVATE !dataset_name.
SELECT IF CODE_VARIABLE=!QUOTE(!dataset_name).
EXECUTE.
!ENDDEFINE.
!init_variable_code dataset_name=MP.