皆様、こんにちは!
ご存知だと思いますが、Dynamics 365 Business Centralの開発はエクステンション開発となっております。
Extension(エクステンション)とは何かを、まず解説していきます。言葉の意味として
ソフトウェア分野では、完成したソフトウェアに後から機能を追加するソフトウェア部品や追加された機能のことを、extension(エクステンション)あるいは拡張機能というそうです。
《IT用語辞典 e-Wordsより引用》
簡単にいうとBusiness Centralの標準機能以外の機能追加開発ってことですね。実はExtension開発はNAV2016から導入された新しい開発手法です。従来NAVのカスタマイズでは標準のソースコード(ロジック、翻訳など)を直接書き換えていました。Extensionを利用することで、カスタマイズ部分だけをパッケージ化することができます。これにより、アップデート対応が容易になり、パートナーはAppSourceで販売することもできるようになりました。
イメージ:
従来のNAV開発:
Extension開発:
Dynamics 365 Business Centralのエクステンションは二種類あります。
Per Tenant Extension (PTE):顧客ごとのカスタマイズ
AppSource Extension:Microsoft AppSourceで公開されたカスタマイズ
Microsoftにエクステンションを提出し、それぞれの規約に基づいて審査をして貰う必要があります。Marketing Validation Checklist
Technical Validation Checklist
AppSourceのイメージ:
https://appsource.microsoft.com/ja-jp/marketplace/apps?product=dynamics-365-business-central
それではPTEとAppSource Extensionの違いとは、具体的に何ですか。実際の開発では多くの違いがありますが、今回は最も基本的な部分からお話します。オブジェクトIDのレンジが違うことです。AppSourceエクステンション開発はグローバル中のパートナー向けだから、開発前にMicrosoftにIDを申請する必要があります。
オブジェクトID:
50.000-99.999:Per Tenant Extension Range (not AppSource).このレンジは、テナント/顧客ごとのカスタマイズ用です。パートナーは、顧客のニーズに合わせて拡張機能を開発できます。 (PTE)
1.000.000-60.000.000:Registered Solution Program (RSP) RangeNAVオンプレミス/ Business Central向けのISVソリューション用です。(AppSource)
70.000.000-74.999.999:Business Central AppSource RangeDynamics 365 Business Central Cloud カスタマイズ用です。(AppSource)
MS Docs:
Object Ranges in Dynamics 365 Business Central
先日公開したブログ「Dynamics 365 Business Centralエクステンション開発 – Hello Worldまでの一連の流れ」でのHello Worldプロジェクトを見てみましょう。
オブジェクトIDレンジの定義:app.jsonファイルで定義します。
オブジェクトIDの使用:PTEですので、5万番台
以上
コメント