ファイルがないときに手順をスキップする(Designer)

目標(GOAL)

前段処理の状況によっては、入力ファイルや、変換用に参照しているマスターファイルが存在しないときがあります。また、ファイルは存在するが、サイズが0バイトで空のときもあります。これらのケースで、業務処理が停止してしまわないよう、該当手順をスキップします。

f:id:xoblos:20170304193552p:plain

「条件判定・待機」手順の設定

ファイルが存在しないときにスキップさせたい手順の直前に、ファイル存在チェックの条件判定手順を入れます。

f:id:xoblos:20170304193619p:plain

[エラー終了を許容しますか] 	はい
[最大待機時間]            0
[チェック条件]	   [...] ボタンでダイアログで設定

f:id:xoblos:20170304193633p:plain

ファイルが存在しないときにスキップさせたい手順の設定

f:id:xoblos:20170304193642p:plain

[判定条件]	[...] ボタンでダイアログで設定	
[手順名]		条件判定の手順名
[先行手順の条件が次のときに実行する]	
    [正常終了]	   はい
    [警告終了]	   いいえ

動詞・名詞分析手法

xoBlosで業務システムを構築していくとき、その前半の重要な局面として、調査・分析、要求・要件定義、設計の局面があります。これらの局面で、効果的な手法はないかと問われたら、筆者は「動詞・名詞分析手法」が手軽に始められて効果が大きいですよ、とお答えしています。

「動詞・名詞分析手法」は、ユースケース分析の手法にときたま出てくるもので、利用可能な関連のある材料(資料、文書、Excelファイル、データなど)を集め、その中のテキストから文字通り、動詞と名詞を抽出して分析する手法です。

予算編成業務 の例にあるような事例で考えてみましょう。

ある企業の予算編成業務で、材料(資料、文書、Excelファイル、データ、システム計画書・企画書)から、名詞・動詞を抽出したところ、下記の言葉が多い(頻出する)ことがわかりました。

【名詞】

申請書様式、予算申請書、データ、手作業、連結、全社データ、修正データ、差分、予算集計データ、経営企画部、組織レベル1、組織レベル2、審査、確定、確定版、予算承認通知書

【動詞】

作成する、提出する、アップロードする、集計する、閲覧する、確認する、連結する、ダウンロードする、承認する、通知する

動詞は、xoBlos corabo のWeb画面における、メニュー候補となる可能性が高い言葉です。名詞は、ファイル設計やデータ形式設計、ユーザー権限設計などに利用できます。

これらの動詞や名詞を、辞書(用語辞典)のようにまとめておくと、それだけでも実用的な開発ベースができあがります。

 ユースケース分析では、ユースケース図を描くことに主眼がいってしまいがちですが、完成した辞書(用語辞典)を基にして、まずテキストだけでユースケース(利用者シナリオ)をまとめてみましょう。

  1. 組織レベル1で、手作業で組織レベル2データを集計する。
  2. 組織レベル1で、予算申請書を作成し、アップロード(経営企画部に提出)する。
  3. 組織レベル1で、提出した予算申請書を閲覧して確認する。
  4. 経営企画部で、組織レベル1から提出された予算申請書を閲覧して確認する。
  5. 経営企画部で、組織レベル1データを連結して全社データを作成し、ダウンロードする。
  6. 経営企画部で、全社データの修正データ(差分)を申請書様式で作成する。
  7. 経営企画部で、作成した修正データ(差分)をアップロードする。
  8. 経営企画部で、全社データを集計して予算集計データを出力し、ダウンロードする。
  9. 経営企画部で、ボタン実行して審査後の予算集計データを確定する。  
  10. 経営企画部で、全社データ確定版を閲覧する。  
  11. 経営企画部で、ボタン実行して予算承認通知書を作成する。
  12. 組織レベル1で、予算承認通知書をダウンロードして閲覧する。

ここまでできれば、corabo 画面のメニューを考えたりするのは、あっという間です。

表内の罫線

コピーされる表とは。

f:id:xoblos:20170224142018p:plain

上図のようなそれぞれの期待結果を、xoBlos の生成業務にて、出力するとしましょう。既存情報(値マッチング)は一切無いものとして、雛形シートはどのように作成しますか?

f:id:xoblos:20170224142027p:plain

xoBlos の仕組み上、最低限必要なレイアウトのみ作成しておけば、生成の処理で読み込まれたデータ分、行や列を繰り返しコピーしていきます。上図のようにそれぞれ、コピー元のレイアウトを用意しておけば問題無さそうですが‥‥

f:id:xoblos:20170224142033p:plain

罫線の内容が、最初の期待結果と異なってしまいました。

罫線はどのセルが受け持っているかを考える

①を例に、期待結果に沿うような罫線の設定を行いましょう。1セルに対して単純に四角で囲っていないのがポイントです。

f:id:xoblos:20170224142039p:plain

上図、Aの黄塗り潰し部分を基準にします。先ず Bは、基準と同セルの上と左右に罫線を設定します。(赤○部分)これがコピーされていく内容であり、重要です。続いて B~C にかけて、基準の前後 2行目に表の終始用の線をそれぞれ設定します。そして最後に Dにて基準の前後 1行目を削除します。‥‥出来上がった Eは、単純に四角で囲った場合と見た目が同じになりました。しかし実際に行をコピーしますと、Gのような結果になります。見た目がどうであれ、罫線一本一本はどのセルを基準に設定されたものかの情報を明確に持つようになっています。

連続する(コピーされる)行と列を掴み取れれば、どんなに複雑な罫線ルールを持った表でも、適した作成が行えるようになるでしょう。xoBlos の生成手順で雛形シートを作成したら、先ず手動でコピーを試してみることをお勧めします。但し、行/列のコピー&ペーストで確認してはなりません。行/列のコピー挿入で確認するようにしてください。

f:id:xoblos:20170224145956p:plain

③の例になりますと、上図のような設定まで行うことになります!

数式の参照関係を調べる

 セル参照を使っている数式って多いですよね。

そして、そんな数式が多いシートでは、この計算式はどこのセルを参照しているの? このセルの値は、どの計算式で使われているの? といった調査に手間取ることが多いと思います。

f:id:xoblos:20170219183717p:plain

例えば、このシートのAB20のセルには、次の数式が入っています。

=ROUND(AL20 * 0.2, 0) * V20 - AJ1 - AJ2

数式で使っているセル参照を調べるには、該当セルをポイント後に、Excelメニューの [数式]-[参照元のトレース] をクリックすると便利です。セル間の関係を、矢印で視覚的に表示できます。

f:id:xoblos:20170219183725p:plain

逆に、セルの値がどこで使われているか調べたいときは、該当セルをポイント後に、[数式]-[参照先のトレース] を使います。

f:id:xoblos:20170219183736p:plain

参照のトレース矢印を消すには、[数式]-[トレース矢印の削除] をクリックします。

同じブック内の2つのワークシートを並べて比較する

シート数が多いブックを開き、シートを切り替えながらデータをチェックする。

結構大変なこの操作。特に、あるシートと別のシートを比較参照するケースも多いと思います。ちょっとしたExcel操作の工夫で、業務改善できますよ。

  1. 複数シートのあるブックを開く。
  2. [表示]-[新しいウィンドウを開く] を選択する。
  3. [並べて比較] をクリックする。
  4. 2つ開いたウィンドウで、シートを切り替えて参照する。

[同時にスクロール] も使ってみてください。

ウラオモテヤマネコの「ぞぶにゃん」

  本ブログの「プロフィール」画像のキャラクター

   https://cdn1.www.st-hatena.com/users/xo/xoblos/profile.gif?1479531710

ウラオモテヤマネコの「ぞぶにゃん」という名前です。
下記のURLにコーナーがあります。

ウラオモテヤマネコ
https://www.xoblos.com/xoblog_cat/cat

ネットワーク上のフォルダ/ファイル参照

セキュリティ例外設定との連携。

f:id:xoblos:20170209192758p:plain

f:id:xoblos:20170209192804p:plain

Designer からネットワーク上にあるフォルダ/ファイルを参照する際、参照パスの記述は上図のようにホスト名あるいは IPアドレスの 2パターンがあります。

しかし、この業務を corabo のサイトに紐付けた場合、corabo の取り扱うルートフォルダ「xoBlosFileRoot」とは別の領域を参照することになるので、下図の『セキュリティ例外設定』にて、アクセス許可を設定する必要があります。(各項の具体設定内容は、マニュアル「coraboご利用ガイド.pdf」の P.64 をご参照ください。)

f:id:xoblos:20170209200920p:plain

別のネットワーク上のフォルダ/ファイルの参照を許可する場合も、ローカル上のパス指定と同様で、特別な設定はありません。但し、冒頭の図で示した各パターンと一致していなければなりません(下図は IPアドレスで設定を合わせる例)

f:id:xoblos:20170209200925p:plain

アクセスを許可されていないようなエラーが出ましたら、参照元と参照先のいずれも、当該設定を確認してみましょう。