Dynamics 365 Business Centralの標準機能のソースコードを見る方法について

Dynamics 365 Business Central

Dynamics 365 Business Centralの開発中、非常に重要なポイントの一つは標準機能のソースコードを真似ることです。では、どうすればBusiness Centralの標準のソースコードを確認できますか?
今回のブログでOn-Premises、Docker、SaaSに基づくそれぞれの方法をご紹介いたします。

On-Premises

構築方法:ローカルでDynamics 365 Business Central On-Premises版を構築しよう!
もっとも簡単な方法で、お勧めします。Business Central On-Premises版の標準ソースコードがインストーラーファイルに保存され、最初に必要なバージョンのインストールファイルをダウンロードします。

Microsoft Dynamics Business Central 2020 Wave 1 Release(BC160)
https://support.microsoft.com/en-us/help/4549687/released-updates-for-microsoft-dynamics-365-business-central-2020
Microsoft Dynamics 365 Business Central 2019 Release Wave 2(BC150)https://support.microsoft.com/en-us/help/4501292/released-cumulative-updates-for-microsoft-dynamics-365-business
Microsoft Dynamics 365 Business Central 2019 Release Wave 2(BC140)https://support.microsoft.com/ja-jp/help/4528706/released-updates-for-microsoft-dynamics-365-business-central-2019
ダウンロードしたファイルを解凍します。

下記のようにBCインストールフォルダーが表示されます。

ソースコードファイルを探します。
Business Centralのエクステンションページでディフォルトでインストールされたエクステンションを確認することができます。

エクステンションページのアプリに合わせて”\Dynamics.365.BC.15445.W1.DVD\Applications”では各ソースコードのフォルダーが存在しています。

Business Centralのコアのソースコードは基本的に「Base Application」と「System Application」に分けられています。その他は追加機能です。
Base Application
例:”C:\Temp\Dynamics.365.BC.15445.W1.DVD\Applications\BaseApp\Source\Base Application.Source.zip”

System Application
例: ”C:\Temp\Dynamics.365.BC.15445.W1.DVD\Applications\system application\source\System Application.Source.zip”

ファイルを解凍します。
この二つのファイルに保存されたオブジェクトはBusiness Central標準のソースコードです。
実際、ソースコードを参照したいときに、Business Central On-Premises版をインストールする必要はありません。

例えばCustomer list:ソースコードを見ることができました。

Docker

構築方法:Dynamics 365 Business Central Docker環境構築
Docker構築コマンドサンプル:
$mylicense = “C:\Temp\Dynamics.365.BC.14238.W1.DVD\LegacyDlls\program files\Microsoft Dynamics NAV\160\RoleTailored Client\Cronus.flf”
$oldimagename = “mcr.microsoft.com/businesscentral/sandbox:jp”
$oldcontainer = “BCRelease0813”

if ($credential -eq $null -or $credential -eq [System.Management.Automation.PSCredential]::Empty) {
$credential = get-credential -UserName $env:USERNAME `
-Message “Please enter your Windows credentials.”
}

New-BcContainer -accept_eula -containerName $oldcontainer
-auth UserPassword -credential $credential
-alwaysPull -includeal
-licensefile $mylicense -imageName $oldimagename
-updateHosts `
-assignPremiumPlan
実はもう一つパラメータがあります。「-doNotExportObjectsToText」を追加するとソースコードを自動的にダウンロードしなくなります。
上記のようにDockerのコンテナが作成した後、”C:\ProgramData\BcContainerHelper\Extensions”に標準ソースコードも自動的にエクスポートされます。

フォルダーを開くと、ソースコードを見ることができます。

SaaS

参考記事:
Dynamics 365 Business Central SaaSトライアルテナント申請方法について
Dynamics 365 Business Central Admin Center (SaaSの管理センター)について
Dynamics 365 Business Central SaaSにDemoデータの投入する方法
Dynamics 365 Business Centralエクステンション開発 – Hello Worldまでの一連の流れ
SaaSのソースコードはVisual Studio CodeからダウンロードしたSymbolファイルに保存されています。

下記の三つのファイルです。

Appファイルを解凍します。

中のsrcフォルダーに標準ソースコードが保存されています。

標準のソースコード

以上

コメント

Copied title and URL