読者です 読者をやめる 読者になる 読者になる

JobScheduler格闘戦記

(JobScheduler Job)
Winodws上でJOB実行といえば、タスクスケジューラが手軽で便利
とりあえず、バッチファイルでも作って定期実行には簡単でよいのですが、JOBの数が多くなってきたり依存関係ガー、祝日ガーとか一定規模を超えると非常に厳しくなります。
※というかなって、死にかけた

予算があれば、JP1!
それか使ったことはないけど、Microsoft System Center Orchestratorもいいかなっと思いましたが今回は、これも使ったことはないがOSSのJobSchedulerでJOB制御を行うことにしました。

www.atmarkit.co.jp
これを読む限りは、やりたいことは全部できそう
(これでイケマス!と断言したが記事読んだ程度、何とかなるだろ感覚)

やりたいこと

  1. JOBの単体実行
  2. 依存関係の設定
  3. 休日、祝日の定義
  4. JOBエラー時にエラーJOBからの再実行、スキップ
  5. JOBフローの可視化

などなど、JP1を使えば簡単に...ってことばかりです。

今回のシステムでは、Windowsです。
Windows環境にJobSchedulerを構築して、WindowsServerに対してJOB実行を行います。

日本語の情報が少なく苦労したので、日々格闘の戦記を残します。

【JobScheduler格闘戦記】JOEを使って単独JOBを作成 - orzmakoto’s blog
【JobScheduler格闘戦記】祝日カレンダーの作成 - orzmakoto’s blog

Lync SDKのContactCardを使う

(Lync SDK 2013 user ContactCard set user add)
Lync SDKWPFコントロールにContactCardがありますが、これの初歩的な使い方として、任意のユーザを表示させる実装が不明で悩んだのでメモ

UIコントロール

ツールボックスからContactCardを適当に配置

f:id:orzmakoto:20160228121754p:plain

実装

問題は、指定のユーザをどう設定するか

XAML上のContactCardに"Name"プロパティを指定します。

<controls:ContactCard HorizontalAlignment="Left" VerticalAlignment="Top" Name="ContactCard1"/>

ContactCard1に対してStringでユーザを設定します

ContactCard1.Source = "ninomiya@sample.com";

実行

デバッグで指定したユーザの情報が表示されていることが確認できます
f:id:orzmakoto:20160228122237p:plain


簡単なのはいいのですが、Object型のSourceにそのままユーザを設定すればいいとか逆にわかりにくい
あと、表示内容の変更とか出来ないのかしら。

Nugetパッケージマネージャーのインストールと更新オプションでハマった件

(nuget package manager install option dependency)
VS2015が出て半年が経ったこの頃、1年ほど前から社内でNugetの使用が検討&検証されていましたが本格導入が決まり、自社製の共通ライブラリからNugetpackage作成 → パッケージ参照に変更をやっていると、依存関係で古いバージョンがインストールされる自体が発生したので事象まとめ

作成したパッケージ

パッケージ名 最新バージョン 過去バージョン 依存関係
NinoInterface 2.0.0 2.0.0
1.1.0
1.0.1
1.0.0
なし
NinoLogLib 2.0.0 2.0.0
1.0.0
NinoInterface

事象

NinoLogLib(2.0.0)を追加した時に、依存関係に設定されているNinoInterfaceを追加するが、最新の2.0.0ではなく1.0.0が追加される

f:id:orzmakoto:20160218194932p:plain


なぜ?
これは、仕様であとからアップデートしろってことなのか?
それとも、パッケージを作る時のnuspecファイルを作り間違えてるのか?

続きを読む

VisualStudioで使ってる拡張機能

(VisualStudio Extensions)
VisualStudioの拡張機能使ってますよね? ブラウザとかエディタに拡張機能を突っ込んでコテコテな感じにして使うのが好きです。
※環境を変えた時は大変

VisualStudioは2010から拡張機能が使えるようになっていろいろ突っ込んでましたがバージョンを重ねるごとに追加する拡張機能がすくなっていきました。
あんま、コテコテに入れ過ぎると重くなる感があるので最近は少なめにしてますが3つは入れてます。

Indent Guides extension

スコープの範囲わかりやすいように、エディタ上に点線とか表示してくれます。
ネストの深さで色が変えれたり個人的に非常に見やすくなります。慣れるとコレなしだとダメですね。
同じ機能がProductivityPowerToolsにもありますが、いろいろ機能追加されすぎて微妙なのでシンプルにコレ

導入前 f:id:orzmakoto:20151124212854p:plain
導入後 f:id:orzmakoto:20151124213057p:plain
続きを読む