%
'
'
%>
<%
main()
Sub main()
If Not(SessionCheck()) Then
Exit Sub
End If
Dim Query
Dim Content
Dim ShijoCD
ShijoCD = Request("ShijoCD")
Dim TmpCnt
TmpCnt = 0
Dim RndKaisyaCD
ReDim RndKaisyaCD(0)
Query = "exec SPPポータル会社取得 '" & GB_SystemCD & "', '" & EnshuCD & "', '', '" & GB_GakuseiNo & "'" '会社CD未指定の場合は一覧取得
Set Content = OpenQuery(Query)
Do While Not(Content.BOF Or Content.EOF)
If ShijoCD = "" Or "" & Content.Fields("市場CD") = ShijoCD Then
TmpCnt = TmpCnt + 1
ReDim PreServe RndKaisyaCD(TmpCnt)
RndKaisyaCD(TmpCnt) = Content.Fields("会社CD")
End If
Content.MoveNext
Loop
'1/2の確率で昇順/降順入れ替え
Randomize
If Int(Rnd() * 2) > 0 Then
Dim RndKaisyaCDTmp
ReDim RndKaisyaCDTmp(UBound(RndKaisyaCD))
For TmpCnt = 1 To UBound(RndKaisyaCD)
RndKaisyaCDTmp(TmpCnt) = RndKaisyaCD(UBound(RndKaisyaCD) - (TmpCnt - 1))
Next
For TmpCnt = 1 To UBound(RndKaisyaCD)
RndKaisyaCD(TmpCnt) = RndKaisyaCDTmp(TmpCnt)
Next
End If
'シャッフル
Dim Shuffle1
Dim Shuffle2
Dim TmpKaisyaCD
For TmpCnt = 1 To UBound(RndKaisyaCD) * UBound(RndKaisyaCD) '配列数の2乗ループ
Randomize
Shuffle1 = Int(Rnd() * UBound(RndKaisyaCD)) + 1 '1〜配列数のランダムな数値を取得
Randomize
Shuffle2 = Int(Rnd() * UBound(RndKaisyaCD)) + 1 '1〜配列数のランダムな数値を取得
'2つの配列の中身を入れ替える
TmpKaisyaCD = RndKaisyaCD(Shuffle1)
RndKaisyaCD(Shuffle1) = RndKaisyaCD(Shuffle2)
RndKaisyaCD(Shuffle2) = TmpKaisyaCD
Next
'Response.Write(RndKaisyaCD(1) & " ")
'Response.Write(RndKaisyaCD(2) & " ")
'Response.Write(RndKaisyaCD(3) & " ")
'Exit Sub
%>