全機能説明ガイド
平成30年2月
Wagby R8 対応版

2(本資料の位置づけ)

本資料では Wagby が提供する代表的な機能を紹介します。
ここに記載されていない業務要件も設定の組み合わせで実現できることがあります。詳細は Wagby パートナーへご相談ください。

3

WEB ブラウザ上で業務データを扱うことができます。

4

基本機能

業務データの基本操作
Wagby は Web ブラウザを使った業務データの登録、更新、削除、検索、表示処理を実現します。リポジトリ（設計情報）からすべての画面機能を完全自動生成します。

業務メニュー
画面遷移ボタン

画像も扱うことができます

統一感のあるレイアウトで見やすい表示を実現します※ モダンブラウザ（IE 11, Edge, Firefox, Chrome, Safari）に対応しています。

5

基本機能

標準的な検索＆一覧表示機能 [1]任意の項目を検索や一覧表示に利用することができます。項目名をクリックした並べ替え機能や、同時表示数の変更も標準で対応しています。

絞り込みのための検索条件も自由に指定することができます。数値や日付の場合は範囲検索を指定できます

項目名をクリックするとソートします
二回クリックすると逆順になります
画像も一覧表示させることができます

6

基本機能

標準的な検索＆一覧表示機能 [2]
一覧表示をグリッド形式で表示することができます。並び替え、列の移動、列幅の変更、列の非表示設定を利用者が自由に変更できます。ページネーションにも対応しています。

数字をクリックするとそのページにジャンプします

7

基本機能

標準的な検索＆一覧表示機能 [3]
一覧表示画面に簡易集計機能を用意できます。「売上一覧」などを実現できます。

多段レイアウト「最小値」「最大値」「平均値」「合計値」を表示することができます

8

基本機能

全文検索
文字列項目に全文検索を適用することができます。これによって大量データの超高速検索を実現します。添付ファイルの検索も可能です。

検索アルゴリズムは N-gram 方式 (bigram) を採用しています。内部では通常のデータ格納領域に加えて、全文検索用のインデックスファイル領域を用意します。

9基本機能スクリーンエディタによる画面レイアウト設計
統一感のある画面レイアウトをスクリーンエディタで作成できます。HTMLの知識は必要ありません。
このようなレイアウト定義もHTMLを意識することなく実現できます。
CSSを個別に指定することで、文字の大きさや色などを自由に設定できます。

10

業務データの入力チェック機能も充実しています。

11

入力支援機能必須チェック
項目の「必須チェック」を指定することで必須チェックが適用されます。

必須項目の場合、ラベルの色が変わります。
入力せずにカーソルを移動すると、リアルタイムにチェックされます。

エラーチェック時に警告メッセージが表示されますが、登録や更新は行えるという「警告モード」も用意しています。

12

入力支援機能その他のチェック
必須チェック以外にも、業務処理で必要と思われるさまざまなチェック機能を標準で提供しています。

チェック機能利用方法

文字数チェック

入力文字数の上限を指定します。

文字形式チェック

カタカナ、ひらがな、メールアドレスなど。半角カタカ
カタカナの区別も行います。

範囲チェック

年齢は0から130までといった条件を指定できます。

他項目との関連性チェック

この項目の値は、あの項目より大きくなければならないた条件を指定できます。

正規表現チェック

正規表現式を指定することができます。

禁止文字チェック

使用できない文字を予め指定することができます。複数止文字指定を行うこともできます。正規表現式も指定で開発者独自のチェック関数式と組み合わせることで、独自のチェック機能を定ことができます。（関数式については後述）13

入力処理を行いやすくする工夫も盛り込まれています。

14

入力支援機能

日付入力支援Wagby では多彩な日付入力支援機能を標準で提供しています。

カレンダによる日付の指定 (Date Picker)

リストボックスによる年・月・日の指定

入力欄の横に和暦を表示する

15

入力支援機能リッチテキストエリア
ワープロ感覚の文章を入力することができます。フォントサイズ、斜体、太字といった設定を行えます。

専用の入力欄が用意されます16

入力支援機能追記型リストボックス
一度入力したデータを簡単に選択できる機能です。新規データ追加も行えます。

一度入力したデータをリストボックスから選択するか、または新しく入力することができます17入力支援機能

入力可・不可の制御
選択肢の値によって、入力を制御することもできます。

入力可の制御入力不可の制御

18

入力支援機能ヘルプ機能
項目への入力方法を説明するためのさまざまなヘルプ機能を利用できます。

ヘルプボタン

入力欄へのメッセージ

マウスオーバー時のメッセージ

プレースホルダ

19

業務データの繰り返し（明細）にも対応しています。

20

入力支援機能繰り返し（明細）にも対応
N 回の繰り返し（明細）にも対応しています。登録数の制限はありません。
取得資格
資格名

取得日

備考

「追加」「挿入」ボタンを押すことで入力欄を増やすことができます。
（上限を設定することもできます）「ソート」ボタンも用意されます。

21

入力支援機能明細の複数行レイアウト
項目が多い場合、一レコードを複数行に配置することもできます。
横スクロールバーが表示されないため、使い勝手が向上します。

複数行にまたがって配置する場合、縦にならぶ項目を細かく指定できます。

22

業務処理で用いる、定型的な画面機能を標準で提供しています。

23

入力支援機能コピー登録
新規登録時に、あるデータのコピーを行わせることもできます。類似データの登録を効率よく行えるようになります。

詳細画面に「コピー登録」ボタンを用意した例

一覧表示画面に「コピー登録」ボタンを用意した例

コピー登録時には主キーに枝番を割り当てるという設定も行えます。

24

入力支援機能ウィザード
数多くの項目を入力させる場合、画面をウィザード形式で分割させることができます。
利用者の入力負担を軽減させることができます。

次へ

1前へ

2
次へ

前へ

次へ

登録・更新

4前へ

3

25

入力支援機能タブ
ウィザード形式との違いは、入力チェックのタイミングです。ウィザード形式では入力エラーを解消しないと次の画面へ進むことができません。タブ形式ではチェックは登録・更新のタイミングで行われます。

タブの中に、さらにタブを設定することもできます。
デフォルトタブの設定は固定だけでなく条件によって指定することもできます。
さらに条件によってタブ全体を非表示にすることもできます。

26

入力支援機能一覧更新
一覧表示画面から直接、データを更新することもできます。複数のデータを一括して取り扱う場合に便利です。

更新だけでなく、新規登録やコピー登録、削除も行うことができます。

27

入力支援機能一括削除・一括更新
一覧表示画面からデータを選択し、一括で削除または更新することができます。
（さらに一括帳票や、一括メール送信にも対応しています。）

対象を任意に選択できます。

28

入力支援機能論理削除
削除を意味する項目を用意することで、みかけ上、削除されたように見せる機能です。
業務管理者はデータの復帰や、物理削除を行うことができます。
一般ユーザは論理削除を有効にし、業務管理者は物理削除も行えるという設定ができます。

29

特徴的な入力支援機能も用意しています。

30

入力支援機能主キーの表現拡張
主キーは単一キー・複合キーに対応しています。順序を利用した自動採番も行えます。
さらに、その表現方法を自由に設定できます。

ゼロ詰め6桁
接頭語の付与日付の付与

さらに関数式を組み合わせて任意の主キー表現を行うことができます。
[関数式については後述]

31

入力支援機能

主キーへの枝番の設定「順序+枝番」といった設定が行えます。

順序+枝番3桁

アルファベットの枝番

枝番を複合キーの一部に含めることもできます。

32

入力支援機能郵便番号から住所を求める
日本郵政公社が提供する郵便番号データを同梱しています。郵便番号から住所を求める機能をご利用いただけます。（最新データをいつでもダウンロードできます。）

郵便番号を入力して「住所の同期」ボタンを押します。

郵便番号から住所が補完されます。

33

入力支援機能郵便番号から住所を求める [2]
郵便番号を途中まで入力した場合、複数住所の候補が表示されます。

郵便番号から住所の候補が表示されます。

34

入力支援機能ドラッグ＆ドロップでファイル登録
ドラッグ＆ドロップ操作でファイルを登録することができます。複数ファイルの一括登録も行えます。

ファイルの種類、サイズに制限はありません。（制限を付与することもできます。）

35

業務データ間の「関連」も自由に設定できます。

モデル間の連携

モデル連携の概要
業務システムでは、データとデータの間には何らかの「関係性」があります。Wagby ではさまざまな手法で、関係性を設定することができます。

参照

売上伝票

参照

顧客

顧客種別

商品イベントデータ。
日常の運用で発生する。リソースデータを参照する。
データ量は多い。

リソースデータ。
システム運用前に登録されている。
頻繁に変更されるものではないが、データ量は多い。

選択肢。リストボックス・ラジオ
ボタン・チェックボックス形式が用いられる。データ量は少なく、更新頻度も高くない。

37

モデル間の連携選択肢
選択肢の値や並びは、運用中に自由に変更することができます。

内容を自由に変更することができます
表示優先度の数字を設定することで並び替えも変更することができます
有効期限を指定することで、データの有効範囲を指定することもできます（例） 2018/01/01-2018/12/31

これを応用すると、将来有効になる選択肢を事前に設定することもできます。

38

モデル間の連携

別モデルの参照 [1]
別モデルの項目値を、リストボックス／ラジオボタン／チェックボックスの選択肢として参照させることもできます。

商品モデルの「商品名」を、別モデルの項目で選択できるように設定した例です。

39

モデル間の連携

別モデルの参照 [2]参照先のデータが大量の場合、サブウィンドウ検索を用いてデータを選択することもできます。

顧客を特定するために「検索」ボタンを押すと、顧客検索のサブウィンドウが表示されます。

40

モデル間の連携

別モデルの参照 [3]サブウィンドウ検索を用いて複数のデータを選択することもできます。

顧客を特定するために「検索」ボタンを押すと、顧客検索のサブウィンドウが表示されます。複数選択することができます。

41

モデル間の連携

別モデルの参照 [4]検索画面利用時はさらに、サジェスト機能を使って絞り込み検索を行うこともできます。

サブウィンドウを開くことなく、参照データを関連づけることができます。

42

モデル間の連携参照連動（ルックアップ）
別モデルの参照に連動して、関連する他の項目も自動で転記させることができます。

画面再描画なしで自動転記「得意先」を選択すると、すぐに「ご担当者」「取引区分」「TEL」「FAX」「税転嫁」といった項目が連動して変更されます。
Ajax 技術を利用することにより、画面の再読み込みを行うことなく、値の変更が行われます。

43

モデル間の連携

他項目の値によって選択肢を絞込む
ある値を選択すると、関連する（リストボックスの）値が自動的に変更する仕組みです。

営業担当部署で「営業一部」を選択すると...

「営業担当者」の選択肢の内容が変更されます。

44

モデル間の連携

他項目の値によって選択肢を絞込む
モデル間の関係性から、設定だけで絞込を実現します。

社員

顧客

社員名

営業担当部署部署 (dept)

営業担当者

部署
部署名

参照先項目名(社員の)「部署」(dept)

絞込項目名「営業担当部署」(dept)

顧客画面で営業担当部署を確定させると、その部署で絞り込まれた営業担当者（実体は社員モデルの社員名）が表示される仕組みを設定だけで実現できます。
SQLを記述することはありません。

45

モデル間の連携

外部キー連携1:Nの関係性を画面機能で表現します。親データが存在しなければ子データを登録できないといった、さまざまなルールを設定できます。

顧客情報の詳細画面に「サポート作成したサポート情報の詳細新規作成」ボタンが表示されます。 画面に「顧客詳細」ボタンが表示されます。
サポート情報は、必ず顧客画面から作成するルールになります。
このサポートは、どの顧客かを辿ることができます。

顧客情報では、関連するすべてのサポート情報が一覧表示されます。

46

モデル間の連携

外部キーで関連するモデルの更新
親モデル側の更新画面で、紐づく子モデルの更新を同時に行うことができます。

親モデルである「顧客」の更新画面で、紐づいている子モデル「サポート」情報を同時に登録・更新します。

47

業務データの管理に加え、複雑な「業務処理」を行うことができます。

48

業務処理の実現

自動計算機能項目同士の四則演算を行うことができます。繰り返しコンテナなどの明細データについてSUM, AVG, COUNT といった集合演算も行えます。

生年月日から年齢を求める。

明細の「小計」の和を「合計」とする。

49

業務処理の実現自動計算で使える関数
計算式にはExcel互換の関数を利用できます。（以下は提供する関数の一部を抜粋しています。）
数値ABS
CEILINGCOS
DEGREES
EVEN
EXP
FACT
FIXED
FLOOR
INT
LN
LOG
LOG10MODMROUND
ODD

PI
POWER
QUOTIENTRADIANSRANDRANDBETWEENROUNDROUNDDONWROUNDUP
SIN
SIGN
SQRT
TAN
TRUNC

日付時間
BETWEEN
TIME
BOMONTH
CLEARHMS
DATE
DATEDIFDATESTRINGDATETIMEVALUEDATEVALUEDAYEDATEEOMONTHFISCALYEAR
HOUR
MINUTE
MONTH※関数の詳細は http://wagby.com/manual8/function.html をご覧下さい。

MOVEHOUR
MOVEMINUTE
MOVESECOND
MOVEDAY
MOVEMONTH
MOVEYEARNOWSECONDTIME
TIMEVALUETODATETODAY
TOTIMEWEEKDAYWEEKNUM
YEAR文字列
ACCOUNTKANANORM
ANORMPARTCONCAT
EXACT
FIND
ISBLANK
JPKANANORM
LEFT
LEN
LOWER
MID
PADDINGPROPERRANDSTRREPLACEREPT
RIGHT
SUBSTITUTE
TEXT
TOSTR
TRIM
UPPERVALUE

50

業務処理の実現

自動計算の記述例
代表的な記述例を紹介します。

用途式の例

生年月日から年齢を求める

DATEDIF(${birth}, TODAY() ,"Y") + "年" + DATEDIF(${birth},
TODAY() ,"YM") + "ヶ月"日付から曜日を求める

CHOOSE(WEEKDAY(${syukka}), "日","月","火","水","木","金","土")ゼロ詰めの文字を作成する

PADDING("0", 4, ${productid})

条件によって算出値を変える

IF(${source}<10,100,IF(${source}<20,200,300))

明細レコードの合計を求めるSUM(${payment/amount},

51

業務処理の実現

画面遷移のカスタマイズ
Wagbyの「標準画面遷移」をスクリプトによってカスタマイズできます。独自ボタンの追加も行えます。

独自ボタンを押すと、同時にパラメータを渡す設定を行うことができます。

52

業務データの集計処理を行うことができます。

53

ビュー

集計ビュー 加算集計
集計ビューは、加算可能な項目（集計対象）を、ある切り口によって集計します。検索
条件を複数用意することで「○○別」といった絞り込みを行うことができます。

コンディション（検索条件）

ディメンジョンは同時に最大二つまで指定することができます。

54

ビュー

集計ビュー カウント
リストボックスやラジオボタンといった選択肢についての選択分布を示す集計を行うこともできます。（以下の例は「営業担当別地域区分集計」となります。）

集計項目：「地域区分」（ラジオボタンで選択される項目）

55

ビュー

集計ビュー 見栄えの調整
スタイルの指定で文字の大きさや色を調整し、見栄えのよい表を作成できます。

56

ビュー

集計ビュー グラフ [1]
集計ビューと同時に、グラフを出力させることもできます。

円グラフの場合は比率を算出します。

57

ビュー

集計ビュー グラフ [2]
主軸と第二軸を指定し、一つのグラフに同時に表示させることもできます。

気温と降水量を同時にグラフ表示した例です。

58

グループウェアの「スケジュール」機能のように、日付情報をもつ業務データを時系列管理できます。

59

ビュー

カレンダービュー 月別表示
カレンダービューは、時系列でデータを把握する機能です。「日付」をもったデータであればカレンダービューで表示することができます。

タイプ別表示絞り込
みやカレンダー移動、表示形式の変更と行った操作を行うパネルが用意されます。

タイトルをクリックするとそのデータの詳細表示画面が開きます。
日付をクリックすると日別表示カレンダー画面が開きます。

60

ビュー

カレンダービュー ポップアップ
月表示のカレンダーでは、タイトルをクリックすると内容がポップアップ表示されます。

61

ビュー

カレンダービュー ドラッグ＆ドロップ
カレンダビューでスケジュールをドラッグ＆ドロップで移動することができます。

62

集計、時系列表示に加えて地図上への表示機能も対応しています。

63

ビュー

マップビュー [1]検索・一覧表示・詳細表示・新規登録・更新画面に Google Maps を表示することができます。。

地図表示に加えて円バッファ作成、画像の重ね合わせ表示、範囲指定による検索など、さまざまな機能を提供しています。

64

ビュー

マップビュー [2]マーカー色指定や、ラインやポリゴンの同時表示機能も提供しています。

65

スマートフォン向けの専用画面を生成します。

66

スマートフォン

スマートフォンならではの使い勝手
スマートフォン付属のWebブラウザからログオンし、データ管理を行うことができます。

最新の iPhone, Android に対応しています。

67

任意の業務データをワークフロー化することができます。

68

ワークフローの動作イメージ
Wagbyのワークフローは任意のモデルに適用できます。内部ではワークフロー管理用の情報を別管理しています。

開始

終了

任意のモデル(イベント管理)フロー
イベントフロー
パターン

フロー
参加者

代理者

新規登録申請（フロー開始）
承認
差し戻し
却下
決裁（フロー終了）

69

設定の流れ
任意のモデル

1

WagbyDesigner「ワークフローを有効にする」を設定します。

フロー
パターン

フロー参加者

3

フロー参加者を決定します。Wagby標準のアカウントまたはグループを利用します。

代理者

Webアプリ42

フローパターンを決定します。
標準で用意されているパターン以外を任意に作成することもできます。
Webアプリ

申請および承認の「代理者」は、ワークフロー開始後に設定することができます。[任意]Webアプリ70

電子印影の利用
申請者、承認者ともに（事前に登録した）電子印影を使うことができます。

71

条件によってフローを分岐する「申請金額によって処理フローを変える」といった設定に対応できます。条件式は自由に設定できます。

72

CSV/XML形式データによる外部システムとのデータ連携機能を提供しています。

73

外部システムとの連携

CSV・EXCELファイルの出力と一括登録
データをCSV・EXCELファイル形式でダウンロードすることができます。さらにファイルを送信し、データの一括登録を行なうこともできます。

ダウンロード

CSV
Excel

編集

アップロード

帳票で利用…
別システムへ…

時間指定ジョブとして設定し、定期的に外部データを一括登録することもできます。

74

他製品と連携した帳票機能も実現できます。

75

帳票

EXCEL 帳票機能
EXCELで帳票レイアウトを指定できます。セル中にあるプレースホルダ（例：${customer_p.name}）が、実際のデータ（例：顧客名）に置換されます。

レイアウト、セルの色やフォントは自由に定義できます。
画面上の帳票出力ボタンを押すとサーバ上で Excel ファイ
ルが生成され、利用者に送られます。
利用者は Excel を使ってこのファイルを開き、印刷を行ってください。

プレースホルダを含んだテンプレートファイルが自動生成されます。（プレースホルダ入力の手間はありません。）

76

帳票PDFの生成
オープンソースの帳票ライブラリである JasperReports を使った PDF 生成を行うこともできます。

レイアウト、セルの色やフォントは自由に定義できます。
Wagbyが内部で管理する XML デー
タ表現を画面上に対応させることで帳票設計を行います。

※ JasperReports以外のPDF生成エンジンの利用についてはお問い合わせください。

77

帳票画面の印刷モード（簡易帳票）
別途、帳票レイアウトを指定することなしに、Web 画面の印刷モードを用意することができます。（そのまま印刷できるイメージでレイアウトされます。）
タイトルやメニューといった部品がすべて除外され、データのみの表示に特化した画面が表示されます。
Webブラウザから「印刷」操作を行うことで簡易帳票を実現します。

78

電子メールを活用した業務も実現できます。

79

メール送受信メール送信機能
データの登録や更新、削除時にメールを送信することができます。自動処理ならびに手動（ボタン操作）処理のいずれにも対応しています。

時間を指定してメールを送信することもできます。

メールの文面は自由に定義することができます。
メール文面に、データベースの値を埋め込むこともできます。

例えば、${customer_p.name} 様と書いておくことで、実際にはその部分に顧客名がセットされるようになります。

一般的な認証に加え、APOP認証、POP before SMTP 認証もサポートしています。

80

メール送受信メール受信機能メールを業務データとして取り込むこともできます。添付ファイルにも対応しています。
さらにメール本文のデータを自動解析して業務データ化することもできます。

メールの送信者や日付、本文といった各要素を、それぞれ業務データ項目に格納することができます。

さらに「項目名 デー
タ」という表記 (*) であれば、メール本文を業務データにマッピングさせることもできます。

DB「メール受信」ジョブを定期的に動作させることで、データの取り込みを実現します。

添付ファイルが複数、存在する場合にも対応しています。
(*) 表記ルールを詳細に指定することもできます。

81

社内で使うだけでなく、インターネット経由でご利用頂けます。セキュリティも万全です。

82

セキュリティ

ログオン認証Wagby で構築されたシステムは、最初にログオン認証画面が表示されます。
ログオン認証が成功しなければ、業務を行うことはできません。

パスワード変更は二重入力による確認を行います。パスワード自体はデータベース上に暗号化して保存させることもできます。

83

セキュリティ

ログオン認証
パスワードの運用はさまざまなルールを設定できます。

パスワードに有効期限を設定することができます。
有効期限内にパスワード変更を行わなければ、操作が制限されます。

過去パスワードと同じものは受け付けないといった、詳細な制限ルールを指定することもできます。

84

セキュリティ

ロールベースの権限管理 [1]Wagby の権限管理は「プリンシパル」を「ユーザ」に割り当てることで実現します。

ユーザに割り当てるプリンシパルは任意に設定できます。

利用者[ 割当 ]

プリンシパル（パーミッションの集合）[ 定義 ]

パーミッション
権限の基本単位。
画面やデータ項目毎に指定できる。

具体的な設定例：
利用者Aは社員情報の閲覧と更新を行なえますが、新規登録を行なうことはできません。
利用者Bは経理情報の閲覧と社員情報の閲覧を行なえますが、一切の更新処理ができません。

85

セキュリティ

ロールベースの権限管理 [2]
種別毎、機能毎、項目毎、グループ毎の権限管理設定を行うことができます。

(1)

利用者Aは顧客データと製品データを操作できるが、利用者Bは製品データにアクセスできない。
[データ種別毎の設定](2)

利用者Cは顧客データを閲覧できるが、登録と更新ができない。
[機能毎の設定](3)

利用者Dは営業日報データをすべて閲覧できるが、利用者Eは同データの中の「上司のコメント」という欄を閲覧できない。
[データ項目毎の設定](4)

利用者FはグループXに所属しており、同グループが登録したデータは閲覧できる。他のグループが登録したデータは閲覧できない。[グループ毎の設定]

86

セキュリティ

ロールベースの権限管理 [3]Wagby の操作ボタンも、ログオンユーザのもつプリンシパルによって表示が自動的に調整されます。

このデータに関する更新権限と削除権限をもっているユーザの場合、操作ボタンが表示されます。
権限がないユーザでは、ボタンそのものが最初から表示されません。

権限のないユーザがURLを直接、指定して更新画面を開こうとしてもサーバ側でセキュリティチェックがかかり、セキュリティエラー画面が表示されるため、安全です。

87

セキュリティ

外部の認証システムとの連携
Windows Active Directory や LDAP 認証機能を利用したログオンを実現することもできます。また、シングルサインオン (SSO) にも対応しています。

Windows
ActiveDirectory
Windows AD 上のアカウントでログオンできます。

LDAP
OpenLDAPなどのLDAPサーバ上のアカウン
トでログオンできます。

シングルサインオン
Spring Security を使ったシングルサインオン認証に対応しています。

※ 認証は Spring Security をベースにしたモジュールを提供しています。

88

認証と認可の対応に加えて「内部統制」にも配慮しています。

89

内部統制

マルチユーザ環境における操作記録
このデータを「誰がいつ作成し」「誰がいつ最後に更新したか」という記録を残しておくことができます。

「誰がいつ作成したか」という情報は、データの登録時に記録され、以後、変更されることはありません。

「誰がいつ更新したか」という情報は、データの更新毎に上書きされます。
手動で変更することはできません。

利用者は常に、このデータの更新状況を把握できるようになります。

90

内部統制

すべての操作記録をログに残す
ログオンからデータの閲覧、更新まで、すべての操作記録はログに残ります。さかのぼって調べることもできます。

誰が、いつ、どのデータを、どうしたか。
どのデータの、どの項目を、何から、何に、変更したか。

内部統制の監査で、Wagby で構築したシステムは十分、合格レベルに達しています。

91

データのバックアップおよびリストア処理にも標準で対応しています。

92

その他

データのインポートとエクスポート
Web ブラウザからデータのインポートとエクスポート操作を行うことができます。
エクスポートフォルダを外部メディアに保存することで、バックアップを実現します。

インポートフォルダに含まれるデータ数が表示されます。

対象データを個別に指定することができます。

スケジュール設定による自動運用も行えます。

93

ログオンアカウント管理機能も標準で提供されています。

94

その他

アカウント管理機能
Wagby では標準でアカウント管理機能が提供されています。管理者によるパスワードの強制変更や、アカウントのロックといった機能も含まれます。

標準のアカウントモデルに項目を追加（拡張）することができます。

アカウント毎に詳細な権限設定を行うことができます。

アカウント情報を CSV ファイルで用意し、一括登録を行うこともできます。

CSV

95

その他

パスワードリマインダ機能
パスワードを忘れたり、アカウントをロックされた場合でも、自分でパスワードを再設定する方法を提供しています。（システム管理者の手をわずらわせることはありません）

他者から悪用されないよう、セキュリティに配慮した方法を採用しています。

96

使い勝手を向上させるワンポイント機能も充実しています。

97

その他

パンくず情報の自動更新
Wagby では利用者の画面遷移記録を「パンくず」として追跡管理する機能も提供されています。

利用者はパンくずを直接クリックすることで、以前の画面に戻ることができます。

98

その他

ポータル画面
ログオン後にポータル画面を表示させることができます。独自のポータル部品を開発する拡張性も提供しています。

99

その他

利用者の好みに応じた画面表示
好みの配色イメージを選択することができます。

100

その他

ツリー形式のサブメニューサブメニューをツリー形式で表示させることもできます。

101

その他

マルチセッション
一つのブラウザでタブを開いたとき、それぞれのタブで Wagby アプリケーションにログオンすることができます。ログオン認証は、タブごとに独立して管理されます。

102

その他

ファンクションキー拡張
ファンクションキーを含む任意のキーイベントをハンドリングすることができます。例
えばF1キーを押すとメインメニューに戻るといった設定を行うことができます。

103

基幹システムを安全かつリーズナブルなコストで運用するための工夫があります。

104

負荷分散

クラスタリング運用のサポート
2 つの Wagby を（仮想的に）1 つのサービスとして運用することができます。

両方とも動作した状態です。（一方は待機系、ではありません。）
内部キャッシュの同期や、ロック情報の共有を行います。

105

クラウド

オンプレミス／クラウド環境での運用
Wagby で構築したアプリケーションはオンプレミス（自社内サーバ）、クラウドのどちらでも運用することができます。

Java が稼働する OS であれば、プラットフォームを選びません。

106

クラウド

さまざまなデータベースに対応
Wagby は商用データベース、オープンソースデータベースのいずれも幅広く対応しています。

※対応データベースを増やすこともできます。詳細はWagbyパートナーにお問い合わせください。

107

既存システム連携

複数データベース対応による既存システム連携
参照先のデータベースを複数指定することができます。既存システムのデータベースを直接、参照することができます。

108

外部のプログラムを呼び出すこともできます。

109

その他

外部コマンドの実行
Wagby では外部コマンドをスケジュールによって実行することができます。

指定した時間にジョブが起動されます。外部コマンドを実行できます。

外部コマンドやパラメータをジョブスケジュールに登録します。
コマンド終了時の内容をメールで送信させることもできます。

110

国際化にも対応しています。

111

国際化

一つのアプリで複数語に対応
ログオン時に言語を選択することができます。

ロケール（国に関する識別子）を判断します。

jaen

日本語

英語

開発者が適切なリソースファイル（国毎にまとめたメッセージ文字列）を用意することで、適切なリソースファイルが選択されます。日・英以外の各国リソースも設定できます。

112

ハイスペックな業務アプリケーション構
築のための、さまざまなノウハウが蓄積されています。

113

カスタマイズ

二つのスクリプト
サーバサイドJavaScriptと、クライアントサイドJavaScriptの両方を利用できます。
サーバサイドJavaScript

開発者が作成したJavaScriptコード
Javaオブジェクトを操作できる。

クライアントサイドJavaScript

Wagbyが生成したJavaScriptコードHTML要素を操作できる。

JavaScriptエンジン
Nashorn

JavaScriptエンジン

Java

WebブラウザOS/本番機OS/利用者端末

114

業務処理の実現

スクリプトによる複雑な業務処理「サーバサイドJavaScript」を利用して、自動生成されたコードを利用した複雑な業務処理を記述できます。

var total = 0;
var array = salesslip.precord; /* 明細情報 */for (var i=0; i<array.length; i++) {if (条件が成立) {total = total + (array[i].PPrice * array[i].PNumber);}}salesslip.totalPrice = total; /* 値を代入（セット）*/115

業務処理の実現

トランザクション
ある値を更新時、関連する他のモデルの値をまとめて変更する「トランザクション処理」もスクリプトで記述できます。

var suryou = zaiko.suryou;
var syukko_num = syukko.syukkoNum;
if (suryou - syukko_num < 0) {return "在庫 "+suryou+" に対して "+syukko_num+" を出庫しようとしました。";}
zaiko.suryou = suryou - syukko_num;
return null;

116

業務処理の実現

トランザクション – SQLとの併用
トランザクション処理で、SQLを組み合わせることもできます。

var sql ="SELECT ¥"p_number¥" FROM ¥"salesslip$precord¥"" +" WHERE ¥"id¥"=" + salesslip.id + " AND" +" ¥"precordjshid¥"=" + (precord.PNo - 1);
var o_PNumber = session.createSQLQuery(sql).uniqueResult();
var suryou = product4s.stock;var syukko_num = precord.PNumber - o_PNumber;
if (syukko_num !== 0) {if (suryou - syukko_num < 0) {return precord.PName + "の在庫 "+suryou+" に対して "+syukko_num+" を出庫しようとしました。";}
product4s.stock = suryou - syukko_num;
}

117

高度な機能

排他制御（ロック）
楽観ロックと悲観ロックの両方に対応しています。複数利用者の同時更新を安全に実現します。

楽観ロック

悲観ロック

同じデータの更新画面を、同時に複数の利用者が開くことができます。最初の更新者のみが書き込みに成功します。それ以外の更新はすべて失敗します。

同じデータの更新画面を開くことができる利用者はただ一人に限定されます。他の利用者は、そのデータを閲覧することはできますが、更新画面を開くことはできません。

118

高度な機能

データ辞書
項目に適用できるルールセットを事前に定義し、データ辞書として利用できます。
項目名や型情報に加え、Wagbyの豊富なプロパティをすべてルールセット化できます。

119

高度な機能

関連図
大規模アプリケーションでも開発者を支援する関連図表示機能を提供しています。

120

高度な機能

設計書の出力Wagbyの設計情報をExcel形式で出力することができます。

121

標準機能として用意されていない処
理もカスタマイズによって拡張できます。

122

カスタマイズWAGBYのアーキテクチャ
Wagby はSpring framework/Spring MVC/Spring Boot/Spring Security/Spring
Session/Spring Batch を中核としたアーキテクチャを採用しています。Spring は世界中のエンタープライズシステムで使われている技術体系であるため、将来にわたって安心して運用できます。

123

カスタマイズオリジナルの業務処理を追加開発
Wagby はカスタマイズ可能なコードを自動生成します。さまざまな拡張方法を提供しています。

Wagbyが生成した画面をカスタマイズしたい。

JSP JavaScript CSS独自に開発した画面を利用したい。

REST API“要望”

業務処理コードを追加したい。

サーバサイドJavaScript

画面遷移ルールを変更したい。

サーバサイドJavaScript

データベースを更新したい。

Java

バッチ処理を実現したい。

Java

124

カスタマイズREST API サーバとして利用する
Wagby は標準で REST API サーバとして動作します。

例えば
http://localhost:8921/wagby/rest/customer/newとアクセスすると、結果が JSON で返されます。
任意のクライアント (PHP/Ruby/Android/iPhone/C#/…) からWagbyを操作するアプリケーションを開発することができます。

125

カスタマイズWAGBY TESTING FRAMEWORK
E2E (End to End) テスト作成を支援するフレームワークを提供しています。

WTFはオープンソースのSelenideをベースとし、Wagby独自のテストを作成しやすくする工夫を行なったフレームワークです。Selenideよりも簡単にE2Eテストを作成できます。

126

カスタマイズ

機能追加を共同で開発できます。
Wagby への機能追加に、皆様が参加することもできます。カスタマイズではなくWagbyの標準機能を拡張することで、保守性が高まるメリットを享受できます。

Wagbyにこういう機能が欲しい！

ジャスミンソ
フトにつくってもらおう！

追加した機能は将来にわたってジャスミンソフトが保守していきます。
（共同開発方法の詳細については、ジャスミンソフトまでお問い合わせ下さい。）

127(FIN.)「全機能説明ガイド」R8 対応版
平成30年 (2018年) 2月
株式会社ジャスミンソフト