AX2012からは、X++プログラムをバッチで実行するには、Common Intermediate Language (CIL)を作成する必要が有ります。

 

各種チェックリストや、システム管理>定期処理>.NET Framework CILにコンパイル を実行した際に、以下のようなエラーが発生する場合があります。

<例1>CIL generation: Object reference not set to an instance of an object

<例2>

 

 

このエラーメッセージだけではエラーの原因が分かりませんが、

エラーの原因は以下のログファイルで確認することができます。

C:\Program Files\Microsoft Dynamics AX\60\Server\MicrosoftDynamicsAX\bin\XppIL\Dynamics.Ax.Application.dll.log

 

以下の例ではCustomerTransaction_CustSettlementLineクラスのnewメソッドが原因でエラーが発生しています。

 

 

CustomerTransaction_CustSettlementLineクラスのnewメソッドをコンパイルすると、

 

newメソッドでX++のコンパイルエラーが発生していることが分かります。

 

 

X++のコンパイルエラーを解決した後に、再度「.NET Framework CILにコンパイル」を実行ください。

 

 

<補足>

他に「.NET Framework CILにコンパイル」を実行していないにも関わらず、以下のエラーが発生した場合は、AOSの再起動で解決します。

“Another instance of CIL generation is already in progress. Please wait for the operation to complete before retrying.”