Page History
[ |../../index.htm#lansa/l4wdev07_0405.htm]
現在地:
...
.NETコレクションには、以下のメソッドを使用してアクセスできます。
Visual LANSAのForステートメント
Define Field(#LNum6501) Type(*INT)Define Field(#LStr6501) Type(*STRING) Length(20)Define Field(#LBol6501) Type(*BOOLEAN) Define_Com Class(#DNE003_SystemDll.System.Collections.Specialized.StringCollection) Name(#LCls6501_Coll) Reference(*DYNAMIC) #LCls6501_Coll <= *New #DNE003_SystemDll.System.Collections.Specialized.StringCollection #LStr6501 := 'Test'#LCls6501_Coll.Add( 'Test1' )#LCls6501_Coll.Add( 'Test2' )#LCls6501_Coll.Add( 'Test3' ) #LNum6501 := 0#LBol6501 := trueFor Each(#Current) In(#LCls6501_Coll)#LNum6501 += 1If (#Current <> (#LStr6501 + #LNum6501.AsString))#LBol6501 := falseEndifEndfor
...
.NETインデクサー(通常、Itemプロパティで表す)
Define Field(#LNum6601) Type(*INT)
Define Field(#LStr6601) Type(*STRING) Length(20)
Define Field(#LBol6601) Type(*BOOLEAN)
...
Define_Com Class(#DNE003_SystemDll.System.Collections.Specialized.StringCollection) Name(#LCls6601_Coll) Reference(*DYNAMIC)
...
#LCls6601_Coll <= *New #DNE003_SystemDll.System.Collections.Specialized.StringCollection
...
#LStr6601 := 'Test'
#LCls6601_Coll.Add( 'Test0' )
#LCls6601_Coll.Add( 'Test1' )
#LCls6601_Coll.Add( 'Test2' )
...
* ++++++++++++++++++++++++++++++++++++
...
* A string collection - GET
#LBol6601 := False
If
...
(#LCls6601_Coll.Item
...
[2
...
]
...
=
...
"Test2")
...
#LBol6601
...
:=
...
True
...
Else
...
#LBol6601
...
:=
...
False
...
Endif
...
* ++++++++++++++++++++++++++++++++++++
...
* A string collection - SET
#LCls6601_Coll.Item
...
[0
...
]
...
:=
...
'NewValue0'
...
#LCls6601_Coll.Item
...
[1
...
]
...
:=
...
'NewValue1'
...
#LCls6601_Coll.Item
...
[2
...
]
...
:=
...
'NewValue2'
...
If
...
(#LCls6601_Coll.Item
...
[1
...
]
...
=
...
'NewValue1')
...
#LBol6601
...
:=
...
True
...
Else
...
#LBol6601
...
:=
...
False
...
Endif
...
.NET列挙子
...
Define
...
Field(#LNum6401)
...
Type(*INT)
...
Define
...
Field(#LNum6402)
...
Type(*INT)
...
Define
...
Field(#LStr6401)
...
Type(*STRING)
...
Length(20)
...
Define
...
Field(#LBol6401)
...
Type(*BOOLEAN)
...
Define_Com
...
Class(#DNE003_SystemDll.System.Collections.Specialized.StringCollection)
...
Name(#LClass6401_Coll)
...
Reference(*DYNAMIC)
...
Define_Com
...
Class(#DNE003_SystemDll.System.Collections.Specialized.StringEnumerator)
...
Name(#LClass6402_Enum)
...
Reference(*DYNAMIC)
...
#LClass6401_Coll
...
<=
...
*New
...
#DNE003_SystemDll.System.Collections.Specialized.StringCollection
...
#LStr6401
...
:=
...
'Test'
...
#LClass6401_Coll.Add(
...
'Test1'
...
)
...
#LClass6401_Coll.Add(
...
'Test2'
...
)
...
#LClass6401_Coll.Add(
...
'Test3'
...
)
...
* ++++++++++++++++++++++++++++++++++++
* Use Enumerator
...
#LClass6402_Enum <= #LClass6401_Coll.GetEnumerator()
#LNum6401 := 0
#LBol6401 := true
#LClass6402_Enum.Reset()
Dowhile Cond(#LClass6402_Enum.MoveNext())
#LNum6401 += 1
If (#LClass6402_Enum.Current <> (#LStr6401 + #LNum6401.AsString))
#LBol6401 := false
Endif
Endwhile
...
If (#LBol6401)
#STD_TEXT := 'Success'
Else
#STD_TEXT := 'Failed'
Endif
...