Miklix

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

出版された: 2025年2月16日 11:33:48 UTC
最終更新日 2026年1月12日 8:56:10 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企業に常勤している。ブログを書いていないときは、さまざまな興味、趣味、活動に余暇を費やしている。