2010/03/23

[BizTalk2009]BtsTaskによるバッチ作成

btstaskはBizTalkアプリケーションのインストール等をコマンドライン上で行えるコマンドラインツールです。
以下に自分の使用例を書いときます。




バインド設定を省いたアプリケーションのmsiファイルを作成する方法

  1. アプリケーションネーム(ここではBizApp1とする)を指定し、リソースXMLファイルを作成する。
    btstask listapp -a:BizApp1 -r:BizApp1_Resource.xml


  2. BizApp1_Resource.xml 修正する。

    <Resources>タグ以下の
    <Resource Type="System.BizTalk:BizTalkBinding"
    で始まるタグを削除する。

  3. エクスポート実行
    btstask ExportApp -a:BizApp1 -p:<MsiFileName> -r:BizApp1_Resource.xml


  4. バインドファイルもエクスポート実行
    btstask ExportBindings -Destination:BindFile.xml -ApplicationName:BizApp1


バッチ例

msiファイルとバインド設定ファイルをエクスポートする

@setlocal
@echo off

echo ##################################
echo %DATE% %TIME% Running export.bat
echo ##################################

REM !!!!You edit this block!!!!
call :SUB BizApp1
call :SUB BizApp2
REM !!!!You edit this block!!!!

@endlocal
goto :EOF

:SUB

set APP_NAME=%1
set MSI_NAME="%~dp0%1.msi"
set XML_NAME="%~dp0%1.BindingInfo.xml"
set RES_NAME="%~dp0%1_Resource.xml"


REM #### Resource.xmlを指定して、エクスポートします。
btstask ExportApp -a:%APP_NAME% -p:%MSI_NAME% -r:%RES_NAME%

REM #### バインド設定xmlをエクスポートします。
btstask ExportBindings -Destination:%XML_NAME% -ApplicationName:%APP_NAME%


msiファイルからBizTalkアプリをインストールする

@setlocal
@echo off

echo ##################################
echo %DATE% %TIME% Running create.bat
echo ##################################

REM !!!!You edit here!!!!
call :SUB BizApp1
call :SUB BizApp2
REM !!!!You edit here!!!!

@endlocal
goto :EOF

:SUB
set MSI_NAME="%~dp0%1.msi"
set APP_NAME=%1

echo ##################################
echo %MSI_NAME% %APP_NAME%
echo ##################################

REM #### msiファイルをローカルに展開する。
msiexec /i %MSI_NAME% TARGETDIR="%cd%" /qn

REM #### BizTalk アプリを作る
BTSTask AddApp -ApplicationName:%APP_NAME%

REM #### BizTalk アプリの設定をインポートする
BTSTask ImportApp -Package:%MSI_NAME% -ApplicationName:%APP_NAME% -o


バインド設定をインポートする

@echo off
@setlocal

echo ##################################
echo %DATE% %TIME% Running importBindings.bat
echo ##################################

REM !!!!You edit here!!!!
call :SUB BizApp1
call :SUB BizApp2
REM !!!!You edit here!!!!

@endlocal
goto :EOF

:SUB
set XML_NAME="%~dp0%1.BindingInfo.xml"
set APP_NAME=%1
btstask ImportBindings -Source:%XML_NAME% -ApplicationName:%APP_NAME%


msiファイルを使った対象BizTalkアプリを削除する

@echo off
@setlocal

echo ##################################
echo %DATE% %TIME% Running remove.bat
echo ##################################

REM !!!!You edit here!!!!
call :SUB BizApp1
call :SUB BizApp2
REM !!!!You edit here!!!!

@endlocal
goto :EOF

:SUB
set APP_NAME=%1
set MSI_NAME="%~dp0%1.msi"

REM #### アプリケーションを削除します。
BTSTask RemoveApp -ApplicationName:%APP_NAME%
BTSTask UninstallApp -ApplicationName:%APP_NAME%

REM #### msiファイルを削除します
msiexec /x %MSI_NAME% /qb

2010/03/19

[DynamicsAX2009]DocumentServiceClassのアップデート

AIFサービスのベースになっているテーブルの定義変更をした場合に
DocumentServiceClassのアップデートを行わなければならない。


Query復元

AOTのQueryオブジェクト上で Restore を実行

Document Service の更新

Ax<Table>Class より parm Method と set Method を消去する

  1. Ax<Table> ClassをAOT上で表示し、フィールド一覧を展開し、表示する。

  2. 変更フィールド名称が含まれている parm Method を消去する。

  3. 変更フィールド名称が含まれている set Method を消去する。

    例)
    Fooテーブルの Barフィールドに変更を加えたのなら、
    AxFoo ClassのparmBarメソッドを消去し、
    setBarメソッドを消去する。

Update document serviceを実行する

  1. Tool > Development tools > Application Integration Framework > Update document service を起動する。



  2. Service class name で サービス名を選択する。

  3. 変更内容がフィールドの削除だった場合は
    Regenerate data object classes にのみチェックを入れる。

    変更内容がフィールドの変更ないしは、追加だった場合は、
    Update AxBC classes にもチェックを入れる。

  4. OKを押す。

  5. 終わった後に ServiceのRefresh、
    AOTのノードでのCompile & Synchronize を実行する。

参考URL
http://msdn.microsoft.com/en-us/library/ee330229.aspx

2010/03/08

[DynamicsAX2009]AXのTableとDBを復旧させるための6つの事

DynamicsAXで開発をしていたり、
AOTからDBをいじりまくってたりするとよくTable周りでエラーが出る。
その場合にやるべき6つのことを書いておく。


DynamicsAXにログインしている人たちを全員ログアウトさせる。

これからやる作業は、やっている間にAXが操作されないほうがよいのでログアウトしてもらう。

Compile

AOTのルートで右クリックコンテキストメニューを出し、Compile を実行する。
ここでエラーが出たものは基本的に修正したほうがよいが、X++はインタプリタ言語なので現在エラーが出ている箇所以外のものは放置してもよい。

Synchronize

Data Dictionaryで右クリックコンテキストメニューを出し、Synchronize を実行する。
これでAXとDBとの同期化される。

Compile & Synchronize である程度のDBとのアンマッチ等のErrorやWaringは除去される。
あなたがインフラ担当ならば、昼休みと帰る前にこの二点はやっておいて損はない。

Index再作成

  1. AOSサービス停止

  2. Axapd.aoi ファイルを削除する。
    (Axapd.aoiはデフォルトで C:\Program Files\Microsoft Dynamics AX\50\Application\Appl\DynamicsAx1 にある。)

  3. AOSサービス再開(もしくはWindows再起動)

これで大抵のものは治るはず。
特にDBとAXのDataDictionaryのアンマッチ系はこれでほとんど治る。
それでも駄目なら・・・

クライアントキャッシュファイル削除

  1. AXクライアントを終了

  2. クライアントキャッシュファイル(.auc)を削除

    WindowsXPの場合: C:\Documents and Setting\<USER>\Local Settings\Application Data
    Windows2008の場合: C:\Users\<USER>\AppData\Local

Usage Data削除

  1. AXクライアントを起動

  2. Tool > Options を起動

  3. Usage dataを押す

  4. General をタブで Reset を押す




2010/03/05

[読書メーター]2010年2月読書まとめ

2月の読書数が13冊でした。
ラノベで冊数を稼いでる感じがいなめない。

ゼロ使17巻を図書館で借りれたので、無理矢理16巻まで再読しました。
(正直ちょっと辛かった)

後、ダン・ブラウンの天使と悪魔はお勧めですよ。
蘊蓄と冒険活劇の混合比率がいい感じです。

仕事関係で読了した本が1冊・・・しかもWindowsServer2008本。
仕事本の読了ってほんと難しい。
(好きなトピックだけ読んだら放置しちゃう)




2月の読書メーター
読んだ本の数:13冊
読んだページ数:3920ページ

ゼロの使い魔 17 黎明の修道女〈スール〉 (MF文庫J)ゼロの使い魔 17 黎明の修道女〈スール〉 (MF文庫J)
読みやすいなぁ。漫画より読みやすいかもしれない。
読了日:02月26日 著者:ヤマグチ ノボル
ゼロの使い魔〈16〉ド・オルニエールの安穏(ティータイム) (MF文庫J)ゼロの使い魔〈16〉ド・オルニエールの安穏(ティータイム) (MF文庫J)
17巻を読むために再読
読了日:02月26日 著者:ヤマグチ ノボル
ゼロの使い魔〈15〉忘却の夢迷宮(ラビリンス) (MF文庫J)ゼロの使い魔〈15〉忘却の夢迷宮(ラビリンス) (MF文庫J)
17巻を読むために再読
読了日:02月24日 著者:ヤマグチ ノボル
ゼロの使い魔14 水都市の聖女 (MF文庫J や)ゼロの使い魔14 水都市の聖女 (MF文庫J や)
読了日:02月23日 著者:ヤマグチノボル
ダーリンは外国人—外国人の彼と結婚したら、どーなるの?ルポ。ダーリンは外国人—外国人の彼と結婚したら、どーなるの?ルポ。
読了日:02月22日 著者:小栗 左多里
日本人の知らない日本語2日本人の知らない日本語2
1巻と同じくサクっと読めて爆笑できる&日本語について勉強してみたくなる。
読了日:02月22日 著者:蛇蔵,海野凪子
怨霊になった天皇怨霊になった天皇
読了日:02月20日 著者:竹田 恒泰
ゼロの使い魔13 (MF文庫J)ゼロの使い魔13 (MF文庫J)
読了日:02月19日 著者:ヤマグチ ノボル
ゼロの使い魔 12 (MF文庫J)ゼロの使い魔 12 (MF文庫J)
読了日:02月12日 著者:ヤマグチノボル
天使と悪魔 (下) (角川文庫)天使と悪魔 (下) (角川文庫)
騙された!小説家の言う真実は常に真実とは限らないな!だがしかし、綺麗に騙されることを望む自分がいる。後書きは良心だ!
読了日:02月10日 著者:ダン・ブラウン
Windows Server2008完全ガイドブックWindows Server2008完全ガイドブック
ドメインツリーの作り方が載っていたことが高評価。それ以外は普通の本。R2じゃないことに注意
読了日:02月09日 著者:岡崎 俊彦
天使と悪魔 (中) (角川文庫)天使と悪魔 (中) (角川文庫)
文章でも結構映像が浮かんでくるが、小説を読み終わったら映画を見たくなるなこれは。
読了日:02月05日 著者:ダン・ブラウン
天使と悪魔 (上) (角川文庫)天使と悪魔 (上) (角川文庫)
読了日:02月02日 著者:ダン・ブラウン



読書メーター