インポート/エクスポート時にSystem.Drawing.Graphics.CopyFromScreenにて例外が発生する

AX2009 SP1において表題の事象の簡易回避策の例をご案内します。 リモートデスクトップ経由でインポート/エクスポート機能を実行する際に、リモートセッションのWindowを閉じて再開しようとすると以下の例外が発生するケースが報告されました。   System.ComponentModel.Win32Exception: ハンドルが無効です。   場所 System.Drawing.Graphics.CopyFromScreen(Int32 sourceX, Int32 sourceY, Int32 destinationX, Int32 destinationY, Size blockRegionSize, CopyPixelOperation copyPixelOperation)   インポート/エクスポート処理実行中にリモートデスクトップセッションのWindowを閉じないという対処の他に、 AOSバッチサーバーにてバックグラウンド処理を実施させるよう以下の回避策があります。 クラス SysDataExport の runImpersonated メソッドにて true を返すようにし、 public boolean runsImpersonated(){    //return false;    return true; } かつインポート/エクスポート時に「AOSで実行」をチェックし、バッチ処理をスケジュールしますとAOSバッチサーバー上で(バックグラウンド)実行がなされます。 *** 変更は小さいですが、カスタマイズに相当しますので事象に遭遇された場合の対処方法として有用かどうか開発環境等で必ずご確認頂けますようお願い致します。

0

フォームのセットアップ/カスタマイズ機能に関して

フォームのセットアップ/カスタマイズ機能に関して。 Dynamics AXには、エンドユーザ様が、フォームのレイアウトを変更したり、フィールドを追加/非表示にする機能がございます。  (AX2009以前) フォームを右クリックして[セットアップ]  (AX2012)フォームを右クリックして[カスタマイズ] セットアップの機能は、エンドユーザ様が、自分に使いやすいようにフォームのレイアウトを変更する機能です。エンドユーザ様の方で、セットアップ機能を御使用になる場合は、「フィールドの非表示」や「同じグリッド内でのフィールドの表示位置の変更」のみに制限頂くことをお勧めいたします。もし、エンドユーザ様がグリッドにフィールドを追加されたい場合は、既にグリッド内に表示されているフィールドが属しているテーブルのフィールドのみに制限頂くことをお勧めいたします。また、全ユーザ共通で、フォームのレイアウトを変更する必要が有る場合は、AOT上でのフォームのカスタマイズか、セキュリティの設定で表示を変更頂くことを御検討頂きたいと思います。 セットアップ/カスタマイズ機能は、AOT上でのフォームのカスタマイズと類似していますが、以下のような制限がございます。(1) 別環境(検証環境から本番環境等)へ、セットアップ/カスタマイズした設定を、移行する機能は用意されていません。(2) フォーム等の定義が変更になれば、セットアップ/カスタマイズも再度設定する必要がございます。(3) フィールドの追加や移動を行うには、フォームの定義、テーブル、テーブル間のRelationship等を詳細に御理解頂いている必要が有ります。(4) AOT上でのフォームのカスタマイズでも実現できないような変更は、セットアップ/カスタマイズ機能でも実現できません。(5) セットアップ/カスタマイズで設定した情報は、使用状況データに会社単位、ユーザ単位に保存されます。また、特定のユーザのみで何らかの問題が発生する場合には、サポート担当から、使用状況データをリセット頂くことをお願いすることがございます。 (補足)AX2012R2で、セットアップ/カスタマイズでグリッドに追加したフィールドが、グリッドの左端に表示される既知の問題があります。6.2.1000.492以降のカーネルHotfixを適用頂くことで解決します。      

0

[Temporary Tableの全角/半角文字の区別]

データベース上に実際に存在しているテーブル(AX2009ではTemporaryプロパティがNoのテーブル。AX2012ではTableTypeプロパティがRegular又はTempDB)に対してクエリを実行した場合に、全角文字/半角文字を区別するかは、データベースの照合順序の設定(WS/WI)に従います。 しかし、AXのメモリ上にのみ存在しているTemporary Table(AX2009ではTemporaryプロパティがYesのテーブル。AX2012ではTableTypeプロパティがInMemory。)の場合は、常に全角文字/半角文字を区別します。 これは、AX2009以前のバージョンからのデザインで、日本では全角文字/半角文字を別の文字として識別する傾向が有るため、このようなデザインになっていると開発チームから回答を受けています。現時点では、将来バージョンでも、このデザインを変更する予定はございません。 もし、本件に関して、AX将来バージョンで何かご要望がございましたら、プロダクトサジェッションサイトから開発チームにご連絡ください。https://connect.microsoft.com/dynamicssuggestions  

0

5.0.1600.754 以上のカーネルビルドにおいてバッチダイアログ上のボタン表示が切れる問題

こんにちは。 AX2009 SP1 KB2762286 (Kernel Build 5.0.1600.754) の Kernel Hotfix 修正内容の問題により、バッチダイアログのボタン表示が途中で切れる問題が生じました。 (フォームの一例) この問題の対処のため KB2806731 にて X++ コードの修正が行われアプリケーションHotfix としてリリースされています。KB2762286 以降の Kernel Hotfix では KB2806731 をセットで適用するようにして下さい。サポートへのお問い合わせ時には合わせてご案内するようにしております。 なお KB2806731  はまだ Partner Source に公開されていません。お手数お掛けして恐縮ですが、ケースをオープン頂き Hotfix をリクエスト頂けますようお願い致します。

0

パフォーマンスモニターの使い方

こんにちは。 AOS サーバーのクラッシュ時などにリソース状態の確認を行うと有用な場合があります。ここではパフォーマンスモニターの使い方を簡単にまとめてありますので下記の添付ファイルをご参照下さい。 出典:Why does the server need to free resources and terminates client sessions?http://blogs.msdn.com/b/emeadaxsupport/archive/2009/06/08/why-does-the-server-need-to-free-resources-and-terminates-client-sessions.aspx パフォーマンスモニターの使い方.docx

0

DebugDiagによるクラッシュダンプ採取方法

こんにちは。 AOS や AX クライアントのクラッシュ時のメモリダンプ採取に便利な DebugDiag ツールの使用方法を簡単にまとめてあります。下記の添付ファイルをご参照下さい。 DebugDiagによるクラッシュダンプ採取方法.docx

0

AOS クラッシュ時の対処方法(AX 2009)

こんにちは。 AOS サーバプロセス(Ax32Serv.exe)がクラッシュした場合の対処、調査に必要な情報採取方法についてのまとめです。 1. まず以下のリンクに沿って、システムに不整合が生じていないことをご確認ください。 AX環境の不整合解消方法http://blogs.msdn.com/b/axjapan/archive/2010/11/29/10097675.aspx 2. それでも解消しない場合、最新のカーネル Hotfix の適用をご検討下さい。最新のカーネルでは多くの修正が含まれており、過去の AOS クラッシュ事象への修正も多く含まれています。カーネル Hotfix では既存のアプリケーションへの影響はありませんので検討して頂きたいと思います。 3. 最新カーネルの適用が不可であり速やかに調査開始が必要な場合、あるいは最新カーネルを適用したが問題が解決しない場合には以下の情報を採取してお送り下さい。(ファイルサイズが大きくなりますので専用のアップロードサイトをサポートエンジニアからご連絡致します) AOS サーバイベントビューアログ スタート>設定>コントロールパネル>管理ツール>イベントビューア “アプリケーション″を選択して右クリック「ログファイルの名前を付けて保存」を選択。ファイル名を指定して[保存]をクリック。 “システム”を選択して右クリック「ログファイルの名前を付けて保存」を選択。ファイル名を指定して[保存]をクリック。 クラッシュダンプの採取(右の3つからいずれか) レジストリ操作によってクラッシュ発生時に自動的にダンプファイルを生成する機能を予め仕掛けておくと便利です。 Windows Error Reporting機能を使用して、AOS(ax32serv.exe)のクラッシュダンプを取得する方法http://blogs.msdn.com/b/axjapan/archive/2011/12/16/windows-error-reporting-aos-ax32serv-exe.aspx既に仕掛けてある場合、イベントログでダンプファイルの出力箇所が分かりますのでお送り下さい。 DebugDiag ツールを使用する方法DebugDiag は GUI ツールであり簡単な操作でクラッシュダンプを採取することができます。 ダウンロードhttp://www.microsoft.com/download/en/details.aspx?id=26798 64 bit 版と 32 Bit 版がありますので選択して下さい。 使用方法DebugDiagによるクラッシュダンプ採取方法http://blogs.msdn.com/b/axjapan/archive/2012/04/19/debugdiag.aspx ADPlus.vbs (ADPlus) を使用する方法ADPlus でもクラッシュダンプの採取ができます。稼働中のプロセスにアタッチする必要があります。また採取中にログオフをすると ADPlus だけでなくアタッチされていたプロセスも終了しますので注意して下さい。 ダウンロードhttp://msdn.microsoft.com/en-us/windows/hardware/gg463009.aspx ADPlusを使用するにはインストーラにて Common Utilities > Debugging Tools for Windows をインストールするのみで結構です。…

0

Dynamics AX 2009 Rollup 8 (RU8) がリリースされました

こんにちは。 Dynamics AX 2009 Rollup 8 (RU8) がリリースされましたのでお知らせします。以下のリンクからダウンロード可能です。 Dynamics AX 2009 SP1 RU-8 (KB2677618) [Build # 5.0.1500.6491]https://mbs2.microsoft.com/Knowledgebase/KBDisplay.aspx?scid=kb;en-us;2677618 Dynamics AX 2009 SP1 RU-8 for Project Time Management (PTM) (KB2678991) [Build # 5.0.1500.6492]https://mbs2.microsoft.com/Knowledgebase/KBDisplay.aspx?scid=kb;en-us;2678991 Dynamics AX 2009 SP1 RU-8 for Professional Services Automation (PSA) (KB2678992) [Build # 5.0.1500.6493]https://mbs2.microsoft.com/Knowledgebase/KBDisplay.aspx?scid=kb;en-us;2678992 * なお Process Industry 版の RU8 については現時点でリリースされていません。情報入り次第お知らせします。

0

AX2009のアプリケーション個別Hotfixの適用に、X++ソースコードライセンスが必要な件

最近も、何度か「X++ソースコード」ライセンスをお持ちでない場合のHotfix適用に関して、御質問頂いていますので、説明させて頂きます。 お客様が「X++ソースコード」ライセンスをお持ちでない場合は、お客様環境に直接AX2009アプリケーション個別Hotfixを適用することはできません。これは、AX2009アプリケーション個別Hotfixはxpo形式で提供されており、「X++ソースコード」ライセンスが無い場合に、xpoが正しくインポートされないためです。パートナー様の環境等「X++ソースコード」ライセンスが有る環境にアプリケーション個別Hotfixを適用頂き、その環境のaodファイル(axsyp.aod,axglp.aod等)をお客様環境のファイルサーバにコピーすることで適用することが可能です。 「X++ソースコード」ライセンスが必要なのは、AX2009のアプリケーションの個別Hotfixです。カーネルの累積Hotfix及び Service Pack, Rollup等は「X++ソースコード」が無い場合でも適用可能です。 詳細は以下のホワイトペーパーの7ページを御確認下さい。<Servicing Microsoft Dynamics AX 2009>https://mbs.microsoft.com/downloads/customer/AX/WhitePapers/MicrosoftDynamicsAX2009PatchingWhitepaper.pdf

0

タスクレコーダ

AX2009(*1)の機能にタスクレコーダが有ります。タスクレコーダは、DynamicsAXクライアント上での操作を記録して、スクリーンショット付きのドキュメントを作成する機能です。タスクレコーダ機能を使用することで、再現手順を作成することが可能ですので、ご活用頂けると幸いです。 (使用方法)ツール>タスクレコーダ をクリック。 [レコードの開始]ボタンをクリック。 再現手順を実行します。 手順が完了した後、[レコードの停止]をクリックして、録画を停止。 以下のダイアログで[Yes]をクリック。 必要であれば、タスク名、タスクのメモを記入して[保存]をクリック。 [レコードされたタスク]をクリック。 保存したタスクを選択して[ドキュメントの生成]をクリック。 ドキュメントタイプにMicrosoft Office Wordを選択して[OK]をクリック。 メニューパスとスクリーンショットを含む操作手順がWORDファイルに出力されます。 (*1) AX4.0でもタスクレコーダの機能を追加することが可能です。Task Recorder for Microsoft Dynamics AX 4.0 Sevice Pack 1 and Service Pack 2 https://mbs.microsoft.com/partnersource/deployment/resources/productreleases/taskrecAX40sp1sp2.htm (How to document process steps outside Dynamics AX 2009)http://blogs.msdn.com/b/axinthefield/archive/2011/06/07/windows-7-how-to-document-process-steps-outside-dynamics-ax-2009.aspx  

0