Commonweal - ユーザーマニュアル
業務の言葉(業務データ辞書)と業務の構造(EDM)を、動いている実装と繋ぎ続けるためのガイドです。TALONで開発したシステムなら、機能設計書の自動生成までを同じ仕組みで行います。
1画面一覧
Commonwealの画面は10個あります。役割で3グループに分かれます。
| 画面 | 役割 | 主な利用者 |
|---|---|---|
| 機能設計書出力 | 機能を選んで設計書一式をZIP出力します | 全員 |
| セットアップ | 導入・更新時のモジュールセットアップ、メニュー登録、画面言語の切替 | IT |
| 業務データ辞書記入 | 現場部門向けの記入画面。意味の4欄とITへの申し送りだけを扱います | 現場 |
| 業務データ辞書宿題一覧 | 未記入のデータドメインが上に並ぶワークキュー。行ボタンから記入画面へ飛べます | 現場 |
| 業務データ辞書メンテナンス | 辞書の管理画面。物理属性・EDM属性の宣言・備考もここで編集します | IT |
| 業務データ辞書一覧 | 辞書エントリの横断照会 | 全員 |
| 業務データ辞書物理属性一覧 | 全辞書の物理属性名を横断検索します | IT |
| EDMメンテナンス | EDM(.a5er)の登録・差替 | IT |
| 照合除外メンテナンス | 照合の対象から外す列の宣言を一覧編集します | IT |
| 照合除外登録 | 機能が使うテーブル・列をカタログ表示してチェックで一括除外します | IT |
2設計書を出力する
- 機能ID・機能名・業務分類などで機能を検索します(機能IDはカンマ区切りの複数指定とLIKE検索の2つの欄があります)
- 設計書にしたい機能の行にチェックを付けます(複数選択できます)
- 「設計書出力」を押すと、選択した機能の設計書一式がZIPでダウンロードされます
機能横断のページ(機能一覧・機能依存ツリー・ER図・業務データ辞書索引など)は、選んだ機能の数に関わらず常に生成されます。複数選んだときは、その機能群を1つのまとまり(サブシステム)とみなして集約されます。1件もチェックせずに「設計書出力」を押すと「出力対象が選択されていません。」のエラーになり、ZIPは作られません。
▦検索条件とボタン
| 検索条件 | 説明 |
|---|---|
| 機能ID(IN) | 複数の機能IDをカンマ区切りで指定します(1件だけ書けば完全一致の絞り込みになります) |
| 機能ID(LIKE) | LIKE検索。ワイルドカード%は自分で指定します(例:SAMPLE_%) |
| 機能名 | 機能名で絞り込みます |
| アプリケーション区分 | 機能種別をリストから選びます(固定検索条件/フリー検索条件/検索子画面/検索ボタン無し) |
| 業務分類(大)(中)(小) | 業務分類で絞り込みます |
| 機能概要 | 機能概要のテキストで絞り込みます |
| 出力対象プロジェクト | 出力するEDM・業務データ辞書をプロジェクトで絞るチェックボックスです(機能一覧の検索結果は絞られません)。プロジェクトが未登録の環境では選択肢が出ません(10章) |
| ボタン | 説明 |
|---|---|
| 検索 | 検索条件で機能一覧を取得します |
| クリア | 検索条件をリセットします |
| 設計書出力 | チェックした機能の設計書ZIPを生成してダウンロードします(TALON標準の確定ボタン) |
| PDF出力/Excel出力 | TALON標準の一覧出力です(設計書の出力とは関係ありません) |
▦出力言語(日本語/英語)
HTMLとMarkdownは常に両方が出力されます。出力言語(見出しや注釈などのフレームワーク文言)は、利用者のロケールから自動で判定されます。
- TALON V6.2.7以降 — ログインユーザーのブラウザ言語が英語の場合、英語で出力されます(ユーザー個別)
- それ以前のバージョン(V5系〜V6.2.6) — サーバー(JVM)のロケールが英語の場合に英語で出力されます(サーバー全体)
3設計書の読み方(成果物の構成)
ダウンロードされるZIPのファイル名はCommonweal_design_YYYYMMDD_HHMMSS.zipです。展開するとindex.htmlがホームで、ここからすべての成果物に辿れます。
| ファイル | 内容 |
|---|---|
index.html |
ホーム。成果物へのカードと件数サマリ |
FuncDoc_機能ID_機能名.html |
機能ごとの設計書。画面ビジュアル・検索条件・項目一覧・依存関係・全設定を1ページに収録します |
Domains.html |
業務データ辞書索引。データドメインごとのカードに意味の4欄・物理属性・使用箇所を表示します |
EDM.html |
EDMページ。登録した図とエンティティ・属性の一覧 |
er-diagram.html / .a5er / .sql
|
物理データベース。選択した機能が参照する全テーブルのER図・テーブル定義・DDL。.a5erはA5:SQL Mk-2でそのまま開けます |
DomainMatrix.html |
マトリクス表示。業務データ辞書×機能、×物理列などの対応表(9章) |
FunctionList.html / FunctionTree.html
|
機能一覧と、呼出関係を展開した機能依存ツリー |
Compare.html |
差分設計書。過去のZIPと今回のZIPをブラウザ内で比較できます |
meta/*.md |
同じ内容のMarkdown版。生成AIに読ませる用途に向きます |
▦機能設計書(FuncDoc_*.html)の構成
| セクション | 内容 |
|---|---|
| ヘッダ | 機能ID・機能名・業務分類・管理者・機能概要・備考・データ版数 |
| 画面ビジュアル | 機能設定から組み立てた画面のスケルトン(フリーレイアウト・タブ・ボタン配置を実画面と同じように再現します) |
| 統計 | ブロック数・JS/SQLのコード量・参照先機能(検索子画面・LOOKUP・他機能呼出などの参照先の数)・被参照(他機能からの呼び出し数)のダッシュボード。依存関係タブの要約です |
| 依存関係タブ | 呼出元/参照先の機能・テーブル(読み/書きの分類と出典つき)・共通ライブラリ |
| コードブックタブ | ブロックのSELECT式・各種JavaScript・ストアドプロシージャ本体・共通ライブラリのソース一覧 |
| 全設定タブ | TALON設定テーブルの生の値(監査用) |
| データドメインタブ | この機能の項目と業務データ辞書の照合結果 |
- 非表示項目は実画面と表示が異なります — 明細・単票の中の非表示項目(コンポーネントが「非表示(HIDDEN)」または表示名が空欄)は、実画面には現れませんが、設計書では斜線パターンのセルとして描かれます。実画面に出ない設定も設計書では追えるようにするためです(検索条件エリアの非表示項目は、実画面と同じく出ません)
- コードブックタブは各コードが折りたたみで、見出しに画面設定上の名称と設定箇所(どの設定項目の、機能レベルかブロックレベルか)が併記されます。JavaScriptの「ライブラリ全て」を設定した機能では、そのTALON環境に登録されている全サーバJSライブラリのソースが並ぶため、コードブックが大きくなることがあります
-
ファイル名の文字置換 —
FuncDoc_{機能ID}_{機能名}.htmlの機能ID・機能名に、ファイル名やURLで使えない文字(\ / : * ? " < > |)、リンクを壊す特殊文字(# % & ')、空白・制御文字が含まれる場合、該当する文字は_(アンダースコア)に置換されます
▦ブロック番号の表記
設計書中の「ブロック番号」は、TALONの機能設定画面に表示されるブロック番号と同じ1始まりの番号です。SQL内のバインド変数%1_物理項目名%の先頭の数字も、このブロック番号を指します。項目情報の「並び順」もTALONの設定画面と同じ1始まりで表示します(内部データの0始まりではありません)。
▦画面ビジュアルのボタン・UIの表示条件
「設計書にボタンが出ない」「実画面と表記が違う」ときの手がかりです。まずは機能側の権限・非表示設定・画面種別を確認してください。そのうえで、次の2点は間違えやすいところです。
- グラフのみの機能 — グラフ/ガント/スケジュールのブロックだけで構成される機能では、標準のPDF出力/Excel出力ボタンは表示されません(単票・明細ブロックを含む機能でのみ表示されます)
- 「閉じる」と「戻る」 — TALONでは同一のボタン(呼出時は「戻る」表示)のため、設計書では「閉じる」表記に統一しています
▦機能間リンクの有効範囲
設計書から他機能の設計書へ張られるリンク(依存関係タブの呼出元/参照先、他機能呼出の呼出先など)は、リンク先の機能が同じZIPに含まれている場合だけ開けます。出力対象に選ばなかった機能へのリンクはリンク切れになります。関連する機能群はまとめて選択して出力することをおすすめします。
▦閲覧時のナビゲーション(ブラウザの「戻る」)
設計書内のリンクで別ページ・別セクションへ移動したあと、ブラウザの戻る/進むで戻ると、元のページのスクロール位置・選択していたタブ・開いていたカード(折りたたみ)が復元されます。大きな設計書でも「リンクを辿って読み進める→戻って続きから読む」という読み方ができます。
復元されるのは戻る/進むで再訪したときだけです。リンクから改めて開いた場合(新規の遷移)は、通常どおり先頭・既定の表示から始まります(アンカー付きのリンクはその位置へ移動します)。
▦差分設計書(Compare.html)の使い方
Compare.htmlは、本製品が出力した新旧2つの設計書ZIPをブラウザ内で突き合わせ、改修前後の差分を表示するページです。改修レビューや監査証跡(「この改修で設計は何が変わったか」の記録)に使えます。
- 出力ZIPを解凍し、
index.htmlのカード「差分設計書(ZIP比較)」またはCompare.htmlを直接ブラウザで開きます - 「旧ZIP(変更前)」「新ZIP(変更後)」の2つの枠に、本製品が出力した設計書ZIPをファイル選択またはドラッグ&ドロップで指定します(ZIPは解凍せずそのまま指定します)
- 「比較する」を押すと、機能・ドキュメント単位の追加/削除/変更が色分けで表示されます。変更のあったドキュメントは折りたたみを開くとセクション(見出し)単位に展開され、変更セクションは行単位の差分(追加行=緑/削除行=赤)が表示されます(セクションが非常に大きい場合は行差分を省略し「変更あり」として扱われます)。差分が無ければ「変更なし」と表示されます
- 結果が多いときは、一覧の上にある絞り込み(機能ID・機能名の部分一致、ドキュメント種別、「変更があるものだけ表示」)で見たいものだけを表示できます。絞り込みは表示を切り替えるだけなので比較のやり直しは不要で、「絞り込み解除」を押すと変更の無いドキュメントも含めた全件に戻ります(右側に「N件中M件を表示」と出ます)
- 比較の対象はZIP内の
meta/配下のMarkdown(各HTMLと同等の情報を持つAI向けの設計情報)です。機能は機能IDで対応付けられるため、機能名を変えてファイル名が変わっても同一の機能として比較されます - 取込時刻などのタイムスタンプは比較前にマスクされるため、再取込しただけの差は差分になりません
- 比較はブラウザ内で完結し、ファイルはどこにも送信されません。ネットワーク接続も不要です(ローカルで開いたままオフラインで動作します)
- 比較できるのは本製品が出力した設計書ZIPだけです。プランの異なるZIP同士を比較すると、プラン差で同梱されないドキュメントの分が追加/削除として表示されます(比較できる情報量は各ZIPのプランに従います)
▦AIに読ませる(meta/の活用)
出力ZIPのmeta/配下には、各HTMLと同等の情報を機械可読な形で収めたAI/LLM向けのMarkdownが同梱されます。
-
渡し方 — ZIPをそのまま(または
meta/配下を)生成AIに渡し、meta/INDEX.mdを起点に読むよう指示してください。HTMLを開かなくても設計書の全体を把握できる構成になっています -
警告もAIに伝わります — 業務データ辞書の警告(曖昧一致・未登録・実装とのズレ)は
meta/にも同じ内容で出力されます。警告ゼロの維持が、AIに渡すコンテキストの信頼性に直結します(リファレンスページの1章の「警告との付き合い方」) - 古い情報を流さない — 辞書に「突き合わせる相手のいない知識」を書くと、古くなっても検知されないままAI連携(RAG)に流れ続けます。記入の基準は4章を参照してください
-
プラン別の収録範囲 —
meta/のINDEX/FunctionList/FunctionTree/FuncDoc_*は①無償版から、ER.md/DomainMatrix.mdは②物理DB連携版から、Domains.md/EDM.md(辞書・EDMの意味情報)は③全機能版のみ同梱されます(トップページの1章の「プランと機能範囲」)
4業務データ辞書を書く(現場向け)
現場部門の方は「業務データ辞書記入」を使います。書くのはデータドメインの意味だけで、物理属性などのIT管理項目は表示されません。
- 業務的定義 — そのデータドメインが業務で何を意味するか
- ビジネスルール — 守られるべき決まり(例:取引倉庫Cは一意)
- 導出ルール — 値の算出方法(計算で決まるデータドメインのみ)
- 暗黙知・運用慣習 — 文書化されていない現場の常識
- ITへの申し送り — ITに伝えたいことをメモします。対応後にITが消し込みます
画面の上部には記入のめやすのバナーが出ます — 「この知は、動いているシステムのどこと突き合わせられるか?」という問いと4欄の言い換え、そして「はじめはデータドメイン名称と業務的定義だけでOK」という目安です(同じ言い換えは各入力欄の薄い文字とマウスオーバーにも出ます)。バナー右の「お手本を見る」を押すと、完成例3つ(顧客納期/引当可能数/得意先コード)と悪い例1つが記入欄と同じ並びで、それぞれ「なぜ良いか・なぜ足りないか」の一言付きで表示されます。表示専用なので記入中の内容は変わりません(「閉じる ×」または枠の外側のクリックで戻ります)。
どのデータドメインから書くか迷ったら「業務データ辞書宿題一覧」を開いてください。意味の4欄の記入状況が済/未で一覧になり、未記入の多いデータドメインが上に並びます。各行の「現場記入」ボタンでそのまま記入画面が開きます。
▦小さく始める(進め方と役割分担の目安)
辞書は現場部門が育て、取りまとめはIT部門が行う運用をおすすめします(製品が強制するものではありません)。現場部門は言葉の意味(業務的定義・ビジネスルール・暗黙知)を書き、責任部門の欄に担当部門を記録します。IT部門は設計書出力の実行、未登録項目の警告の棚卸し、技術項目の辞書登録や照合除外の整備を担当します。
最初から全項目を登録する必要はありません。小さく始めて大きくしていくのが実際的です。
- まず対象の機能を選んで設計書を出力します(辞書が空でも機能設計書は完全に出力されます)
- 業務データ辞書索引の「未登録項目」警告を次に意味を書くべきものリストとして、業務上重要なものから数件登録します(候補サジェストが手がかりになります)
- 作成日時・更新者などの技術項目は、辞書種別「その他(警告対象外)」への登録または照合除外で警告のノイズを除きます(5章・リファレンスページの1章)
- 出力のたびに警告の件数が減るのを確認しながら、語彙を広げていきます
- 語彙が揃ってきたらEDMを登録して構造の台帳を重ねます(6章) — EDMが未登録のあいだは「孤立ドメイン」警告が出ないので、辞書だけの期間も警告に煩わされません
Domains.html)の出力は③全機能版です(トップページの1章)。5業務データ辞書を管理する(IT向け)
IT側は「業務データ辞書メンテナンス」で辞書の全体を管理します。単票には現場画面と同じ意味の欄があり、下の物理属性明細がこの画面の中心です。
⌕既存のデータドメインを探して開く
検索条件のデータドメインコード欄の右にある検索ボタンを押すと、業務データ辞書の検索子画面が開きます。コードを覚えていなくても、メニューからメンテ画面を直接起動してその場でデータドメインを探し、編集に入れます。
- 子画面は開いた時点で登録済みのデータドメインが一覧表示されます(条件を入れずに眺められます)
- 絞り込みはデータドメインコード / データドメイン名称(どちらも部分一致)と辞書種別 / 責任部門(プルダウン)の4つです。一覧にはコード・名称・辞書種別・責任部門・プロジェクト・最終更新日が並びます
- 行の[選択]で子画面が閉じ、呼出元の検索条件にコードが入ります。そのまま「検索」を押すとそのデータドメインの単票が開きます
▦物理属性名
データドメインに実装上の名前をぶら下げます。ここに登録した名前が、設計書出力時に画面項目の表示名・物理名、テーブルの列名と自動照合されます。
- 1つのデータドメインに複数の物理属性名を付けられます(例:「倉庫」に
SOUKO_Cと「倉庫名」) - 同じ名前を特定のテーブルの項目に限定したいときは修飾別名(
テーブル名.項目名)で書きます。修飾がある列では無修飾の照合より優先されます - 備考欄には物理属性名の補足(なぜこの名前か、など)を残せます。設計書の辞書カードにも表示されます
⚠重複の警告
データドメイン名称が既に登録されている名前と同じで、しかもプロジェクトが重なる場合は、エラーになり確定できません(判定は大文字小文字と前後の空白を無視した完全一致。プロジェクト欄のチェックが1つも無い場合は「すべてのプロジェクトと重なる」扱いです)。メッセージに既存側の名称・コード・プロジェクトが出るので、そのデータドメインを開いて書き足すか、名前を具体化してください。名称を変えずに確定する場合や、未使用の名前へ変更する場合は止まりません。
双方のプロジェクトがまったく重ならない場合は同名でも登録でき、警告だけが出ます(別プロジェクトの別概念は正当で、出力時にも同居しないため)。プロジェクトの変更もこの判定を通ります — 同名がある状態でチェックを外して未設定にしたり、相手と重なるプロジェクトを足したりすると、その確定はエラーになります。なお複数のプロジェクトを同時に選んだ出力(またはプロジェクトで絞らない出力)では同名が同居するため、業務データ辞書索引(Domains.html)に「同名のデータドメインが複数プロジェクトに存在」の警告が出て、どちらが名前解決に採用されたか(データドメインコード昇順の先頭1件)が示されます。
データドメイン名称が、ほかのデータドメインの物理属性名として既に登録されている場合も、保存時に警告が出ます(保存は止まりません)。名前解決は①データドメイン名称→②物理属性名の順に見るため、この名称で登録すると、これまで②でそのデータドメインに解決されていた名前を①が先に横取りします — その名前で引かれていた画面項目やEDM属性の行き先が、保存した瞬間から新しいデータドメインへ移ります。メッセージには相手のデータドメイン(名称・コード・プロジェクト)と一致した物理属性名が出るので、相手のデータドメインを開いて書き足すか、名称をより具体的にするかを検討してください。別の概念であればそのまま登録して構いません。プロジェクトが重ならない相手は同じ出力に同居せず名前解決に影響しないため、参考情報として通知するだけになります。この警告は業務データ辞書記入・業務データ辞書メンテナンスのどちらで確定しても同じように出ます。
一方、同じ物理属性名がほかのデータドメインにも登録されている場合は、保存時に警告が出るだけです(保存は止まりません)。同名が複数のデータドメインに載っていると名前解決が曖昧になり、設計書の辞書整合性警告にも表出します。
「業務データ辞書物理属性一覧」では、全データドメインの物理属性名を横断して検索できます。物理属性名・EDM属性・辞書名・備考の部分一致(LIKE)で絞り込み、行の「業務データ辞書」ボタンでそのままメンテ画面へ飛べます。
▦技術項目(排他制御用の列など)の登録パターン
作成日時・更新者・更新回数のように、全テーブルへ機械的に入る技術項目をそのままにしておくと、業務データ辞書索引の「未登録項目」警告が大量に並び、本当に意味を書くべき業務項目が埋もれます。次のパターンをおすすめします。
- 辞書種別「その他(警告対象外)」のデータドメインを1つ作ります(例:名称
排他制御用項目) - そのデータドメインの物理属性名に技術列を並べて登録します(例:
CREATED_DATE,CREATED_BY,UPDATED_DATE,UPDATED_BY,MODIFY_COUNT)
これで該当の列は「未登録項目」警告から消えます。辞書種別「その他(警告対象外)」のデータドメインはEDMに配置しない前提なので、「孤立ドメイン」警告の対象にもなりません。
▦辞書種別を追加・変更する
辞書種別(分類待ち/識別子/カテゴリ/数量/金額/日付/テキスト/その他(警告対象外))は、TALONの汎用コードTLN_FUNC_DOC_DOMAIN_KINDで管理しています(記入画面から新規登録したデータドメインは「分類待ち」で始まり、ITが後から分類します)。業務に合わせて追加・変更するときは、TALON標準の汎用コードマスタメンテナンスで編集してください(専用の画面はありません)。
- 汎用コードマスタメンテナンスを開き、識別コード
TLN_FUNC_DOC_DOMAIN_KINDで検索します - 行を追加または編集します — KEY_CODE=種別のコード値(半角英大文字を推奨。例
RATE)/DSP1=画面に出る種別名(例率)/DSP2=英語出力のときの種別名(例Rate) - 確定すると、業務データ辞書メンテナンスの「辞書種別」プルダウンと設計書の辞書カードに反映されます
汎用コードマスタメンテナンスそのものの操作方法は、TALONマニュアル「8.1. TALON汎用マスタ変更」を参照してください。
6EDMを登録する
- A5:SQL Mk-2でEDM(エンティティと属性の図)を描き、
.a5erで保存します - 「EDMメンテナンス」で行を追加し、表示名と表示順を入力して
.a5erをアップロードします - 次の設計書出力からEDMページに図とエンティティ一覧が表示されます
- 属性のドメイン欄(A5:SQL Mk-2の属性の「ドメイン」列)に辞書のデータドメイン名を書くと、その属性が辞書へ自動リンクします
- 同じデータドメインを複数のエンティティに配置するときは、属性名の側に役割を書き(「顧客納期(予定)」「顧客納期(実績)」など)、ドメイン欄にはどちらもデータドメイン名そのもの(「顧客納期」)を書きます。役割は属性名が、意味はドメイン欄が担う分担です
- エンティティのコメントに
[機能ID]や[テーブル名]を書くと、関連機能・物理テーブルとして紐付きます
登録しただけの状態では、EDMと辞書・実装の繋がりは名前の一致による推定だけです。名前が違うために自動では繋がらない実装は、7章のEDM属性の宣言で確定的に繋げます。
.a5erを開いてリレーション線だけ表示され箱が出ないときは、A5:SQL Mk-2のER図メニューにある表示レベル設定を確認してください。ファイルの問題ではありません。▦作図要素の対応範囲(.a5erの読み込み)
アップロードした.a5erからは、エンティティ・属性・リレーションに加えて次の作図要素がEDMページに反映されます。普段どおりA5:SQL Mk-2で描いたものをそのまま登録できます。
| 作図要素 | 設計書(EDMページ)での扱い |
|---|---|
| ユーザー定義ドメイン | 属性の型にユーザー定義ドメイン(*ドメイン名の参照)を使っていても、そのドメイン名で業務データ辞書と照合されます。ドメインに定義した型(VARCHAR(10)など)はエンティティカードの属性に併記されます |
| 複合キーのリレーション | 複数の列で結ぶ関連は、列の対応(親列 → 子列, …)がmeta/EDM.mdの関連表に列ごとに出ます |
| 複数ページ | 2ページ以上で描いた場合は、ページごとに図を分けてページ名の見出しつきで縦に並べます |
| ビュー/図形/直線/コメント | EDM図に描画されます。ビューは破線の枠で表示され、定義したSQLはマウスオーバーで確認できます。コメントは付箋のように表示されます |
| エンティティのタグ/色 | タグは◈バッジとしてエンティティの上部に、前景色(枠・見出し)と背景色は図の配色に反映されます |
▦EDM図の見方(ビューアの操作)
設計書のEDM.htmlでは、ビューア上部のボタンで「+ 拡大」「- 縮小」「幅に合わせる」「原寸」を切り替えられ、枠内のドラッグまたはスクロールで表示位置を動かせます。大きな図は「原寸」で文字が読める実サイズに一発で切り替えられます(「幅に合わせる」で全体表示に戻ります)。
7EDM属性の宣言
6章でEDMを登録すると、属性のドメイン欄に書いた名前で辞書と繋がります。ここから一歩進めて、名前が違う実装(例:EDM属性「指定納期」を物理列NOKIで実装)も確定的に繋ぐのが、この章の宣言です。業務データ辞書メンテナンスの物理属性の行にあるEDM属性欄に、「この物理項目はどのEDM属性の実装か」を書きます。名前の一致による推定と違い、名前が違っていても繋がりが確定します。
-
属性名だけ書くと、同名の属性を持つすべてのエンティティに紐付きます(例:
安全在庫数) -
エンティティ名.属性名で特定のエンティティに限定できます(例:在庫.安全在庫数) - カンマ区切りで複数宣言できます。空欄なら従来どおり名前一致の推定だけが働きます
入力補助は二段構え
①打ちながら候補が出ます(サジェスト)。EDM属性欄に文字を打ち始めると、登録済みEDMに実在する属性名が候補に並び、打った文字を含むものに絞り込まれます。選ぶとその値が欄に入るので、名前を思い出しながら打つ必要がありません。
- 候補は属性名(無修飾)です。選べばその名前の属性を持つすべてのエンティティに繋がります。「商品コード」が受注・出荷・商品の3エンティティに出てくるなら、候補から
商品コードを選ぶだけで3つすべてに繋がります(点在する属性はこれが普通の姿です) -
特定のエンティティに限定したいときだけ
エンティティ名.属性名を手入力してください(例:受注.商品コード)。手入力した値も②の確定時検証にかかり、名前が違えば警告と候補の提示を受けられます - 候補は画面を開いた時点で読み込まれます。EDMを登録・差し替えた直後は、メンテ画面を開き直すと最新の候補になります
- 候補は開いているデータドメインのプロジェクトで絞られます。そのプロジェクトに属するEDMと、プロジェクト欄が空(共通)のEDMの属性だけが候補になり、別プロジェクト専用のEDMの属性は出ません。複数のプロジェクトに所属するデータドメインでは、それぞれのEDMの属性が合わせて候補になります。データドメインのプロジェクト欄が空のときは絞り込まず、登録済みの全EDMの属性が候補になります
- カンマ区切りで複数宣言している欄で候補を選ぶと、欄の内容全体がその候補に置き換わります(ブラウザの候補入力の仕様です)。2つめ以降を足すときは、選んだあとにカンマと続きを手入力してください
②確定時に検証します。EDMに無い宣言は警告(候補の提示つき)、無修飾で複数エンティティに存在する宣言は参考情報が出ます。手入力・貼り付け・Excel経由の一括投入など、①を通らずに入った値もここで検査されます。保存は止まりません。
宣言先のドメイン欄は宣言元と同じデータドメインに揃えてください。別のデータドメインに解決される場合も繋がりは従来どおり作られますが、確定時に「宣言先が別のデータドメイン」の警告が出ます(確定は止まりません)。設計書では、EDMページのガバナンス警告に「宣言元ドメイン/物理属性→宣言先エンティティ.属性→解決先ドメイン」が1行で並びます。辞書とEDMのどちらが古いのかを確かめて、ドメイン欄を直すか宣言を見直してください。ドメイン欄が空の場合はこの警告は出ません(「データドメイン未設定(属性)」が別に出ます) — ドメイン欄を空にしたまま宣言だけで実装をつなぐ使い方は妨げません。
宣言は設計書の4か所に表れます: 業務データ辞書索引のカード、EDMページの「物理実装」列、物理データベースの一致列、機能設計書の依存関係タブです。無修飾の宣言は、繋がった先のエンティティが4面すべてで全件並びます(商品コードの1宣言→受注.商品コード, 出荷.商品コード, 商品.商品コード)。EDM側の改名などで宣言先が無くなると、辞書整合性警告に「迷子」として一覧表示されます。
8備考タグで依存を宣言する
「どの機能がどのテーブルを読み書きしているか」は、ブロックのSELECT式・更新テーブル設定・JavaScript内のSQL・ストアドプロシージャ本体を解析して自動で組み立てます。ただし次のような依存は解析では拾えません。
- 変数連結でテーブル名を組み立てているSQL
- プロシージャから更に呼び出す別のプロシージャ、トリガ連動
- TALONの外で動いているもの(夜間バッチ・外部API・他システムのプログラム)が読み書きするテーブル
備考タグは、これを人が宣言するための入口です。機能設定画面の機能説明タブ > 備考にタグを書くと、解析で抽出したものと同じように依存関係タブ・ER図・マトリクスに取り込まれます。出典は「備考タグ [W:XXX]」の形で表示されるので、解析由来の依存と区別できます。
▦記法の要点
| 記法 | 意味 |
|---|---|
[R:テーブル名] |
読み込みのみ |
[W:テーブル名] |
書き込みのみ |
[WR:テーブル名] |
読み書き(RWも同義) |
-
1タグ1テーブルです。複数宣言するときはタグを並べます(
[R:T1][R:T2])。[R:T1,T2]のような並記はタグ全体が無視されます - 文章の中に埋め込んでも抽出されます(例:
排他制御で[W:LOCK_TBL]を更新する) - テーブル名には日本語も使えます(例:
[R:受注ヘッダ])。半角英数字と_ $ # .に加えて、ひらがな・カタカナ・漢字などの全角文字が使えます - 逆に区切り記号は使えません。半角/全角スペース・カンマ・読点・句点・中黒・ハイフン・和文括弧などを含めると、そのタグ全体が無視されます
- 全角入力(
[WR:TBL@2])も受け付けます(半角に直して扱われ、設計書にも半角で表示されます) -
実テーブル名そのものが全角英数字を含む場合(例:
受注ヘッダ2)も、そのまま[R:受注ヘッダ2]と書けます。突合はまず半角に直した名前で行い、見つからないときに書いたままの表記でも照合します。物理DBに実在すればリンクが張られ、ER図にも載ります(出典の表示は従来どおり半角に直した表記です) - スキーマ修飾(
SCHEMA.TABLE)は付けないでください。その名前のまま扱われ、物理DBのカタログと突合できず「DB未検出」になります - 複数DB接続を使う場合は
@接続番号で接続先を明示できます(例:[W:LOG_TBL@2])。省略時はその機能のアプリケーションタブのDB接続先(未設定なら主DB)に帰属します。@0は主DBの明示です -
実在確認は帰属した接続先のDBだけで行います。指定した接続先にそのテーブルが無いとき(接続先自体が未設定・接続できないときも含む)は、主DBに同じ名前のテーブルがあっても「DB未検出」になり、リンクは張られません。どの接続先を見に行ったかは「DB未検出」の横に
ACCESS_DB=Nと表示されるので、接続番号の書き間違い・DB接続先の設定漏れに気付けます
受理されない書き方の一覧や接続先の解決規則など、細かい仕様はリファレンスページの1章の「#7 機能 → テーブル(依存関係の抽出)」にまとめています。
▦運用例:TALON外のシステムのテーブル台帳を作る
既存の基幹システム・パッケージ・外部ベンダー製システムのテーブルも、CDataなどのJDBCドライバで接続したSaaS(Salesforceなど)のオブジェクトも、台帳用の機能を用意すればCommonwealの管理対象になります。サブシステム単位に「台帳だけを持つ機能」を作り、その備考にテーブル(SaaSの場合はオブジェクト)を列挙する方法です。
-
サブシステム単位に台帳用の機能を作ります — TALONの機能設定画面(デザイナ)で新規作成します(例:機能ID
DOC_SALES/機能名「販売サブシステム」)。設計書ではこの機能1件がサブシステム1つに対応します。機能概要にそのサブシステムの役割を書いておくと、そのまま設計書の説明になります - ブロックを1つ作ります(依存を汚さない定数SELECT) — TALONの機能にはブロックが最低1つ必要です。台帳用の機能では、実テーブルを参照しない定数だけのSELECT式にします(実テーブルを書くと、その参照が依存として設計書に出てしまいます)
-
機能説明タブの備考にテーブルを列挙します — そのサブシステムが読み書きするテーブルを備考タグで宣言します。読み書き両方するものは
[WR:]にまとめます - 設計書を出力します — その機能を選んで出力すると、宣言したテーブルが依存関係タブ・物理DB(ER図)・マトリクス(機能×物理DB)に反映され、業務データ辞書との照合対象になります。複数のサブシステムを同時に選べば、その和集合が1つのER図・マトリクスにまとまります
@接続番号)だけで宣言します。| 主DBの製品 | ブロックのSELECT式 |
|---|---|
| Oracle | SELECT 'X' AS DUMMY FROM DUAL |
| PostgreSQL / SQL Server / MySQL |
SELECT 'X' AS DUMMY(FROM句なし) |
DUALは依存解析でテーブルとして採用しない語なので、設計書のテーブル一覧・ER図には現れません。SELECT式を入力したら、ブロック設定画面の「SELECT式」タブで[項目情報生成]を押し、続いてブロック設定画面の[設定]、機能設定画面の[設定]の順に押して保存します(TALONがSELECT式から項目情報を作り直す手順です)。保存後に一度画面を開き、エラーが出ないことを確認してください。
備考の記入例:
販売サブシステム (パッケージ製品) が使用するテーブル。
[R:M_CUSTOMER] [R:M_ITEM] [WR:T_ORDER_H] [WR:T_ORDER_D] [W:T_SALES_SUM]
- 実在するテーブルはER図に定義が載ります — 列・データ型・主キー・外部キー・索引・コメントをDBのカタログから取得します。物理列と業務データ辞書の照合も、実在するテーブルに対して働きます
- 実在しないテーブルは「DB未検出」 — 接続していないDBのテーブルや打ち間違えたテーブルは、依存関係にだけ残ります(ER図には含まれません)。誤記や廃止済みテーブルへの参照に気付く手掛かりになります
-
複数のDBに分かれている場合 — 対象DBをTALONの複数DB接続に登録し、機能のアプリケーションタブでDB接続先を指定するか、タグごとに
@接続番号を付けます(例:[R:M_ITEM@2])。テーブルの実在確認はその接続先だけで行うので、接続先の登録が済むまでは「DB未検出」(ACCESS_DB=N)として扱われます -
SaaSを対象にする場合 — CDataなどのJDBCドライバでSaaS(Salesforceなど)をTALONの複数DB接続に登録し、備考タグの
@接続番号でオブジェクトを宣言します。CDataのドライバ経由であれば、ドライバのカタログから列・データ型・項目ラベル(論理名)・関連(外部キー)を取得してER図にも定義が載ります。ただしSaaS系のドライバは接続ごとに全オブジェクトのメタデータを読み込むため、初回の出力に時間がかかることがあります - それ以外の種別のドライバや、ドライバのカタログを取得できなかった接続先では、宣言したテーブルはテーブル名だけ(列定義なし)で扱われます。依存関係・マトリクス(機能×物理DB)には反映されますが、列情報が取れないため物理列と業務データ辞書の照合は働きません
- 台帳も配布できます — 台帳用の機能も通常のTALON機能なので、リポジトリ移送で出力・取込ができます。開発環境で整備した台帳を他の環境へ配る運用も可能です
9マトリクスとカバー診断
DomainMatrix.htmlには次の対応表が入ります(ページ上部のタブで切り替えます)。
- EDM×業務データ辞書 — 概念モデルのどの属性がどのデータドメインに対応しているか(EDMが未登録の環境ではこのタブは出ません)
- 業務データ辞書×機能 — データドメインがどの機能のどの項目で使われているか
- 業務データ辞書×物理DB — データドメインがどのテーブルのどの列に実装されているか
- 機能×物理DB — 機能がどのテーブルを読み書きするか
- 業務×カバレッジ — 各機能の項目のうち辞書に対応付いた割合(機能別カバレッジ)
「辞書に載っているのに実装がないデータドメイン」「実装されているのに辞書に載っていない項目」が定量的に見えるので、次に整備すべき領域の判断に使えます。
10プロジェクトで出力を分ける
辞書のデータドメインとEDMにはプロジェクトを設定できます(チェックボックスで複数選択可)。設計書出力の検索条件で出力対象プロジェクトを選ぶと、そのプロジェクトのデータドメイン・EDMだけが設計書に載ります。
- プロジェクト未設定のデータドメインは「共通」として常にすべての出力に載ります
- 初期状態は画面上プロジェクト未登録です。全社で1つの管理なら何もする必要はなく、プロジェクトの欄はラベルだけが表示されます(チェックボックスは出ません)
- 出荷時は実プロジェクトを同梱していません(プロジェクトは利用者ごとの運用データのため)。かわりにセットアップが識別コード維持行
PJ00(表示名が空のため画面のチェックボックスには出ません)を1行だけ自動登録しています - 出力を分けたくなったら、汎用コード
TLN_FUNC_DOC_PROJECTにプロジェクトを登録してください(手順は下記)。登録した分だけチェックボックスが現れます - 実プロジェクトを登録するときも
PJ00の行は削除しないでください(TALONデザイナで本製品の機能設定を保存する際の識別コード存在チェックに使われます。詳細はセットアップガイドの§2)
▦プロジェクトを登録する
プロジェクトは利用者ごとの運用データなので、専用の登録画面はありません。TALON標準の汎用コードマスタメンテナンスで、識別コードTLN_FUNC_DOC_PROJECTに1プロジェクト=1行で追加します。
- 汎用コードマスタメンテナンスを開き、識別コード
TLN_FUNC_DOC_PROJECTで検索します(PJ00の行が1件見つかります) - 行を追加して下表の3つを記入します。識別名称は既存行と同じ
設計書_プロジェクトのままで構いません(この識別コードそのものの名前です) - 確定すると、業務データ辞書メンテナンス・EDMメンテナンスの「プロジェクト」欄と、設計書出力の検索条件「出力対象プロジェクト」にチェックボックスが1つ増えます(画面を開き直すと反映されます)
| 記入する列 | 内容 | 例 |
|---|---|---|
キー値(KEY_CODE) |
プロジェクトコード。業務データ辞書・EDMのプロジェクト欄にはこの値が保存されます。短い半角英数を推奨します(大文字小文字は区別されます) | PJA |
表示値(DSP1) |
チェックボックスに表示されるプロジェクト名。英語の設計書でもこの値がそのまま出ます(英語で出したい場合は表示値自体を英語で登録してください。リファレンスページの1章) | 販売管理刷新 |
ソート順(DSP_SORT1) |
チェックボックスの並び順 | 10 |
汎用コードマスタメンテナンスそのものの操作方法は、TALONマニュアル「8.1. TALON汎用マスタ変更」を参照してください。
11困ったとき
| 症状 | 確認すること |
|---|---|
| 「設計書出力」を押してもZIPがダウンロードされない | 「出力対象が選択されていません。」と出た場合は、一覧の行を1件以上チェックしてください。メッセージも出ずダウンロードもされない場合は、ブラウザのダウンロードブロック(自動ダウンロードの制限)が疑われます。TALONサーバーを許可リストに追加してください |
| ZIPが壊れている/解凍できない | サーバーからブラウザへの受け渡しの途中で処理が中断した可能性があります。もう一度出力し、再発する場合はサーバーログを添えて開発元へお問い合わせください |
| 出力対象の一覧に出てこない機能がある | その機能に「管理者」が設定されていて、ログイン中の利用者が管理者と同じグループに属していない可能性があります(仕様どおりの動作です)。検索条件の絞り込みが厳しすぎることもあります — 機能ID(LIKE)はワイルドカード%を自分で付ける必要があります |
| ブロック番号が他のドキュメントと1つずれる | 設計書のブロック番号はTALONの機能設定画面と同じ1始まりです(3章)。内部の並び順(0始まり)をそのまま書いた資料とは1つずれます |
設定項目名がコード値のまま表示される(例:BUTTON_NEXT_3) |
製品の表示名辞書に未収載の設定項目です。多くは自動で名称に変換されますが、コード値のまま出る場合は開発元へお問い合わせください |
| 照合除外の登録画面で検索しても結果が出なくなった | 本製品の画面をTALONの機能設定画面(デザイナ)で編集・再保存すると、内部的な検索条件設定が失われて検索が動かなくなることがあります。本製品の機能はカスタマイズ(機能設定画面での再保存)をしないでください。発生した場合はリポジトリの再取込とセットアップの再実行で復旧します |
| ストアドプロシージャの本体が「取得できない」注記になる(MySQL) | MySQLでは、プロシージャのDEFINER以外の利用者が本体を読むにはグローバルSHOW_ROUTINE権限が必要です(ALL PRIVILEGES ON db.*では足りません)。TALONの接続ユーザーに付与してください |
| 設計書に辞書もEDMも出ない | ご利用のプランをご確認ください。またセットアップの「処理実行」が未実行だと辞書テーブルがありません |
| 辞書やEDMのメンテ画面が権限エラーで開けない | 対象テーブルの更新権限が付与されているか確認してください |
| 項目と辞書が対応付かない | データドメインの物理属性名と項目の表示名・物理名が一致しているか、照合除外に入っていないかを確認してください。特定のテーブルに限定するなら修飾別名を使います |
| EDM属性の宣言に警告が出る | 宣言した属性名が登録済みEDMに存在するか(エンティティ名の綴りも)確認してください。設計書の辞書整合性警告にも同じ内容が出ます |
| A5:SQL Mk-2でER図の箱が表示されない | A5:SQL Mk-2側のER図メニューにある表示レベル設定を確認してください |
| 英語に変換したのに日本語のまま | 画面を開き直してください。リポジトリ再取込後は再度「英語に変換」が必要です |
▦制限事項
- 出力できるのは本製品と同じTALON環境のデータベースに登録された機能設定だけです。別の環境の設計書を出力することはできません
- 本製品が行うのは設計書の出力だけです。設計書からTALONの機能設定を復元することはできません(入力には使えません)
- 画面ビジュアルは機能設定(静的なデータ)から組み立てたスケルトンです。動的な式(ボタン名の表示式・条件式)は固定値の表示になり、カレンダー/ガント/グラフは実データを反映しない固定のスケルトンです
- ストアドプロシージャ本体の解析はOracle/PostgreSQL/MySQL/SQL Serverに対応しています(それ以外のDBは対象外です)
- JavaScriptからテーブルにアクセスしている場合、そのテーブルがどのDB接続先のものかは接続を切り替えた位置から次の切り替えまでの区間で判定します。1つのスクリプトの中で複数の接続を引数で使い分ける書き方(接続情報を先にまとめて取得しておき、あとから別々の接続情報を渡してSQLを実行する等)では、テーブルの接続先を正しく抽出できないことがあります。接続を切り替える直前で接続情報を取得する順に書くか、機能説明タブの備考に備考タグ(
[R:テーブル名@接続番号]など)を書いて正しい帰属を宣言してください - 1回の操作で大量(数百件以上)の機能をまとめて出力すると、サーバーのメモリ使用量が増えることがあります。必要に応じて分割して出力してください