Miklix

Dynamics 365 の財務ディメンションのルックアップ フィールドを作成する

出版された: 2025年2月16日 11:33:48 UTC

この記事では、X++ コードの例を含め、Dynamics 365 for Operations で財務分析コードのルックアップ フィールドを作成する方法について説明します。


このページは、できるだけ多くの人がアクセスできるように、英語から機械翻訳されたものです。残念ながら、機械翻訳はまだ完全な技術ではないため、エラーが発生する可能性があります。もしよろしければ、こちらでオリジナルの英語版をご覧ください:

Creating a Lookup Field for a Financial Dimension in Dynamics 365

この投稿の情報は Dynamics 365 for Operations に基づいていますが、そのほとんどは Dynamics AX 2012 でも機能します (下記参照)。

最近、単一の財務ディメンション (この場合は製品) を指定できる新しいフィールドを作成するという課題がありました。もちろん、新しいフィールドでは、このディメンションの有効な値を検索できる必要があります。

これはテーブル内の通常の検索よりも少し複雑ですが、方法がわかっていれば、実際にはそれほど難しくはありません。

幸いなことに、標準アプリケーションには、ルックアップするディメンション属性を指定するだけで、この目的に使用できる便利なルックアップ フォーム (DimensionLookup) が用意されています。

まず、フォーム フィールド自体を作成する必要があります。これはテーブル フィールドまたは編集メソッドに基づくことができ、ルックアップ自体には関係ありませんが、何らかの方法で DimensionValue 拡張データ型を使用する必要があります。

次に、フィールドの OnLookup イベント ハンドラーを作成する必要があります。イベント ハンドラーを作成するには、フィールドの OnLookup イベントを右クリックし、[イベント ハンドラー メソッドのコピー] を選択します。その後、空のイベント ハンドラー メソッドをクラスに貼り付けて、そこから編集できます。

注意:これのほとんどは Dynamics AX 2012 でも機能しますが、イベント ハンドラーを作成する代わりに、フォーム フィールドのルックアップ メソッドをオーバーライドできます。

イベント ハンドラーは次のようになります (必要に応じてフォーム名とフィールド名を置き換えます)。

[
    FormControlEventHandler(formControlStr( MyForm,
                                            MyProductDimField),
                            FormControlEventType::Lookup)
]
public static void MyProductDimField_OnLookup(  FormControl _sender,
                                                FormControlEventArgs _e)
{
    FormStringControl   control;
    Args                args;
    FormRun             formRun;
    DimensionAttribute  dimAttribute;
    ;

    dimAttribute    =   DimensionAttribute::findByName('Product');
    args            =   new Args();
    args.record(dimAttribute);
    args.caller(_sender);
    args.name(formStr(DimensionLookup));
    formRun         =   classFactory.formRunClass(args);formRun.init();
    control         =   _sender as FormStringControl;
    control.performFormLookup(formRun);
}
BlueskyでシェアFacebookでシェアLinkedInでシェアTumblrでシェアXでシェアLinkedInでシェアPinterest にピン留めする

ミッケル・バン・クリステンセン

著者について

ミッケル・バン・クリステンセン
ミッケルはmiklix.comの開発者でありオーナーです。プロのコンピューター・プログラマー/ソフトウェア開発者として20年以上の経験を持ち、現在はヨーロッパの大手IT企業に常勤している。ブログを書いていないときは、さまざまな興味、趣味、活動に余暇を費やしている。