Designer:「業務の設定」画面を表示させる操作

以下の参考記事には「業務の設定」画面が登場し、入力パラメータ(業務変数)の定義と値のセットを行う記述があります。

参考記事

corabo:入力パラメータ付き画面を簡単設定

corabo+Designer:ファイル名にタイムスタンプ(システム日時)を付ける

 

この「業務の設定」画面を表示するには、クライアント(Designer)画面の左上にある、[業務の設定] リンクをクリックします。

f:id:xoblos:20201009164225p:plain

「業務の設定」画面が表示されます。

f:id:xoblos:20201009164308p:plain

画面右上の [?] をクリックすると、この画面についてのヘルプが表示されます。

Designer:値をセットした変数を使用する

値をセットした変数の使用法に関して解説します。

例えば、下図のような業務変数が定義されているとします。

 f:id:xoblos:20200929061741p:plain

メイン画面の [業務を実行する] で、値の入力画面がポップアップ表示されますので、「営業所」に値をセットして [続行] します。「SYS_DATE_TXT」、「SYS_TIME_TXT」はシステム変数なので、そのままの値(システム日付・時刻)を渡します。

 f:id:xoblos:20200929060839p:plain

さて、ここからは、実行時に渡された業務変数を使用する設定の解説です。

Excel表を生成」手順での設定を例にとります。出力設定のファイル名の欄に、業務変数「営業所」にセットされた値が展開されるよう設定してみます。

f:id:xoblos:20200929055609p:plain

ファイル名欄の右端の [▼] をクリックし、<編集...>をクリックします。

f:id:xoblos:20200929055627p:plain

「値の編集」ダイアログが表示されます。

f:id:xoblos:20200929055645p:plain

[業務の変数] タブの「営業所」をダブルクリックすると、上部のエディタに変数書式でセットされます。
f:id:xoblos:20200929055710p:plain

同様に「SYS_DATE_TXT」、「SYS_TIME_TXT」もダブルクリックしてセットし、周辺のファイル名やフォルダ名をエディタに入力して、出力ファイル名を編集します。
f:id:xoblos:20200929055813p:plain

編集が終わったら [OK] で、ファイル名欄に反映されます。 

f:id:xoblos:20200929055830p:plain

以上の例は、業務変数(入力パラメータ)を使用する設定の例ですが、このエディタを使って下部のタブを切り替えることによって、業務の変数(業務変数項目名変数独自変数)、作業変数環境変数の指定と編集が行えます。

また、この例の出力ファイル名だけではなく、「この手順の設定」内の欄右端 [▼] をクリックし、<編集...>をクリックし、「値の編集」ダイアログで編集のできる項目には、すべて変数の値をセットできますので、画面上からそのような項目を見つけてみてください。

参考記事

corabo:入力パラメータ付き画面を簡単設定

corabo+Designer:ファイル名にタイムスタンプ(システム日時)を付ける

Designer:変数の書式(種類別)

xoBlos クライアント、Designer で扱える変数には、いくつかの種類があります。

今回の記事では、変数の種類ごとにその書式をまとめてみました。

業務変数

$(val:"変数名") または $(val:変数名) 

$(val:"年度")

$(val:年度)

項目名変数

$(item:"項目名")

※基準ファイルに項目名がない場合は、項目順指定 $(item:"Item1")、$(item:"Item2") のように使えます。

$(item:"顧客コード")

$(item:"Item1")

作業変数

$(tmp:"作業変数名") または $(tmp:作業変数名) 

$(tmp:"在庫数")

$(tmp:在庫数)

環境変数

%環境変数名%

%ComSpec%

独自変数

入力ブック名、入力シート名

%BOOK%、%SHEET%

または

$(imval:"%BOOK%")、$(imval:"%SHEET%")

 ※抽出手順の出力ファイル名に使用できます。

 

抽出データ件数

$(X_rows:"ファイル名")

$(X_rows:"WORK\売上データ.xml")

 

繰返し回数

$(loop:初期値,増加量,前ゼロ幅)

$(loop:1,1,1)

Designer:既存ブック、シートに生成する

「Sheet1」って?

f:id:xoblos:20180427162052p:plain

上図は、単純な新規生成処理で取り扱われるシート達です。制御シートの設定内容と、雛形シートの最低限のレイアウトを基に、結果シートが作成されます。通常、新規生成要件の場合はこの三つのシートの内、「制御シート」と「雛形シート」を同一のブックに用意します。そして「結果シート」は、業務ファイル(.xob)の『出力設定』に新しいブックのシートとして設定しますね。

f:id:xoblos:20180427162059p:plain

xoBlos に新しいブックを作成させるのは、上図のように普段、私達が手動で空白のブックを新規作成するのと同じことになります。Excel の設定によって変わりますが、新規作成時には必ず「Sheet~」のシートがいくつか用意されます。Excel の仕様上、シートが一枚も存在しないブックという形態は、作ることができないのです。その為 xoBlos では、結果シートに最低一枚の「Sheet1」が作成される仕様になっています。

既存ブック生成という手段

f:id:xoblos:20180427162107p:plain

新規ブック生成と既存ブック生成は、上図のように設定が変わってきます。後者は、生成キーワード『区分』に分類見出しで設定した入力項目の値と、ブック上の値をマッチングさせる時に使いますね。

さて、よく考えてみましょう。既存のブックは帳票や資料、つまり元々は私達が手動で作成したものであり、空の「Sheet1」等も無く、必要なシートしか存在しないことが殆ど。‥‥ということは、新規ブック生成の際にも、必要最低限のシートしか持たない既存ブックに対し、既存ブック生成の設定方法で生成させれば、「Sheet1」が残る問題は解消されることになるのです!

業務ファイル(.xob)の在り方
手順1:予め雛形シートしか無いブックを用意し、出力先へコピーしておく手順2:既存ブック生成の方法で、コピーしたブックを雛形として生成を行う

なお、「雛形シートと既存ブックのシートが同じ名前で、業務ファイルの『c.ひな形シート名』項に設定したら、どちらのブックが優先されるの?」という疑問にお答えしますと、前者の雛形シート(制御シートも持ったブック)の方が優先されます。

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

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

f:id:xoblos:20200911114501p:plain

ウラオモテヤマネコの「ぞぶにゃん」という名前です。xoBlos の紹介資料などにもときどき登場するので、機会があったら見つけてみてください。

「ウラオモテヤマネコ」の名前の由来

Excelシートなど、ビジネスでは「」を多用する。

」は「ヒョウ」とも読むし、「オモテ」とも読む。「表(オモテ)」があれば「裏(ウラ)」がある。

ゾブロスでは、「」(Excelシート)と「」(XMLデータ)という、 データの両面性を利用し、ビジネスデータを表裏一体で活用する。

ウラとオモテを表現できる xoBlos キャラとして、 「ウラオモテヤマネコ」を発案(イリオモテヤマネコの文字り)。

「ウラオモテヤマネコ」は、神奈川県で生まれて、東京で育っているため、 横浜なまり、江戸っ子なまりもありますが、以下のような 沖縄方言もしゃべれるはずです。

ハイサイ 元気にしてる?

チバリヨー 頑張れ

メンソーレー   いらっしゃいませ

ナンクルナイサー なんとかなるさ

Designer:生成データに通し番号を付ける

目標(GOAL)

Excelシート生成時に、データに通し番号を振り付けます。

f:id:xoblos:20200907065314p:plain

入力データ(XML

f:id:xoblos:20200907065045p:plain

生成制御シート

f:id:xoblos:20200907065122p:plain

「固定値」キーワードに「%Row」を指定すると、

R1000001
R1000002

のように、先頭に「R1」が付いた6桁のレコード番号が生成されます。これを「取得データの切り出し」キーワードで3桁目から切り出して、数字だけにしています。

この番号はあくまでも入力データのレコード番号ですので、「DATA」以外の区分があると、通し番号にはなりませんので、その場合は別解の ROW() 関数をお使いください。

ひな形シート

f:id:xoblos:20200907065207p:plain

A3のセル書式は「標準」にしていますが、前ゼロを付けたい場合は「文字列」にしておきます。セルC3では、ROW() 関数(行番号を返す関数)を使って、通し番号を計算しています。

メンデレーエフの周期律表(1869年)

周期律表(periodic table)は、ドミトリ・メンデレーエフ(ロシアの化学者)が作成した、元素を原子量の順番に配列した表であり、配列された元素には、物理化学的性質に周期性が現れることを確認した表です。

メンデレーエフは、周期律表に沿って、まだ発見されていない元素が存在することを予言しました。メンデレーエフが周期律表を最初に学会発表したのは、1869年のことでしたが、彼が予言した通り、その後、発見されていなかった数々の元素の存在が確認されました。  

現在の周期律表

1 H 水素   2 He ヘリウム
3 Li リチウム 4 Be ベリリウム   5 B ホウ素 6 C 炭素 7 N 窒素 8 O 酸素 9 F フッ素 10 Ne ネオン
11 Na ナトリウム 12 Mg マグネシウム   13 Al アルミニウム 14 Si ケイ素 15 P リン 16 S 硫黄 17 Cl 塩素 18 Ar アルゴン
19 K カリウム 20 Ca カルシウム 21 Sc スカンジウム 22 Ti チタン 23 V バナジウム 24 Cr クロム 25 Mn マンガン 26 Fe 27 Co コバルト 28 Ni ニッケル 29 Cu 30 Zn 亜鉛 31 Ga ガリウム 32 Ge ゲルマニウム 33 As ひ素 34 Se セレン 35 Br 臭素 36 Kr クリプトン
37 Rb ルビジウム 38 Srストロンチウム 39 Y イットリウム 40 Zr ジルコニウム 41 Nb ニオブ 42 Mo モリブデン 43 Tc テクネチウム 44 Ru ルテニウム 45 Rh ロジウム 46 Pd パラジウム 47 Ag 48 Cd カドミウム 49 In インジウム 50 Sn スズ 51 Sb アンチモン 52 Te テルル 53 I よう素 54 Xe キセノン
55 Cs セシウム 56 Ba バリウム *ran ランタノイド 72 Hf ハフニウム 73 Ta タンタル 74 W タングステン 75 Re レニウム 76 Os オスミウム 77 Ir イリジウム 78 Pt 白金 79 Au 80 Hg 水銀 81 Tl タリウム 82 Pb 83 Bi ビスマス 84 Po ポロニウム 85 At アスタチン 86 Rn ラドン
87 Fr フランシウム 88 Ra ラジウム *act アクチノイド 104 Rf ラザホージウム 105 Db ドブニウム 106 Sg シーボーギウム 107 Bh ボーリウム 108 Hs ハッシウム 109 Mt マイトネリウム 110 Ds ダームスタチウム 111 Rg レントゲニウム 112 Cn コペルニシウム 113 Nh ニホニウム 114 Fl フレロビウム 115 Mc モスコビウム 116 Lv リバモリウム 117 Ts テネシン 118 Og オガネソン
*ran ランタノイド 57 La ランタン 58 Ce セリウム 59 Pr プラセオジウム 60 Nd ネオジウム 61 Pm プロメチウム 62 Sm サマリウム 63 Eu ユウロピウム 64 Gd ガドリニウム 65 Tb テルビウム 66 Dy ジスプロシウム 67 Ho ホルミウム 68 Er エルビウム 69 Tm ツリウム 70 Yb イッテルビウム 71 Lu ルテチウム
*act アクチノイド 89 Ac アクチニウム 90 Th トリウム 91 Pa プロトアクチニウム 92 U ウラン 93 Np ネプツニウム 94 Pu プルトニウム 95 Am アメリシウム 96 Cm キュリウム 97 Bk バークリウム 98 Cf カリホルニウム 99 Es アインスタイニウム 100 Fm フェルミウム 101 Md メンデレビウム 102 No ノーベリウム 103 Lr ローレンシウム