Page History
[ |../../index.htm#lansa/ladtgub3_0300.htm]
現在地:
...
8.4.3 メソッドの結果
メソッドでは、*OUTPUTマップのいずれか1つを*RESULTとして定義できます。このようにすれば、式の中で、式の要素を生成する関数呼び出しとしてメソッドを使用できます。 例えば、以下のようになります。
Mthroutine Name
例えば、以下のようになります。
Mthroutine Name(MakeMessage)
Define_
...
Map For(*RESULT)
...
Class(#STD_TEXT)
...
Name(#OutTextOne)
Define_
...
Map For(*INPUT)
...
Class(#STD_TEXT)
...
Name(#InTextOne)
Define_
...
Map For(*INPUT)
...
Class(#STD_TEXT)
...
Name(#InTextTwo)
...
#OutTextOne :=
...
#InTextOne.Value + " " + #InTextTwo.Value
Endroutine
Evtroutine Handling(#PHBN_2.Click)
...
Begincheck
Datecheck Field(#STD_DATE)
...
In_Format(*DDMMYY)
...
Endcheck Msgtxt(#COM_OWNER.MakeMessage(
...
"#Phbn_2.Click",
...
"
...
Bad Date"
...
))
Endroutine
...
IFステートメントでは、ブール値の結果を返すメソッドまたは組み込みファンクションを使用できます。考え方としては、定義済みの条件を使用する場合と同じですが(DEF_CONDコマンドを参照)、この場合はメソッドを呼び出すので、条件の性質に関する制限がありません。
Mthroutine Name、この場合はメソッドを呼び出すので、条件の性質に関する制限がありません。
Mthroutine Name(Set_availability)
#Button1.
...
Enabled :=
...
#COM_OWNER.Allow_Access
#SURNAME.
...
readonly :=
...
*
...
Not #COM_OWNER.Allow_Access
...
Endroutine
Mthroutine Name(Allow_Access)
Define_
...
Map For(*RESULT)
...
Class(#Prim_boln)
...
Name(#RESULT)
...
#RESULT := True
If (#GIVENAME.Contains(
...
'ABC'
...
))
...
#RESULT := False
Endif
Endroutine