Funktion ohne Parameter nicht möglich?

Antworten
larsg
Beiträge: 283
Registriert: 16 Dez 2014, 18:06

Funktion ohne Parameter nicht möglich?

Beitrag von larsg »

Hi,

ich möchte Funktionen ohne Eingabeparameter erstellen, winst lässt dies jedoch nicht zu, ist dieses verhalten gewollt?

Code: Alles auswählen

[Actions]
SetLoglevel=9
DefVar $Test$
DefFunc GetNumber : String
	Set $Result$ = "1"
EndFunc
Set $Test$ = GetNumber
ergibt

Code: Alles auswählen

[8] [Apr 04 09:08:08:977] Found new defined function name: getnumber
[2] [Apr 04 09:08:08:979] Syntax Error in Section: Actions (Command in line 3 origin: C:\tmp\test.opsiscript line: 4): DefFunc -> "(" expected  ( expected
Habe diverse Varianten probiert

Code: Alles auswählen

[Actions]
SetLoglevel=9
DefVar $Test$
DefFunc GetNumber () : String
	Set $Result$ = "1"
EndFunc
Set $Test$ = GetNumber
ergibt

Code: Alles auswählen

[8] [Apr 04 09:08:31:541] Found new defined function name: getnumber
[8] [Apr 04 09:08:31:542] Found defined function parametername: )
[8] [Apr 04 09:08:31:544] Parameter has call type: val
[8] [Apr 04 09:08:31:546] Parameter has invalid data type: string
[2] [Apr 04 09:08:31:547] Syntax Error in Section: Actions (Command in line 3 origin: C:\tmp\test.opsiscript line: 4): DefFunc -> , or ) expected after Parameter Type
thomas.besser
Beiträge: 455
Registriert: 09 Sep 2009, 09:40

Re: Funktion ohne Parameter nicht möglich?

Beitrag von thomas.besser »

Geht derzeit nicht. Steht aber schon auf der Roadmap von "d.oertel" (Infos von der opsiconf)

Ebenso müssen Funktionen momentan noch einen Rückgabewert haben/entgegen nehmen.
larsg
Beiträge: 283
Registriert: 16 Dez 2014, 18:06

Re: Funktion ohne Parameter nicht möglich?

Beitrag von larsg »

hmmm. ok :?

auch etwas unstimming die fehlermeldung zu folgendem Beispiel:

Skript:

Code: Alles auswählen

DefFunc GetTimeStamp(Nothing:String):Boolean
Log:

Code: Alles auswählen

DefFunc ->  missing or illegal function data type: boolean - only string, stringlist and boolean allowed.
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3319
Registriert: 04 Jun 2008, 14:27

Re: Funktion ohne Parameter nicht möglich?

Beitrag von d.oertel »

Hi,
auch etwas unstimming die fehlermeldung zu folgendem Beispiel:
im Gegenteil: die Definition:

Code: Alles auswählen

DefFunc GetTimeStamp(Nothing:String):Boolean
ist ungültig weil als Datentyp der Funktion nur string oder stringlist erlaubt sind.

Funktionen ohne Parameter und
Funktionen ohne Rückgabewert (void)
kommen mit der Version 4.12.0.16 an der ich gerade arbeite.

gruß
d.oertel
opsi support - uib gmbh

For productive opsi installations we recommend support contracts.
http://www.uib.de
http://www.opsi.org
Antworten