製品の定数の値に基づいて、ステートメントブロックをコンパイルします。
%If productConst
statements
[ %ElseIf productConst
statements ]
...
[ %Else
statements ]
%End If
productConst
IBM® ソフトウェアアプリケーションによって定義された定数、または次に説明するプラットフォーム識別定数の一つです。製品で定義された定数のリストについては、製品のマニュアルを参照してください。
statements
productConst が TRUE のときにコンパイルされるステートメントです。
%If、%ElseIf、%Else、%End If は直接 IDE 内に入力できません。これらの命令は、別のファイルに入力し、IDE 内で %Include 命令を使用して挿入する必要があります。
productConst は、%If または %ElseIf と同じ行になければなりません。%If productConst や %ElseIf productConst と同じ行、または %Else や %End If と同じ行には、コメントしか記述できません。これらの行は、アンダースコア (_) を使用して継続できません。
このステートメントの中で各 %If 条件や %ElseIf 条件を調べるために、LotusScript® のコンパイラは、ソフトウェアアプリケーションを呼び出して定数 productConst を評価します。製品は TRUE (-1) または FALSE (0) を返します。
前の条件の戻り値が FALSE のときにだけ、次の条件が評価されます。TRUE と評価された最初の %If 条件または %ElseIf 条件の statements がコンパイルされます。その後は、条件は評価されず、他の statements はコンパイルされません。
%If 条件も %ElseIf 条件も TRUE でないときは、%Else statements があればコンパイルされます。
ブロックの中には、%ElseIf 命令をいくつ入れても構いません。
%If ブロックはネストできません。
LotusScript には、製品の #define として次の表の定数が導入されています。そのいずれかを productConst として使用すると、コンパイラは productConst を評価するために製品を呼び出しません。LotusScript 自身が、定数を TRUE または FALSE として評価します。各定数の値は、LotusScript が実行されているプラットフォームに依存します。
定数 |
プラットフォームまたは機能 |
---|---|
WIN16 |
16 ビット API を持つ Windows (Windows 3.1) |
WIN32 |
32 ビット API を持つ Windows (Windows NT または Windows 95) |
WINNT |
Windows NT |
WIN95 |
Windows 95 |
WIN40 |
Windows 95 または Windows NT 4.0 |
WIN98 |
Windows 98 |
WIN2K |
Windows 2000 |
WINDOWS |
任意のタイプの Windows プラットフォーム (上記の WINxx 定数のいずれか) |
HPUX |
HP/UNIX 9.X 以上 |
SOLARIS |
Sun/OS 5.0 以上 |
UNIX |
任意の UNIX タイプ (HP_UX または Solaris) |
OS2 |
OS/2、バージョン 2.0 以上 |
LINUX |
Linux |
MAC |
Macintosh System 7 |
OLE |
OLE-2 を利用できるタイプ |
MAC68K |
Macintosh Motorola 68000 バージョン (68xxx Macintosh または PowerPC® 上で実行) |
MACPPC |
Macintosh PowerPC のバージョン |
OS400 |
AS400 |
OS390 |
S/390® User System Services |
ZOS |
z/OS® (OS390 も TRUE) |
例えば、いくつかのプラットフォームとそれを識別する定数は次のとおりです。
Windows 3.1
WIN16、WINDOWS
Windows 95
WIN32、WIN95、WIN40、WINDOWS
HP/UNIX 9.X
HPUX, UNIX
OS/2 2.0 以上
OS2