X++ コンパイル時関数
この記事では、コンパイル時関数の一覧を示し、その構文、パラメーター、および戻り値について説明します。
概要
コンパイル時関数は、X++ コードのコンパイル時に早期実行されます。 アプリケーション エクスプローラーに保存されているメタデータの変更に対してコードを復元するためには、可能な限り X++ で使用する必要があります。 コンパイル時関数は、コンパイラによって入力値が検証されます。 入力された値が見つからず、アプリケーション エクスプローラーの既存のオブジェクトが一致しない場合は、コンパイラーはエラーを発行します。 コンパイラは実行時に変数に含まれる値を判別できないため、これらの関数への入力はリテラルでなければなりません。 コンパイル時関数は、メタデータ アサーション関数です。 アプリケーション エクスプローラーでエンティティを表す引数を取得し、コンパイル時にその引数を検証します。 実行時に影響を与えません。 属性は SysAttribute クラスから継承するクラスです。 フォーム、レポート、クエリ、メニュー のメタデータの検証をサポートするには、コントロールの AutoDeclaration プロパティを使用します。 これらの機能のほとんどは、アプリケーション エクスプローラーにある項目に関するメタデータを取得します。 いくつかの一般的なコンパイル時機能は、次のとおりです。
classNum
[ ] : クラスのIDを取得します。classStr
: コンパイル時に、その名前のクラスが存在することを確認します。 この方法は、実行時にエラーを後で発見するよりも優れています。evalBuf
[ ] : X++ コードの入力文字列を評価し、結果を文字列として返します。literalStr
[ ] : ラベルの文字列表現 (文字列など) を指定すると、ラベルIDが取得されます"@SYS12345"
。 たとえば、myLabel.exists(literalStr("@SYS12345"));
。
メモ
X++ コンパイル時関数は .NET プログラムから呼び出すことはできません。
関数
attributeStr
指定した属性クラスがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str classStr(class class)
パラメーター
パラメーター | 説明 |
---|---|
クラス | 検証する属性の名前。 |
戻り値
属性の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void attributeStrExample(Args _args)
{
str s;
;
s = attributeStr(AifDocumentOperationAttribute);
print s;
pause;
}
classNum
指定されたクラスの ID を取得します。
構文
int classNum(class class)
パラメーター
パラメーター | 説明 |
---|---|
クラス | ID を取得するクラス。 |
戻り値
指定されたクラスの ID。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void classNumExample(Args _args)
{
int i;
;
i = classNum(Global);
print i;
pause;
}
classStr
文字列としてクラスの名前を取得します。
構文
str classStr(class class)
パラメーター
パラメーター | 説明 |
---|---|
クラス | 返すクラスの名前。 |
戻り値
クラスの名前。
備考
リテラル テキストの代わりにこの関数を使用して、クラス名を含む文字列を取得します。 クラスが存在しない場合、関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void clStrExample(Args _args)
{
str s;
;
s = classStr(Global);
print s;
pause;
}
configurationKeyNum
指定されたコンフィギュレーション キーの ID を取得します。
構文
int configurationKeyNum(str keyname)
パラメーター
パラメーター | 説明 |
---|---|
keyname | ID を返すコンフィギュレーション キー。 |
戻り値
指定されたコンフィギュレーション キーの ID。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void configurationKeyNum(Args _args)
{
int i;
;
i = configurationKeyNum(AIF);
print i;
pause;
}
configurationKeyStr
文字列としてコンフィギュレーション キーの名前を取得します。
構文
str configurationKeyStr(str keyname)
パラメーター
パラメーター | 説明 |
---|---|
keyname | コンフィギュレーション キーの名前。 |
戻り値
コンフィギュレーション キーの名前。
備考
リテラル テキストの代わりにこの関数を使用して、構成キー名を含む文字列を取得します。 キーが存在しない場合、関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void configurationKeyStrExample(Args _args)
{
str s;
;
s = configurationKeyStr(AIF);
print s;
pause;
}
dataEntityDataSourceStr
データ エンティティのデータ ソースの名前を取得します。
構文
str dataEntityDataSourceStr(str dataEntity, str dataSource)
パラメーター
パラメーター | 説明 |
---|---|
dataEntity | データ エンティティの名前。 |
dataSource | データ ソースの名前。 |
戻り値
データ ソースの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
delegateStr
委任の名前を返します。
構文
str delegateStr(str class, str instanceDelegate)
パラメーター
パラメーター | 説明 |
---|---|
クラス | クラス、テーブル、またはフォームの名前。 |
instanceDelegate | インスタンス デリゲートの名前。 |
戻り値
委任の名前です。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
dimensionHierarchyLevelStr
分析コード階層レベルの名前を返します。
構文
str dimensionHierarchyLevelStr(str dimensionHierarchyLevel)
パラメーター
パラメーター | 説明 |
---|---|
dimensionHierarchyLevel | 分析コード階層レベルの名前。 |
戻り値
分析コード階層レベルの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
dimensionHierarchyStr
分析コード階層の名前を返します。
構文
str dimensionHierarchyStr(str dimensionHierarchy)
パラメーター
パラメーター | 説明 |
---|---|
dimensionHierarchy | 分析コード階層の名前。 |
戻り値
分析コード階層の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
dimensionReferenceStr
分析コード参照の名前を返します。
構文
str dimensionReferenceStr(str dimensionReference)
パラメーター
パラメーター | 説明 |
---|---|
dimensionReference | 分析コード参照の名前。 |
戻り値
分析コード参照の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
dutyStr
指定したセキュリティ職務権限の名前を表す文字列を取得します。
構文
str dutyStr(str securityDuty)
パラメーター
パラメーター | 説明 |
---|---|
securityDuty | セキュリティ職務権限の名前です。 |
戻り値
文字列のセキュリティ職務の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
enumCnt
指定された列挙型の要素数を取得します。
構文
int enumCnt(enum enumtype)
パラメーター
パラメーター | 説明 |
---|---|
enumtype | 列挙型タイプ。 |
戻り値
指定された列挙型の要素数。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
enumCnt(NoYes); //Returns 2, as the two elements are Yes and No.
enumLiteralStr
指定した文字列が指定した列挙型の要素であるかどうかを示します。
構文
\enumLiteralStr(enum enum, string str)
パラメーター
パラメーター | 説明 |
---|---|
列挙型 | 指定された値を取得する列挙型。 |
戻り値
指定された文字列が見つかった場合の str パラメーターの値。それ以外の場合は、コンパイル エラーです。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void getEnumValueAsString()
{
str i;
i = enumLiteralStr(ABCEnum, "valueInABCEnum");
print i;
pause;
}
enumNum
指定された列挙型の ID を取得します。
構文
int enumNum(enum enum)
パラメーター
パラメーター | 説明 |
---|---|
列挙型 | ID を返す列挙。 |
戻り値
指定された列挙型の ID。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void enumNum(Args _args)
{
int i;
;
i = enumNum(ABC);
print i;
pause;
}
enumStr
文字列として列挙型の名前を取得します。
構文
str enumStr(enum enum)
パラメーター
パラメーター | 説明 |
---|---|
列挙型 | 列挙型の名前。 |
戻り値
列挙型の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void enumStrExample(Args _args)
{
str s;
;
s = enumStr(ABC);
print s;
pause;
}
extendedTypeNum
指定された拡張データ型の ID を取得します。
構文
int extendedTypeNum(int str)
パラメーター
パラメーター | 説明 |
---|---|
str | ID を返す拡張データ型。 |
戻り値
指定された拡張データ型の ID。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void EDTNum(Args _args)
{
int i;
str s;
;
i = extendedTypeNum(AccountName);
s = extendedTypeStr(AccountName);
print int2Str(i);
print s;
pause;
}
extendedTypeStr
文字列として拡張データ型の名前を取得します。
構文
str extendedTypeStr(int str)
パラメーター
パラメーター | 説明 |
---|---|
str | 拡張データ型の名前。 |
戻り値
拡張データ型の名前。
備考
リテラル テキストの代わりにこの関数を使用すると、拡張データ型名を含む文字列を返します。 データ タイプが存在しない場合、extendedTypeStr 関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void EDTStr(Args _args)
{
int i;
str s;
;
i = extendedTypeNum(AccountName);
s = extendedTypeStr(AccountName);
print int2Str(i);
print s;
pause;
}
fieldNum
指定したフィールドの ID 番号を返します。
構文
int fieldNum(str tableName, str fieldName)
パラメーター
パラメーター | 説明 |
---|---|
tableName | テーブルの名前。 |
fieldName | フィールドの名前。 |
戻り値
指定されたフィールドの ID。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CashDisc フィールドの番号を CustTable テーブルに出力します。
static void fieldNumExample(Args _args)
{
int myInt;
;
myInt = fieldNum(CustTable, CashDisc);
Global::info(strfmt("CashDisc has a field ID of %1 in the CustTable table.", myInt));
}
/****Infolog Display
Message (10:40:00 am)
CashDisc has a field ID of 10 in the CustTable table.
****/
fieldPName
指定されたフィールドのラベルを取得します。
構文
str fieldPName(str tableid, str fieldid)
パラメーター
パラメーター | 説明 |
---|---|
tableid | 指定されたフィールドを含むテーブル。 |
fieldid | 変換するフィールド。 |
戻り値
フィールドのラベル。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CashDisc フィールドのラベルを出力します。
static void fieldPNameExample(Args _arg)
{
str myText;
;
myText = fieldPName(CustTable, CashDisc);
Global::info(strfmt("%1 is the label of the CashDisc field.", myText));
}
/****Infolog Display
Message (02:00:57 pm)
Cash discount is the label of the CashDisc field.
****/
fieldStr
指定したフィールドのフィールド名を取得します。
構文
str fieldStr(str tableid, str fieldid)
パラメーター
パラメーター | 説明 |
---|---|
tableid | フィールドを含むテーブル。 |
fieldid | 変換するフィールド。 |
戻り値
指定したフィールドのフィールド名。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CashDisc フィールドの名前を myText 変数に割り当てます。
static void fieldStrExample(Args _arg)
{
str myText;
;
myText = fieldStr(CustTable, CashDisc);
Global::info(strfmt("%1 is the specified field.", myText));
}
/****Infolog Display
Message (09:11:52 am)
CashDisc is the specified field.
****/
formControlStr
X++ コンパイラは、コントロールがフォームに存在するかどうかをチェックし、関数呼び出しを有効なコントロール名の文字列で置き換えます。
構文
str formControlStr(formName, controlName)
パラメーター
パラメーター | 説明 |
---|---|
formName | 引用符ではなく、フォームの名前。 |
controlName | フォーム上のコントロールの名前で、引用符ではありません。 |
戻り値
アプリケーション エクスプローラーで表示されるコントロールの名前を含む文字列。
備考
コントロールがフォームに存在しないとコンパイラが判断した場合、コンパイル エラーが表示されます。 X++ コードが引用符が含まれる文字列を使用してコントロールの名前を入力する場合、実行時までエラーを検出できません。 この機能を使用すると、コンパイラはコンパイル時にエラーを早期に検出することができます。 コンパイラにより実行される formControlStr などの X++ 関数は、コンパイル時関数と呼ばれます。 入力パラメーターが引用符で囲まれた標準の文字列ではないのはそのためです。 コンパイル時関数は、コンパイラによって出力される P コードまたはその他の実行可能ファイルでは表現されません。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
formDataFieldStr
フォームのデータ フィールドの名前を返します。
構文
str formDataFieldStr(str formName, str dataSource, str dataField)
パラメーター
パラメーター | 説明 |
---|---|
formName | フォームの名前。 |
dataSource | フォームのデータ ソース。 |
dataField | データ ソースのデータ フィールド。 |
戻り値
フォームのデータ フィールドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
str a = formDataFieldStr(FMVehicle, FMModelRate, RatePerDay);
formDataSourceStr
フォームのデータ ソースの名前を返します。
構文
str formDataSourceStr(str formName, str dataSource)
パラメーター
パラメーター | 説明 |
---|---|
formName | フォームの名前。 |
dataSource | フォームのデータ ソース。 |
戻り値
フォームのデータ ソースの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
str b = formDataSourceStr(FMVehicle, FMModelRate);
formMethodStr
フォームのメソッドの名前を返します。
構文
str formMethodStr(str formName, str methodName)
パラメーター
パラメーター | 説明 |
---|---|
formName | フォームの名前。 |
methodName | フォームのメソッド。 |
戻り値
フォームのメソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、showDialog メソッドの名前を出力します。
str c = formMethodStr(Batch,showDialog);
formStr
フォームの名前を取得します。
構文
str formStr(str form)
パラメーター
パラメーター | 説明 |
---|---|
フォーム | フォームの名前。 |
戻り値
フォームの名前を表す文字列。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、InventDim フォームの名前を出力します。
static void formStrExample(Args _arg)
{
;
Global::info(formStr(InventDim));
}
/****Infolog Display
Message (11:04:39 am)
InventDim
****/
identifierStr
指定された識別子を文字列に変換します。
構文
str identifierStr(str ident)
パラメーター
パラメーター | 説明 |
---|---|
ident | 変換する ID。 |
戻り値
指定した ID を表す文字列。
備考
identifierStr 関数使用する場合、ベスト プラクティス警告が表示されます。 これは、identifierStr に対して存在チェックが実行されたために発生します。 使用可能な場合は、より具体的なコンパイル時の関数を使用してください。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次のコード例では、myvar 変数名を thevar 変数に割り当てています。
static void indentifierStrExample(Args _args)
{
str myvar;
str thevar
;
thevar = "[" + identifierStr(myvar) + "]";
Global::info(strfmt(thevar));
}
/****Infolog Display
Message (09:19:49 am)
[myvar]
****/
indexNum
指定されたインデックスを数字に変換します。
構文
int indexNum(str tableid, str indexid)
パラメーター
パラメーター | 説明 |
---|---|
tableid | フィールド インデックスを含むテーブル。 |
indexid | 変換するインデックス。 |
戻り値
指定されたインデックスを表すインデックス番号。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、当事者インデックスのインデックス値を返します。
static void indexNumExample(Args _arg)
{
;
Global::info(strfmt("%1 is the index number of Party.", indexNum(CustTable, Party)));
}
/****Infolog Display
Message (11:28:03 am)
3 is the index number of Party.
****/
indexStr
指定されたインデックスを文字列に変換します。
構文
str indexStr(str tableid, str indexid)
パラメーター
パラメーター | 説明 |
---|---|
tableid | フィールド インデックスを含むテーブル。 |
indexid | 変換するインデックス。 |
戻り値
指定インデックスを表す文字列。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CashDisc インデックス値を myText 変数に割り当てます。
static void fieldStrExample(Args _arg)
{
str myText;
;
myText = fieldStr(CustTable, CashDisc);
Global::info(strfmt("%1 is the specified index.", myText));
}
/****Infolog Display
Message (09:11:52 am)
CashDisc is the specified index.
****/
licenseCodeNum
指定したライセンス コードがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
int licenseCodeNum(str codename)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証するライセンス コードの名前。 |
戻り値
指定されたライセンス コードの数。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void licenseCodeNumExample(Args args)
{
int i;
;
i = licenseCodeNum(SysMorphX);
Global::info(strfmt("%1 is the license code number for SysMorphX.", i));
}
/****Infolog Display
Message (01:52:35 pm)
24 is the license code number for SysMorphX.
****/
licenseCodeStr
指定したライセンス コードがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str licenseCodeStr(str codename)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証するライセンス コードの名前。 |
戻り値
指定されたライセンス コードの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void licenseCodeStrExample(Args _arg)
{
str s;
;
s = licenseCodeStr(SysMorphX);
Global::info(strfmt("%1 is the license code string for SysMorphX.", s));
}
/****Infolog Display
Message (02:33:56 pm)
SysMorphX is the license code string for SysMorphX.
****/
literalStr
指定した文字列がリテラル文字列であることを検証します。そうでない場合は、コンパイラ エラーが発生します。
構文
str literalStr(int str)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証する文字列。 |
戻り値
有効な場合は、リテラル文字列。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = literalStr("This is a literal str");
print s;
pause;
}
maxDate
日付型の変数に使用できる最大値を取得します。
構文
date maxDate()
戻り値
日付 の変数に使用できる最大値は、2154-12-31です。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void maxDateExample(Args _arg)
{
date maximumDate;
;
maximumDate = maxDate();
print maximumDate;
pause;
}
maxInt
int 型に格納可能な最大符号付き値を取得します。
構文
int maxInt()
戻り値
整数の許容値の最大値。
備考
その他の整数値は、戻り値以下になります。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void maxIntExample(Args _arg)
{
int i;
;
print "The maximum value for type int is " + int2Str(maxInt());
pause;
}
measurementStr
測定の名前を返します。
構文
str measurementStr(str measurement)
パラメーター
パラメーター | 説明 |
---|---|
測定値 | 測定の名前。 |
戻り値
測定の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
measureStr
メジャーの名前を返します。
構文
str measureStr(str measure)
パラメーター
パラメーター | 説明 |
---|---|
測定 | 測定の名前。 |
戻り値
測定の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
menuItemActionStr
指定したメニュー項目のアクションがアプリケーション オブジェクト ツリー (Application Explorer) に存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str menuItemActionStr(class menuitem)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証するメニュー項目アクションの名前。 |
戻り値
有効な場合の、メニュー項目アクションの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s1, s2, s3, s4;
;
s1 = menuItemActionStr(AssetCopy);
s2 = menuItemDisplayStr(Address);
s3 = menuItemOutputStr(AssetBarcode);
s4 = menuStr(Administration);
print "menuItemActionStr for AssetCopy is " + s1;
print "menuItemDisplayStr for Address is " + s2;
print "menuItemOutputStr for AssetBarcode is " + s3;
print "menuStr for Administration is " + s4;
pause;
}
menuItemDisplayStr
指定したメニュー項目の表示がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str menuitemdisplaystr(class menuItem)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証するメニュー項目nの表示の名前。 |
戻り値
有効な場合の、指定されたメニューの表示の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s1, s2, s3, s4;
;
s1 = menuItemActionStr(AssetCopy);
s2 = menuItemDisplayStr(Address);
s3 = menuItemOutputStr(AssetBarcode);
s4 = menuStr(Administration);
print "menuItemActionStr for AssetCopy is " + s1;
print "menuItemDisplayStr for Address is " + s2;
print "menuItemOutputStr for AssetBarcode is " + s3;
print "menuStr for Administration is " + s4;
pause;
}
menuItemOutputStr
指定したメニュー項目の出力がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str menuItemOutputStr(class menuitem)
パラメーター
パラメーター | 説明 |
---|---|
codename | 検証するメニュー項目出力の名前。 |
戻り値
有効な場合、指定されたメニュー項目が出力されます。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s1, s2, s3, s4;
;
s1 = menuItemActionStr(AssetCopy);
s2 = menuItemDisplayStr(Address);
s3 = menuItemOutputStr(AssetBarcode);
s4 = menuStr(Administration);
print "menuItemActionStr for AssetCopy is " + s1;
print "menuItemDisplayStr for Address is " + s2;
print "menuItemOutputStr for AssetBarcode is " + s3;
print "menuStr for Administration is " + s4;
pause;
}
menuStr
指定したメニューがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str menuStr(class menu)
パラメーター
パラメーター | 説明 |
---|---|
メニュー | 検証するメニューの名前。 |
戻り値
有効な場合の指定されたメニュー項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s1, s2, s3, s4;
;
s1 = menuItemActionStr(AssetCopy);
s2 = menuItemDisplayStr(Address);
s3 = menuItemOutputStr(AssetBarcode);
s4 = menuStr(Administration);
print "menuItemActionStr for AssetCopy is " + s1;
print "menuItemDisplayStr for Address is " + s2;
print "menuItemOutputStr for AssetBarcode is " + s3;
print "menuStr for Administration is " + s4;
pause;
}
methodStr
指定したメソッドが指定したクラスに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str methodStr(class class, int method)
パラメーター
パラメーター | 説明 |
---|---|
クラス | クラスの名前。 |
メソッド | 検証するメソッドの名前。 |
戻り値
有効な場合の、指定されたメソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
#define.timeout(50)
str s;
SysHelpInitTimeOut SysHelpInitTimeOut;
;
s = methodStr(SysHelpInitTimeOut, timeout);
print s;
pause;
}
minInt
int 型に格納可能な最小符号付き値を取得します。
構文
int minInt()
戻り値
int 型の最小値です。
備考
その他の整数値は、戻り値以上になります。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void minIntExample(Args _arg)
{
int i;
;
i = minInt();
print "minInt() is " + int2Str(i);
pause;
}
privilegeStr
権限の名前を返します。
構文
str privilegeStr(str privilege)
パラメーター
パラメーター | 説明 |
---|---|
権限 | 名前を返す対象の特権。 |
戻り値
権限の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
queryDatasourceStr
X++ コンパイラは、データ ソースがクエリに存在するかどうかをチェックし、関数呼び出しを有効なデータ ソース名の文字列で置き換えます。
構文
str queryDataSourceStr(queryName, dataSourceName)
パラメーター
パラメーター | 説明 |
---|---|
queryName | 引用符ではなく、クエリの名前。 |
dataSourceName | クエリ上のデータ ソースの名前で、引用符ではありません。 |
戻り値
アプリケーション エクスプローラーで表示されるデータ ソースの名前を含む文字列。
備考
データ ソースがクエリに存在しないとコンパイラが判断した場合、コンパイル エラーが表示されます。 X++ コードが引用符が含まれる文字列を使用してデータ ソースの名前を入力する場合、実行時までエラーを検出できません。 この機能を使用すると、コンパイラはコンパイル時にエラーを早期に検出することができます。 コンパイラにより実行される queryDataSourceStr などの X++ 関数は、コンパイル時関数とみなされます。 入力パラメーターが引用符で囲まれた標準の文字列ではないのはそのためです。 コンパイル時関数は、コンパイラによって出力される P コードまたはその他の実行可能ファイルでは表現されません。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
queryMethodStr
クエリのメソッドの名前を返します。
構文
str queryMethodStr(str queryName, str methodName)
パラメーター
パラメーター | 説明 |
---|---|
queryName | クエリの名前。 |
methodName | フォームのメソッド。 |
戻り値
クエリのメソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
queryStr
既存のクエリを表す文字列を取得します。
構文
str queryStr(str query)
パラメーター
パラメーター | 説明 |
---|---|
クエリ | 取得するクエリ。 |
戻り値
クエリの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void queryStrExample(Args _arg)
{
str myText;
;
myText = queryStr(AssetTable);
Global::info(strfmt("%1 is the name of the query.",myText));
}
/****Infolog Display
Message (09:45:16 am)
AssetTable is the name of the query.
****/
reportStr
指定したレポートの名前を表す文字列を取得します。
構文
str reportStr(str report)
パラメーター
パラメーター | 説明 |
---|---|
レポート | 名前を返す対象のレポート。 |
戻り値
レポートの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、AssetAddition レポートの名前を MyTxt 変数に割り当てます。
static void reportStrExample(Args _args)
{
str MyTxt;
;
MyTxt = reportStr(AssetAddition);
Global::info(strfmt("%1 is the name of the report.", MyTxt));
}
/****Infolog Display.
Message (10:46:36 am)
AssetAddition is the name of the report.
****/
resourceStr
指定したリソースがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str resourceStr(str resourcename)
パラメーター
パラメーター | 説明 |
---|---|
resourcename | 検証するリソースの名前。 |
戻り値
有効な場合の、指定されたリソースの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
print "Str for resource StyleSheet_Help_Axapta is "
+ resourceStr(StyleSheet_Help_Axapta);
pause;
}
roleStr
指定したセキュリティ ロールの名前を表す文字列を取得します。
構文
str roleStr(str securityRole)
パラメーター
パラメーター | 説明 |
---|---|
securityRole | セキュリティ ロールの名前です。 |
戻り値
文字列のセキュリティ ロールの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
ssrsReportStr
指定したレポートの名前を表す文字列を取得します。 レポート コントローラー クラスで実行されるレポートを指定する場合は、この関数を使用します。
構文
str ssrsReportStr(str report, str design)
パラメーター
パラメーター | 説明 |
---|---|
レポート | 名前を返す対象のレポート。 |
design | レポートに関連付けられているデザインの名前。 |
戻り値
レポートの名前。
備考
ssrsReportStr 関数は、有効なレポートに属しているかどうかを検証するために、渡された 2 つの値を解析します。 コントローラーが、どのレポート デザインの組み合わせを呼び出す必要があるかを判断できるように、メニュー項目が controller() を指しているときは、レポート名を設定する必要があります。 ssrsReportStr 関数を使用すると、レポートおよびデザイン名のコンパイル時の検証で役立ちます。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
public static void main(Args _args)
{
// Initializing the object for a controller class, in this case, the class named AssetListingController.
SrsReportRunController controller = new AssetListingController();
// Getting the properties of the called object (in this case AssetListing MenuItem)
controller.parmArgs(_args);
// Setting the Report name for the controller.
controller.parmReportName(ssrsReportStr(AssetListing, Report));
// Initiate the report execution.
controller.startOperation();
}
staticDelegateStr
静的デリゲートの名前を返します。
構文
str staticDelegateStr(str class, str delegate)
パラメーター
パラメーター | 説明 |
---|---|
クラス | クラス、テーブル、またはフォームの名前。 |
デリゲート | 委任の名前です。 |
戻り値
委任の名前です。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
staticMethodStr
指定した静的メソッドが指定したクラスに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str staticMethodStr(class class, int method)
パラメーター
パラメーター | 説明 |
---|---|
クラス | クラスの名前。 |
メソッド | 検証する静的メソッドの名前。 |
戻り値
有効な場合の、指定された静的メソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
tableCollectionStr
指定したテーブル コレクションがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str tableCollectionStr(class tablecollection)
パラメーター
パラメーター | 説明 |
---|---|
tablecollection | 検証するテーブル コレクションの名前。 |
戻り値
有効な場合の、指定されたテーブル コレクションの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
tableFieldGroupStr
文字列としてフィールド グループの名前を取得します。
構文
str tableFieldGroupStr(str tableName, str fieldGroupName)
パラメーター
パラメーター | 説明 |
---|---|
tableName | フィールド グループを含むテーブル。 |
fieldGroupName | テーブル内のフィールド グループ。 |
戻り値
文字列としてのフィールド グループの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、編集 フィールド グループの名前を文字列として取得します。
static void tableFieldGroupStrExample(Args _arg)
{
;
Global::info(tableFieldGroupStr(AccountingDistribution, Editing));
}
/****Infolog Display
Message (03:14:54 pm)
Editing
****/
tableMethodStr
指定したメソッドが指定したテーブルに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str tableMethodStr(int table, int method)
パラメーター
パラメーター | 説明 |
---|---|
テーブル | テーブルの名前。 |
メソッド | 検証するメソッドの名前。 |
戻り値
有効な場合の、メソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
tableNum
特定のテーブルのテーブル ID を取得します。
構文
int tableNum(str table)
パラメーター
パラメーター | 説明 |
---|---|
テーブル | テーブル ID を取得するテーブル。 |
戻り値
特定のテーブルのテーブル ID
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、tableID 変数を 77 に設定します。これは、CustTable テーブルの ID です。
static void tableNumExample(Args _args)
{
int tableID;
;
tableID = tableNum(CustTable);
Global::info(strfmt("%1 is the table ID for the CustTable table.", tableID));
}
/****Infolog Display
Message (11:15:54 am)
77 is the table ID for the CustTable table.
****/
tablePName
指定されたテーブルの出力可能な名前を含む文字列を取得します。
構文
str tablePName(str table)
パラメーター
パラメーター | 説明 |
---|---|
テーブル | 印刷可能な名前を取得するテーブル。 |
戻り値
指定されたテーブルの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CustTable テーブルのラベルを MyText 変数に割り当てます。
static void tablePNameExample(Args _args)
{
str MyText;
;
MyText = tablePname(CustTable);
Global::info(strfmt("%1 is the label of the CustTable table.", MyText));
}
/**** Infolog Display.
Message (12:13:53 pm)
Customers is the label of the CustTable table.
****/
tableStaticMethodStr
指定した静的メソッドが指定したテーブルに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str tableStaticMethodStr(int table, int method)
パラメーター
パラメーター | 説明 |
---|---|
テーブル | テーブルの名前。 |
メソッド | 検証する静的メソッドの名前。 |
戻り値
指定された静的メソッドの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
tableStr
指定したテーブルの名前を含む文字列を取得します。
構文
str tableStr(str table)
パラメーター
パラメーター | 説明 |
---|---|
テーブル | 文字列を取得するテーブル。 |
戻り値
指定したテーブルの名前を含む文字列値。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次の例では、CustTable テーブルの名前を MyTxt 変数に割り当てます。
static void tableStrExample(Args _args)
{
str MyTxt;
;
MyTxt = tableStr(CustTable);
Global::info(strfmt("%1 is the str output of the input of CustTable.", MyTxt));
}
/**** Infolog Display.
Message (01:21:49 pm)
CustTable is the str output of the input of CustTable.
****/
tileStr
指定したタイルの名前を表す文字列を取得します。
構文
str tileStr(str tile)
パラメーター
パラメーター | 説明 |
---|---|
tile | タイルの名前。 |
戻り値
文字列のタイルの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
varStr
指定した変数の名前を含む文字列を取得します。
構文
str varStr(str var)
パラメーター
パラメーター | 説明 |
---|---|
var | 変数の名前。 |
戻り値
指定した変数の名前を含む文字列。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void varStrExample(Args _arg)
{
str myString;
anytype myVariable;
;
myString = varStr(myVariable);
Global::info(strfmt("%1 is the variable name.", myString));
}
/****Infolog Display.
Message (02:26:56 pm)
myVariable is the variable name.
****/
webActionItemStr
指定した Web アクション項目がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webActionItemStr(class webactionitem)
パラメーター
パラメーター | 説明 |
---|---|
webactionitem | 検証する Web アクション項目の名前。 |
戻り値
有効な場合の、指定された Web アクション項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webActionItemStr(EPFlushData);
print "webactionitem str is " + s;
pause;
}
webDisplayContentItemStr
指定したWeb 表示のコンテンツ項目がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webDisplayContentItemStr(class webdisplaycontentitem)
パラメーター
パラメーター | 説明 |
---|---|
webdisplaycontentitem | 検証する Web 表示コンテンツ項目の名前。 |
戻り値
有効な場合の、指定された Web 表示コンテンツ項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webDisplayContentItemStr(EPAdmin);
print "string for webcontent display item EPAdmin is " + s;
pause;
}
webFormStr
指定した Web フォームがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webFormStr(str name)
パラメーター
パラメーター | 説明 |
---|---|
名前 | 検証する Web フォームの名前。 |
戻り値
有効な場合の、指定された Web フォームの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webFormStr(EPAdmin);
print "String for web form EPAdmin is " + s;
pause;
}
webletItemStr
指定した Weblet 項目がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webletItemStr(class webletitem)
パラメーター
パラメーター | 説明 |
---|---|
webletitem | 検証する Weblet 項目の名前。 |
戻り値
有効な場合の、指定された Weblet 項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webletItemStr(WebFormWeblet);
print "String for WebFormWeblet is " + s;
pause;
}
webMenuStr
指定した Web メニューがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webMenuStr(str name)
パラメーター
パラメーター | 説明 |
---|---|
名前 | 検証する Web メニューの名前。 |
戻り値
有効な場合の、指定された Web メニューの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webMenuStr(ECPAdmin);
print "String for web menu ECPAdmin is " + s;
pause;
}
webOutputContentItemStr
指定したWeb 出力のコンテンツ項目がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webOutputContentItemStr(class weboutputcontentitem)
パラメーター
パラメーター | 説明 |
---|---|
weboutputcontentitem | 検証する Web 出力コンテンツ項目の名前。 |
戻り値
有効な場合の、指定された Web 出力コンテンツ項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webOutputContentItemStr(EPPriceList);
print "string for weboutput content item EPPriceList is " + s;
pause;
}
webpageDefStr
指定した Web ページ定義がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webpageDefStr(str pagename)
パラメーター
パラメーター | 説明 |
---|---|
pagename | 検証する Web ページ定義の名前。 |
戻り値
有効な場合の、指定された Web ページ定義の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
webReportStr
指定した Web レポートがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webReportStr(str name)
パラメーター
パラメーター | 説明 |
---|---|
名前 | 検証する Web レポートの名前。 |
戻り値
有効な場合の、指定された Web レポートの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webReportStr(EPCSSSalesConfirm);
print "String for web report EPCSSalesConfirm is " + s;
pause;
}
websiteDefStr
指定した Web サイトの定義がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str websiteDefStr(str resourcename)
パラメーター
パラメーター | 説明 |
---|---|
resourcename | 検証する Web サイト定義の名前。 |
戻り値
有効な場合の、指定された Web サイト定義の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = websiteDefStr(AxSiteDef_1033_xip);
print "string for web site definition AxSiteDef_1033_xip is " + s;
pause;
}
webSiteTempStr
指定した Web サイトのテンプレートがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str websiteTempStr(str resourcename)
パラメーター
パラメーター | 説明 |
---|---|
resourcename | 検証する Web サイト テンプレートの名前。 |
戻り値
有効な場合の、指定された Web テンプレートの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
例なし。
webStaticFileStr
指定した Web 静的ファイルがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webStaticFileStr(str pagename)
パラメーター
パラメーター | 説明 |
---|---|
pagename | 検証する Web 静的ファイル テンプレートの名前。 |
戻り値
有効な場合の、指定された Web 静的ファイルの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webStaticFileStr(AXEP);
print "string for web static file AXEP is " + s;
pause;
}
webUrlItemStr
指定した Web URL 項目がアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webUrlItemStr(class weburlitem)
パラメーター
パラメーター | 説明 |
---|---|
weburlitem | 検証する Web URL 項目の名前。 |
戻り値
有効な場合の、指定された Web URL 項目の名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webUrlItemStr(EPAdmin);
print "string for web url item EPAdmin is " + s;
pause;
}
webWebPartStr
指定した Web パーツがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str webWebpartStr(str resourcename)
パラメーター
パラメーター | 説明 |
---|---|
resourcename | 検証する Web パーツの名前。 |
戻り値
有効な場合の、指定された Web パーツの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
{
str s;
;
s = webWebpartStr(AxWebParts_cab);
print "string for web part AxWebParts_cab is " + s;
pause;
}
workflowApprovalStr
アプリケーション オブジェクト ツリー (アプリケーション エクスプローラー) でワークフロー承認の名前を文字列として取得します。
構文
str workflowapprovalstr(approval approval)
パラメーター
パラメーター | 説明 |
---|---|
承認 | ワークフローの承認のアプリケーション エクスプローラーの名前。 |
戻り値
ワークフローの承認のアプリケーション エクスプローラーの名前を表す文字列。
備考
リテラル テキストの代わりにこの関数を使用して、ワークフロー承認名を含む文字列を取得します。 ワークフローの承認が存在しない場合、関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次のコード例では、変数 str s を MyWorkflowApproval に設定します。これは、アプリケーション エクスプローラーでのワークフロー承認の名前です。
static void MyWorkflowApprovalStrExample(Args _args)
{
str s;
;
s = workflowapprovalstr(MyWorkflowApproval);
print s;
pause;
}
workflowCategoryStr
アプリケーション オブジェクト ツリー (アプリケーション エクスプローラー) でワークフロー カテゴリの名前を文字列として取得します。
構文
str workflowcategorystr(category category)
パラメーター
パラメーター | 説明 |
---|---|
カテゴリ | ワークフロー カテゴリーのアプリケーション エクスプローラーの名前。 |
戻り値
ワークフロー カテゴリのアプリケーション エクスプローラーの名前を表す文字列。
備考
リテラル テキストの代わりにこの関数を使用して、ワークフロー カテゴリ名を含む文字列を取得します。 ワークフローのカテゴリーが存在しない場合、関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次のコード例では、変数 str s を MyWorkflowCategory に設定します。これは、アプリケーション エクスプローラーでのワークフロー カテゴリの名前です。
static void MyWorkflowCategoryStrExample(Args _args)
{
str s;
;
s = workflowcategorystr(MyWorkflowCategory);
print s;
pause;
}
workflowTaskStr
アプリケーション オブジェクト ツリー (アプリケーション エクスプローラー) でワークフロー タスクの名前を文字列として取得します。
構文
str workflowtaskstr(task task)
パラメーター
パラメーター | 説明 |
---|---|
タスク | ワークフロー タスクのアプリケーション エクスプローラーの名前。 |
戻り値
ワークフロー タスクのアプリケーション エクスプローラーの名前を表す文字列。
備考
リテラル テキストの代わりにこの関数を使用して、ワークフロー タスク名を含む文字列を取得します。 ワークフローのタスクーが存在しない場合、関数は、コンパイル時に、構文エラーを生成します。 これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
次のコード例では、変数 str s を MyWorkflowTask に設定します。これは、アプリケーション エクスプローラーでのワークフロー タスクの名前です。
static void MyWorkflowTaskStrExample(Args _args)
{
str s;
;
s = workflowtaskstr(MyWorkflowTask);
print s;
pause;
}
workflowTypeStr
指定したワークフロー タイプがアプリケーション エクスプローラーに存在することを検証します。そうでなければ、コンパイラ エラーが発生します。
構文
str workflowTypeStr(str workflow)
パラメーター
パラメーター | 説明 |
---|---|
ワークフロー | 検証するワークフロー タイプの名前。 |
戻り値
ワークフロー タイプの名前。
備考
これは、コンパイル時関数です。 詳細については、「概要」を参照してください。
例
static void workFlowTypeStrExample(Args _args)
{
str s;
;
s = workFlowTypeStr(BudgetAccountEntryType);
print s;
pause;
}