11.4.1 値として式を指定できる箇所

フルRDMLXでは、多くのパラメータやプロパティで式を使用できます。

EXECUTEコマンド

EXECUTEコマンドのWITH_PARMSパラメータの値として式を使用できるようになったので、必要な値を用意するために他のコマンドを追加する必要がなくなりました。例えば、以下のようになります。

Execute Subroutine(Routine2) With_Parms(#STD_DESC ('B' + #Phbn_2.Caption + 'B') 'AaBbCcDd')
 

さまざまなコマンドのMSGTXTパラメータ

MSGTXTパラメータでは、複数の項目を組み込んだ式を値として使用できます。式は括弧で囲みます。例えば、以下のようになります。

Message Msgtxt('Message: name is ' + #fullname)
 

Mthroutine Name(Trace)
Define_Map For(*INPUT) Class(#STD_TEXT) Name(#InTextOne)
Define_Map For(*INPUT) Class(#STD_TEXT) Name(#InTextTwo)
Message Msgtxt(#InTextOne.Value + " " + #InTextTwo.Value)
Endroutine
 

SETコマンド

SETコマンドで選択するプロパティに割り当てる値として、式を使用できます。

SET #COM_OWNER Left(#COM_OWNER.Left + 2) Top(#COM_OWNER.Top + 2)
 

INVOKEコマンド

INVOKEコマンドで選択するメソッド・パラメータに割り当てる値として、式を使用できます。

INVOKE #COM_OWNER.MethodOne ParmOne(#COM_OWNER.Left + 2) ParmTwo(#COM_OWNER.Top + 2)
 

SIGNALコマンド

SIGNALコマンドで選択するイベント・パラメータに割り当てる値として、式を使用できます。

SIGNAL EventOne ParmOne(#COM_OWNER.Left + 2) ParmTwo(#COM_OWNER.Top + 2)
 

SET_REFコマンド

SET_REFコマンドで式を使用できます。

Set_Ref #CurrentDepartment   (*dynamic  #COM_OWNER.dosomething(#STD_NUM))
Set_Ref #CurrentDepartment   (*dynamic  #COM_OWNER.dosomething(iNumber := 10))
 
MTHROUTINE NAME(dosomething )
DEFINE_MAP FOR( *INPUT ) CLASS( #STD_NUM) name(#iNumber)
DEFINE_MAP FOR(*RESULT) CLASS(#DEPTMENT) NAME(#oDepartment) PASS(*BY_REFERENCE)
 
Set_Ref #oDepartment (*create_As #DEPTMENT)
 
ENDROUTINE
 

Ý 11.4 式の機能強化