Pleasanterサイト仕様書パイプラインを再構築

生JSON取得(siteSettingJsons/)と設定分解(configs/)の保存先を分離し、
仕様書・概要書はClaudeが読み解いて執筆する方式に統一(機械生成の
generate-site-documentation.jsは不使用)。10サイト分のspec.md/
overview.mdを刷新し、サイト間連携をまとめたsite-relations_overview.md
を新規追加、全docsをPDF化した。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Kenichiro NOGI 2026-07-11 08:49:24 +09:00
parent 7582ac3046
commit 9bbc344137
49 changed files with 3156 additions and 464 deletions

View File

@ -1,7 +1,8 @@
{
"permissions": {
"allow": [
"Bash(node -c get-site-config.js)"
"Bash(node -c get-site-config.js)",
"Edit(/.claude/skills/pleasanter-site-spec/**)"
]
}
}

View File

@ -1,30 +1,36 @@
---
name: pleasanter-site-spec
description: Pleasanterのサイト設定JSONget-site-config.js / api-site-get の getsite レスポンスから、SiteSettingsを読み解いたMarkdown仕様書を生成し、Scripts/Styles/ServerScripts/Processesの抽出・編集・反映extract-site-config.js / build-desired-config.js / apply-site-config.jsを行う。また、技術仕様書とは別に業務担当者向けの概要書docs/site-{SiteId}_overview.mdを作成し、md-to-pdf.jsでPDF化する。「仕様書を作って」「サイト仕様書」「SiteSettingsをドキュメント化」「スクリプトを抜き出して」「プロセス設定を直して反映して」「概要書を作って」「PDFにして」「site-spec」等の依頼で使う。
description: Pleasanterのサイト設定JSONget-site-config.js / api-site-get の getsite レスポンスから、SiteSettingsを読み解いたMarkdown仕様書を生成し、Scripts/Styles/ServerScripts/Processesの抽出・編集・反映extract-site-config.js / build-desired-config.js / apply-site-config.jsを行う。また、技術仕様書とは別に業務担当者向けの概要書docs/site-{SiteId}_{サイト名}_overview.mdを作成し、md-to-pdf.jsでPDF化する。「仕様書を作って」「サイト仕様書」「SiteSettingsをドキュメント化」「スクリプトを抜き出して」「プロセス設定を直して反映して」「概要書を作って」「PDFにして」「site-spec」等の依頼で使う。
---
# Pleasanter サイト仕様書生成
`./configs/site-{SiteId}_latest.json``getsite` APIレスポンス、`Response.Data` 配下にサイト情報)を読み解き、
`./configs/site-{SiteId}_spec.md` として日本語のMarkdown仕様書を出力する。
`./siteSettingJsons/site-{SiteId}_latest.json``getsite` APIレスポンス、`Response.Data` 配下にサイト情報)と、
`./configs/site-{SiteId}_{サイト名}/``extract-site-config.js` による抽出済みScripts/Styles/ServerScripts/Processes
読み解き、`./docs/site-{SiteId}_{サイト名}_spec.md` として日本語のMarkdown仕様書を出力する。
この仕様書はClaudeが対話的に読み解いて執筆するものであり、機械的なテンプレート処理で自動生成するものではない
`generate-site-documentation.js` は過去に試みられた機械生成版で、サイト間の暗黙的な関連や業務的な類推まではできず
品質面の問題があったため現在のワークフローでは使用しない。削除はされていないが参照しないこと)。
## 入力の特定
1. ユーザーがJSONファイルパスやSiteIdを指定した場合はそれを使う。
2. 指定がなければ `./configs/site-*_latest.json` を探す。複数ある場合はユーザーに確認する。
3. `./configs/site-{SiteId}_latest.json` が無ければ、先に `node get-site-config.js` の実行を提案する
2. 指定がなければ `./siteSettingJsons/site-*_latest.json` を探す。複数ある場合はユーザーに確認する。
3. `./siteSettingJsons/site-{SiteId}_latest.json` が無ければ、先に `node get-site-config.js` の実行を提案する
(エンドポイントは `/api/items/{SiteId}/getsite` を使うこと。`/api/items/{SiteId}/get` はアイテム一覧取得APIであり別物なので注意
## 出力ファイル
`./configs/site-{SiteId}_spec.md`(既存があれば上書きしてよい)。
`./docs/site-{SiteId}_{サイト名}_spec.md`(サイト名は `configs/site-{SiteId}_{サイト名}/` のフォルダ名と揃える。既存があれば上書きしてよい)。
`docs/`フォルダが無ければ作成する。
## 仕様書の構成(この順番・見出しレベルを踏襲する)
```markdown
# サイト仕様書:{Title}SiteId: {SiteId}
- 取得元データ: [site-{SiteId}_latest.json](./site-{SiteId}_latest.json)
- 取得元データ: [site-{SiteId}_latest.json](../siteSettingJsons/site-{SiteId}_latest.json)
- 取得日時: {UpdatedTime}(サイト更新日時)/設定バージョン `Ver: {Ver}`
## 1. サイト基本情報
@ -129,8 +135,8 @@ description: Pleasanterのサイト設定JSONget-site-config.js / api-site-ge
### 出力ファイル
`./docs/site-{SiteId}_overview.md``configs/`ではなく`docs/`フォルダに置く。`configs/`は秘密情報を含み得るため
`.gitignore`済みだが、`docs/`配下の概要書・PDFは共有物としてGit管理対象にする想定
`./docs/site-{SiteId}_{サイト名}_overview.md``siteSettingJsons/`・`configs/`ではなく`docs/`フォルダに置く。
これらは秘密情報を含み得るため`.gitignore`済みだが、`docs/`配下のspec.md・概要書・PDFは共有物としてGit管理対象にする想定
`docs/`フォルダが無ければ作成する。
### 概要書の構成
@ -138,7 +144,7 @@ description: Pleasanterのサイト設定JSONget-site-config.js / api-site-ge
```markdown
# 概要書:{Title}
- 技術仕様(項目のシステム上の名称・設定値等)は [{spec.mdへのリンク}](../configs/site-{SiteId}_spec.md) を参照。
- 技術仕様(項目のシステム上の名称・設定値等)は [{spec.mdへのリンク}](./site-{SiteId}_{サイト名}_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
@ -169,12 +175,49 @@ description: Pleasanterのサイト設定JSONget-site-config.js / api-site-ge
- 複数サイト分をまとめて依頼された場合、共通する業務フローは重複して書いてよいが、各サイト固有の違い(段階数の違い、
追加の管理項目など)を各概要書の末尾で明示し、他サイトとの差分が一目で分かるようにする。
## 複数サイトの全体関連図site-relations_overview.md
`config.json``SiteId` に複数サイトが列挙されている場合など、「全体の関連図を作って」「サイト間の連携をまとめて」
等の依頼があれば、個々のサイト仕様書とは別に `./docs/site-relations_overview.md` を作成する。対象は
`config.json``SiteId` に列挙された全サイト(または依頼で指定された範囲)。
### 出力ファイルと構成
`./docs/site-relations_overview.md`(同名`.pdf`も作成対象。以下を1枚で俯瞰できるようにまとめる。
```markdown
# サイト関連図:{システム名など}
## 1. サイトツリーParentId
`ParentId` を辿った親子関係を、簡易的なツリー表記かMermaid `graph` で図示。
ードにSiteIdとサイト名Titleを併記
## 2. サイト一覧
SiteId/サイト名/役割1行の表。概要書へのリンクも併記
## 3. 明示的な連携Links
(各サイトの`Links`設定を 起点サイト/起点列/参照先サイト/参照先の値→コピー先 の表にまとめる。
Idではなくサイト名で表現し、業務的に何を自動反映しているかも一言添える
## 4. 暗黙的な連携ServerScriptsのハードコード参照
ServerScripts内で`items.Get(SiteId)`等により直接SiteIdを指定して他サイトを参照している箇所を洗い出し、
起点サイト/参照先サイト/該当スクリプトファイル/目的(推測) の表にまとめる。
正式なLinks設定には現れないため、レビュー上重要な情報として明記する
```
### 作成時の注意
- 各サイトの `spec.md`7. 他サイト連携で洗い出した内容を集約すればよい。個別spec.mdより先に全サイト分の
spec.mdを作成しておくと効率的。
- サイト名はTitleを使い、SiteIdは補助情報として併記する概要書と違い、こちらは技術仕様書寄りの位置づけのため
SiteId自体は隠さなくてよい
## PDF化
概要書または他のMarkdownをPDF化する依頼があった場合は、プロジェクトルートの `md-to-pdf.js` を使う。
```
node md-to-pdf.js ./docs/site-{SiteId}_overview.md
node md-to-pdf.js ./docs/site-{SiteId}_{サイト名}_spec.md ./docs/site-{SiteId}_{サイト名}_overview.md
```
- 追加npmパッケージ非依存本プロジェクトに`package.json`が無いことに合わせた設計。Markdown→HTML変換は
@ -192,7 +235,7 @@ node md-to-pdf.js ./docs/site-{SiteId}_overview.md
仕様書化とは別に、「スクリプトを個別ファイルに分けて」「プロセス設定を直して反映して」等の依頼では、
以下のツールチェーンを使う(詳細は `README.md` 参照)。
1. `node get-site-config.js``configs/site-{SiteId}_latest.json` を取得し、続けて自動的に抽出も行う
1. `node get-site-config.js``siteSettingJsons/site-{SiteId}_latest.json` を取得し、続けて自動的に抽出も行う
`extract-site-config.js` が内部から呼ばれ、`configs/site-{SiteId}_{サイト名}/` に以下を分割保存する。未取得なら先にこれを実行)
- `scripts/{Id}_{Title}.js`(クライアントスクリプト本体)
- `styles/{Id}_{Title}.css`(スタイル本体)
@ -220,4 +263,4 @@ node md-to-pdf.js ./docs/site-{SiteId}_overview.md
反映が必要なら `Mode:"full"``updatesite`用の別JSONが要ることをユーザーに伝える。自動生成はしない。
- 抽出したスクリプト・サーバースクリプトの中に **APIキーやWebhook URL等の秘密情報がハードコードされている場合がある**
(実例あり)。抽出・編集作業でこれらの値を見つけたら、チャット上にそのまま貼り付けず、ユーザーに直接ファイルを確認してもらう。
また `configs/` フォルダと `config.json``.gitignore` 済みだが、誤ってコミットしないよう注意喚起する。
また `siteSettingJsons/` フォルダ・`configs/` フォルダ・`config.json``.gitignore` 済みだが、誤ってコミットしないよう注意喚起する。

View File

@ -1,9 +1,16 @@
# Pleasanter API接続情報実APIキーを含む
config.json
# サイト構成の取得結果・抽出結果(サイトのスクリプト等に秘密情報が
# プリザンターから取得した生のサイト構成JSONScripts/ServerScripts本文に
# 秘密情報が含まれている場合があるため、フォルダごと除外)
siteSettingJsons/
# サイト構成の抽出結果(サイトのスクリプト等に秘密情報が
# ハードコードされている場合があるため、フォルダごと除外)
configs/
# 旧フォルダの退避先configs/ 相当の中身を含むため同様に除外)
configs_old/
# 反映用に生成される希望構成(機密を含むスクリプト等を含み得る)
desired_config.json

View File

@ -4,14 +4,16 @@
```
① node get-site-config.js
configs/site-{SiteId}_latest.json に構成を保存
siteSettingJsons/site-{SiteId}_latest.json に構成生JSONを保存
→ 続けて自動的に extract-site-config.js が実行され、
Scripts / Styles / ServerScripts / Processes / ガイドHTML が
configs/site-{SiteId}_{サイト名}/ 配下に個別ファイルとして分割保存される
→ config.json の SiteId をカンマ区切りにすると、複数サイトをまとめて①の処理でループ取得する
② その latest.json をClaudeのチャットにアップロード
→ Claudeが構成をレビュー・仕様書化configs/site-{SiteId}_spec.md
② Claudeに「仕様書を作って」と依頼
→ siteSettingJsons/site-{SiteId}_latest.json と configs/site-{SiteId}_{サイト名}/ を
Claudeが読み解き、docs/site-{SiteId}_{サイト名}_spec.md として仕様書化
機械的なテンプレート処理ではなく、Claudeが構成内容をレビューしながら執筆する
③ configs/site-{SiteId}_{サイト名}/ 配下のファイルを直接編集、
またはClaudeに「このスクリプトを◯◯に直して」等と修正を指示
@ -28,15 +30,24 @@
⑦ Claudeに「概要書を作って」と依頼
→ 技術仕様書とは別に、ColumnName等の内部コードを含まない業務向け概要書を
docs/site-{SiteId}_overview.md として生成configs/とは異なりGit管理対象
docs/site-{SiteId}_{サイト名}_overview.md として生成(siteSettingJsons/・configs/とは異なりGit管理対象
⑧ node md-to-pdf.js ./docs/site-{SiteId}_overview.md
→ 同名の docs/site-{SiteId}_overview.pdf を生成
⑧ 複数サイトが連携する場合、Claudeに「全体の関連図を作って」と依頼
→ docs/site-relations_overview.md として、サイトツリー・明示的連携Links
暗黙的連携ServerScriptsのハードコード参照を1枚にまとめたドキュメントを生成
⑨ node md-to-pdf.js ./docs/*.md
→ docs/ 配下の全Markdownspec.md / overview.md / site-relations_overview.md
同名の .pdf に一括変換
```
`extract-site-config.js``node get-site-config.js` の中から自動実行されるため、通常は個別に実行する必要はありません
(取得済みの `latest.json` から抽出をやり直したい場合のみ、単独で `node extract-site-config.js` を実行してください)。
仕様書・概要書②⑦⑧はClaudeが対話的に読み解いて執筆するものです。過去に `generate-site-documentation.js` という
機械的なテンプレート処理での一括自動生成を試みましたが、サイト間の暗黙的な関連や業務的な類推までは反映できず
品質面の問題があったため、**現在のワークフローでは使用していません**(ファイル自体は後方互換のため削除せず残置)。
## 初回セットアップ
1. `config.example.json``config.json` にコピー
@ -53,22 +64,24 @@
|---|---|
| `config.json` | 接続情報BaseUrl/SiteId/ApiKey※Git管理・共有厳禁 |
| `config.example.json` | 上記のテンプレート |
| `get-site-config.js` | サイト構成取得(`getsite``configs/site-{SiteId}_latest.json` に保存し、続けて `extract-site-config.js` を自動実行。`SiteId` をカンマ区切りにすると全サイトを1回の実行で順次取得 |
| `get-site-config.js` | サイト構成取得(`getsite``siteSettingJsons/site-{SiteId}_latest.json` に保存し、続けて `extract-site-config.js` を自動実行。`SiteId` をカンマ区切りにすると全サイトを1回の実行で順次取得 |
| `extract-site-config.js` | `latest.json` から Scripts/Styles/ServerScripts/Processes/ガイドHTML を `configs/site-{SiteId}_{サイト名}/` に個別ファイル分割(`get-site-config.js` から自動呼び出し、または単独実行も可) |
| `build-desired-config.js` | 分割ファイルを再構成し `desired_config.json` を生成(**送信は行わない** |
| `apply-site-config.js` | 希望構成JSONとの差分表示・送信内容確認**送信は行わない** |
| `generate-site-documentation.js` | **未使用(レガシー)**。仕様書・概要書を機械的なテンプレート処理で一括自動生成する旧スクリプト。品質面の問題から現在のワークフローでは使用しない。後方互換のため削除はしていない |
| `md-to-pdf.js` | Markdownファイルを同名の`.pdf`に変換追加npmパッケージ非依存、OS標準のEdge/Chromeヘッドレス印刷を利用 |
| `desired_config.json` | Claude、または `build-desired-config.js` が生成する「希望構成」 |
| `configs/site-{SiteId}_latest.json` | 直近取得した現状構成Claudeへのアップロード対象 |
| `configs/site-{SiteId}_spec.md` | SiteSettingsを読み解いたMarkdown仕様書 |
| `siteSettingJsons/site-{SiteId}_latest.json` | 直近取得した現状構成の生JSONClaudeへのアップロード対象。`.gitignore`対象) |
| `configs/site-{SiteId}_{サイト名}/manifest.json` | 分割ファイルの一覧Id/Title/ファイル名の対応表) |
| `configs/site-{SiteId}_{サイト名}/scripts/*.js` | クライアントスクリプト本体1ファイル=1スクリプト |
| `configs/site-{SiteId}_{サイト名}/styles/*.css` | スタイル本体 |
| `configs/site-{SiteId}_{サイト名}/serverscripts/*.js` | サーバースクリプト本体 |
| `configs/site-{SiteId}_{サイト名}/html/*.html` | ガイドHTMLGridGuide等。値が空でないもののみ |
| `configs/site-{SiteId}_{サイト名}/processes.json` | プロセス設定(`SiteSettings.Processes` の定義ファイル) |
| `md-to-pdf.js` | Markdownファイルを同名の`.pdf`に変換追加npmパッケージ非依存、OS標準のEdge/Chromeのヘッドレス印刷を利用 |
| `docs/site-{SiteId}_overview.md` | 業務担当者向けの概要書ColumnName等の内部コードを含まない機能説明。`configs/`と異なりGit管理対象 |
| `docs/site-{SiteId}_overview.pdf` | 上記概要書のPDF版 |
| `docs/site-{SiteId}_{サイト名}_spec.md` | SiteSettingsを読み解いたMarkdown技術仕様書Claudeが執筆。Git管理対象 |
| `docs/site-{SiteId}_{サイト名}_overview.md` | 業務担当者向けの概要書ColumnName等の内部コードを含まない機能説明。Git管理対象 |
| `docs/site-relations_overview.md` | 複数サイトの全体関連図(サイトツリー・明示的/暗黙的連携をまとめたもの。Git管理対象 |
| `docs/*.pdf` | 上記各Markdownに対応するPDF版 |
## Scripts/Styles/ServerScripts/Processes の反映について
@ -94,6 +107,7 @@
- `apply-site-config.js`**常にドライラン** です。デフォルトでは実際のAPI呼び出しコード自体に到達しないようガード`ENABLE_ACTUAL_SEND = false` 固定)しています。
- 反映する際は、表示されたcurlコマンドをご自身で実行するか、内容を確認の上でスクリプトを改修してくださいClaudeが安全策なしに自動実行することはありません
- APIキーは `config.json` にのみ保持し、Claudeにアップロードする `latest.json` には含まれませんget時のレスポンスにAPIキーは含まれないため。念のためアップロード前に目視確認することをおすすめします。
- `siteSettingJsons/``configs/` はいずれもScripts/ServerScripts本文に秘密情報がハードコードされている場合があるため `.gitignore` 対象です。`docs/` 配下の仕様書・概要書・PDFのみがGit管理対象です。
## 注意事項

View File

@ -4,7 +4,7 @@
* このスクリプトは常にドライランです実際のAPI送信は一切行いません
*
* Claudeが生成した desired_config.json希望構成を読み込み
* 1. 現状構成configs/site-{SiteId}_latest.jsonとの差分表示
* 1. 現状構成siteSettingJsons/site-{SiteId}_latest.jsonとの差分表示
* 2. 実際に送信されるはずの HTTPリクエストURL / Bodyの表示
* 3. そのまま使えるcurlコマンドの出力
* のみを行います実行fetch送信は行いません
@ -98,7 +98,7 @@ async function main() {
const endpoint = mode === "full" ? "updatesite" : "updatesitesettings";
const url = `${config.BaseUrl.replace(/\/+$/, "")}/api/items/${siteId}/${endpoint}`;
const latestConfigPath = path.join(baseDir, "configs", `site-${siteId}_latest.json`);
const latestConfigPath = path.join(baseDir, "siteSettingJsons", `site-${siteId}_latest.json`);
const current = loadJson(latestConfigPath, false);
const currentSiteSettings =
current?.Response?.Data?.SiteSettings ||

View File

@ -1,45 +1,47 @@
# 概要書:稟議コード管理
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-160926_spec.md](../configs/site-160926_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-160926_稟議コード管理_spec.md](./site-160926_稟議コード管理_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「稟議コード管理」で、Resultsを管理・参照するための画面です。
稟議申請を行う前に、その稟議を識別するための「稟議コード」をあらかじめ発行・管理するための台帳です。エリアと稟議分類を選ぶと、コードが自動的に採番されます。発行されたコードは、実際の稟議申請書(新・稟議申請書/新・稟議申請)を作成する際にひも付けて使用します。一度発行したコードは内容を修正できず、誤って発行してしまった場合や稟議申請自体を取り消した場合は「取消」処理を行います。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | エリア | |
| | 稟議分類 | |
| | 稟議コード | |
| | 申請者 | |
| | 契約コード | |
| | 派生コード | |
| | 用件・物件名 | |
| | 申請日 | |
| 基本情報 | 状態 | 発行/申請/決裁/取消のいずれかの状態を表す |
| 基本情報 | 稟議コード | 選択したエリア・稟議分類の内容をもとに自動的に採番される、この稟議を識別するコード(発行後は修正不可) |
| 分類 | エリア | 東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他 から選択(物件・案件に対応したエリアを選ぶよう案内あり) |
| 分類 | 稟議分類 | 白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告 から選択 |
| 関連コード | 契約コード | 対象となる契約を検索して選択する |
| 関連コード | 派生コード | 対象となる派生案件を検索して選択する |
| 案件情報 | 用件・物件名 | 契約コードまたは派生コードを選択すると自動的に物件名が入力される |
| 申請者情報 | 申請者 | コードを発行した申請者(発行後は変更不可) |
| 申請者情報 | 申請日 | コード発行日(発行後は変更不可) |
| その他 | コメント | やり取りを記録するコメント欄。追記すると関係者にメール通知される |
## 3. 業務の流れ(ボタン操作)
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| 取消 | 100 → 910 | 発行された稟議コードを取り消します |
| 新規作成 | (新規)→発行 | エリアと稟議分類を選び「作成」すると、稟議コードが自動採番されて発行される。発行後は、稟議コード・エリア・稟議分類・契約コード・派生コード・用件物件名など主要項目が編集できなくなる |
| コードのコピー | (状態は変わらない) | 発行後の画面で「Copy」ボタンを押すと、発行された稟議コードをコピーして稟議申請書の入力に使い回せる |
| 取消 | 発行→取消 | 発行ミス等により、コードを無効化する。取消を行えるのは総務部門の担当者のみ。取消後は一覧画面上で行がグレー表示され、識別しやすくなる |
※「申請」「決裁」の状態は、このサイト単体の操作では発生しない(稟議申請書側の進行に連動して自動的に反映される想定の状態区分)。
## 4. 通知される場面
- 不明 に へ通知: コメントが追記されました 内容をご確認ください
- コメントが追記されたとき: 申請者、総務担当somu@eco-ntk.com、システム管理担当者宛にメールで通知される。
- コードを「取消」したとき: 申請者・取消操作者・システム管理者宛に「発行された稟議コードを取り消しました」という通知が届く。再度コードが必要な場合は、新たに新規取得するよう案内される。
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- **契約マスタ**: 契約コードを選択すると、その契約情報(物件名など)が自動的に用件・物件名欄に反映される。
- **派生案件マスタ**: 派生コードを選択した場合も同様に、関連する物件名が自動反映される。
- **新・稟議申請書**: このサイトの画面から、関連する稟議申請書のレコードを一覧で確認できる(発行した稟議コードがどの申請書で使われているかを画面上で追える)。
- **事前稟議一覧**: 稟議コードの内容が更新されると、事前稟議一覧側にも自動的に反映(複製)される仕組みがある。担当者が両方の画面を個別に更新する必要はない。
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
このサイトは稟議承認ワークフロー全体の中で「コードの採番・発行元」という位置づけであり、他の稟議関連サイト(新・稟議申請、稟議項目、事前稟議一覧など)とは異なり、稟議の内容そのものではなく「識別コードの発行・取消管理」に特化している点が特徴です。

View File

@ -0,0 +1,221 @@
# サイト仕様書稟議コード管理SiteId: 160926
- 取得元データ: [site-160926_latest.json](../siteSettingJsons/site-160926_latest.json)
- 取得日時: 2026-05-15T15:22:14サイト更新日時設定バージョン `Ver: 18`SiteSettings.Version: 1.017
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 稟議コード管理 |
| ReferenceType | Results |
| ParentId | 63543今回対象の10サイト群には含まれない外部の親サイトフォルダ |
| InheritPermission | 160926自サイトの権限設定を使用 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator | 460 |
| Updator | 678 |
| CreatedTime | 2023-01-24T15:56:46 |
| SiteSettings.Version | 1.017 |
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Dept | 8 | 7 |
| Dept | 56 | 7 |
| Group | 19 | 511 |
| Group | 27 | 7 |
| User | 460 | 511 |
※権限値はビットフラグの加算方式のため、正確な意味閲覧編集削除等の組み合わせは環境のロール定義に依存する。Group 19・User 460 が511管理者相当、その他が7一般的な閲覧作成レベル相当という偏りが見られる。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | 標準ラベルID |
| 2 | Status | (標準ラベル)状態 |
| 3 | ClassA | エリア |
| 4 | ClassB | 稟議分類 |
| 5 | ClassC | 稟議コード |
| 6 | ClassD | 契約コード |
| 7 | ClassF | 用件・物件名 |
| 8 | Owner | 申請者 |
| 9 | DateA | 申請日 |
| 10 | UpdatedTime | (標準ラベル)更新日時 |
### 3.2 編集画面レイアウトEditorColumnHash / Sections
タブ「General」のみ定義。
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Title | (標準ラベル)タイトル |
| 2 | ResultId | 標準ラベルID |
| 3 | Status | (標準ラベル)状態 |
| 4 | ClassC | 稟議コード |
| 5 | _Section-2 | ―(セクション「稟議コード取得」開始) |
| 6 | ClassA | エリア |
| 7 | ClassB | 稟議分類 |
| 8 | Owner | 申請者 |
| 9 | ClassD | 契約コード |
| 10 | ClassE | 派生コード |
| 11 | ClassF | 用件・物件名 |
| 12 | DateA | 申請日 |
| 13 | Comments | (標準ラベル)コメント |
| 14 | ClassX | ラベル未設定Hide項目。ClassAの選択値を裏で保持 |
| 15 | ClassY | ラベル未設定Hide項目。ClassBの選択値を裏で保持 |
| 16 | _Links-319015 | ―他サイト連携表示SiteId 319015「新・稟議申請書」の関連レコード一覧を編集画面内に表示。詳細は「7. 他サイト連携」参照) |
Sections配列:
| Id | ラベル | AllowExpand | Expand |
|---|---|---|---|
| 2 | 稟議コード取得 | false | true |
### 3.3 タイトル表示TitleColumns / TitleSeparator
TitleColumns: `ClassC`, `Owner`, `DateA` を TitleSeparator `" - "` で連結。
表示式: `[ClassC] - [Owner] - [DateA]`(例: 稟議コード - 申請者 - 申請日)
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類) | エリア | ラジオ選択(東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他) | NoWrap, ValidateRequired必須, ExtendedHtmlAfterControlあり注意書き、4.1参照), SearchType: PartialMatch |
| ClassB | 文字列(分類) | 稟議分類 | ラジオ選択(白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告。選択肢ごとに表示色クラスstatus-white等が設定 | ValidateRequired必須, SearchType: PartialMatch |
| ClassC | 文字列(分類) | 稟議コード | 自動採番。書式 `[ClassX][ClassY]-[yy]-[NNNN]`、年単位でリセット、初期採番値4500 | NoWrap, ExtendedFieldCss/ExtendedControlCss: code-readonly読み取り専用風の見た目, ExtendedHtmlAfterControlあり4.1参照) |
| ClassX | 文字列(拡張分類) | ラベル未設定 | Hide項目。ClassAの選択値数値コードのコピー先。稟議コード自動採番の構成要素として使用 | Hide: true |
| ClassY | 文字列(拡張分類) | ラベル未設定 | Hide項目。ClassBの選択値数値コードのコピー先。稟議コード自動採番の構成要素として使用 | Hide: true |
| Owner | ユーザー選択 | 申請者 | — | NoWrap, EditorReadOnly編集画面では読み取り専用 |
| ClassD | 文字列(分類) | 契約コード | 外部サイトSiteId 61259を検索して選択。表示書式 `[ClassH] - [ClassJ] - [ClassO] - [ClassP]` | UseSearch, NoWrap, GridDesign: `[ClassD][ClassE]`, SearchType: PartialMatch, JsonFormat: true詳細は7章 |
| ClassE | 文字列(分類) | 派生コード | 外部サイトSiteId 64583/74927/72434の3サイトを検索して選択 | UseSearch, Link: true, SearchType: PartialMatch |
| ClassF | 文字列(分類) | 用件・物件名 | 「契約コードまたは派生コードを選択すると自動的に邸名が入力されます」 | ValidateRequired必須, FieldCss: field-wide |
| Status | 状態 | (標準ラベル)状態 | 選択肢: 100=発行, 500=申請, 900=決裁, 910=取消(各ステータスに表示色クラス) | NoWrap, ExtendedControlCss: code-readonly2 |
| DateA | 日付 | 申請日 | DefaultInput: "0"(新規作成時に当日日付が初期値) | EditorReadOnly編集画面では読み取り専用 |
上記のほか、GridColumns/EditorColumnHashに現れる `ResultId`ID, `Title`(タイトル), `Status`のラベル未設定, `Comments`(コメント), `UpdatedTime`更新日時はColumns配列に個別定義がなく標準ラベルのまま。
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
| 列名 | 色style/classから読み取れるもの | 内容 |
|---|---|---|
| ClassA | 赤字class: `commentAdd red` | 「※物件・案件に対応したエリアを選択すること※」 |
| ClassC | 赤字・小フォントstyle: `color:red; font-size:60%;` | 「※自動採番」 |
## 5. 作成・更新権限(フィールド単位)
| 設定 | 対象列 | 権限レベル |
|---|---|---|
| PermissionForCreating | Owner | 5 |
| PermissionForUpdating | Owner | 5 |
加えて `UpdateColumnAccessControls` により、`Status` 列の更新のみ Dept 8・56、Group 19 に限定されている(一般ユーザーはステータスを直接変更できない)。
## 6. 集計設定Aggregations
| Id | GroupBy | Type | Target |
|---|---|---|---|
| 3 | Status | 0 | (空) |
| 1 | ClassA | 0 | (空) |
| 2 | ClassB | 0 | (空) |
Type: 0 は件数集計Countと推定される。
## 7. 他サイト連携Links / ルックアップ)
### 7.1 明示的なLinks設定
| 起点列 | 参照先SiteId | 参照先の値→自コピー先 | JsonFormat |
|---|---|---|---|
| ClassD | 61259 | 参照先サイト61259`[ClassH] - [ClassJ] - [ClassO] - [ClassP]` を検索・選択し、選択レコードの内容をJSON形式でこのサイトの `ClassD` にコピーする | true |
| ClassE | 64583 | 参照先サイト64583を検索し、選択結果をこのサイトの `ClassE` にコピーする | — |
| ClassE | 74927 | 参照先サイト74927を検索し、選択結果をこのサイトの `ClassE` にコピーする | — |
| ClassE | 72434 | 参照先サイト72434を検索し、選択結果をこのサイトの `ClassE` にコピーする | — |
※SiteId 61259・64583・74927・72434 はいずれも今回対象の10サイト稟議承認ワークフロー関連サイト群には含まれない、別系統の「契約コード」「派生コード」マスタと推測される。
### 7.2 編集画面のリンク表示_Links-319015
`EditorColumnHash.General` の末尾に `_Links-319015` が定義されており、編集画面内に **SiteId 319015新・稟議申請書** の関連レコード一覧が表示される。これはPleasanterの「関連リンクLinks」ウィジェットであり、319015側のいずれかの項目がこのサイト160926のレコードを参照していることを示す319015のLinks設定は本仕様書の対象外のため、319015側のspec.mdで裏付けを確認すること。10サイト間の明示的な連携として重要。
### 7.3 暗黙的なテーブル参照ServerScripts/Scriptsのハードコード
クライアントスクリプト `scripts/3_03.更新時の処理.js`Script Id: 3内で、**SiteId 319027事前稟議一覧が直接ハードコードされている**`let targetTable = '319027';` および `url = '.../api/items/' + targetTable + '/upsert'`)。
- 動作: レコード更新後(`after_send`に自身のAPIデータを取得し直し、`Title`・`Status`・`Owner`・`ClassHash`・`DateHash` を、`ClassC`(稟議コード)をキーとして SiteId 319027 へ `upsert`(挿入または更新)で複製送信している。
- これは正式なLinks設定には現れない、稟議コード管理160926→事前稟議一覧319027への一方向の暗黙的なデータ複製である。
- **このスクリプトにはAPIキーとみられる文字列がソースコード中に2箇所ハードコードされている。値そのものは本書に転記しないが、セキュリティ上の懸念として「気になる点」に記載する。**
### 7.4 ParentId
`ParentId: 63543` は今回対象の10サイト319014/319020/319021/319027/335730/319017/319015/319022/319016/160926のいずれにも一致しない。稟議コード管理サイトは、これら10サイトとは別の親フォルダ的な位置づけの外部サイトの配下に置かれている。
## 8. プロセス設定Processes
定義ファイル: [processes.json](../configs/site-160926_稟議コード管理/processes.json)
| Id | Name・DisplayName | 実行条件CurrentStatus→ChangedStatus | 動作 | 成功メッセージ |
|---|---|---|---|---|
| 1 | 取消 / 取消 | 100発行→ 910取消 | 実行可能者: Dept 8・56, Group 19。実行後、通知Type1を送信宛先 `[Owner]`、CC `[Updator], systemadmin@next-hd.co.jp`、件名「発行された稟議コードを取り消しました」 | 発行された稟議コードを取り消しました |
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | readonly-font130%-bold | New, Edit | [styles/1_readonly-font130%-bold.css](../configs/site-160926_稟議コード管理/styles/1_readonly-font130%25-bold.css) |
| 2 | 取消しグレー表示 | Index | [styles/2_取消しグレー表示.css](../configs/site-160926_稟議コード管理/styles/2_取消しグレー表示.css) |
| 3 | 太字赤文字化 | New, Edit, Index | [styles/3_太字赤文字化.css](../configs/site-160926_稟議コード管理/styles/3_太字赤文字化.css) |
概要:
- Id1: `.code-readonly` を pointer-events無効・フォント130%・太字にする(読み取り専用に見せるための装飾)。`.code-readonly2` も同様にクリック操作を無効化。
- Id2: `.cancelCode` クラスの行背景をグレーにする一覧画面で取消済みレコードを視覚的に区別。ServerScripts Id1と連動
- Id3: マークダウン内の `<strong>` タグを赤字にする(ガイド文の強調表示を目立たせる)。
## 10. スクリプトScriptsサーバースクリプトServerScripts
| Id | Title | 適用画面 | ファイル |
|---|---|---|---|
| 1 | 稟議コード生成 | New | [scripts/1_稟議コード生成.js](../configs/site-160926_稟議コード管理/scripts/1_稟議コード生成.js) |
| 2 | 編集禁止処理 | Edit | [scripts/2_編集禁止処理.js](../configs/site-160926_稟議コード管理/scripts/2_編集禁止処理.js) |
| 3 | 03.更新時の処理 | New, Edit | [scripts/3_03.更新時の処理.js](../configs/site-160926_稟議コード管理/scripts/3_03.更新時の処理.js) |
| Id | Title | 実行タイミング | ファイル |
|---|---|---|---|
| 1 | 取消しグレー表示 | BeforeOpeningRow | [serverscripts/1_取消しグレー表示.js](../configs/site-160926_稟議コード管理/serverscripts/1_取消しグレー表示.js) |
概要:
- **Scripts Id1稟議コード生成**: 新規作成送信直前(`before_send_Create`)に、選択済みの `ClassA`(エリア)・`ClassB`(稟議分類)の値をそれぞれ隠し項目 `ClassX`・`ClassY` にコピーする(`ClassC` の自動採番書式 `[ClassX][ClassY]-[yy]-[NNNN]` の構成要素として使用するため)。また `ClassD`(契約コード)または `ClassE`派生コード変更時に、他方の入力を無効化した上でAPI経由`$p.apiGet`、7.1のLinks設定に基づく参照先サイトを辿るで関連レコードを取得し、`ClassF`(用件・物件名)へ自動反映する。
- **Scripts Id2編集禁止処理**: 編集画面読み込み時(`on_editor_load`)に `ClassA`・`ClassB`(ラジオボタン全選択肢)・`ClassC`・`ClassD`・`ClassE`・`ClassF` の入力を無効化し、実質的に編集不可作成後は内容変更させない状態にする。あわせて外部CDNcdnjs.cloudflare.comから `toastr.js` を読み込み、`ClassC`稟議コードの値をクリップボードにコピーする「Copy」ボタンを追加する。
- **Scripts Id303.更新時の処理)**: レコード送信後(`after_send`に自身のデータをAPIで再取得し、SiteId 319027事前稟議一覧へ複製データを`upsert`送信する。詳細・懸念事項は「7.3 暗黙的なテーブル参照」を参照。**ソースコード中にAPIキーらしき文字列がハードコードされている値は本書に転記しない。**
- **ServerScripts Id1取消しグレー表示**: 一覧行の表示直前(`BeforeOpeningRow`)に、`Status`が`910`(取消)であれば `ExtendedRowCss``cancelCode` を設定し、Styles Id2のCSSと連動して一覧上でグレー表示にする。
## 11. その他設定
| 設定 | 値・状態 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | true |
| AllowCopy | falseレコードのコピー作成を禁止 |
| SectionLatestId | 2 |
| GridGuide | 設定あり(一覧画面上部に稟議コード発行に関する案内文を表示。発行ミス時の取消手順等) |
| EditorGuide | 設定ありGridGuideと同内容を編集画面にも表示 |
| CalendarGuide / CrosstabGuide / GanttGuide / BurnDownGuide / TimeSeriesGuide / AnalyGuide / KambanGuide / ImageLibGuide | いずれも未設定 |
| Comments | EditorColumnHashに含まれており使用されているコメント追記時にNotifications設定により通知が飛ぶ |
| Notificationsレコードレベル | Type1、`Comments`列の変更を監視MonitorChangesColumnsし、コメント追記時に `[Owner]`, `somu@eco-ntk.com`, `k.nogi@next-hd.co.jp`CC: `[Updator]`、BCC: `systemadmin@next-hd.co.jp`)に通知 |
---
## 気になる点(レビュー観点)
- **セキュリティ**: `scripts/3_03.更新時の処理.js`Script Id 3内にAPIキーとみられる長い16進文字列がソースコード直書きで2箇所存在する。クライアントスクリプトは画面のHTML/JSとしてブラウザに配信されるため、この形での秘匿情報埋め込みは第三者に閲覧され得る状態であり、漏えいリスクが高い。サーバースクリプト側での実行への切り替え、または資格情報の外部管理環境変数・シークレットストア等を検討すべき。
- **保守性**: レコードレベルのNotifications設定のCC/宛先に、役職名ではなく個人のメールアドレス(`somu@eco-ntk.com`, `k.nogi@next-hd.co.jp`)が直接ハードコードされている。担当者交代時に通知設定の更新漏れが起きるリスクがある。
- **暗黙的な依存**: SiteId 319027事前稟議一覧への複製送信がクライアントスクリプトの`after_send`イベントに依存しているため、ブラウザ側でJavaScriptの実行が妨げられた場合通信エラー・スクリプトエラー等、319027側にデータが反映されずサイト間の不整合が生じ得る。
- **権限の偏り**: Permissionsにおいて Group 19・User 460 が511管理者相当、他は7と、権限レベルの差が大きい。想定通りの設計か要確認。
- **外部CDN依存**: Script Id2で `cdnjs.cloudflare.com` から `toastr.js` を都度読み込んでおり、外部サービス障害時にはコピー機能のトースト通知が失敗する可能性がある(機能自体(クリップボードコピー)には支障しない)。
- **ClassE用途の紐付け先が3サイトに分散**: `ClassE`派生コードは64583/74927/72434の3サイトを横断検索する設計であり、他の10サイト仕様書と合わせて全体像を確認する際は、この3サイトが「稟議」10サイトの範囲外である点に注意。

View File

@ -1,14 +1,33 @@
# 概要書:新・稟議申請
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319014_spec.md](../configs/site-319014_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319014_新・稟議申請_spec.md](./site-319014_新・稟議申請_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「新・稟議申請」で、Sitesを管理・参照するための画面です。
「新・稟議申請」は、稟議申請にまつわる一連の画面(申請書の入力、稟議管理、部署別の集計など)をひとまとめにする**フォルダ**です。このサイト自体には申請データを入力する画面や項目はなく、稟議申請システムのメニュー上で関連する複数の画面を整理・分類するための入れ物として使われています。
そのため、利用者が普段この画面に直接データを入力したり、ボタン操作を行ったりすることはありません。実際の稟議申請の入力・承認作業は、このフォルダの配下にある「新・稟議申請書」などの画面で行います。
## 2. 登場する情報(入力項目)
本サイトには入力項目は設定されていません(データを保持する画面ではなく、フォルダとして機能するため)。
## 3. 業務の流れ(ボタン操作)
本サイトにはボタン操作・状態遷移の設定はありません。
## 4. 通知される場面
本サイトには通知の設定はありません。
## 5. 関連する仕組み(マスタ連携)
- このサイトは現時点では項目・プロセス・通知・他サイト連携の情報が限定的です。
本サイト自体は他の画面のデータを自動的に取り込む仕組み(マスタ連携)は持ちませんが、次の関連画面をまとめるフォルダとして機能しています。
- 新・稟議申請書:実際に稟議を起票・入力する画面
- 【ISO】稟議管理ISO関連の稟議を管理する画面
- 【ISO】部署担当者別稟議集計部署の担当者ごとに稟議状況を集計する画面
- 【部署別】稟議改善:部署別に稟議内容の改善を管理する画面
なお、サイト名が「新・稟議申請書」(配下の入力画面)と非常によく似ているため、メニュー上で見分ける際は「新・稟議申請」(本フォルダ)と「新・稟議申請書」(実際の入力画面)を混同しないよう注意してください。

View File

@ -0,0 +1,114 @@
# サイト仕様書新・稟議申請SiteId: 319014
- 取得元データ: [site-319014_latest.json](../siteSettingJsons/site-319014_latest.json)
- 取得日時: 2026-05-29T11:02:27サイト更新日時設定バージョン `Ver: 2`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 新・稟議申請 |
| ReferenceType | Sites |
| ParentId | 63543本システムで管理する10サイトの一覧には含まれない外部の親フォルダ |
| InheritPermission | 319014自サイトIDと同一権限は親から継承せず自サイトで保持 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 678 |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
**重要な特徴**: `ReferenceType``Sites` であり、`SiteSettings` の中身も `Version` / `ReferenceType` / `NoDisplayIfReadOnly` の3項目のみで、`Columns` / `GridColumns` / `EditorColumnHash` / `Links` / `Processes` / `Aggregations` 等の定義が一切存在しない。これは本サイトが「稟議データを直接入力・保持する表」ではなく、Pleasanterのサイトツリー上で関連サイトをまとめる**フォルダ(コンテナ)**として機能していることを示す。実際、他サイトの`ParentId`を確認したところ、以下の4サイトが本サイト319014を親としている。
- 319015: 新・稟議申請書
- 319016: 【ISO】稟議管理
- 319017: 【ISO】部署担当者別稟議集計
- 319022: 【部署別】稟議改善
## 2. アクセス権限Permissions
`Permissions``種別,対象ID,権限レベル` の文字列配列で表現されている。権限値はビットフラグの加算方式のため、正確な意味は環境のロール定義に依存する。
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Group | 27 | 0 |
| User | 459 | 31 |
| User | 460 | 511 |
| User | 463 | 31 |
| User | 654 | 511 |
## 3. 画面構成
### 3.1 一覧画面GridColumns
`SiteSettings.GridColumns` は未定義。一覧画面のカスタム列設定は存在しない(前述のとおり本サイトはフォルダ型のため、通常のレコード一覧画面自体を持たない)。
### 3.2 編集画面レイアウトEditorColumnHash / Sections
`SiteSettings.EditorColumnHash` および `Sections` は未定義。編集画面・セクション構成は設定されていない。
### 3.3 タイトル表示TitleColumns / TitleSeparator
`SiteSettings.TitleColumns` / `TitleSeparator` は未定義。タイトル表示式のカスタム設定はない。
## 4. 項目定義Columns
`SiteSettings.Columns` 配列自体が存在せず、本サイトに追加された項目フィールドは1つもない。
ラベル定義ハッシュ(`ClassHash` / `NumHash` / `DateHash` / `DescriptionHash` / `CheckHash` / `AttachmentsHash`)はいずれも `{}`(空)であり、これらは「標準ラベルのまま(カスタムラベル未設定)」を意味する。ただしこれはラベルの上書きが無いという意味であり、そもそも対応する `ClassA` 等の項目自体が `Columns` に追加されていないため、実利用されている項目は存在しない。
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
該当項目が存在しないため、この節は省略する。
## 5. 作成・更新権限(フィールド単位)
`PermissionForCreating` / `PermissionForUpdating` は設定なし。
## 6. 集計設定Aggregations
`Aggregations` は存在しないため省略する。
## 7. 他サイト連携Links / ルックアップ)
`SiteSettings.Links` は存在せず、明示的な他サイト連携(ルックアップ)設定はない。また `configs/site-319014_新・稟議申請/manifest.json` の通り `ServerScripts` は0件であり、`items.Get(SiteId)` 等による暗黙的なテーブル参照も存在しない。
ただし、1節に記載のとおり、本サイトはサイトツリー上で以下4サイトの親フォルダとして機能しており、これは`Links`によるデータ連携ではなく、Pleasanterのサイト階層`ParentId`)による構造的な関係である。
| 子サイトSiteId | サイト名 |
|---|---|
| 319015 | 新・稟議申請書 |
| 319016 | 【ISO】稟議管理 |
| 319017 | 【ISO】部署担当者別稟議集計 |
| 319022 | 【部署別】稟議改善 |
## 8. プロセス設定Processes
`configs/site-319014_新・稟議申請/processes.json` は空配列 `[]``manifest.json` の `ProcessesCount: 0` と一致)。プロセス設定は存在しないため省略する。
## 9. スタイルStyles
`manifest.json``Styles: []` の通り0件のため省略する。
## 10. スクリプトScriptsサーバースクリプトServerScripts
`manifest.json``Scripts: []` / `ServerScripts: []` の通りいずれも0件のため省略する。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | 未設定(キー自体が存在しない) |
| SectionLatestId | 未設定 |
| GridGuide / EditorGuide / CalendarGuide / CrosstabGuide / GanttGuide / BurnDownGuide / TimeSeriesGuide / AnalyGuide / KambanGuide / ImageLibGuide | いずれも空文字列(未設定) |
| Comments | `Data.Comments` は空配列 `[]`(コメント投稿実績なし)。`SiteSettings` 上にコメント欄項目の設定もなし |
---
## 気になる点(レビュー観点)
- 本サイト319014`ReferenceType: Sites` かつ `SiteSettings` がほぼ空であり、稟議データを保持する表ではなく、他の関連4サイト319015・319016・319017・319022をまとめる**フォルダ**として機能している。サイト名「新・稟議申請」が、子サイトの「新・稟議申請書」319015と非常に似ており、両者を混同しないよう全体関連図site-relations_overview.mdで明確に区別すべき。
- `Permissions` のうち `Group,27,0` は権限レベル0権限なしとなっており、グループ27に対して意図的にアクセスを遮断しているのか、単に初期値のまま放置されているのか、設定意図が読み取れない。運用者への確認を推奨する。
- `Publish: false` のため外部公開は無効になっている。フォルダ型サイトのため妥当と考えられるが、他の稟議関連サイトの公開設定と合わせて確認するとよい。
- `ParentId: 63543` は本システムで追跡している10サイトのいずれにも該当しない外部の親フォルダであり、その正体会社全体のポータルフォルダ等は今回のJSON取得範囲では確認できない。全体関連図作成時に、この上位フォルダをどう表現するか要検討。

View File

@ -1,141 +1,106 @@
# 概要書:新・稟議申請書
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319015_spec.md](../configs/site-319015_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319015_新・稟議申請書_spec.md](./site-319015_新・稟議申請書_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「新・稟議申請書」で、Resultsを管理・参照するための画面です。
これまでExcelで作成し、アルファオフィスのワークフローで回していた「稟議申請書」を、Pleasanter上で作成・申請・承認・決裁まで一貫して行うためのメインの申請書サイトです。
申請者が本シートに稟議の内容・金額・支払先情報などを入力して申請すると、あらかじめ設定された承認ルート(上長→担当役員→社長、または赤稟議・駐車場稟議の場合は担当役員決裁のみ)に従って承認・決裁が進み、最終的に経理処理まで完了させることができます。物件(工事案件)に関連する稟議の場合は、マスターシート(案件情報)や稟議コード管理と連動し、契約コードや担当者情報が自動的に反映されます。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 稟議コード | |
| | エリア | |
| | 稟議分類 | |
| | 申請部署 | |
| | 申請者 | |
| | 社員番号 | |
| | 上長(一次承認者) | |
| | 役員(二次承認者) | |
| | 関係者 | |
| | 該当物件有無 | |
| | マスターシート | |
| | 契約コード | |
| | 派生コード | |
| | 工事名 | |
| | 主担当営業 | |
| | 担当IC | |
| | 担当設計 | |
| | 担当監督 | |
| | 所属長 | |
| | 担当役員 | |
| | 工務エリア担当 | |
| | 稟議件名 | |
| | 稟議内容 | |
| | 補足資料 | |
| | 原価 | |
| | 危険負担費(元) | |
| | 今回使用額 | |
| | 危険負担費(残金) | |
| | 支払先チェック | |
| | 支払合計 | |
| | 事故内容・原因 | |
| | 損害状況 | |
| | 再発防止策 | |
| | 是正処置の効果測定 | |
| | 補足 | |
| | 事故補足資料 | |
| | 事前稟議 | |
| | ステータス | |
| | 申請日 | |
| | 一次承認者 | |
| | 一次承認日 | |
| | 二次承認者 | |
| | 二次承認日 | |
| | 役員 | |
| | 経理担当 | |
| | 工務担当 | |
| | アフター担当 | |
| | アシスタント | |
| | ISO担当 | |
| | 最終決裁者 | |
| | 最終決裁日 | |
| | 質疑応答 | |
| | 差戻し者 | |
| | 差戻し日 | |
| | 科目 | |
| | 摘要 | |
| | 経理処理日 | |
| | 備考 | |
| | 稟議コードリンク | |
| | 役員 | |
| | 経理 | |
| | 豊藏社長 | |
| | 期限 | |
| | 差戻し権限者 | |
| | 実損額 | |
| | 取消日 | |
| | 保留日 | |
| | 再開日 | |
| | 却下処理者 | |
| | 却下処理日 | |
| | 一次承認コメント | |
| | 二次承認コメント | |
| | 決裁コメント | |
| | 却下コメント | |
| | 差戻しコメント | |
| | 一次承認コメント履歴 | |
| | 二次承認コメント履歴 | |
| | 決裁コメント履歴 | |
| | 却下コメント履歴 | |
| | 差戻しコメント履歴 | |
| | 次の処理者 | |
| | 経理確認 | |
| | 経理処理者 | |
| | 販売/購入額 | |
| | 保険担当 | |
| | 消費税 | |
| | 今回支払額 | |
| 基本情報 | 稟議コード | 稟議コード管理から発行されたコード。変更不可 |
| 基本情報 | エリア | 東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他。変更不可 |
| 基本情報 | 稟議分類 | 白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告。変更不可 |
| 基本情報 | ステータス | 現在の処理状況(新規作成〜経理確認済みまでの状態) |
| 基本情報 | 稟議コードリンク | 稟議コード管理側の情報から、稟議コード・エリア・稟議分類が自動で反映される連携項目 |
| 基本情報 | 事前稟議 | 関連する事前稟議がある場合に選択。赤稟議で事前稟議がないと差戻し・却下の対象になり得る |
| 申請者 | 申請部署 | 申請者の所属部署。初期値は申請者本人の所属 |
| 申請者 | 申請者 | 稟議を申請した本人 |
| 申請者 | 社員番号 | ログイン情報から自動入力 |
| 申請者 | 上長(一次承認者) | 一次承認を行う上長。申請者が部門長の場合は自身を設定 |
| 申請者 | 役員(二次承認者) | 二次承認・決裁を行う担当役員 |
| 申請者 | 関係者 | 決裁完了通知を受け取る関係者。物件関係者などを随時追加可能 |
| マスターシート | 該当物件有無 | 関連する物件(案件)情報が登録済みかどうか |
| マスターシート | マスターシート | 該当する物件情報を選択すると、契約コードや担当者情報が自動反映される |
| マスターシート | 契約コード/工事名 | マスターシート選択時に自動反映される案件情報 |
| マスターシート | 主担当営業担当IC担当設計担当監督所属長担当役員工務エリア担当 | マスターシート選択時に自動反映される案件担当者一覧 |
| 稟議内容 | 稟議件名 | 稟議のタイトル |
| 稟議内容 | 稟議内容 | 稟議の詳細説明 |
| 稟議内容 | 補足資料 | 見積書・請求書・写真などの添付ファイル(一度アップロードすると削除不可) |
| 稟議金額 | 消費税 | 税別/税込の区分 |
| 稟議金額 | 原価 | 実際にかかる原価 |
| 稟議金額 | 販売/購入額 | 販売額または購入額(税別・利益込み) |
| 稟議金額 | 実損額 | 原価から使用額を差し引いた自動計算値 |
| 稟議金額 | 今回支払額 | 実際に今回支払う金額。支払先情報の「支払合計」と一致させる必要がある |
| 購入・支払先 | 支払先チェック | 支払先情報の記入漏れがないかのチェック状態 |
| 購入・支払先 | 支払合計 | 支払先明細(工種・材料、取引先、金額、振込先口座情報など)の合計金額 |
| 事故報告書(赤稟議の場合必須) | 事故内容・原因/損害状況/再発防止策 | 赤稟議の場合に必須で入力する事故報告内容 |
| 事故報告書(赤稟議の場合必須) | 補足 | 上長・役員からの補足コメント |
| 事故報告書(赤稟議の場合必須) | 事故補足資料 | 事故に関する写真等の添付資料 |
| WF承認状況 | 期限 | 申請または承認から7日後保留時は14日後を目安に自動設定される処理期限 |
| WF承認状況 | 次の処理者 | 現在、対応待ちとなっている担当者 |
| WF承認状況 | 一次承認者/一次承認日/一次承認コメント(履歴) | 一次承認の記録 |
| WF承認状況 | 二次承認者/二次承認日/二次承認コメント(履歴) | 二次承認の記録 |
| WF承認状況 | 最終決裁者/最終決裁日/決裁コメント(履歴) | 最終決裁の記録 |
| WF承認状況 | 却下処理者/却下処理日/却下コメント(履歴) | 却下時の記録 |
| WF承認状況 | 差戻し者/差戻し日/差戻しコメント(履歴) | 差戻し時の記録 |
| WF承認状況 | 取消日/保留日/再開日 | 各操作を行った日時 |
| 経理処理 | 経理処理日/経理処理者 | 経理担当者が処理した記録(経理グループのみ入力可能) |
| 経理処理 | 経理確認 | 未確認/確認済みの状態 |
| 経理処理 | 科目/摘要/備考 | 経理処理の内容(経理グループのみ入力可能) |
| 経理処理 | 保険担当 | 社用車事故報告の場合に自動で追加される保険担当者 |
| 質疑応答 | 質疑応答(コメント欄) | 申請内容についてのやり取りを記録する欄。投稿すると関係者に通知される |
## 3. 業務の流れ(ボタン操作)
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| 稟議申請 | -1 → 150 | 稟議申請 |
| 一次承認 | 150 → 200 | 一次承認 |
| 二次承認A | 200 → 300 | 二次承認 |
| 二次承認B | 200 → 900 | 二次承認(決裁) |
| 最終決裁 | 300 → 900 | 最終決裁 |
| 差戻し | -1 → 110 | 差戻し |
| 再申請 | 110 → 150 | 再申請 |
| 取消 | -1 → 930 | 取消 |
| 却下 | -1 → 920 | 却下 |
| 保留 | -1 → 910 | 保留 |
| 再開 | 910 → 120 | 再開 |
| 新規登録 | 100 → 101 | 新規登録 |
| 経理処理 | 900 → 990 | 経理処理 |
| 事故報告書チェック | -1 → -1 | 事故報告書チェック |
| 最終決裁B | 200 → 900 | 二次(最終)決裁 |
| ISO稟議修正 | 900 → 940 | ISO稟議修正 |
| ISO稟議承認 | 940 → 900 | ISO稟議承認 |
| 取消(システム・総務) | -1 → 930 | 取消(システム・総務) |
| 稟議申請 | 新規登録/再開 → 稟議申請 | 申請者が内容を確認のうえ申請する。上長・担当役員・支払先チェックが未入力だと申請できない |
| 一次承認 | 稟議申請 → 一次承認 | 上長が内容を確認し承認する(上長本人のみ操作可) |
| 二次承認 | 一次承認 → 二次承認 | 担当役員が承認する(白稟議・赤稟議・事前稟議・お客様返金稟議が対象、役員本人のみ操作可)。この後さらに社長の最終決裁に進む |
| 二次承認(決裁) | 一次承認 → 最終決裁完了 | 駐車場稟議・赤稟議(5万以下)・社用車事故報告・自家用車事故報告など少額カテゴリは、担当役員の承認でそのまま決裁完了となる |
| 最終決裁 | 二次承認 → 最終決裁完了 | 社長が最終決裁を行う |
| 二次(最終)決裁 | 一次承認 → 最終決裁完了 | 少額カテゴリについて社長が一次承認後に直接決裁できる操作 |
| 差戻し | 稟議申請/一次承認/二次承認 → 差戻し | 承認者が内容不備等を理由に申請者へ差し戻す |
| 再申請 | 差戻し → 稟議申請 | 申請者が内容を修正し、再度申請する |
| 取消 | 新規登録/差戻し/再開/保留 → 取消 | 申請者が申請を取り消す。取り消すと稟議コードも無効になり、再申請には新しいコードの取得が必要 |
| 取消(システム・総務) | (任意の状態) → 取消 | システム・総務担当者が特別に取り消す操作 |
| 却下 | 稟議申請/一次承認/二次承認 → 却下 | 承認者が申請内容を却下する。却下されると再申請不可で、新しい稟議コードでの再申請が必要 |
| 保留 | 新規登録/差戻し/再開 → 保留 | 申請者が申請を一時保留する。保留中は入力できなくなる |
| 再開 | 保留 → 再開 | 保留していた申請を再開する |
| 経理処理 | 最終決裁完了 → 経理確認済み | 経理担当者が科目・摘要等を入力し、経理処理を完了させる(経理グループのみ操作可) |
| ISO稟議修正 | 最終決裁完了 → ISO修正 | ISO・品質管理担当者が、決裁後の内容修正のために一時的に編集可能な状態へ戻す |
| ISO稟議承認 | ISO修正 → 最終決裁完了 | 修正内容を確認し、最終決裁完了の状態へ戻す |
## 4. 通知される場面
- 不明 に へ通知: 稟議申請にて質疑応答コメントが追加されました■[Title]
- 稟議申請時一次承認者上長へ「一次承認を行ってください」という通知が届く申請者にもCCで届く
- 一次承認時二次承認者役員へ「二次承認を行ってください」という通知が届く申請者・一次承認者にもCCで届く
- 二次承認時決裁前の場合最終決裁者社長へ「最終決裁を行ってください」という通知が届く申請者・一次承認者・二次承認者にもCCで届く
- 決裁完了時申請者へ「決裁されました」という完了通知が届く。一次承認者・最終決裁者・関係者・役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当・保険担当にもCCで届く
- 差戻し時申請者へ「差し戻されました」という通知が届く上長・役員にもCCで届く
- 再申請時:一次承認者へ「再申請されたため一次承認を行ってください」という通知が届く
- 取消時申請者へ「取り消されました」という通知が届く上長・役員にもCCで届く
- 却下時申請者へ「却下されました」という通知が届く却下処理者・上長・役員にもCCで届く
- 保留時再開時申請者へそれぞれ「保留されました」「再開されました」という通知が届く上長・役員にもCCで届く
- 経理処理時申請者・経理処理者へ「経理で処理されました」という通知が届く経理担当にもCCで届く
- ISO稟議修正時申請者へ「ISOにより修正されました」という通知が届く一次承認者・最終決裁者・関係者・各担当者にもCCで届く
- 質疑応答コメントが投稿された時申請者・コメント投稿者へ通知が届く関係者・経理担当にもCCで届く
- 処理期限が近づいた稟議について、「次の処理者」宛にリマインドメールが送信される
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- **稟議コード管理**:稟議申請前にこのマスタから稟議コードを取得しておく必要がある。取得したコードを選択すると、エリア・稟議分類などの情報が自動的に反映される。また、申請・決裁・取消などの操作に連動して、稟議コード管理側のステータスも自動更新される。
- **マスターシート(案件情報)**関連する物件・工事案件がある場合に選択すると、契約コード・工事名・主担当営業・担当IC・担当設計・担当監督・所属長・担当役員・工務エリア担当・危険負担費が自動的に反映される。決裁完了時には、危険負担費の残金がマスターシート側にも自動反映される。
- **事前稟議一覧**:関連する事前稟議がある場合に選択して紐づけることができる。特に赤稟議の場合、事前稟議が紐づいていないと承認者から差し戻されることがある。
- **稟議通知管理**新規作成時、選択したエリア・稟議分類の組み合わせに応じて、決裁完了時の通知先となる役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当が自動的に補完される。
- **【ISO】稟議管理**:赤稟議(赤稟議・赤稟議(5万以下)が最終決裁されると、稟議の内容がISO管理用のサイトへ自動的に複写・記録される。
- 関連マスタ連携: (不明) → (不明)
### 他サイトとの違い
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
この「新・稟議申請書」は稟議承認ワークフロー全体の中で実際の申請データを保持するメインの申請書サイトであり、承認段階新規登録→稟議申請→一次承認→二次承認→最終決裁完了→経理確認済みや差戻し・却下・保留・取消・ISO修正といった多数の業務操作を持つ点が特徴です。関連する「新・稟議申請」親サイトや事前段階の「事前稟議一覧」とは役割が異なり、それらは本サイトの前段階の情報整理や事前申請を担う位置づけです。

View File

@ -0,0 +1,579 @@
# サイト仕様書新・稟議申請書SiteId: 319015
- 取得元データ: [site-319015_latest.json](../siteSettingJsons/site-319015_latest.json)
- 取得日時: 2026-06-08T18:07:33サイト更新日時設定バージョン `Ver: 38`SiteSettings.Version: 1.017
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 新・稟議申請書 |
| ReferenceType | Results |
| ParentId | 319014新・稟議申請 |
| InheritPermission | 319015自サイト権限継承なし |
| Publish | false |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460 |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
このサイトは `ParentId: 319014` を持ち、他サイト一覧にある「319014: 新・稟議申請」の子サイトとして位置付けられている。ReferenceType が `Results`(通常サイト)であるため、稟議申請の実務データを直接保持するメインテーブルと考えられる。
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限値 |
|---|---|---|
| Dept | 1 | 1 |
| Dept | 21 | 37 |
| Group | 13 | 1 |
| Group | 19 | 511 |
| Group | 27 | 2 |
| Group | 61 | 5 |
| User | 459 | 1 |
| User | 460 | 511 |
| User | 463 | 1 |
| User | 670 | 1 |
※権限値はビットフラグの加算方式閲覧・編集・削除等の権限ビットを合算した値のため、正確な意味は環境のロール定義Group/Dept/Userのマスタ設定に依存する。511はほぼ全権限、1は閲覧のみに近い値と推測される。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 項目名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | ID標準ラベル |
| 2 | Status | ステータス |
| 3 | ClassA | 稟議コード |
| 4 | ClassB | エリア |
| 5 | ClassC | 稟議分類 |
| 6 | ClassG | 稟議件名 |
| 7 | Class001 | 申請部署(グリッド表示ラベル: 申請者) |
| 8 | Class011 | マスターシート |
| 9 | Class012 | 契約コード |
| 10 | Class004 | 上長(一次承認者)(グリッド表示ラベル: 承認者) |
| 11 | Class037 | 次の処理者 |
| 12 | Date033 | 最終決裁日 |
| 13 | UpdatedTime | 更新日時(標準ラベル) |
FilterColumns絞り込み対象列: Statusステータス、ClassBエリア、ClassC稟議分類、ClassR該当物件有無、Class012契約コード、Class002申請者、Class037次の処理者
### 3.2 編集画面レイアウトEditorColumnHash / Sections
タブは4つGeneralTabLabelText: 「稟議申請書」+以下)。
| タブキー | タブ名 |
|---|---|
| General | 稟議申請書 |
| _Tab-1 | 事故報告書 |
| _Tab-2 | WF承認状況 |
| _Tab-3 | 経理処理 |
| _Tab-6 | リンク |
#### General タブ
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | ID標準ラベル・非表示 |
| 2 | Ver | Ver標準ラベル・非表示 |
| 3 | Title | タイトル(標準ラベル) |
| 4 | Comments | 質疑応答 |
| 5 | Status | ステータス |
| 6 | DateA | 申請日 |
| 7 | CheckA | ―(ラベル未設定・非表示) |
| 8 | ClassL | 稟議コードリンク |
| 9 | ClassA | 稟議コード |
| 10 | ClassB | エリア |
| 11 | ClassC | 稟議分類 |
| 12 | ClassD | 事前稟議 |
| 13 | _Section-1 | ―(セクション「申請者」開始) |
| 14 | Class001 | 申請部署 |
| 15 | Class002 | 申請者 |
| 16 | Class003 | 社員番号 |
| 17 | Class004 | 上長(一次承認者) |
| 18 | Class005 | 役員(二次承認者) |
| 19 | Class009 | 関係者 |
| 20 | _Section-2 | ―(セクション「マスターシート」開始) |
| 21 | ClassR | 該当物件有無 |
| 22 | _Section-4 | ―(セクション「(ラベル未設定)」開始) |
| 23 | Class011 | マスターシート |
| 24 | Class012 | 契約コード |
| 25 | Class013 | 派生コード(非表示) |
| 26 | Class014 | 工事名 |
| 27 | Class015 | 主担当営業 |
| 28 | Class016 | 担当IC |
| 29 | Class017 | 担当設計 |
| 30 | Class018 | 担当監督 |
| 31 | Class019 | 所属長 |
| 32 | Class020 | 担当役員 |
| 33 | Class021 | 工務エリア担当 |
| 34 | _Section-3 | ―(セクション「稟議内容」開始) |
| 35 | ClassG | 稟議件名 |
| 36 | DescriptionA | 稟議内容 |
| 37 | AttachmentsA | 補足資料 |
| 38 | _Section-18 | ―(セクション「稟議金額」開始) |
| 39 | ClassZ | 消費税 |
| 40 | NumA | 原価 |
| 41 | NumZ | 販売/購入額 |
| 42 | NumB | 危険負担費(元)(非表示) |
| 43 | NumC | 今回使用額(非表示) |
| 44 | NumD | 危険負担費(残金)(非表示) |
| 45 | NumE | 実損額 |
| 46 | _Section-19 | ―(セクション「※返金稟議の場合は、下記に返金額のみ記入」開始) |
| 47 | NumF | 今回支払額 |
| 48 | _Section-5 | ―(セクション「購入・支払先」開始) |
| 49 | DescriptionX | ―ラベル未設定・非表示。支払先明細テーブルのJSONデータ格納用 |
| 50 | ClassV | 支払先チェック |
| 51 | NumM | 支払合計 |
#### _Tab-1 タブ(事故報告書)
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | _Section-8 | ―(セクション「事故報告書(赤稟議の場合必須)」開始) |
| 2 | DescriptionB | 事故内容・原因 |
| 3 | DescriptionC | 損害状況 |
| 4 | DescriptionD | 再発防止策 |
| 5 | _Section-7 | ―(セクション「追記」開始) |
| 6 | DescriptionF | 補足 |
| 7 | AttachmentsB | 事故補足資料 |
#### _Tab-3 タブ(経理処理)
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | _Section-14 | ―(セクション「経理処理欄」開始) |
| 2 | DateP | 経理処理日 |
| 3 | ClassN | 経理処理者 |
| 4 | ClassO | 経理確認 |
| 5 | ClassP | 科目 |
| 6 | ClassQ | 摘要 |
| 7 | DescriptionP | 備考 |
| 8 | Class100 | 役員(非表示) |
| 9 | Class101 | 経理(非表示) |
| 10 | _Section-17 | ―(セクション「保険」開始) |
| 11 | Class102 | 保険担当 |
#### _Tab-2 タブWF承認状況
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | DateK | 期限 |
| 2 | Class037 | 次の処理者 |
| 3 | _Section-11 | ―(セクション「承認状況」開始) |
| 4 | Class031 | 一次承認者 |
| 5 | Date031 | 一次承認日 |
| 6 | Class051 | 一次承認コメント |
| 7 | Description051 | 一次承認コメント履歴 |
| 8 | Class032 | 二次承認者 |
| 9 | Date032 | 二次承認日 |
| 10 | Class052 | 二次承認コメント |
| 11 | Description052 | 二次承認コメント履歴 |
| 12 | Class033 | 最終決裁者 |
| 13 | Date033 | 最終決裁日 |
| 14 | Class053 | 決裁コメント |
| 15 | Description053 | 決裁コメント履歴 |
| 16 | _Section-16 | ―(セクション「却下」開始) |
| 17 | Class040 | 却下処理者 |
| 18 | Date040 | 却下処理日 |
| 19 | Class054 | 却下コメント |
| 20 | Description054 | 却下コメント履歴 |
| 21 | _Section-13 | ―(セクション「差戻し」開始) |
| 22 | Class041 | 差戻し者 |
| 23 | Date041 | 差戻し日 |
| 24 | Class055 | 差戻しコメント |
| 25 | Description055 | 差戻しコメント履歴 |
| 26 | _Section-15 | ―(セクション「取消・保留」開始) |
| 27 | Date042 | 取消日 |
| 28 | Date043 | 保留日 |
| 29 | Date044 | 再開日 |
| 30 | _Section-12 | ―(セクション「決裁完了通知先」開始) |
| 31 | Class071 | 役員(非表示) |
| 32 | Class072 | 経理担当(非表示) |
| 33 | Class073 | 工務担当(非表示) |
| 34 | Class074 | アフター担当(非表示) |
| 35 | Class075 | アシスタント(非表示) |
| 36 | Class076 | ISO担当非表示 |
| 37 | Class080 | 差戻し権限者(非表示) |
| 38 | Class081 | 豊藏社長(非表示) |
#### _Tab-6 タブ(リンク)
| 順番 | 項目名(内部名) | 内容 |
|---|---|---|
| 1 | _Links-160926 | サイト連携表示項目。SiteId 160926稟議コード管理を参照するリンク先レコード一覧をインライン表示する特殊項目 |
| 2 | _Links-189112 | サイト連携表示項目。SiteId 189112マスターシート、10サイト一覧には含まれない別サイトを参照するリンク先レコード一覧をインライン表示する特殊項目 |
#### Sections 一覧
| Id | ラベル | AllowExpand | Expand |
|---|---|---|---|
| 1 | 申請者 | false | true |
| 2 | マスターシート | false | true |
| 4 | (ラベル未設定) | false | true |
| 3 | 稟議内容 | false | true |
| 18 | 稟議金額 | false | true |
| 19 | ※返金稟議の場合は、下記に返金額のみ記入 | false | true |
| 5 | 購入・支払先 | false | true |
| 8 | 事故報告書(赤稟議の場合必須) | false | true |
| 7 | 追記 | false | true |
| 14 | 経理処理欄 | false | true |
| 17 | 保険 | false | true |
| 11 | 承認状況 | false | true |
| 16 | 却下 | false | true |
| 13 | 差戻し | false | true |
| 15 | 取消・保留 | false | true |
| 12 | 決裁完了通知先 | false | true |
### 3.3 タイトル表示TitleColumns / TitleSeparator
TitleColumns: `ClassA`(稟議コード) + `ClassB`(エリア) + `ClassC`(稟議分類) + `Class002`(申請者)
TitleSeparator: `■`
表示式: `稟議コード ■ エリア ■ 稟議分類 ■ 申請者`
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ResultId | 自動採番ID | 標準ID | - | Hide |
| Ver | システム項目(バージョン) | 標準Ver | - | Hide |
| ClassA | 文字列(分類) | 稟議コード | - | NoWrap, ExtendedControlCss(code-readonly2), ValidateRequired, NoDuplication |
| ClassB | 文字列(分類) | エリア | 選択肢: 東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他 | Radio, NoWrap, ExtendedHtmlAfterControlあり |
| ClassC | 文字列(分類) | 稟議分類 | 選択肢: 白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告 | Radio, ExtendedHtmlAfterControlあり |
| Class001 | 文字列(拡張分類) | 申請部署 | 部署選択([[Depts]], 初期値[[Self]] | GridLabelText:申請者, ExtendedControlCss |
| Class002 | 文字列(拡張分類) | 申請者 | ユーザー選択, 初期値[[Self]] | UseSearch, ExtendedControlCss |
| Class003 | 文字列(拡張分類) | 社員番号 | - | ExtendedControlCss, ExtendedHtmlAfterControlあり(自動入力) |
| Class004 | 文字列(拡張分類) | 上長(一次承認者) | ユーザー選択 | GridLabelText:承認者, NoWrap, ExtendedHtmlAfterControlあり |
| Class005 | 文字列(拡張分類) | 役員(二次承認者) | ユーザー選択Groups[41]でフィルタ) | UseSearch |
| Class009 | 文字列(拡張分類) | 関係者 | ユーザー選択(複数) | MultipleSelections, ExtendedHtmlAfterControlあり, FieldCss(field-wide) |
| ClassR | 文字列(分類) | 該当物件有無 | 選択肢: 有り/無し。Description:関連するマスターシートが登録済みの場合は「有り」を選択 | Radio, DefaultInput:1, ExtendedHtmlAfterControlあり(強調) |
| Class011 | ルックアップ(サイト参照) | マスターシート | SiteId 189112参照 | UseSearch, FieldCss(field-wide), ExtendedHtmlAfterControlあり |
| Class012 | 文字列(拡張分類) | 契約コード | - | NoWrap |
| Class013 | 文字列(拡張分類) | 派生コード | - | Hide |
| Class014 | 文字列(拡張分類) | 工事名 | - | FieldCss(field-wide), ExtendedHtmlAfterControlあり |
| Class015 | 文字列(拡張分類) | 主担当営業 | ユーザー選択 | UseSearch |
| Class016 | 文字列(拡張分類) | 担当IC | ユーザー選択 | UseSearch |
| Class017 | 文字列(拡張分類) | 担当設計 | ユーザー選択 | UseSearch |
| Class018 | 文字列(拡張分類) | 担当監督 | ユーザー選択 | UseSearch |
| Class019 | 文字列(拡張分類) | 所属長 | ユーザー選択 | UseSearch, NoWrap |
| Class020 | 文字列(拡張分類) | 担当役員 | ユーザー選択 | UseSearch |
| Class021 | 文字列(拡張分類) | 工務エリア担当 | ユーザー選択 | UseSearch |
| ClassG | 文字列(分類) | 稟議件名 | - | ValidateRequired, FieldCss(field-wide) |
| DescriptionA | 説明(複数行文字列) | 稟議内容 | - | ExtendedControlCss(textarea-sizing), ValidateRequired |
| AttachmentsA | 添付ファイル | 補足資料 | - | AllowDeleteAttachments:false, OverwriteSameFileName:true, ExtendedHtmlAfterControlあり |
| NumA | 数値 | 原価 | Format:N, 初期値0 | Min:0, ExtendedHtmlAfterControlあり(id:NumAcomment) |
| NumB | 数値 | 危険負担費(元) | Format:N | Hide, NoWrap, ExtendedHtmlAfterControlあり |
| NumC | 数値 | 今回使用額 | Format:N | Hide |
| NumD | 数値 | 危険負担費(残金) | Format:N | Hide, ExtendedControlCss, ExtendedHtmlAfterControlあり |
| DescriptionX | 説明(複数行文字列) | (ラベル未設定) | 支払先明細テーブル(jspreadsheet)のJSONデータ格納専用 | Hide, ExtendedHtmlAfterFieldあり |
| ClassV | 文字列(分類) | 支払先チェック | 選択肢: 未チェック/記入漏れ無し | DefaultInput:0, NoWrap |
| NumM | 数値 | 支払合計 | Format:N | Min:0, NoWrap, ExtendedHtmlAfterControlあり |
| DescriptionB | 説明(複数行文字列) | 事故内容・原因 | - | ExtendedControlCss(textarea-sizing) |
| DescriptionC | 説明(複数行文字列) | 損害状況 | - | ExtendedControlCss(textarea-sizing) |
| DescriptionD | 説明(複数行文字列) | 再発防止策 | - | ExtendedControlCss(textarea-sizing) |
| DescriptionE | 説明(複数行文字列) | 是正処置の効果測定 | - | 定義のみで編集画面レイアウトに未配置(後述「気になる点」参照) |
| DescriptionF | 説明(複数行文字列) | 補足 | InputGuide: 上長・役員からの補足 | ExtendedControlCss(textarea-sizing) |
| AttachmentsB | 添付ファイル | 事故補足資料 | - | AllowDeleteAttachments:false, NotDeleteExistHistory:true, OverwriteSameFileName:true |
| ClassD | ルックアップ(サイト参照) | 事前稟議 | SiteId 319027参照ClassB=[4]でフィルタ、DateA降順 | UseSearch, FieldCss(field-wide), ExtendedHtmlAfterControlあり |
| UpdatedTime | 日時(標準) | (標準)更新日時 | - | GridDesign設定あり |
| Status | 状態 | ステータス | 選択肢13種下記8.参照) | ExtendedControlCss |
| DateA | 日付 | 申請日 | Ymdhms形式 | EditorReadOnly |
| Class031 | 文字列(拡張分類) | 一次承認者 | ユーザー選択 | ExtendedControlCss |
| Date031 | 日付 | 一次承認日 | Ymdhms形式 | ExtendedControlCss |
| Class032 | 文字列(拡張分類) | 二次承認者 | ユーザー選択 | ExtendedControlCss |
| Date032 | 日付 | 二次承認日 | Ymdhms形式 | ExtendedControlCss |
| Class071 | 文字列(拡張分類) | 役員 | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class072 | 文字列(拡張分類) | 経理担当 | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class073 | 文字列(拡張分類) | 工務担当 | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class074 | 文字列(拡張分類) | アフター担当 | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class075 | 文字列(拡張分類) | アシスタント | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class076 | 文字列(拡張分類) | ISO担当 | ユーザー選択(複数) | Hide, MultipleSelections, ExtendedControlCss, FieldCss(field-wide) |
| Class033 | 文字列(拡張分類) | 最終決裁者 | ユーザー選択 | ExtendedControlCss |
| Date033 | 日付 | 最終決裁日 | Ymdhms形式 | ExtendedControlCss |
| Comments | コメント欄 | 質疑応答 | - | 標準コメント機能 |
| Class041 | 文字列(拡張分類) | 差戻し者 | ユーザー選択 | ExtendedControlCss |
| Date041 | 日付 | 差戻し日 | Ymdhms形式 | ExtendedControlCss |
| ClassP | 文字列(分類) | 科目 | - | FieldCss(field-wide) |
| ClassQ | 文字列(分類) | 摘要 | - | FieldCss(field-wide) |
| DateP | 日付 | 経理処理日 | Ymdhms形式 | ExtendedControlCss |
| DescriptionP | 説明(複数行文字列) | 備考 | - | - |
| ClassL | ルックアップ(サイト参照) | 稟議コードリンク | SiteId 160926参照。Lookups: ClassC→ClassA, ClassA→ClassB, ClassB→ClassC, ClassF→ClassG | ExtendedFieldCss, FieldCss(field-wide) |
| CheckA | チェックボックス | (ラベル未設定) | 新規作成時に稟議コード発行済みかを示すシステム内部フラグ | Hide, NoWrap, ValidateRequired |
| Class100 | 文字列(拡張分類) | 役員 | ユーザー選択(複数), 初期値に9名の固定User IDを設定 | Hide, ExtendedControlCss, FieldCss(field-wide) |
| Class101 | 文字列(拡張分類) | 経理 | ユーザー選択(複数), 初期値に5名の固定User IDを設定 | Hide, ExtendedControlCss, FieldCss(field-wide) |
| Class081 | 文字列(拡張分類) | 豊藏社長 | ユーザー選択, 初期値421 | Hide, ExtendedControlCss |
| DateK | 日付 | 期限 | InputGuide: 申請または承認日から7日後, 初期値7(日) | ExtendedControlCss |
| Class080 | 文字列(拡張分類) | 差戻し権限者 | ユーザー選択(複数), Description: 上長、担当役員、社長 | UseSearch, ExtendedControlCss, FieldCss(field-wide) |
| NumE | 数値 | 実損額 | Format:N | ControlType:Normal, ExtendedControlCss, ExtendedHtmlAfterControl/Field(稟議金額入力ルール表) |
| Date042 | 日付 | 取消日 | Ymdhms形式 | ExtendedControlCss |
| Date043 | 日付 | 保留日 | Ymdhms形式 | NoWrap, ExtendedControlCss |
| Date044 | 日付 | 再開日 | Ymdhms形式 | NoWrap, ExtendedControlCss |
| Class040 | 文字列(拡張分類) | 却下処理者 | ユーザー選択 | ExtendedControlCss |
| Date040 | 日付 | 却下処理日 | Ymdhms形式 | ExtendedControlCss |
| Class051 | 文字列(拡張分類) | 一次承認コメント | - | ExtendedControlCss, FieldCss(field-wide) |
| Class052 | 文字列(拡張分類) | 二次承認コメント | - | ExtendedControlCss, FieldCss(field-wide) |
| Class053 | 文字列(拡張分類) | 決裁コメント | - | ExtendedControlCss, FieldCss(field-wide) |
| Class054 | 文字列(拡張分類) | 却下コメント | - | ExtendedControlCss, FieldCss(field-wide) |
| Class055 | 文字列(拡張分類) | 差戻しコメント | - | ExtendedControlCss, FieldCss(field-wide) |
| Description051 | 説明(複数行文字列) | 一次承認コメント履歴 | - | ExtendedFieldCss, ExtendedControlCss(textarea-sizing) |
| Description052 | 説明(複数行文字列) | 二次承認コメント履歴 | - | ExtendedFieldCss, ExtendedControlCss(textarea-sizing) |
| Description053 | 説明(複数行文字列) | 決裁コメント履歴 | - | ExtendedFieldCss, ExtendedControlCss(textarea-sizing) |
| Description054 | 説明(複数行文字列) | 却下コメント履歴 | - | ExtendedFieldCss, ExtendedControlCss(textarea-sizing) |
| Description055 | 説明(複数行文字列) | 差戻しコメント履歴 | - | ExtendedFieldCss, ExtendedControlCss(textarea-sizing) |
| Class037 | 文字列(拡張分類) | 次の処理者 | ユーザー選択 | ExtendedControlCss, GridDesign(次の処理者/期限を併記) |
| ClassO | 文字列(分類) | 経理確認 | 選択肢: 未確認/確認済み | Radio, DefaultInput:0, NoWrap |
| ClassN | 文字列(拡張分類) | 経理処理者 | ユーザー選択 | ExtendedControlCss |
| NumZ | 数値 | 販売/購入額 | Format:N | Min:0, ExtendedHtmlAfterControlあり(id:NumZcomment) |
| Class102 | 文字列(拡張分類) | 保険担当 | ユーザー選択(複数) | MultipleSelections, ExtendedFieldCss, ExtendedControlCss, FieldCss(field-wide) |
| ClassZ | 文字列(分類) | 消費税 | 選択肢: 税別/税込 | Radio, DefaultInput:0, NoWrap, ExtendedHtmlAfterControlあり |
| NumF | 数値 | 今回支払額 | Format:N | Min:0, NoWrap, ExtendedHtmlAfterControlあり |
Statusステータス選択肢一覧
| コード | ラベル |
|---|---|
| 100 | 新規作成 |
| 101 | 新規登録 |
| 110 | 差戻し |
| 120 | 再開 |
| 150 | 稟議申請 |
| 200 | 一次承認 |
| 300 | 二次承認 |
| 900 | 最終決裁完了 |
| 910 | 保留 |
| 920 | 却下 |
| 930 | 取消 |
| 940 | ISO修正 |
| 990 | 経理確認済み |
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
| 列名 | 色・見た目 | 内容 |
|---|---|---|
| ClassB | 赤字 | ※変更不可※ |
| ClassC | 赤字 | ※変更不可※ |
| Class003 | 水色 | ※自動入力 |
| Class004 | 赤字・小 | ※申請者が部門長の場合は自身を設定 |
| Class009 | 青字・左寄せ | ※決裁完了通知先 ※物件関係者・閲覧可能 ※随時追加可能 |
| ClassR | 赤字・大・背景黄色 | ※該当物件のマスターシートがある場合は、必ず選択すること/※選択漏れがあった場合は承認者は差戻してください |
| Class011 | 赤字 | ※関連するマスターシートを選択 |
| Class014 | 赤字・小 | ※下記の関係者に本稟議は共有されません。物件関係者に共有したい場合は「関係者」欄に対象を追加 |
| AttachmentsA | 緑・小 | ※補足資料、見積書、請求書、写真など。同名ファイルは上書きされる。申請後も追加可だが削除不可 |
| NumA | 赤字(税込選択時は青字に変化) | ※税別(スクリプトにより「※税込」に動的変化) |
| NumB | 赤字・小 | ※MSSから転記、または手入力 |
| NumD | 赤字・小 | ※決裁後にMSSに反映 |
| DescriptionXExtendedHtmlAfterField | 赤字・左寄せ | 支払いに関する注意書き(支払タイミング、支払先情報の入力ルール等) |
| NumM | 赤字・大・右寄せ | ※『今回支払額』と相違が無いように入力 |
| AttachmentsB | 緑・小 | ※写真などの補足資料。同名ファイルは上書きされる。申請後も追加可だが削除不可 |
| ClassD | 赤字・小 | ※関連する事前稟議がある場合は必ず選択してください。赤稟議の場合、事前稟議がないと却下される要因となります |
| NumEExtendedHtmlAfterControl | 赤字 | ※原価 今回使用額 ※自動計算 |
| NumEExtendedHtmlAfterField | 表形式 | 「稟議金額入力ルール」表(稟議分類ごとに原価/販売購入額/実損額/今回支払額のどれを入力すべきかを示す一覧) |
| NumZ | 赤字(税込選択時は青字に変化) | ※税別・利益込み(動的に「※税込・利益込み」に変化) |
| NumF | 赤字 | ※実損額または販売額から転記。または返金稟議。 |
| ClassZ | 赤字・小 | ※原則として税別にて申請。物品購入等の場合は税込み申請可。 |
## 5. 作成・更新権限(フィールド単位)
### PermissionForCreating
| 列名 | 権限値 |
|---|---|
| Class002 | 5 |
| Class004 | 5 |
| Class005 | 5 |
| Class009 | 1 |
| Class037 | 5 |
| Class102 | 31 |
### PermissionForUpdating
| 列名 | 権限値 |
|---|---|
| Class002 | 5 |
| Class004 | 5 |
| Class005 | 5 |
| Class009 | 1 |
| Class072 | 5 |
| Class073 | 1 |
| Class074 | 1 |
| Class075 | 1 |
| Class076 | 1 |
| Class037 | 5 |
| Class102 | 1 |
### フィールド単位のグループ限定アクセス制御CreateColumnAccessControls / ReadColumnAccessControls / UpdateColumnAccessControls
以下の6項目経理処理欄は、いずれもGroup 61経理グループにのみ作成・閲覧・更新が許可されている。
| 列名 | ラベル | 許可Group |
|---|---|---|
| ClassP | 科目 | 61 |
| ClassQ | 摘要 | 61 |
| DateP | 経理処理日 | 61 |
| DescriptionP | 備考 | 61 |
| ClassO | 経理確認 | 61 |
| ClassN | 経理処理者 | 61 |
## 6. 集計設定Aggregations
| Id | GroupBy | Type | Target |
|---|---|---|---|
| 1 | ClassBエリア | 0件数集計と推測 | (空) |
| 2 | ClassC稟議分類 | 0件数集計と推測 | (空) |
## 7. 他サイト連携Links / ルックアップ)
### 明示的なLinks設定
| 起点列 | 参照先SiteId | 参照先の値→自コピー先 | JsonFormat |
|---|---|---|---|
| Class011マスターシート | 189112 | SearchFormat: `[Title] - [ClassF] - [ClassG]`10サイト一覧外の別サイト | true |
| ClassL稟議コードリンク | 160926稟議コード管理 | ClassC→ClassA, ClassA→ClassB, ClassB→ClassC, ClassF→ClassG | true |
| Class005役員(二次承認者) | UsersTableName=Users, SiteId 0 | Groups[41]でフィルタしたユーザー一覧を選択肢に使用 | true |
| ClassD事前稟議 | 319027事前稟議一覧 | SearchFormat: `[Title] - [ClassF]`ClassB=[4]でフィルタ、DateA降順 | true |
- 「稟議コード管理160926」の該当レコードから、稟議分類・稟議コード・エリアなどの値を、このサイトの `ClassA`(稟議コード)・`ClassB`(エリア)・`ClassC`(稟議分類)に自動反映する(`ClassL` 経由のルックアップ)。
- 「マスターシート189112、10サイト一覧には含まれない別システムのサイト」を選択すると、契約コード・工事名・担当者情報などがクライアントスクリプトを通じて自動反映される詳細は下記「暗黙的な参照」参照
- 「事前稟議一覧319027」から関連する事前稟議レコードを選択できる。
### 暗黙的なテーブル参照ServerScripts / Scripts内のハードコード
正式なLinks設定には現れないが、クライアントスクリプト内でSiteIdを直接指定して他サイトのAPIを呼び出している箇所が2つ存在する。
| 起点スクリプト | 参照先SiteId | 参照方法 | 目的(推測) |
|---|---|---|---|
| `scripts/1_1.新・稟議申請書.js`(関数 `getTuuchiData` | 319021稟議通知管理 | `$p.apiGet``ClassA` にエリアコードを指定し検索 | 新規作成時、選択したエリア・稟議分類に応じた通知先担当者役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当`Class071`〜`Class076`)を自動補完する |
| `scripts/2_2.稟議申請_作成時処理など.js`(関数 `uploadISOdata` | 319016【ISO】稟議管理 | `fetch`/`$.ajax` で `/pleasanter/api/items/319016/upsert` に直接POST | 赤稟議ClassC=1または3が最終決裁されたタイミングで、稟議データのサマリをISO管理サイトへ複写・計上する |
また `scripts/1_1.新・稟議申請書.js`(関数 `getMSSData`)は `Class011` に選択されたレコードIDSiteId 189112に対して `$p.apiGet` で直接データを取得しており、こちらはLinks設定と整合した参照。同スクリプトの `updateMSSdata` は決裁時にMSSサイト189112の危険負担費残金`Num081`)を `$p.apiUpdate` で直接更新しているLinks設定には現れない書き込み方向の連携
サーバースクリプト `serverscripts/1_プロセス14 事故報告書チェックボタンの非表示.js` 内の `items.Sum(319015, ...)` は自サイト319015自身を対象とした集計であり、他サイト参照ではない同一契約コードの赤稟議申請金額合計をチェックに利用
## 8. プロセス設定Processes
定義ファイル: [configs/site-319015_新・稟議申請書/processes.json](../configs/site-319015_新・稟議申請書/processes.json)
| Id | Name / DisplayName | 実行条件(CurrentStatus→ChangedStatus) | 動作(OnClick等) | 成功メッセージ |
|---|---|---|---|---|
| 1 | 稟議申請 / 稟議申請 | (任意)→150(稟議申請)。View: 自分の申請(Class002=Own)かつStatus∈[101,120] | `$p.ex.processScript('1')`。Class004・Class005・ClassV必須バリデーション | 稟議を申請しました。 |
| 2 | 一次承認 / 一次承認 | 150(稟議申請)→200(一次承認)。View: Class004=Own上長本人 | `$p.ex.processScript('2')` | 稟議を承認しました。 |
| 3 | 二次承認A / 二次承認 | 200(一次承認)→300(二次承認)。View: Class005=Own役員本人かつClassC∈[白,赤,事前,返金] | `$p.ex.processScript('3')` | 稟議を承認しました。 |
| 4 | 二次承認B / 二次承認(決裁) | 200(一次承認)→900(最終決裁完了)。View: Class005=Own かつClassC∈[駐車場,赤5万以下,社用車事故,自家用車事故] | `$p.ex.processScript('4')` | 稟議を決裁しました。 |
| 5 | 最終決裁 / 最終決裁 | 300(二次承認)→900(最終決裁完了)。Users:[421]限定。View: ClassC∈[白,赤,事前,返金]かつClass037=Own | `$p.ex.processScript('5')` | 稟議を決裁しました。 |
| 6 | 差戻し / 差戻し | (任意)→110(差戻し)。View: Status∈[150,200,300]かつClass037=Own | `$p.ex.processScript('6')` | 稟議申請を差戻しました。 |
| 7 | 再申請 / 再申請 | 110(差戻し)→150(稟議申請)。View: Class002=Own | `$p.ex.processScript('7')`。Class004・Class005・ClassV必須バリデーション | 稟議申請を再申請しました。 |
| 8 | 取消 / 取消 | (任意)→930(取消)。View: Class002=OwnかつStatus∈[101,110,120,910] | `$p.ex.processScript('8')` | 稟議申請を取り消しました。 |
| 9 | 却下 / 却下 | (任意)→920(却下)。View: Status∈[150,200,300]かつClass037=Own | `$p.ex.processScript('9')` | 稟議申請を却下しました。 |
| 10 | 保留 / 保留 | (任意)→910(保留)。View: Class002=OwnかつStatus∈[101,110,120] | `$p.ex.processScript('10')` | 稟議申請を保留しました。 |
| 11 | 再開 / 再開 | 910(保留)→120(再開)。View: Class002=Own | `$p.ex.processScript('11')` | 稟議申請を再開しました。 |
| 12 | 新規登録 / 新規登録 | 100(新規作成)→101(新規登録)。ExecutionType:10自動実行系と推測 | OnClickなし自動処理 | 稟議申請書が新規登録されました。 |
| 13 | 経理処理 / 経理処理 | 900(最終決裁完了)→990(経理確認済み)。Groups:[61]限定 | `$p.ex.processScript('13')`。ClassO必須バリデーション | 経理処理を行いました。 |
| 14 | 事故報告書チェック / 事故報告書チェック | (任意)→(変更なし)。ActionType:90ステータス変更を伴わない検証専用アクション | OnClickなし`ringiCheck`関数内から`$p.execProcess`で内部的に呼び出し) | SuccessMessageなし |
| 15 | 最終決裁B / 二次(最終)決裁 | 200(一次承認)→900(最終決裁完了)。Users:[421]限定。View: ClassC∈[白,赤,事前,返金]かつClass037=Own | `$p.ex.processScript('15')` | 稟議を決裁しました。 |
| 16 | ISO稟議修正 / ISO稟議修正 | 900(最終決裁完了)→940(ISO修正)。Groups:[13,19]限定 | OnClickなし。ConfirmationMessageあり | 稟議書を修正できる状態に変更しました。速やかに修正し、再承認を行ってください。 |
| 17 | ISO稟議承認 / ISO稟議承認 | 940(ISO修正)→900(最終決裁完了)。Groups:[13,19]限定 | `$p.ex.processScript('17')`。ConfirmationMessageあり | 稟議は最終決裁状態へ差し戻されました。修正した内容については、関係者へ通知してください。 |
| 18 | 取消(システム・総務) / 取消(システム・総務) | (任意)→930(取消)。Groups:[19]かつUsers:[463]限定 | `$p.ex.processScript('18')` | 稟議申請を取り消しました。 |
補足:
- Id4二次承認(決裁)とId15二次(最終)決裁はともに「200→900」の同一遷移だが、Id4はView条件が `Class005=Own`担当役員本人でClassC限定、Id15はUsers:[421]特定ユーザー、社長限定でClassC条件は同一。少額カテゴリ駐車場・赤5万以下等を担当役員が直接決裁する経路Id4と、社長が同カテゴリを直接決裁できる経路Id15が並存している。
- ステータス値とラベルの対応は4.のStatus選択肢一覧を参照。
### StatusControlsステータス別の項目読取り専用制御
| Id | Name | 対象Status | 概要 |
|---|---|---|---|
| 1 | 全項目読取り専用 | 150,200,300,910,920,930,990 | 稟議申請以降・保留/却下/取消/経理確認済みの状態で主要項目(金額・分類・担当者・説明等)を読取り専用化 |
| 2 | 決裁完了 | 900 | 決裁完了後、主要項目を読取り専用化(経理処理欄は対象外) |
| 3 | 経理確認済み | 990 | 経理確認済み後、添付ファイルを含む全項目を読取り専用化 |
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | 1.読み取り専用 | New, Edit | [styles/1_1.読み取り専用.css](../configs/site-319015_新・稟議申請書/styles/1_1.読み取り専用.css) |
| 2 | 2.基本スタイル調整 | New, Edit | [styles/2_2.基本スタイル調整.css](../configs/site-319015_新・稟議申請書/styles/2_2.基本スタイル調整.css) |
| 4 | 3.支払先テーブルの調整 | New, Edit | [styles/4_3.支払先テーブルの調整.css](../configs/site-319015_新・稟議申請書/styles/4_3.支払先テーブルの調整.css) |
| 5 | 4.ボタンスタイル | New, Edit | [styles/5_4.ボタンスタイル.css](../configs/site-319015_新・稟議申請書/styles/5_4.ボタンスタイル.css) |
| 6 | 5.ガイド欄 | All | [styles/6_5.ガイド欄.css](../configs/site-319015_新・稟議申請書/styles/6_5.ガイド欄.css) |
| 7 | 6.金額ルールテーブル | New, Edit | [styles/7_6.金額ルールテーブル.css](../configs/site-319015_新・稟議申請書/styles/7_6.金額ルールテーブル.css) |
概要:`code-readonly`/`code-readonly2` クラスによる疑似読取り専用表示、稟議コード・金額欄の大きな文字表示、支払先テーブルjspreadsheetの余白調整、プロセスボタンの色分け申請・承認系青、差戻し黄、取消・却下赤、保留・再開灰、経理処理、ガイド欄の強調表示、NumE項目内の「稟議金額入力ルール」表の配色を定義している。
## 10. スクリプトScriptsサーバースクリプトServerScripts
| Id | Title | 適用画面 | ファイル |
|---|---|---|---|
| 1 | 1.新・稟議申請書 | New, Edit | [scripts/1_1.新・稟議申請書.js](../configs/site-319015_新・稟議申請書/scripts/1_1.新・稟議申請書.js) |
| 2 | 2.稟議申請_作成時処理など | New, Edit | [scripts/2_2.稟議申請_作成時処理など.js](../configs/site-319015_新・稟議申請書/scripts/2_2.稟議申請_作成時処理など.js) |
概要Script Id1: jExcel/jSuitesライブラリをCDNから読み込み、支払先明細のスプレッドシート風テーブル工種・材料/取引先/客出し金額/原価/銀行口座情報等を生成・編集させる。関連案件有無ラジオボタンの表示切替、マスターシート選択時のAPI連携によるデータ自動反映工事名・担当者・危険負担費、危険負担費の自動計算、稟議通知先の自動補完、社用車事故報告テンプレートの自動挿入、消費税表示切替、既存項目の読取り専用制御などを行う。
概要Script Id2: 各プロセス(稟議申請/承認/決裁/差戻し/取消/却下/経理処理等)実行時の確認ダイアログ・入力チェック(`ringiCheck`マスターシート選択チェック、金額整合性チェック、赤稟議の事故報告書必須チェック、赤稟議5万円上限チェック等・コメント履歴の追記処理を行う。決裁完了時には稟議コード管理サイト160926のステータス更新、ISO稟議管理サイト319016へのデータ複写、マスターシート189112の危険負担費残金更新をAPI経由で実行する。
| Id | Title | 適用タイミング | ファイル |
|---|---|---|---|
| 1 | プロセス14 事故報告書チェックボタンの非表示 | BeforeOpeningPage | [serverscripts/1_プロセス14 事故報告書チェックボタンの非表示.js](../configs/site-319015_新・稟議申請書/serverscripts/1_プロセス14 事故報告書チェックボタンの非表示.js) |
概要: 編集・新規作成画面表示前に、内部専用プロセス「事故報告書チェックId14」ボタンを非表示化し、更新ボタンのラベルを「一時保存」に変更する。また同一契約コードClass012かつ赤稟議系ClassC=1,3で申請中〜完了済みのレコードを対象に、原価・販売購入額・実損額・今回支払額・支払合計を `items.Sum` で集計し、隠しフィールド(`summaryHanbaiMoney` 等として画面に埋め込むクライアント側の「赤稟議5万円チェック」で参照される
### セキュリティ上の注意(重要)
`scripts/1_1.新・稟議申請書.js``scripts/2_2.稟議申請_作成時処理など.js` の両方に、Pleasanter APIを呼び出すための **APIキーがJavaScriptのソースコード内に平文でハードコードされている**`let apiKey = '...'` および `uploadJson.ApiKey`)。これらはクライアントスクリプト(ブラウザ上で実行され、画面のソースやネットワークタブから誰でも閲覧可能)であるため、**ログイン可能な全ユーザーにAPIキーが事実上公開されている状態**にある。値そのものは本書には転記していないが、下記「気になる点」に指摘として記載する。
## 11. その他設定
| 設定 | 値・有無 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | true |
| AllowCopy | false |
| TitleSeparator | ■ |
| SectionLatestId | 19 |
| TabLatestId | 6 |
| GuideAllowExpand / GuideExpand | true / "1" |
| GridGuide | 設定あり(システム概要・注意事項を[md]形式で記載) |
| EditorGuide | 設定ありGridGuideに加え、赤稟議の必須項目・承認ルールを記載 |
| CalendarGuide等その他Guide | 未設定 |
| Commentsサイト直下 | "[]"コメント初期値なし。項目Commentsとは別のサイトメタ情報 |
Comments項目質疑応答は稟議申請書上で使用されており、コメント追加時に通知下記が発火する設定になっている。
### サイト直下の通知Notifications、Process外
| 内容 |
|---|
| 質疑応答コメントComments列追加時に、申請者・更新者へ宛てて通知メールを送信。件名「稟議申請にて質疑応答コメントが追加されました」 |
### リマインダーReminders
| 内容 |
|---|
| `DateK`(期限)を基準に、期限が近いレコードについて `Class037`次の処理者とsystemadmin宛にリマインドメールを送信 |
### エクスポート設定Exports
| 内容 |
|---|
| 「稟議集計用CSV」という名前でエクスポート定義ありResultId, Title, Status, および主要ClassX/NumX/DateX項目、計60列 |
### カスタムビューViews
| Id | Name | 概要 |
|---|---|---|
| 1 | 自分の申請 | Class002(申請者)=Own の絞り込み |
| 2 | 自分の処理 | Class037(次の処理者)=Own の絞り込み。カレンダー/クロス集計表示設定あり |
| 3 | 件名・内容 | GridColumnsを差し替えた一覧DescriptionA=稟議内容を含む) |
---
## 気になる点(レビュー観点)
- **【重大・セキュリティ】** クライアントスクリプト(`scripts/1_1.新・稟議申請書.js`、`scripts/2_2.稟議申請_作成時処理など.js`内にPleasanter APIキーが平文でハードコードされている。クライアントスクリプトはブラウザで実行されるためソースが全ユーザーに公開されており、閲覧可能な全ユーザーがこのAPIキーを取得できてしまう状態にある。APIキーが強い権限他サイトへの直接更新権限を含むを持つ場合、情報漏洩・不正操作のリスクがある。サーバースクリプトServerScripts側への処理移設、またはAPIキーのローテーション・権限最小化を推奨。
- `DescriptionE`是正処置の効果測定はColumns定義には存在するが、EditorColumnHashのどのタブにも配置されておらず、実質的に編集画面から入力できない「死んだ列」になっているStatusControlsの読取り専用対象には含まれている。過去の仕様変更の残骸である可能性があり、削除または再配置の要否を確認すべき。
- Sectionsの Id 4 は `LabelText` が空文字のままセクション区切りとして使われている(見出しなしセクション)。意図的な余白区切りなのか設定漏れなのか確認が必要。
- CheckA列はラベル未設定・非表示のまま、新規作成時に稟議コード発行済みかどうかを判定するシステム内部フラグとして使われている。ラベルがないため仕様書上は用途がスクリプトを読まないと分からない。
- Class100役員・Class101経理にはユーザーIDが配列でハードコードされた初期値が設定されている。人事異動があった場合にサイト設定の手動更新が必要になる構造であり、運用上のメンテナンス漏れリスクがある。
- Id4二次承認(決裁)とId15二次(最終)決裁はステータス遷移が同一200→900で対象ClassCも同一だが、実行可能ユーザーの条件担当役員 vs 特定ユーザー421が異なる。UIボタンスタイル設定Styles Id5では`#Process_15`のみが承認系の青ボタンスタイル対象に含まれ`#Process_4`は含まれていない点で表示上の扱いに差異があり、意図した設計か確認が推奨される。
- Class011マスターシートが参照するSiteId 189112は、本システムの10サイト一覧319014/319020/319021/319027/335730/319017/319015/319022/319016/160926には含まれない外部サイトである。全体関連図を作成する際は、この189112を「システム外部の連携先」として区別して扱う必要がある。

View File

@ -1,203 +1,88 @@
# 概要書【ISO】稟議管理
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319016_spec.md](../configs/site-319016_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319016_【ISO】稟議管理_spec.md](./site-319016_【ISO】稟議管理_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「【ISO】稟議管理」で、Resultsを管理・参照するための画面です。
「新・稟議申請システム」で「赤稟議5万円を含む」として申請され最終決裁が完了した稟議のデータを、自動的に受け取って一元管理するテーブルです。ISO担当が稟議の内容を分析し、原因・是正状況・再発の有無などを記録して、部署ごとの集計や全社的な情報共有・稟議改善活動につなげるために使用します。本テーブルの稟議は全社員が閲覧できます。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 稟議コード | |
| | エリア | |
| | 稟議分類 | |
| | 申請部署 | |
| | 申請者 | |
| | 社員番号 | |
| | 上長(一次承認者) | |
| | 役員(二次承認者) | |
| | 関係者 | |
| | 関連案件有無 | |
| | マスターシート | |
| | 契約コード | |
| | 派生コード | |
| | 工事名 | |
| | 主担当営業 | |
| | 担当IC | |
| | 担当設計 | |
| | 担当監督 | |
| | 所属長 | |
| | 担当役員 | |
| | 工務エリア担当 | |
| | 稟議件名 | |
| | 稟議内容 | |
| | 補足資料 | |
| | 原価 | |
| | 危険負担費(元) | |
| | 今回使用額 | |
| | 危険負担費(残金) | |
| | 支払先チェック | |
| | 支払合計 | |
| | 事故内容・原因 | |
| | 損害状況 | |
| | 再発防止策 | |
| | 是正処置の効果測定 | |
| | 補足 | |
| | 事故補足資料 | |
| | 事前稟議 | |
| | ステータス | |
| | 申請日 | |
| | 一次承認者 | |
| | 一次承認日 | |
| | 二次承認者 | |
| | 二次承認日 | |
| | 役員 | |
| | 経理担当 | |
| | 工務担当 | |
| | アフター担当 | |
| | アシスタント | |
| | ISO担当 | |
| | 最終決裁者 | |
| | 最終決裁日 | |
| | 差戻し者 | |
| | 差戻し日 | |
| | 科目 | |
| | 摘要 | |
| | 経理処理日 | |
| | 備考 | |
| | 稟議コードリンク | |
| | 役員 | |
| | 経理 | |
| | 豊藏社長 | |
| | 期限 | |
| | 差戻し権限者 | |
| | 実損額 | |
| | 取消日 | |
| | 保留日 | |
| | 再開日 | |
| | 却下処理者 | |
| | 却下処理日 | |
| | 一次承認コメント | |
| | 二次承認コメント | |
| | 決裁コメント | |
| | 却下コメント | |
| | 差戻しコメント | |
| | 一次承認コメント履歴 | |
| | 二次承認コメント履歴 | |
| | 決裁コメント履歴 | |
| | 却下コメント履歴 | |
| | 差戻しコメント履歴 | |
| | 次の処理者 | |
| | 経理確認 | |
| | 経理処理者 | |
| | 計上年 | |
| | 計上月 | |
| | 計上年月 | |
| | 稟議項目 | |
| | 稟議の原因 | |
| | 是正状況 | |
| | 再発状況 | |
| | 是正/効果検証 | |
| | 稟議概要 | |
| | 要因分析 | |
| | 今後の対策 | |
| | 図面・資料など | |
| | ①申請部署 | |
| | ②関連部署 | |
| | ③関連部署 | |
| | ④関連部署 | |
| | ⑤関連部署 | |
| | ⑥関連部署 | |
| | ⑦関連部署 | |
| | ⑧関連部署 | |
| | ⑨関連部署 | |
| | ⑩関連部署 | |
| | ①申請者 | |
| | ②関連社員 | |
| | ③関連社員 | |
| | ④関連社員 | |
| | ⑤関連社員 | |
| | ⑥関連社員 | |
| | ⑦関連社員 | |
| | ⑧関連社員 | |
| | ⑨関連社員 | |
| | ⑩関連社員 | |
| | 割当金1 | |
| | 割当金2 | |
| | 全社員リスト5 | |
| | 全社員リスト1 | |
| | 全社員リスト2 | |
| | 全社員リスト3 | |
| | 全社員リスト4 | |
| | 販売/購入額 | |
| | 部門長共有 | |
| | 部門長共有日 | |
| | 全体会議共有 | |
| | 全体会議共有日 | |
| | 稟議概要件名 | |
| | 消費税 | |
| | 今回支払額 | |
| | 全社員リスト6 | |
| | 全社員リスト7 | |
| | 全社員リスト8 | |
| | 全社員リスト9 | |
| | 全社員リスト10 | |
| | 稟議該当者チェック | |
| | ISO確認者 | |
| | 役員確認者 | |
| | ISO確認日 | |
| | 役員確認日 | |
| | 分析期限 | |
| 基本情報 | ステータス | 稟議管理の進捗状態新規登録ISO確認中役員確認依頼ISO確認済全体共有共有停止保留 |
| 基本情報 | 稟議コード | 対象稟議を識別するコード |
| 基本情報 | エリア | 東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他 |
| 基本情報 | 稟議分類 | 白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告 |
| 基本情報 | 稟議コードリンク | 対応する稟議コード管理データを検索して紐付ける項目。選択すると稟議コード・エリア・稟議分類・稟議件名が自動反映される |
| 基本情報 | 事前稟議 | 関連する事前稟議がある場合に選択(赤稟議で事前稟議が無いと却下の要因になる) |
| 申請者情報 | 申請部署 | 稟議を申請した部署 |
| 申請者情報 | 申請者 | 稟議を申請した社員 |
| 申請者情報 | 社員番号 | 申請者の社員番号(自動入力) |
| 申請者情報 | 上長(一次承認者) | 一次承認を行う上長 |
| 申請者情報 | 役員(二次承認者) | 二次承認・ISO分析を行う役員 |
| 申請者情報 | 関係者 | 決裁完了通知の送付先となる関係者(複数選択可) |
| マスターシート | 関連案件有無 | 関連するマスターシートが登録済みかどうか |
| マスターシート | マスターシート | 関連するマスターシートの検索・選択 |
| マスターシート | 契約コード/工事名 | 対象案件の契約コード・工事名 |
| マスターシート | 主担当営業担当IC担当設計担当監督所属長担当役員工務エリア担当 | 案件に関わる担当者情報 |
| 稟議内容 | 稟議件名 | 稟議のタイトル |
| 稟議内容 | 稟議内容 | 稟議の詳細内容 |
| 稟議内容 | 消費税 | 税別/税込の区分(原則税別。物品購入等は税込可) |
| 稟議内容 | 原価 | 対象案件の原価 |
| 稟議内容 | 販売/購入額 | 販売額または購入額(税別・利益込み) |
| 稟議内容 | 実損額 | 原価から危険負担費の今回使用額を差し引いた実際の損害額 |
| 稟議内容 | 今回支払額 | 実損額または販売額から転記される支払額 |
| 事故報告書 | 事故内容・原因 | 事故(赤稟議の場合)の内容と原因 |
| 事故報告書 | 損害状況 | 発生した損害の状況 |
| 事故報告書 | 再発防止策 | 今後の再発防止に向けた対策 |
| 事故報告書 | 補足 | 上長・役員からの補足コメント |
| 承認状況 | 一次承認者/一次承認日/一次承認コメント | 一次承認の記録 |
| 承認状況 | 二次承認者/二次承認日/二次承認コメント | 二次承認の記録 |
| 承認状況 | 最終決裁者/決裁コメント | 最終決裁の記録 |
| ISO稟議分析 | 計上年/計上月 | 本稟議を損害として計上する年月 |
| ISO稟議分析 | 稟議項目 | 稟議が該当する分類項目 |
| ISO稟議分析 | 稟議の原因 | 稟議が発生した原因の分類 |
| ISO稟議分析 | 稟議概要/要因分析/今後の対策 | ISO担当・役員が分析した稟議の要約、より本質的な要因、今後の対応方針 |
| ISO稟議分析 | 図面・資料など | 分析に関する添付資料 |
| ISO稟議分析 | 是正状況/再発状況 | 是正中/是正済み、初発/再発案件の区分 |
| ISO稟議分析 | 是正/効果検証 | 是正措置の効果検証内容 |
| ISO稟議分析 | 部門長共有/部門長共有日 | 部門長への共有状況と共有日 |
| ISO稟議分析 | 全体会議共有/全体会議共有日 | 全体会議への共有状況と共有日 |
| 稟議該当者 | 稟議該当者チェック | 稟議の責任範囲に該当する社員・部署が適切に設定されているかのチェック |
| 稟議該当者 | 申請部署・申請者、①〜⑩関連部署・関連社員 | 稟議の責任範囲に該当する部署・社員最大11組まで指定可能 |
| 稟議該当者 | 割当金1割当金2 | 販売額を該当者の人数で按分した金額(申請者分/関連社員分) |
| ログ | ISO確認者ISO確認日 | ISO担当が確認を行った担当者・日付 |
| ログ | 役員確認者/役員確認日 | 役員が分析を行った担当者・日付 |
| ログ | 分析期限 | 役員による分析の期限日通常、依頼の翌月25日 |
| 添付・コメント | 補足資料/事故補足資料/コメント | 見積書・請求書・写真等の補足資料、記録用コメント欄 |
## 3. 業務の流れ(ボタン操作)
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| ISO確認中 | 100 → 150 | ISO確認中 |
| 役員依頼 | 150 → 170 | 役員依頼 |
| 役員分析 | 170 → 200 | 役員分析 |
| 保留 | -1 → 990 | 保留 |
| 再計上 | -1 → -1 | 再計上 |
| ISO確認中にする | 新規登録 → ISO確認中 | ISO担当が稟議分析を開始する操作。分析期限翌月25日が自動設定される |
| 役員依頼 | ISO確認中 → 役員確認依頼 | 担当役員へ本稟議の内容分析を依頼する操作。依頼メールが役員へ送信される |
| 役員分析 | 役員確認依頼 → ISO確認済 | 担当役員が稟議概要・要因分析・今後の対策・是正状況・再発状況・稟議該当者などの分析内容を入力し完了する操作。すべての分析項目の入力が必須。完了すると部署別集計へ計上され、以降は内容を変更できなくなる |
| 保留 | 任意の状態 → 保留 | 対応を一時保留する操作 |
| 再計上 | 状態は変わらず、集計データのみ再送 | 稟議該当者・按分金額の集計データを部署担当者別集計へ再度反映する操作 |
## 4. 通知される場面
- 不明 に へ通知: 通知が送信されます。
- 「役員依頼」操作が行われると、担当役員(役員(二次承認者)欄の人宛に「【ISO】稟議分析のお願い」というメールが送信される総務ISO担当のアドレスにも控えが届く。計上年月・稟議項目・稟議の原因・要因分析・是正状況・再発状況・是正/効果検証・稟議該当者のチェックなど、入力してほしい項目と分析期限が案内される。
- 「役員分析」操作で分析が完了すると、「【ISO】稟議分析が入力されました」というメールが総務ISO担当宛に届き、内容確認・集計作業を促す。
- このほか、記録内容に一定の変更があった場合に管理担当mss_approval宛へ通知が届く設定がある。
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- **新・稟議申請(親のシステム)**: 新・稟議申請システムで赤稟議5万円を含むが最終決裁されると、そのデータが自動的に本テーブルへ連携される。本テーブルはその後続処理ISO分析・部署別集計・稟議改善活動への展開を担う。
- **稟議コード管理マスタ**: 稟議コードを選択すると、対応するエリア・稟議分類・稟議件名が自動的に反映される。事前稟議の選択欄も同マスタから絞り込んで選ぶ仕組みになっている。
- **稟議項目マスタ・稟議の原因マスタ**: ISO分析における「稟議項目」「稟議の原因」の分類選択は、それぞれ専用のマスタ一覧から選ぶ仕組みになっている。
- **組織エリアマスタ**: 部署とエリアの対応関係を裏側で参照し、稟議該当者の部署ごとに集計する際のエリア判定に利用している。
- **部署担当者別集計**: 「役員分析」完了時および「再計上」操作時に、稟議該当者ごとの按分金額が部署担当者別の集計テーブルへ自動的に反映される。この編集画面内にも、集計されたレコードの一覧が直接埋め込み表示される。
- **部署別 稟議改善**: 稟議改善への取組み状況を記録する関連テーブルがあり、本テーブルの編集画面内に取組みレコードの一覧が直接埋め込み表示される。一覧画面の絞り込みや専用ビューでも、このテーブルの情報を横断的に確認できる。
- 関連マスタ連携: (不明) → (不明)
## 兄弟サイトとの違い
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
本サイトと同じ「稟議」ワークフローに属する関連サイト群の中でも、本サイトはISO担当・役員による稟議の事後分析、是正・再発防止の管理、部署別の按分計上・集計連携という「ISOマネジメント」の観点に特化している点が特徴です。稟議の申請・承認そのものを行う「新・稟議申請」「新・稟議申請書」とは役割が異なり、あくまで最終決裁後の分析・集計・改善活動フェーズを担うテーブルです。

View File

@ -0,0 +1,593 @@
# サイト仕様書【ISO】稟議管理SiteId: 319016
- 取得元データ: [site-319016_latest.json](../siteSettingJsons/site-319016_latest.json)
- 取得日時: 2026-06-22T18:19:14サイト更新日時設定バージョン `Ver: 17`SiteSettings.Version: 1.017
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| SiteId | 319016 |
| Title | 【ISO】稟議管理 |
| ReferenceType | Results |
| ParentId | 319014新・稟議申請 |
| InheritPermission | 319016自サイト自身の権限設定を使用。親から継承していない |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | User 460 |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
補足: `ParentId: 319014` により、本サイトはツリー構造上「新・稟議申請」の子サイトとして位置づけられている。
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限値 |
|---|---|---|
| Dept | 21 | 37 |
| Group | 13 | 109 |
| Group | 19 | 511 |
| Group | 27 | 1 |
| Group | 41 | 5 |
| User | 459 | 1 |
| User | 460 | 511 |
| User | 463 | 1 |
※ 権限値はビットフラグの加算方式のため正確な意味は環境のロール定義に依存する。本仕様書では設定値の転記のみ行う。
※ スクリプト内の記述から、Group 13ISO担当、Group 19システム、Group 41役員グループ、Group 27全従業員グループ、と推測される後述10.参照)。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | ID自動採番、標準ラベル |
| 2 | Status | ステータス |
| 3 | ClassA | 稟議コード |
| 4 | ClassB | エリア |
| 5 | ClassC | 稟議分類 |
| 6 | Class105 | 計上年 |
| 7 | Class106 | 計上月 |
| 8 | Class005 | 役員(二次承認者) |
| 9 | Class109 | 稟議概要件名 |
| 10 | Class110 | 稟議項目 |
| 11 | Description110 | 稟議概要 |
| 12 | Description111 | 要因分析 |
| 13 | Class111 | 稟議の原因 |
| 14 | Class114 | 是正状況 |
| 15 | Class115 | 再発状況 |
| 16 | Description115 | 是正/効果検証 |
| 17 | Date120 | 部門長共有日 |
| 18 | Date121 | 全体会議共有日 |
| 19 | UpdatedTime | 更新日時GridDesignでUpdator併記 |
参考: 検索絞り込みパネルFilterColumnsには上記に加え `ClassD`(事前稟議), `DateA`(申請日), `Date033`(最終決裁日), `Class120`, `Class121`, `Class114` などが指定されている。また `ClassZ~~319022,ClassA` という表記があり、SiteId 319022【部署別】稟議改善側のClassA項目を横断的に絞り込み条件へ含めている後述7.参照)。
保存済みビュー「稟議改善への取組み」Views[0], Id:1では一覧列を独自に差し替え、`ClassZ~~319022,ClassA` と `ClassZ~~319022,TitleBody` を列として表示する設定になっている319022側のレコードのタイトル・稟議コードを横断表示
### 3.2 編集画面レイアウトEditorColumnHash / Sections
タブ構成は次の通り。`General`タブのラベルは `GeneralTabLabelText: "★ISO稟議分析"`。他タブはTabs配列のIdで対応する。
| EditorColumnHashキー | 対応するTabId | タブ表示ラベル |
|---|---|---|
| General | - | ★ISO稟議分析 |
| _Tab-7 | 7 | 稟議申請書(控え) |
| _Tab-8 | 8 | 事故報告書(控え) |
| _Tab-9 | 9 | 承認状況(控え) |
| _Tab-10 | 10 | ★稟議該当者 |
| _Tab-11 | 11 | ■ |
#### General★ISO稟議分析
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | ID標準ラベル |
| 2 | Ver | バージョン(標準ラベル) |
| 3 | Title | タイトル(標準ラベル) |
| 4 | Status | ステータス |
| 5 | _Section-30 | ―(セクション「本稟議を損害として計上する年月を選択」開始) |
| 6 | Class105 | 計上年 |
| 7 | Class106 | 計上月 |
| 8 | Class107 | 計上年月標準ラベル、Hide |
| 9 | _Section-23 | ―(セクション「稟議分析」開始) |
| 10 | Class109 | 稟議概要件名 |
| 11 | Class110 | 稟議項目 |
| 12 | Description110 | 稟議概要 |
| 13 | Description111 | 要因分析 |
| 14 | Description112 | 今後の対策 |
| 15 | Attachments110 | 図面・資料など |
| 16 | Class111 | 稟議の原因 |
| 17 | _Section-24 | ―(セクション「是正状況」開始) |
| 18 | Class114 | 是正状況 |
| 19 | Class115 | 再発状況 |
| 20 | Description115 | 是正/効果検証 |
| 21 | Comments | コメント(標準ラベル) |
| 22 | _Section-28 | ―(セクション「稟議共有」開始) |
| 23 | Class120 | 部門長共有 |
| 24 | Date120 | 部門長共有日 |
| 25 | Class121 | 全体会議共有 |
| 26 | Date121 | 全体会議共有日 |
| 27 | _Section-29 | ―(セクション「稟議改善への取組み」開始) |
| 28 | _Links-319022 | ―SiteId 319022【部署別】稟議改善の関連レコード一覧を埋め込み表示 |
#### _Tab-7稟議申請書(控え)
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | DateA | 申請日 |
| 2 | Date033 | 最終決裁日 |
| 3 | ClassL | 稟議コードリンク |
| 4 | ClassA | 稟議コード |
| 5 | ClassB | エリア |
| 6 | ClassC | 稟議分類 |
| 7 | ClassD | 事前稟議 |
| 8 | _Section-17 | ―(セクション「申請者」開始) |
| 9 | Class001 | 申請部署 |
| 10 | Class002 | 申請者 |
| 11 | Class003 | 社員番号 |
| 12 | Class004 | 上長(一次承認者) |
| 13 | Class005 | 役員(二次承認者) |
| 14 | Class009 | 関係者 |
| 15 | _Section-18 | ―(セクション「マスターシート」開始) |
| 16 | ClassR | 関連案件有無 |
| 17 | Class011 | マスターシート |
| 18 | Class012 | 契約コード |
| 19 | Class013 | 派生コードHide |
| 20 | Class014 | 工事名 |
| 21 | Class015 | 主担当営業 |
| 22 | Class016 | 担当IC |
| 23 | Class017 | 担当設計 |
| 24 | Class018 | 担当監督 |
| 25 | Class019 | 所属長 |
| 26 | Class020 | 担当役員 |
| 27 | Class021 | 工務エリア担当 |
| 28 | _Section-19 | ―(セクション「稟議内容」開始) |
| 29 | ClassG | 稟議件名 |
| 30 | DescriptionA | 稟議内容 |
| 31 | ClassZ | 消費税 |
| 32 | NumA | 原価 |
| 33 | NumZ | 販売/購入額 |
| 34 | NumE | 実損額 |
| 35 | NumF | 今回支払額 |
| 36 | _Section-27 | ―(セクション「販売額(税別)を稟議該当者で按分」開始) |
#### _Tab-8事故報告書(控え)
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | _Section-20 | ―(セクション「事故報告書(赤稟議の場合必須)」開始) |
| 2 | DescriptionB | 事故内容・原因 |
| 3 | DescriptionC | 損害状況 |
| 4 | DescriptionD | 再発防止策 |
| 5 | _Section-21 | ―(セクション「追記」開始) |
| 6 | DescriptionF | 補足 |
#### _Tab-9承認状況(控え)
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | _Section-22 | ―(セクション「承認状況」開始) |
| 2 | Class031 | 一次承認者 |
| 3 | Date031 | 一次承認日 |
| 4 | Class051 | 一次承認コメント |
| 5 | Class032 | 二次承認者 |
| 6 | Date032 | 二次承認日 |
| 7 | Class052 | 二次承認コメント |
| 8 | Class033 | 最終決裁者 |
| 9 | Class053 | 決裁コメント |
#### _Tab-10★稟議該当者
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Class180 | 稟議該当者チェック |
| 2 | _Section-25 | ―(セクション「稟議該当者」開始) |
| 3 | Class141 | ①申請部署 |
| 4 | Class151 | ①申請者 |
| 5 | Class142 | ②関連部署 |
| 6 | Class152 | ②関連社員 |
| 7 | Class143 | ③関連部署 |
| 8 | Class153 | ③関連社員 |
| 9 | Class144 | ④関連部署 |
| 10 | Class154 | ④関連社員 |
| 11 | Class145 | ⑤関連部署 |
| 12 | Class155 | ⑤関連社員 |
| 13 | Class146 | ⑥関連部署 |
| 14 | Class156 | ⑥関連社員 |
| 15 | Class147 | ⑦関連部署 |
| 16 | Class157 | ⑦関連社員 |
| 17 | Class148 | ⑧関連部署 |
| 18 | Class158 | ⑧関連社員 |
| 19 | Class149 | ⑨関連部署 |
| 20 | Class159 | ⑨関連社員 |
| 21 | Class150 | ⑩関連部署 |
| 22 | Class160 | ⑩関連社員 |
| 23 | _Section-26 | ―(セクション「稟議金額の割当(関連人数で按分) ※販売金額(税別)」開始) |
| 24 | NumP | 割当金1 |
| 25 | NumQ | 割当金2 |
| 26 | _Links-319017 | ―SiteId 319017【ISO】部署担当者別稟議集計の関連レコード一覧を埋め込み表示 |
#### _Tab-11
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Class191 | 全社員リスト1 |
| 2 | Class192 | 全社員リスト2 |
| 3 | Class193 | 全社員リスト3 |
| 4 | Class194 | 全社員リスト4 |
| 5 | Class195 | 全社員リスト5 |
| 6 | Class196 | 全社員リスト6 |
| 7 | Class197 | 全社員リスト7 |
| 8 | Class198 | 全社員リスト8 |
| 9 | Class199 | 全社員リスト9 |
| 10 | Class200 | 全社員リスト10 |
| 11 | _Section-31 | ―(セクション「ログ」開始) |
| 12 | Class181 | ISO確認者 |
| 13 | Date181 | ISO確認日 |
| 14 | Class182 | 役員確認者 |
| 15 | Date182 | 役員確認日 |
| 16 | Date185 | 分析期限 |
#### SectionsAllowExpand / Expand
| Id | ラベル | AllowExpand | Expand |
|---|---|---|---|
| 30 | 本稟議を損害として計上する年月を選択 | false | true |
| 23 | 稟議分析 | false | true |
| 24 | 是正状況 | false | true |
| 28 | 稟議共有 | false | true |
| 29 | 稟議改善への取組み | false | true |
| 17 | 申請者 | false | true |
| 18 | マスターシート | false | true |
| 19 | 稟議内容 | false | true |
| 27 | 販売額(税別)を稟議該当者で按分 | false | true |
| 20 | 事故報告書(赤稟議の場合必須) | false | true |
| 21 | 追記 | false | true |
| 22 | 承認状況 | false | true |
| 25 | 稟議該当者 | false | true |
| 26 | 稟議金額の割当(関連人数で按分) ※販売金額(税別) | false | true |
| 31 | ログ | true | false |
### 3.3 タイトル表示TitleColumns / TitleSeparator
`TitleColumns: [ClassA, ClassB, ClassC, Class109]`、`TitleSeparator: "■"` のため、レコードタイトルは次の式で構成される。
```
[ClassA稟議コード] ■ [ClassBエリア] ■ [ClassC稟議分類] ■ [Class109稟議概要件名]
```
## 4. 項目定義Columns
種別は「項目種別の判定ルール」に基づく推定。備考には NoWrapFieldCssExtendedHtmlAfterControl の有無等を記載。
#### General★ISO稟議分析タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ResultId | 自動採番ID | ID標準 | - | Hide |
| Ver | 内部管理項目(バージョン番号) | バージョン(標準) | - | Hide |
| Status | 状態 | ステータス | 新規登録ISO確認中役員確認依頼ISO確認済全体共有共有停止保留 | - |
| Class105 | 文字列(拡張分類) | 計上年 | 選択肢はサーバースクリプトで年-1〜年+1を動的追加 | NoWrap |
| Class106 | 文字列(拡張分類) | 計上月 | 1〜12月の選択 | - |
| Class107 | 文字列(拡張分類) | 計上年月(標準ラベル) | Class105+Class106からクライアントスクリプトで自動生成 | Hide, NoWrap |
| Class109 | 文字列(拡張分類) | 稟議概要件名 | - | FieldCss: field-wide |
| Class110 | 文字列(拡張分類) | 稟議項目 | SiteId 319020稟議項目から選択肢取得 | Link項目 |
| Description110 | 説明 | 稟議概要 | - | - |
| Description111 | 説明 | 要因分析 | - | - |
| Description112 | 説明 | 今後の対策 | - | - |
| Attachments110 | 添付ファイル | 図面・資料など | - | - |
| Class111 | 文字列(拡張分類) | 稟議の原因 | SiteId 319019から選択肢取得対象10サイトに含まれない外部サイト | Link項目 |
| Class114 | 文字列(拡張分類) | 是正状況 | 是正中/是正済み | - |
| Class115 | 文字列(拡張分類) | 再発状況 | 初発/再発案件 | - |
| Description115 | 説明 | 是正/効果検証 | - | - |
| Comments | コメント欄 | コメント(標準) | - | - |
| Class120 | 文字列(分類) | 部門長共有 | 未共有/共有済み | ChoicesControlType: Radio |
| Date120 | 日付 | 部門長共有日 | Class120選択時にクライアントスクリプトが自動入力 | - |
| Class121 | 文字列(分類) | 全体会議共有 | 未共有/共有済み | ChoicesControlType: Radio, NoWrap |
| Date121 | 日付 | 全体会議共有日 | Class121選択時にクライアントスクリプトが自動入力 | - |
#### _Tab-7稟議申請書(控え))タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| DateA | 日付 | 申請日 | - | DateFilterSetMode:2 |
| Date033 | 日付 | 最終決裁日 | - | DateFilterSetMode:2 |
| ClassL | 文字列(分類) | 稟議コードリンク | SiteId 160926稟議コード管理の値をルックアップしClassA/B/Cへ自動反映 | FieldCss: field-wide |
| ClassA | 文字列(分類) | 稟議コード | - | NoWrap, ValidateRequired, NoDuplication重複禁止 |
| ClassB | 文字列(分類) | エリア | 東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他 | ChoicesControlType: Radio |
| ClassC | 文字列(分類) | 稟議分類 | 白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告 | ChoicesControlType: Radio |
| ClassD | 文字列(分類) | 事前稟議 | SiteId 160926稟議コード管理、事前稟議に絞込表示から選択 | Link項目、FieldCss: field-wide |
| Class001 | 文字列(拡張分類) | 申請部署 | 部署マスタ([[Depts]])、既定値=自分の所属 | GridLabelText:申請者 |
| Class002 | 文字列(拡張分類) | 申請者 | ユーザーマスタ、既定値=自分 | - |
| Class003 | 文字列(拡張分類) | 社員番号 | ※自動入力補足HTML、後述4.1 | - |
| Class004 | 文字列(拡張分類) | 上長(一次承認者) | ユーザーマスタ | GridLabelText:承認者 |
| Class005 | 文字列(拡張分類) | 役員(二次承認者) | ユーザーマスタ | - |
| Class009 | 文字列(拡張分類) | 関係者 | 複数選択可、決裁完了通知先後述4.1 | FieldCss: field-wide |
| ClassR | 文字列(分類) | 関連案件有無 | 「関連するマスターシートが登録済みの場合は『有り』を選択すること」 | ChoicesControlType: Radio, 既定値=有り |
| Class011 | 文字列(拡張分類) | マスターシート | SiteId 189112対象10サイトに含まれない外部サイトから検索選択 | FieldCss: field-wide |
| Class012 | 文字列(拡張分類) | 契約コード | - | NoWrap |
| Class013 | 文字列(拡張分類) | 派生コード | - | Hide |
| Class014 | 文字列(拡張分類) | 工事名 | - | FieldCss: field-wide |
| Class015 | 文字列(拡張分類) | 主担当営業 | ユーザーマスタ | - |
| Class016 | 文字列(拡張分類) | 担当IC | ユーザーマスタ | - |
| Class017 | 文字列(拡張分類) | 担当設計 | ユーザーマスタ | - |
| Class018 | 文字列(拡張分類) | 担当監督 | ユーザーマスタ | - |
| Class019 | 文字列(拡張分類) | 所属長 | ユーザーマスタ | NoWrap |
| Class020 | 文字列(拡張分類) | 担当役員 | ユーザーマスタ | - |
| Class021 | 文字列(拡張分類) | 工務エリア担当 | ユーザーマスタ | - |
| ClassG | 文字列(分類) | 稟議件名 | - | FieldCss: field-wide |
| DescriptionA | 説明 | 稟議内容 | - | - |
| ClassZ | 文字列(分類) | 消費税 | 税別/税込、既定値=税別 | ChoicesControlType: Radio, NoWrap |
| NumA | 数値 | 原価 | ※税別補足HTML、税込選択時は表示切替 | 既定値0, Min0, 文字サイズ拡大スタイル対象 |
| NumZ | 数値 | 販売/購入額 | ※税別・利益込み補足HTML、税込選択時は表示切替 | Min0, 文字サイズ拡大スタイル対象 |
| NumE | 数値 | 実損額 | ※原価-危険負担費の今回使用額 | Min0, 文字サイズ拡大スタイル対象 |
| NumF | 数値 | 今回支払額 | ※実損額または販売額から転記 | 文字サイズ拡大スタイル対象 |
#### _Tab-8事故報告書(控え))タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| DescriptionB | 説明 | 事故内容・原因 | - | - |
| DescriptionC | 説明 | 損害状況 | - | - |
| DescriptionD | 説明 | 再発防止策 | - | - |
| DescriptionF | 説明 | 補足 | 「上長・役員からの補足」 | - |
#### _Tab-9承認状況(控え))タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| Class031 | 文字列(拡張分類) | 一次承認者 | ユーザーマスタ | - |
| Date031 | 日付 | 一次承認日 | - | - |
| Class051 | 文字列(拡張分類) | 一次承認コメント | - | FieldCss: field-wide |
| Class032 | 文字列(拡張分類) | 二次承認者 | ユーザーマスタ | - |
| Date032 | 日付 | 二次承認日 | - | - |
| Class052 | 文字列(拡張分類) | 二次承認コメント | - | FieldCss: field-wide |
| Class033 | 文字列(拡張分類) | 最終決裁者 | ユーザーマスタ | - |
| Class053 | 文字列(拡張分類) | 決裁コメント | - | FieldCss: field-wide |
#### _Tab-10★稟議該当者タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| Class180 | 文字列(拡張分類) | 稟議該当者チェック | 未チェック/チェック済 | 既定値0 |
| Class141 | 文字列(拡張分類) | ①申請部署 | 部署マスタ([[Depts]]) | NoWrap |
| Class151 | 文字列(拡張分類) | ①申請者 | Usersテーブル参照有効ユーザーのみ絞込 | - |
| Class142〜150 | 文字列(拡張分類) | ②〜⑩関連部署 | 部署マスタ、選択に応じ対応する関連社員欄をポストバック更新 | NoWrap |
| Class152〜160 | 文字列(拡張分類) | ②〜⑩関連社員 | Usersテーブル参照有効ユーザーのみ絞込 | - |
| NumP | 数値 | 割当金1 | ※申請者分NumZを人数按分した結果 | - |
| NumQ | 数値 | 割当金2 | ※関連社員分NumZを人数按分した結果 | - |
#### _Tab-11タブの項目
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| Class191〜200 | 文字列(拡張分類) | 全社員リスト1〜10 | ユーザーマスタ複数選択全社員IDを分割格納する想定だったが、生成用スクリプトは無効化済み。後述 | FieldCss: field-wide |
| Class181 | 文字列(拡張分類) | ISO確認者 | プロセス「ISO確認中」実行時に自動入力 | - |
| Date181 | 日付 | ISO確認日 | プロセス「ISO確認中」実行時に自動入力 | - |
| Class182 | 文字列(拡張分類) | 役員確認者 | プロセス「役員分析」実行時に自動入力 | - |
| Date182 | 日付 | 役員確認日 | プロセス「役員分析」実行時に自動入力 | - |
| Date185 | 日付 | 分析期限 | プロセス「ISO確認中」実行時に翌月25日を自動設定 | - |
#### 編集画面のどのタブにも配置されていない項目(裏項目)
以下はColumns定義には存在するが、EditorColumnHashのいずれのタブにも配置されておらず、通常の編集画面からは直接入力・閲覧できない。通知本文・スクリプト・プロセスの内部処理専用、または過去仕様の名残りと推測される詳細は「気になる点」参照
| 列名(内部) | 種別 | 表示ラベル | 備考 |
|---|---|---|---|
| UpdatedTime | システム項目 | 更新日時 | GridColumnsで使用、GridDesignでUpdator併記 |
| NumB | 数値 | 危険負担費(元) | - |
| NumC | 数値 | 今回使用額 | - |
| NumD | 数値 | 危険負担費(残金) | - |
| DescriptionX | 説明 | 標準ラベル | Hide。ExtendedHtmlAfterFieldに「工種・材料」「取引先」欄への言及あり本サイトに該当項目なし、他サイト設定の流用の可能性 |
| ClassV | 文字列(分類) | 支払先チェック | 未チェック/記入漏れ無し |
| NumM | 数値 | 支払合計 | ExtendedFieldCss: size150 |
| DescriptionE | 説明 | 是正処置の効果測定 | - |
| AttachmentsB | 添付ファイル | 事故補足資料 | EditorReadOnly |
| Class071 | 文字列(拡張分類) | 役員 | 複数選択可 |
| Class072 | 文字列(拡張分類) | 経理担当 | 複数選択可 |
| Class073 | 文字列(拡張分類) | 工務担当 | 複数選択可 |
| Class074 | 文字列(拡張分類) | アフター担当 | 複数選択可 |
| Class075 | 文字列(拡張分類) | アシスタント | 複数選択可 |
| Class076 | 文字列(拡張分類) | ISO担当 | 複数選択可 |
| Class041 | 文字列(拡張分類) | 差戻し者 | - |
| Date041 | 日付 | 差戻し日 | - |
| ClassP | 文字列(分類) | 科目 | FieldCss: field-wide |
| ClassQ | 文字列(分類) | 摘要 | FieldCss: field-wide |
| DateP | 日付 | 経理処理日 | - |
| DescriptionP | 説明 | 備考 | - |
| CheckA | チェックボックス | 標準ラベル | Hide, ValidateRequired |
| Class100 | 文字列(拡張分類) | 役員 | Hide。既定値として役員クラスの複数ユーザーIDが固定登録 |
| Class101 | 文字列(拡張分類) | 経理 | Hide。既定値として経理担当の複数ユーザーIDが固定登録 |
| Class081 | 文字列(拡張分類) | 豊藏社長 | Hide。既定値として特定個人のユーザーIDが固定登録後述「気になる点」 |
| DateK | 日付 | 期限 | 入力ガイド「申請または承認日から7日後」 |
| Class080 | 文字列(拡張分類) | 差戻し権限者 | 「上長、担当役員、社長」 |
| Date042 | 日付 | 取消日 | - |
| Date043 | 日付 | 保留日 | - |
| Date044 | 日付 | 再開日 | - |
| Class040 | 文字列(拡張分類) | 却下処理者 | - |
| Date040 | 日付 | 却下処理日 | - |
| Class054 | 文字列(拡張分類) | 却下コメント | FieldCss: field-wide |
| Class055 | 文字列(拡張分類) | 差戻しコメント | FieldCss: field-wide |
| Description051〜055 | 説明 | 一次/二次承認・決裁・却下・差戻しコメント履歴 | - |
| Class037 | 文字列(拡張分類) | 次の処理者 | GridDesignでDateK(期限)併記 |
| ClassO | 文字列(分類) | 経理確認 | 未確認/確認済み |
| ClassN | 文字列(拡張分類) | 経理処理者 | - |
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
| 列名 | 色・スタイル | 内容 |
|---|---|---|
| Class003 | skyblue | ※自動入力 |
| Class009 | blue left | ※決裁完了通知先 |
| Class011 | red big | 関連するマスターシートがある場合は選択 |
| ClassD | red small | ※関連する事前稟議がある場合は必ず選択してください。※赤稟議の場合、事前稟議がないと却下される要因となります。 |
| AttachmentsA | small green | ※補足資料、見積書、請求書、写真など。 |
| NumAid: NumAcomment | red right税込選択時はスクリプトでblueに切替 | ※税別(税込選択時は「※税込」に自動変更) |
| NumZid: NumZcomment | red right税込選択時はスクリプトでblueに切替 | ※税別・利益込み(税込選択時は「※税込・利益込み」に自動変更) |
| NumE | red | ※原価-危険負担費の今回使用額 |
| NumF | red | ※実損額または販売額から転記。 |
| NumP | red right | ※申請者分 |
| NumQ | red right | ※関連社員分 |
| ClassZ | small red | ※原則として税別にて申請。物品購入等の場合は税込み申請可。 |
| DescriptionXExtendedHtmlAfterField | red left | ※原価しかわからない場合は原価÷0.7を客出し金額とする。※客出し金額しかわからない場合は備考欄に「規定金額」と記載すること。※「工種・材料」「取引先」が空欄の行は自動的に削除されます。 |
## 5. 作成・更新権限(フィールド単位)
### PermissionForCreating新規作成時にのみ権限制御される項目
| 列名 | 権限値 |
|---|---|
| Class004上長(一次承認者) | 5 |
| Class005役員(二次承認者) | 5 |
### PermissionForUpdating更新時に権限制御される項目
| 列名 | 権限値 |
|---|---|
| Class195全社員リスト5 | 1 |
| Class191全社員リスト1 | 1 |
| Class192全社員リスト2 | 1 |
| Class193全社員リスト3 | 1 |
| Class194全社員リスト4 | 1 |
| Class004上長(一次承認者) | 5 |
| Class005役員(二次承認者) | 5 |
### 項目単位の閲覧・作成・更新制限ColumnAccessControls
本サイトは項目アクセス制御が広範囲に設定されている。
- **ReadColumnAccessControls**(閲覧制限): 稟議コード(ClassA)、事前稟議(ClassD)、稟議件名(ClassG)、稟議コードリンク(ClassL)、経理処理者(ClassN)、経理確認(ClassO)、科目(ClassP)、摘要(ClassQ)、関連案件有無(ClassR)、支払先チェック(ClassV)、申請部署〜工務エリア担当(Class001〜021)、一次〜二次承認者・決裁者(Class031〜033・037・040・041)、承認/決裁/却下/差戻しコメント(Class051〜055)、役員・経理・工務・アフター・アシスタント・ISO担当(Class071〜076)、差戻し権限者・豊藏社長・役員・経理既定値(Class080・081・100・101)、稟議該当者関連(Class141〜160)、原価・危険負担費・支払合計・実損額・今回支払額等の金額項目(NumA〜F・M・P・Q・Z)、期限・経理処理日・各種日付(DateK・DateP・Date031〜044)、稟議内容/事故内容/損害状況/再発防止策/是正効果測定/補足/備考等の説明項目(DescriptionA〜F・P・051〜055)、補足資料・事故補足資料(AttachmentsA・B) — **これらすべてが Groups 13(ISO)・19(システム)・41(役員グループ) のみ閲覧可能**に制限されている。
- **CreateColumnAccessControls / UpdateColumnAccessControls**(作成・更新制限): 部門長共有(Class120)、全体会議共有(Class121) の2項目が Groups 13・19・41 のみ作成・更新可能。
上記以外の一般社員はこれらの項目が編集画面上で非表示または操作不可となる一覧画面のGridColumnsに出ている項目は別途権限が効く点に注意
## 6. 集計設定Aggregations
| Id | GroupBy | Type | Target |
|---|---|---|---|
| 7 | Status | 0件数集計 | - |
| 8 | ClassBエリア | 0件数集計 | - |
| 1 | Class105計上年 | 0件数集計 | - |
| 2 | Class106計上月 | 0件数集計 | - |
| 3 | Class114是正状況 | 0件数集計 | - |
| 4 | Class115再発状況 | 0件数集計 | - |
| 5 | Class120部門長共有 | 0件数集計 | - |
| 6 | Class121全体会議共有 | 0件数集計 | - |
| 9 | Class005役員(二次承認者) | 0件数集計 | - |
## 7. 他サイト連携Links / ルックアップ)
### 7.1 正式なLinks設定
| 起点列 | 参照先SiteId | 参照先の値→自コピー先 | JsonFormat |
|---|---|---|---|
| Class011マスターシート | 189112対象10サイト外 | 検索書式 `[Title] - [ClassF] - [ClassG]` | true |
| ClassD事前稟議 | 160926稟議コード管理 | 検索書式 `[Title] - [ClassF]`、ビューでClassB=[4](事前稟議)に絞込、DateA降順 | true |
| ClassL稟議コードリンク | 160926稟議コード管理 | ClassC→ClassA, ClassA→ClassB, ClassB→ClassC, ClassF→ClassG | true |
| Class110稟議項目 | 319020稟議項目 | 選択肢として一覧取得([[319020]]形式) | - |
| Class111稟議の原因 | 319019対象10サイト外 | 選択肢として一覧取得([[319019]]形式) | - |
| Class151〜160①〜⑩申請者/関連社員) | Users社員マスタ、SiteId 0 | 有効ユーザーのみ絞込、UserId昇順 | true |
文章補足:
- ClassL選択時に、参照先サイト稟議コード管理 SiteId 160926のClassC/ClassA/ClassB/ClassFの値を、このサイトのClassA/ClassB/ClassC/ClassGへ自動コピーする`ColumnsReturnedWhenAutomaticPostback: "ClassA, ClassB, ClassC, ClassD"`)。
- Class110・Class111は他サイトのレコードそのものへの参照Linkであり、値コピーではなくID参照。
### 7.2 埋め込み子レコード表示_Links-{SiteId}、EditorColumnHash内
| 配置タブ | 表示先SiteId | 内容 |
|---|---|---|
| General末尾 | 319022【部署別】稟議改善 | 関連する稟議改善への取組みレコード一覧を編集画面に埋め込み表示 |
| _Tab-10末尾 | 319017【ISO】部署担当者別稟議集計 | 部署担当者別に按分計上された集計レコード一覧を編集画面に埋め込み表示 |
### 7.3 暗黙的なテーブル参照Links設定に現れないハードコード参照
スクリプト本文後述10.を確認したところ、以下のSiteIdへの直接参照がハードコードされていた。
| 参照元 | 参照先SiteId | 参照方法 | 目的(推測) |
|---|---|---|---|
| クライアントスクリプト「1.ISO稟議管理スクリプト」`$p.ex.updateSummary`関数) | 319017【ISO】部署担当者別稟議集計 | `$.ajax`によるAPI直叩き`/pleasanter/api/items/319017/upsert` | プロセス「再計上」「役員分析」完了時に、稟議該当者・部署ごとの按分金額を319017へ都度アップサート新規作成/更新)で書き込む |
| サーバースクリプト「年選択肢表示」BeforeOpeningPage | 335730組織エリアマスタ | `items.Get('335730')` | 部署→エリア名の対応表を取得し、編集画面のhidden項目`areaList`にJSON形式で埋め込むupdateSummary関数内でエリア名解決に使用 |
| クライアントスクリプト(コメントアウト済み・非稼働) | - | `groups.Get(27)`(サーバースクリプト側の記述、現在は無効化) | 全従業員グループの構成員一覧を取得し全社員リスト項目へ格納する処理だったが、現在はコメントアウトされ動作しない |
## 8. プロセス設定Processes
定義ファイル: [configs/site-319016_【ISO】稟議管理/processes.json](../configs/site-319016_【ISO】稟議管理/processes.json)
| Id | Name・DisplayName | 実行条件(CurrentStatus→ChangedStatus) | 動作(OnClick等) | 成功メッセージ |
|---|---|---|---|---|
| 1 | ISO確認中 | 100(新規登録)→150(ISO確認中) | `processScript('1')`。確認ダイアログ後、分析期限(Date185)に翌月25日を自動設定してからプロセス実行。実行可能グループ:13(ISO) | ISO確認中に変更しました |
| 2 | 役員依頼 | 150(ISO確認中)→170(役員確認依頼) | `processScript('2')`。確認ダイアログ後にプロセス実行。実行可能グループ:13(ISO)。実行後、役員(二次承認者)Class005宛CC: somu-iso@nexthd.jpへ分析依頼メール通知 | 担当役員へ分析を依頼しました |
| 7 | 役員分析 | 170(役員確認依頼)→200(ISO確認済) | `processScript('7')`。稟議概要・要因分析・今後の対策・稟議項目・稟議の原因・是正状況・再発状況・是正/効果検証・稟議該当者チェック・計上年月が入力必須。実行前に按分金額を計算し319017へアップサート送信。実行者制限あり(Class005が自分自身のレコードのみ) | 担当役員による内容分析を入力しました |
| 5 | 保留 | 任意→990(保留) | 確認・入力チェックあり(ValidationType:90)。実行可能グループ:13(ISO) | 保留に変更しました |
| 6 | 再計上 | 任意→変更なし(-1) | `processScript('6')`。確認ダイアログ後、按分金額を再計算し319017へ再アップサート送信。実行可能グループ:13(ISO), 19(システム) | (設定なし) |
補足: プロセス7の実行後、303行目相当のスクリプトで再度319017へのデータ送信が行われるプロセス完了と外部サイトへの集計反映がセットで動作する設計
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | 1.読み取り専用 | New/Edit | [styles/1_1.読み取り専用.css](../configs/site-319016_【ISO】稟議管理/styles/1_1.読み取り専用.css) |
| 2 | 2.項目の文字サイズ変更 | New/Edit | [styles/2_2.項目の文字サイズ変更.css](../configs/site-319016_【ISO】稟議管理/styles/2_2.項目の文字サイズ変更.css) |
| 4 | 3.支払先テーブルの調整 | New/Edit**Disabled** | [styles/4_3.支払先テーブルの調整.css](../configs/site-319016_【ISO】稟議管理/styles/4_3.支払先テーブルの調整.css) |
| 5 | 4.ボタンスタイル | New/Edit**Disabled** | [styles/5_4.ボタンスタイル.css](../configs/site-319016_【ISO】稟議管理/styles/5_4.ボタンスタイル.css) |
| 6 | 5.ガイド欄 | All全画面 | [styles/6_5.ガイド欄.css](../configs/site-319016_【ISO】稟議管理/styles/6_5.ガイド欄.css) |
| 7 | 6.copyButton | New/Edit | [styles/7_6.copyButton.css](../configs/site-319016_【ISO】稟議管理/styles/7_6.copyButton.css) |
DisabledのスタイルId4, Id5は現状無効化されており、実際の画面には反映されていない。
## 10. スクリプトScriptsサーバースクリプトServerScripts
| Id | Title | 適用画面 | ファイル |
|---|---|---|---|
| 1Script | 1.ISO稟議管理スクリプト | New/Edit | [scripts/1_1.ISO稟議管理スクリプト.js](../configs/site-319016_【ISO】稟議管理/scripts/1_1.ISO稟議管理スクリプト.js) |
| 1ServerScript | 年選択肢表示 | BeforeOpeningPage | [serverscripts/1_年選択肢表示.js](../configs/site-319016_【ISO】稟議管理/serverscripts/1_年選択肢表示.js) |
**クライアントスクリプト「1.ISO稟議管理スクリプト」の概要**:
- 編集画面ロード時に、グループ(13:ISO, 41:役員, 19:システム)所属チェックを行い、非所属者に対しては稟議該当者関連タブ(_Tab-7〜11)を非表示にする。
- 所属者にはコメント項目(稟議内容/事故内容・原因/損害状況/再発防止策/補足)のクリップボードコピー用ボタンを動的追加する。
- `code-readonly`/`code-readonly2`クラスの項目・エリア/稟議分類等のラジオボタンを読取り専用化するStatus上ではなく常時読取り専用に近い制御
- 消費税区分(ClassZ)に応じて、原価・販売額欄の補足文言(税別/税込)を動的に切り替える。
- 計上年(Class105)・計上月(Class106)変更時に、計上年月(Class107)を自動合成する。
- 保存前チェックで、稟議該当者の部署・社員欄の整合性チェック(部署が空欄なら社員も空欄に、逆も同様)と、販売額(NumZ)を該当者人数で按分してNumP(申請者分)/NumQ(関連社員分)へ計算・格納する。
- 各承認・確認プロセスボタン押下時に確認ダイアログを表示し、プロセスごとの追加処理分析期限の自動設定、SiteId 319017への集計データ送信等を実行する。
- SiteId 319017【ISO】部署担当者別稟議集計へのボタンをUI上で非表示にする処理を含む。
- **script本文にAPIキーとみられる長い英数字文字列が平文でハードコードされている後述「気になる点」参照。値は本書に転記しない。**
**サーバースクリプト「年選択肢表示」の概要**:
- ページ表示前(BeforeOpeningPage)に、計上年(Class105)の選択肢へ「当年の前後1年」を動的追加する。
- SiteId 335730組織エリアマスタから部署コード・部署名・エリア名の一覧を取得し、hidden項目`areaList`にJSON形式で埋め込むクライアントスクリプト側で参照
- 全従業員グループ(27)の構成員一覧を取得してhidden項目に分割格納する処理が実装されているが、現在はコメントアウトされ無効化されている。
## 11. その他設定
| 項目 | 値・内容 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | trueサイト間の標準リンクブロックを非表示。ただしクライアントスクリプトで個別にSiteId 319017向けボタンも重ねて非表示化している |
| SectionLatestId | 31 |
| AllowCopy | falseレコードのコピー機能を無効化 |
| GuideAllowExpand / GuideExpand | true / "1"(ガイド欄は初期状態で展開表示) |
| TitleSeparator | ■ |
| GridGuide一覧画面ガイド | 「新・稟議申請システムにて、赤稟議(5万円含む)で申請された稟議が最終決裁されると、自動的にデータが連携されます。本テーブルの稟議は全社員が閲覧できます。」+稟議改善への取組みに関する案内文 |
| EditorGuide編集画面ガイド | GridGuideに加え、「ISO確認中分析内容を入力できます。ISO確認済み部署別集計へ計上され、内容を変更できなくなります。」の運用ルールを明記 |
| Comments | 使用ありGeneralタブに配置 |
| StatusControls | Status:-1全ステータス共通かつビュー条件Status∈[200,900,910,990]の場合に、稟議分析関連の主要項目群を一括で読取り専用化する制御あり |
| Views | 保存済みビュー「稟議改善への取組み」SiteId 319022の項目を横断的に一覧表示 |
---
## 気になる点(レビュー観点)
- **【重大・セキュリティ】クライアントスクリプト「1.ISO稟議管理スクリプト」内に、Pleasanter APIキーとみられる長い英数字文字列が平文で2箇所ハードコードされている。** ブラウザの開発者ツールから誰でも参照可能な状態であり、値自体は本書に転記していないが、速やかな失効・再発行、およびサーバースクリプト側(`context`経由への移設やAPIキーを使わない構成への見直しを推奨する。
- 正式な`Links`設定には現れない、SiteId 319017【ISO】部署担当者別稟議集計へのAPI直叩きクライアントスクリプトからの`upsert`、およびSiteId 335730組織エリアマスタへの`items.Get()`直接参照がある詳細は7.3。これらはサイト設定の変更だけでは追跡できない依存関係のため、319016側の項目を改修する際は319017・335730側への影響も要確認。
- Class011マスターシート、SiteId 189112、Class111稟議の原因、SiteId 319019が、今回対象の10サイトリストに含まれない外部サイトを参照している。ドキュメント化・改修時はこれらのサイトの存在も考慮する必要がある。
- Columns定義には約130項目あるが、DescriptionE・Class071〜076・Class100・Class101・Class081・Class080・DateK・ClassP/Q・DateP・DescriptionP・Class037〜055(一部)・ClassN・ClassO 等、多数の項目がEditorColumnHashのどのタブにも配置されておらず、通常の編集画面からは入力・閲覧できない「裏項目」になっている。用途が終了した項目か、通知・按分計算専用の内部項目かの精査を推奨。
- Notifications[0]はMonitorChangesColumnsに90項目以上の変更監視対象を指定しているが、AfterUpdate/AfterBulkUpdate/AfterDelete等の発火条件はすべてfalseになっており、Expression:1のみが有効化されている。意図した通知条件になっているか要確認実質「新規作成時のみ」動作している可能性がある
- Class191〜200全社員リスト1〜10へ全社員IDを分割格納する処理クライアントスクリプトの`getUserList`関数、サーバースクリプトの`groups.Get(27)`によるuserIds_*生成がいずれもコメントアウトされており、現在は機能していない。関連する項目・権限設定PermissionForUpdating、ReadColumnAccessControlsは残置されたままであり、不要であれば整理を推奨。
- スタイル「3.支払先テーブルの調整」「4.ボタンスタイル」がDisabled状態のまま残置されている。使用しないのであれば削除、使用するのであれば有効化の判断を推奨。
- Class081のラベル名が「豊藏社長」という特定個人名になっており、既定値(DefaultInput)にも特定のユーザーIDが固定登録されている。組織変更・人事異動時の保守性に懸念があるため、役職ベースの汎用的な項目名・仕組みへの見直しを検討の余地あり。
- DescriptionXHide項目のExtendedHtmlAfterFieldに「工種・材料」「取引先」欄への言及があるが、本サイトのColumns定義にはこれらに該当する項目が存在しない。他サイト支払先テーブルを持つサイトの設定を流用した際の残骸である可能性がある。

View File

@ -1,40 +1,47 @@
# 概要書【ISO】部署担当者別稟議集計
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319017_spec.md](../configs/site-319017_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319017_【ISO】部署担当者別稟議集計_spec.md](./site-319017_【ISO】部署担当者別稟議集計_spec.md) を参照。本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「【ISO】部署担当者別稟議集計」で、Resultsを管理・参照するための画面です。
このテーブルは、【ISO】稟議管理でISO確認が完了した稟議案件について、決裁された金額を部署・担当者ごとに按分し、集計するための台帳です。稟議1件ごとの金額が、関係する部署・担当者にどのように配分されたかを、年・月単位で確認できます。閲覧できるのはISO担当と役員のみに限定されています。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 稟議コード | |
| | 該当部署 | |
| | 該当社員 | |
| | 計上年 | |
| | 計上月 | |
| | 【ISO】稟議管理 | |
| | 稟議決裁額 | |
| | 按分割当額 | |
| | 稟議件名 | |
| | 備考 | |
| | 計上年月 | |
| | 稟議項目 | |
| | 稟議の原因 | |
| | エリア | |
| 案件情報 | 稟議コード | 元になった稟議案件を識別するコード |
| 案件情報 | 稟議件名 | 元になった稟議の件名 |
| 案件情報 | エリア | 案件が属するエリア(東京/愛知/千葉/静岡/熊本/特建/バックオフィス/その他/未使用) |
| 按分先 | 該当部署 | 決裁額が按分される部署 |
| 按分先 | 該当社員 | 決裁額が按分される担当者(社員) |
| 集計区分 | 計上年 | 按分額を計上する年 |
| 集計区分 | 計上月 | 按分額を計上する月 |
| 金額 | 稟議決裁額 | 元となる稟議案件の決裁金額(販売金額・税別) |
| 金額 | 按分割当額 | 該当部署・該当社員に割り当てられた按分後の金額 |
| 分類 | 稟議項目 | 稟議の項目分類(他の集計テーブルと共通の分類) |
| 分類 | 稟議の原因 | 稟議が発生した原因の分類 |
| 参照 | 【ISO】稟議管理 | 元になったISO稟議管理側のレコードへのリンク |
| 備考 | 備考 | 補足事項の自由記入欄 |
上記の「案件情報」「按分先」「集計区分」「金額」「分類」の各項目は、いずれも編集画面上では見た目が読み取り専用(グレー表示・太字)になっており、通常の業務担当者が直接書き換えることは想定されていません。値は元の稟議案件から自動的に転記される形で登録されます。
## 3. 業務の流れ(ボタン操作)
本サイトにはボタン操作によるステータス遷移プロセスは設定されていません。ISO確認済みとなった稟議案件の情報が、部署・担当者別の按分レコードとして自動的にこのテーブルへ計上される仕組みで運用されており、閲覧者が本サイト上で明示的な操作を行う場面はありません。
## 4. 通知される場面
本サイトには通知設定はありません。新しい按分レコードが登録された場合でも、本サイトからのメール等の通知は行われません。
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- 【ISO】稟議管理ISO確認が完了した稟議案件の情報を参照するリンクが設定されています。このテーブルのレコードは、【ISO】稟議管理側の案件と対になっています。
- 稟議項目:稟議の項目分類を参照するリンクが設定されており、稟議項目マスタの分類名がそのまま表示されます。
- 稟議の原因:稟議が発生した原因の分類を参照するリンクが設定されています。
- 部署マスタ:「該当部署」項目は部署マスタから選択される仕組みになっています。
- 社員(ユーザー)マスタ:「該当社員」項目は、利用停止されていない社員の一覧から選択される仕組みになっています。
- 関連マスタ連携: (不明) → (不明)
さらに、月別×部署・月別×稟議項目・月別×稟議の原因という3種類の集計表示クロス集計ビューがあらかじめ用意されており、按分割当額の合計をそれぞれの切り口で確認できます。
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
本サイトは「新・稟議申請」システム配下の関連テーブル群の一つで、ISO確認済みの稟議案件を部署・担当者単位に分解して金額を可視化する、集計専用のサブテーブルという位置づけです。他の稟議関連サイト新・稟議申請、稟議項目、稟議通知管理などとは異なり、申請者自身が直接データを入力・更新する画面ではなく、ISO担当・役員向けの参照専用の集計テーブルである点が特徴です。

View File

@ -0,0 +1,199 @@
# サイト仕様書【ISO】部署担当者別稟議集計SiteId: 319017
- 取得元データ: [site-319017_latest.json](../siteSettingJsons/site-319017_latest.json)
- 取得日時: 2025-11-17T09:36:52サイト更新日時設定バージョン `Ver: 7`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 【ISO】部署担当者別稟議集計 |
| ReferenceType | Results |
| ParentId | 319014新・稟議申請 |
| InheritPermission | 319017自サイト権限は自サイト独自設定 |
| Publish | false |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460 |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
親サイトは319014「新・稟議申請」であり、稟議申請システムのサイトツリー配下に位置する。
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Dept | 1 | 45 |
| Dept | 21 | 45 |
| Group | 13 | 45 |
| Group | 19 | 511 |
| Group | 41 | 45 |
| User | 460 | 511 |
※ 権限値はビットフラグの加算方式のため、正確な意味閲覧のみ編集可否等は環境のロール定義に依存する。511は他サイトでも管理者相当としてよく用いられる高権限値、45はそれより低い閲覧中心の権限値と推測される。
GridGuideEditorGuideには「このテーブルはISOと役員しか閲覧することはできません」と明記されており後述、上表のDept/Group/UserがそれぞれISO部門・役員に対応する設定であることが前提となる。実際の対象者がガイド文の記述と一致しているかは、Dept 1・21、Group 13・19・41の実体環境のロール定義を確認する必要がある気になる点参照
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | 標準No. |
| 2 | ClassA | 稟議コード |
| 3 | ClassG | 稟議件名 |
| 4 | ClassD | エリア |
| 5 | ClassB | 該当部署 |
| 6 | ClassC | 該当社員 |
| 7 | ClassI | 計上年 |
| 8 | ClassJ | 計上月 |
| 9 | ClassO | 稟議項目 |
| 10 | ClassP | 稟議の原因 |
| 11 | NumA | 稟議決裁額 |
| 12 | NumB | 按分割当額 |
| 13 | UpdatedTime | (標準:更新日時) |
### 3.2 編集画面レイアウトEditorColumnHash / Tabs
本サイトは `Sections` ではなく `Tabs``TabLatestId` / `Tabs`でタブ構成されている点に注意。EditorColumnHashのキーは `General`(既定タブ)と `_Tab-1`タブID1
**General既定タブ、無題**
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | 標準No.、Hide |
| 2 | Ver | 標準バージョン、Hide |
| 3 | Comments | (標準:コメント) |
| 4 | ClassA | 稟議コード |
| 5 | ClassG | 稟議件名 |
| 6 | ClassD | エリア |
| 7 | ClassB | 該当部署 |
| 8 | ClassC | 該当社員 |
| 9 | ClassI | 計上年 |
| 10 | ClassJ | 計上月 |
| 11 | ClassK | 計上年月Hide |
| 12 | ClassO | 稟議項目 |
| 13 | ClassP | 稟議の原因 |
| 14 | NumA | 稟議決裁額 |
| 15 | NumB | 按分割当額 |
| 16 | Description001 | 備考 |
**_Tab-1タブID1、ラベル「リンク」**
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Class100 | 【ISO】稟議管理 |
| 2 | _Links-319016 | ―SiteId 319016「【ISO】稟議管理」から見た関連レコード一覧の表示枠 |
**Tabs定義**
| Id | ラベル |
|---|---|
| 1 | リンク |
### 3.3 タイトル表示TitleColumns / TitleSeparator
`TitleColumns` / `TitleSeparator` はSiteSettingsに設定が存在しない。標準のタイトル表示既定はNo.等)のまま。
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ResultId | 自動採番ID | (標準) | - | Hide:true |
| Ver | バージョン管理(システム標準) | (標準) | - | Hide:true。楽観的排他制御用の内部項目 |
| ClassA | 文字列(分類) | 稟議コード | - | NoWrap、ExtendedFieldCss/ExtendedControlCss: `code-readonly2`(読み取り専用スタイル適用) |
| ClassB | 文字列(分類) | 該当部署 | ChoicesText: `[[Depts]]`(部署マスタから選択) | NoWrap、`code-readonly2`、SearchType: PartialMatch |
| ClassC | 文字列(分類) | 該当社員 | ChoicesText: Usersテーブル参照Disabledユーザーを除外し、UserId昇順 | `code-readonly2`、SearchType: PartialMatch、Links設定ありJsonFormat |
| ClassD | 文字列(分類) | エリア | 選択肢: 東京/愛知/千葉/静岡/熊本/特建/バックオフィス/その他/未使用(各選択肢に表示色クラス付き) | NoWrap、SearchType: PartialMatch |
| ClassG | 文字列(分類) | 稟議件名 | - | FieldCss: `field-wide`、`code-readonly2` |
| ClassI | 文字列(分類) | 計上年 | 選択肢: 2020年〜2050年西暦 | NoWrap、`code-readonly2`、SearchType: PartialMatch |
| ClassJ | 文字列(分類) | 計上月 | 選択肢: 1月〜12月 | `code-readonly2`、SearchType: PartialMatch |
| ClassK | 文字列拡張分類・3桁連番 | 計上年月 | - | Hide:true、`code-readonly2`。Aggregation(Id:4)のGroupByに使用されており、ClassIClassJを合成した集計用キーと推測される |
| ClassO | 文字列(分類) | 稟議項目 | ChoicesText: `[[319020]]`稟議項目サイトを参照するLink列 | NoWrap、`code-readonly2`、Link:true、SearchType: PartialMatch |
| ClassP | 文字列(分類) | 稟議の原因 | ChoicesText: `[[319019]]`稟議の原因サイトを参照するLink列 | `code-readonly2`、Link:true、SearchType: PartialMatch |
| Class100 | 文字列拡張分類・3桁連番 | 【ISO】稟議管理 | ChoicesText: `[[319016]]`ISO稟議管理サイトを参照するLink列 | FieldCss: `field-wide`、`code-readonly2`、Link:true、SearchType: PartialMatch、編集画面ではタブ「リンク」に配置 |
| NumA | 数値 | 稟議決裁額 | Format: `N`(桁区切り数値) | `code-readonly2`、TextAlign:20右寄せ、ExtendedHtmlAfterControlあり4.1参照) |
| NumB | 数値 | 按分割当額 | Format: `N` | `code-readonly2`、TextAlign:20右寄せ、Aggregation(Id:4)のTarget合計対象列 |
| Description001 | 説明(複数行文字列) | 備考 | - | 読み取り専用スタイルの指定なし(通常編集可) |
| Comments | コメント欄(標準) | (標準) | - | Columns配列に個別定義なし標準ラベルのまま。EditorColumnHashのGeneralタブに配置 |
全体として `ClassA`〜`ClassJ`、`NumA``NumB`、`Class100` はほぼ全て `code-readonly2` スタイル後述9章が適用されており、編集画面上は視覚的に読み取り専用として扱われている他サイトからの自動転記値を人手で書き換えさせない意図と推測
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
| 列名 | 色 | 内容 |
|---|---|---|
| NumA | 赤色・小文字(`commentAdd small red right` | ※販売金額(税別) |
## 5. 作成・更新権限(フィールド単位)
`PermissionForCreating` / `PermissionForUpdating` はSiteSettingsに設定が存在しない。フィールド単位の作成・更新権限は「設定なし」2章のサイト単位権限のみで制御
なお、多くの項目に付与されている `code-readonly2` はCSS`pointer-events: none` 等による見た目上の編集不可化であり、Pleasanterのフィールド権限機能PermissionForUpdating等による正式なアクセス制御ではない点に注意気になる点参照
## 6. 集計設定Aggregations
| Id | GroupBy内部/ラベル) | Type | Target内部/ラベル) |
|---|---|---|---|
| 5 | ClassI計上年 | 0 | - |
| 6 | ClassJ計上月 | 0 | - |
| 4 | ClassK計上年月 | 1 | NumB按分割当額 |
| 3 | ClassB該当部署 | 0 | - |
`Type` の意味は環境のPleasanterバージョンに依存するが、一般的に `0=件数集計`、`1=合計` に対応する実装が多い。Id:4ClassK×NumB合計が本サイトの主目的である「部署担当者別の稟議決裁額按分集計」に直接対応する設定と考えられる。
## 7. 他サイト連携Links / ルックアップ)
| 起点列(内部/ラベル) | 参照先 | 内容 |
|---|---|---|
| ClassC該当社員 | UsersマスタSiteId:0扱いシステム共通ユーザーテーブル | Disabledユーザーを除外し、UserId昇順で表示するユーザー選択ルックアップ。`JsonFormat:true` で選択値をJSON形式で保持 |
| ClassP稟議の原因 | SiteId 319019稟議の原因 | ※本ドキュメント対象の10サイト一覧には含まれないサイトIDだが、`ChoicesText: [[319019]]` として実在するリンク参照。当該サイトのレコードを選択するLink列自動コピー列の設定は無し、選択のみ |
| ClassO稟議項目 | SiteId 319020稟議項目 | 稟議項目サイトのレコードを選択するLink列自動コピー列の設定は無し、選択のみ |
| Class100【ISO】稟議管理 | SiteId 319016【ISO】稟議管理 | ISO稟議管理サイトのレコードを選択するLink列。加えて、EditorColumnHashの `_Tab-1`(タブ「リンク」)に `_Links-319016` が配置されており、319016側から見た本サイトへの関連レコード一覧表示枠も併設されている双方向のリンク関係 |
補足:
- ServerScriptsは0件のため、`items.Get(SiteId)` 等によるハードコード参照暗黙的なテーブル参照は本サイトには存在しない。他サイト連携は上表のLinks設定のみで構成されている。
- サイト名が「集計」であるが、Links設定自体には自サイト外の数値を自動集計する仕組み例えば319016側の決裁額をこのサイトへ按分コピーするような設定は見当たらない。ClassI/ClassJ/ClassK/NumA/NumBはいずれも本サイト内の通常項目として定義されており、実データ按分決裁額は319016側の何らかの処理本サイトのServerScriptsではない、319016側のServerScript等によって本サイトへレコードとして書き込まれている可能性が高い。実装確認には319016のServerScripts側の調査が必要本タスクの対象外
- `ParentId: 319014`新・稟議申請であり、サイトツリー上は319014の子サイトとして位置づけられている。
## 8. プロセス設定Processes
`configs/site-319017_【ISO】部署担当者別稟議集計/processes.json` を確認したが、内容は空配列 `[]`。プロセス(ボタン操作によるステータス遷移等)は設定なし。
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | 読み取り専用 | New新規作成画面Edit編集画面 | [1_読み取り専用.css](../configs/site-319017_【ISO】部署担当者別稟議集計/styles/1_読み取り専用.css) |
概要:`.code-readonly` / `.code-readonly2` クラスに対して `pointer-events: none` 等を指定し、対象項目をクリック・編集不可の見た目にするスタイル。4章で示した通り本サイトのほぼ全項目に適用されている。
## 10. スクリプトScriptsサーバースクリプトServerScripts
Scripts、ServerScriptsともに0件。設定なし。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | true一覧・編集画面での「リンク追加」操作UIを非表示。自動転記前提のテーブルのため手動でのリンク追加を抑止していると推測 |
| AllowCopy | falseレコードコピー不可 |
| SectionLatestId | 未設定本サイトはSectionsではなくTabsを使用。TabLatestId: 1 |
| GridGuide | 設定あり([GridGuide.html](../configs/site-319017_【ISO】部署担当者別稟議集計/html/GridGuide.html) |
| EditorGuide | 設定あり([EditorGuide.html](../configs/site-319017_【ISO】部署担当者別稟議集計/html/EditorGuide.html)、GridGuideと同内容 |
| CalendarGuide / CrosstabGuide / GanttGuide / BurnDownGuide / TimeSeriesGuide / AnalyGuide / KambanGuide / ImageLibGuide | いずれも未設定(空) |
| Comments | 使用ありEditorColumnHash Generalに配置。現時点の保存データ上のコメント件数は0件`Comments: "[]"`、これはサイト設定ではなくデータ側の状態) |
| Viewsクロス集計ビュー | 3件定義。いずれも `DefaultMode: Crosstab`、X軸=ClassJ計上月固定、値=NumB按分割当額の合計。①Id3「稟議原因別集計」Y軸=ClassP 稟議の原因②Id1「稟議項目別集計」Y軸=ClassO 稟議項目③Id2「部署集計」Y軸=ClassB 該当部署)。いずれも`CrosstabNotShowZeroRows: true`合計0の行は非表示 |
---
## 気になる点(レビュー観点)
- ガイド文GridGuide/EditorGuideには「このテーブルはISOと役員しか閲覧することはできません」と明記されているが、2章のPermissions設定Dept:1,21Group:13,19,41User:460が実際にISO部門・役員のみに対応しているかは、環境側のDept/Groupマスタと突き合わせないと確認できない。ガイド文と実権限のズレがないか要確認。
- 多くの項目ClassA〜ClassJ、NumA、NumB、Class100に付与されている「読み取り専用」スタイル`code-readonly2`はCSSの`pointer-events:none`による見た目上の制御に過ぎず、`PermissionForUpdating`等の正式なフィールド権限は設定されていない5章。API直接呼び出しやHTML改変により、本来手動編集させたくない値自動転記された決裁額・按分額等が書き換えられてしまう余地がある。運用上重要なテーブルであるため、必要であればフィールド単位権限による正式な制御への切り替えを検討する余地がある。
- `ClassP`稟議の原因が参照するSiteId 319019は、今回ドキュメント対象として提示された10サイト一覧に含まれていない。全体のサイト関連図を作成する際には、319019についても存在を把握しておく必要がある。
- サイト名が「部署担当者別稟議集計」であるにもかかわらず、本サイト自体のLinks/ServerScriptsには他サイトの値を自動集計する仕組みが見当たらない。按分決裁額NumA/NumBがどのように本サイトへ書き込まれているかおそらく319016側のServerScript等からのレコード作成は、本サイト単体の設定からは追跡できない。全体像を把握する際は319016【ISO】稟議管理側のServerScriptsを合わせて確認することを推奨する。
- 秘密情報APIキー・Webhook URL等は本サイトのScripts/ServerScripts/Stylesいずれにも見つからなかったScripts/ServerScriptsは0件、Stylesの内容もCSSのみ

View File

@ -1,16 +1,40 @@
# 概要書:稟議項目
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319020_spec.md](../configs/site-319020_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319020_稟議項目_spec.md](./site-319020_稟議項目_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「稟議項目」で、Resultsを管理・参照するための画面です。
「稟議項目」サイトは、稟議申請の関連画面「【ISO】稟議管理」「【ISO】部署担当者別稟議集計」などで使う「稟議項目」というプルダウン選択肢の一覧を管理するためのマスタです。ここに登録した項目名が、他の稟議関連画面の入力欄でそのまま選択肢として表示されます。単独で申請や承認の処理を行う画面ではなく、他画面を支える「選択肢の元データ」としての位置づけです。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 稟議項目 | |
| 基本情報 | 稟議項目 | この一覧の中身。ここに登録した文字列が、他画面の「稟議項目」プルダウンの選択肢になる |
上記以外に画面には「タイトル」「本文」「状態」「管理者」「担当者」「コメント」といった標準項目も配置されていますが、いずれも初期状態のまま使われており、業務上の特別な意味付けはされていません。
## 3. 業務の流れ(ボタン操作)
このサイトには業務フロー(承認プロセスなど)は設定されていません。管理者が「稟議項目」の一覧に項目を追加・編集・削除するだけの、シンプルなマスタメンテナンス画面です。
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| 新規作成 | ― | 新しい「稟議項目」の選択肢を1件登録する |
| 編集 | ― | 登録済みの「稟議項目」の名称を変更する |
| 削除 | ― | 不要になった「稟議項目」の選択肢を削除する(削除すると他画面のプルダウンからも消える) |
## 4. 通知される場面
通知の設定はありません。
## 5. 関連する仕組み(マスタ連携)
- このサイト自体は他のマスタを参照していません。
- 一方で、「【ISO】稟議管理」および「【ISO】部署担当者別稟議集計」の各画面にある「稟議項目」プルダウンは、本サイトに登録された項目を選択肢として読み込んでいます。つまり本サイトは、それら2画面にとっての「稟議項目の選択肢マスタ」として機能しています。
- 本サイトへ新しい項目を追加すると、参照先の2画面でも新しい選択肢として選べるようになります。逆に、値を書き換えたり削除したりすると、参照先の画面の選択肢もあわせて変わります。
---
本サイト固有の特徴: 稟議申請本体(新・稟議申請、新・稟議申請書など)とは直接つながっておらず、承認ステータスやワークフローの管理は行いません。あくまで「稟議項目」という言葉の選択肢一覧を一元管理するための、小さな補助的マスタです。

View File

@ -0,0 +1,125 @@
# サイト仕様書稟議項目SiteId: 319020
- 取得元データ: [site-319020_latest.json](../siteSettingJsons/site-319020_latest.json)
- 取得日時: 2025-03-02T19:15:06サイト更新日時設定バージョン `Ver: 1`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 稟議項目 |
| ReferenceType | Results |
| ParentId | 319018本ドキュメント群で対象としている10サイトには含まれない。上位の格納用サイトフォルダと推測される |
| InheritPermission | 319020自サイト自身のIDのため、権限を親から継承せず自サイトで独自設定 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460同一ユーザー |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Group | 13 | 15 |
| Group | 19 | 511 |
| Group | 27 | 1 |
| User | 460 | 511 |
※ 権限値はビットフラグの加算方式のため、正確な意味は環境のロール定義に依存する。
## 3. 画面構成
### 3.1 一覧画面GridColumns
`SiteSettings.GridColumns` は設定されていない未設定。そのためPleasanter標準の既定列構成で一覧画面が表示される。
### 3.2 編集画面レイアウトEditorColumnHash / Sections
`EditorColumnHash``General` タブのみで構成されている(`Sections` 配列の定義なし)。
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | ID標準ラベルのまま |
| 2 | Ver | Ver.(標準ラベルのまま) |
| 3 | Title | タイトル(標準ラベルのまま) |
| 4 | ClassA | 稟議項目 |
| 5 | Body | 本文(標準ラベルのまま) |
| 6 | Status | 状態(標準ラベルのまま) |
| 7 | Manager | 管理者(標準ラベルのまま) |
| 8 | Owner | 担当者(標準ラベルのまま) |
| 9 | Comments | コメント(標準ラベルのまま) |
`Sections` 配列自体が定義されていないため、セクション区切り(`_Section-N`)は存在しない。
### 3.3 タイトル表示TitleColumns / TitleSeparator
- `TitleColumns`: `["ClassA"]`
- `TitleSeparator`: 未設定Pleasanter標準の区切り文字を使用
`TitleColumns` が1項目のみのため、レコードのタイトルは `ClassA`(稟議項目)列の値がそのまま使用される。
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類) | 稟議項目 | なし | `TitleColumns` に指定されており、このサイトのタイトルそのものとして使われる |
`ClassA` 以外に `EditorColumnHash` へ登場する `ResultId`, `Ver`, `Title`, `Body`, `Status`, `Manager`, `Owner`, `Comments``Columns` 配列に個別定義がなく、すべて標準ラベル・標準設定のまま使用されている。
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
該当する設定はない(省略)。
## 5. 作成・更新権限(フィールド単位)
`PermissionForCreating` / `PermissionForUpdating` はいずれも設定なし。
## 6. 集計設定Aggregations
設定なし(該当セクションなし)。
## 7. 他サイト連携Links / ルックアップ)
このサイト自身の `SiteSettings` には `Links` の定義はなく、他サイトへの参照設定は持たない。
一方、他サイトの調査時点で確認できた範囲では、本サイト319020: 稟議項目)は以下のサイトから**マスタ(選択肢一覧)として参照されている**(本サイト側の設定ではなく、参照元サイト側の `ChoicesText: "[[319020]]"` によるドロップダウン選択肢化)。
| 参照元サイト | 参照元列(内部名/ラベル) | 参照方法 |
|---|---|---|
| 319016【ISO】稟議管理 | Class110 / 稟議項目 | `ChoicesText: "[[319020]]"` によるドロップダウン選択肢化(値コピー用の `From/To` マッピングは持たない単純な選択肢参照) |
| 319017【ISO】部署担当者別稟議集計 | ClassO / 稟議項目 | 同上 |
これらは値コピー(`From`/`To` を伴う `Links` エントリ)ではなく、本サイトの各レコードのタイトル(=`ClassA`の値)を選択肢候補として使うだけの参照であるため、本サイト側では特別な設定を持つ必要がない。
## 8. プロセス設定Processes
設定なし(`configs/site-319020_稟議項目/processes.json` も0件、`manifest.json` の `ProcessesCount: 0` で確認済み)。
## 9. スタイルStyles
設定なし(`manifest.json` の `Styles: []` で確認済み)。
## 10. スクリプトScriptsサーバースクリプトServerScripts
設定なし(`manifest.json` の `Scripts: []` / `ServerScripts: []` で確認済み)。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | 未設定 |
| SectionLatestId | 未設定Sections自体が未定義 |
| 各種ガイド文GridGuide/EditorGuide等 | いずれも空文字(未設定) |
| Comments | サイト直下の `Comments``[]`(未使用)。ただし編集画面には `Comments` 列がレイアウトされており、レコード単位のコメント機能自体は利用可能 |
---
## 気になる点(レビュー観点)
- このサイトは実質的に `ClassA`ラベル稟議項目1項目のみを保持する非常にシンプルなマスタ的サイトであり、他サイト319016, 319017からドロップダウンの選択肢一覧として参照されている。単独では「稟議申請ワークフロー」の入出力を持たず、選択肢マスタとしての役割に特化している。
- `ParentId: 319018` は今回のドキュメント化対象10サイトに含まれておらず、親サイトの実体・役割が不明。全体関連図を作成する際に別途確認が必要。
- `Permissions` のうち `Group,27,1` は他のGroup/Userと比べて権限レベルが著しく低い`1`)。閲覧のみ等に制限されている可能性があり、意図的な設定か確認が望ましい。
- `GridColumns` が未設定のため一覧画面がPleasanter既定列のままになっている可能性が高く、業務上必要な列稟議項目などが一覧に出ていない場合がある。

View File

@ -1,22 +1,47 @@
# 概要書:稟議通知管理
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319021_spec.md](../configs/site-319021_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319021_稟議通知管理_spec.md](./site-319021_稟議通知管理_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「稟議通知管理」で、Resultsを管理・参照するための画面です。
このサイトは「稟議通知管理」という、拠点(エリア)ごとに稟議の関係者・通知先を登録しておくためのマスタ画面です。
新規の稟議申請を行う際、申請者が「エリア」を選ぶと、このサイトに登録された内容をもとに、そのエリアを担当する役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当が自動的に呼び出され、稟議の回覧先や通知先として使われます。つまり、稟議申請の画面そのものではなく、その裏側で「誰に通知・回覧すればよいか」を決めるための設定台帳です。
エリアは1つにつき1レコードのみ登録できる仕組みになっており、拠点を新設・変更する際にはこのマスタを更新する必要があります。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
| --- | --- | --- |
| | エリア | |
| | 役員 | |
| | 経理担当 | |
| | 工務担当 | |
| | アフター担当 | |
| | アシスタント | |
| | ISO担当 | |
| 基本情報 | エリア | 通知先を設定する対象拠点東京愛知千葉熊本静岡特建事業部不動産事業部デザイその他。1つのエリアにつき1件のみ登録できる |
| 通知先 | 役員 | このエリアの稟議で回覧・通知の対象となる役員(複数人選択可) |
| 通知先 | 経理担当 | このエリアの稟議で回覧・通知の対象となる経理担当者(複数人選択可) |
| 通知先 | 工務担当 | このエリアの稟議で回覧・通知の対象となる工務担当者(複数人選択可) |
| 通知先 | アフター担当 | このエリアの稟議で回覧・通知の対象となるアフター担当者(複数人選択可) |
| 通知先 | アシスタント | このエリアの稟議で回覧・通知の対象となるアシスタント(複数人選択可) |
| 通知先 | ISO担当 | このエリアの稟議で回覧・通知の対象となるISO担当者複数人選択可 |
各通知先項目は、社内の登録ユーザー一覧から検索して選ぶことができ、1つの役割に対して複数人を登録できます。
## 3. 業務の流れ(ボタン操作)
このサイトには専用の承認ボタンや状態変化(ワークフロー)は設定されておらず、単純な一覧・登録・編集の画面です。担当部署(人事・総務等の管理者)が、エリアごとの担当者を随時登録・更新するだけのマスタメンテナンス画面です。
| 操作 | 内容 |
| --- | --- |
| 新規登録 | 新しいエリアの通知先一式役員経理担当工務担当アフター担当アシスタントISO担当を登録する |
| 編集 | 担当者の異動・組織変更に応じて、既存エリアの通知先を更新する |
## 4. 通知される場面
このサイト自体からメール等の通知が送信される設定はありません。
このサイトは、新規の稟議申請「新・稟議申請書」サイトでエリアが選択されたタイミングで参照され、登録されている役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当の情報が、稟議の回覧・通知先として自動的に呼び出される仕組みになっています。
## 5. 関連する仕組み(マスタ連携)
- このサイト自体は他のマスタを参照する設定を持っていません。
- 逆に、「新・稟議申請書」サイトからは、このサイトが拠点エリアごとの通知先マスタとして参照されています。稟議申請の画面で「エリア」を選ぶと、このサイトに登録された役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当の情報が自動的に呼び出される仕組みです。
- 兄弟サイトの「稟議項目」は稟議の分類(選択肢マスタ)を管理するサイトであり、本サイトは通知先(人)を管理する点で役割が異なります。

View File

@ -0,0 +1,163 @@
# サイト仕様書稟議通知管理SiteId: 319021
- 取得元データ: [site-319021_latest.json](../siteSettingJsons/site-319021_latest.json)
- 取得日時: 2025-03-02T19:15:06サイト更新日時設定バージョン `Ver: 1`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 稟議通知管理 |
| ReferenceType | Results |
| ParentId | 319018本ドキュメント群で対象としている10サイトには含まれない。上位の格納用サイトフォルダと推測される。site-319020「稟議項目」と同一のParentId |
| InheritPermission | 319021自サイト自身のIDのため、権限を親から継承せず自サイトで独自設定 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460同一ユーザー |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Dept | 1 | 5 |
| Group | 13 | 5 |
| Group | 19 | 511 |
| User | 460 | 511 |
※ 権限値はビットフラグの加算方式のため、正確な意味は環境のロール定義に依存する。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部名) | 表示ラベル |
|---|---|---|
| 1 | ResultId | ID標準ラベルのまま |
| 2 | ClassA | エリア |
| 3 | Class071 | 役員 |
| 4 | Class072 | 経理担当 |
| 5 | Class073 | 工務担当 |
| 6 | Class074 | アフター担当 |
| 7 | Class075 | アシスタント |
| 8 | Class076 | ISO担当 |
| 9 | UpdatedTime | 更新日時(標準ラベルのまま) |
参考: `GridView: 1`、`GridEditorType: 10`、`AllowViewReset: false`(追加のビュー定義)。`Views`配列には既定ビューId:1、ソート順 `ResultId` 昇順)のみが定義されている。
### 3.2 編集画面レイアウトEditorColumnHash / Sections
`EditorColumnHash``General` タブのみで構成されている(`Sections` 配列の定義なし)。
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | ID標準ラベルのまま |
| 2 | Ver | Ver.(標準ラベルのまま) |
| 3 | ClassA | エリア |
| 4 | Class071 | 役員 |
| 5 | Class072 | 経理担当 |
| 6 | Class073 | 工務担当 |
| 7 | Class074 | アフター担当 |
| 8 | Class075 | アシスタント |
| 9 | Class076 | ISO担当 |
`Sections` 配列自体が定義されていないため、セクション区切り(`_Section-N`)は存在しない。
### 3.3 タイトル表示TitleColumns / TitleSeparator
- `TitleColumns`: 未設定Pleasanter既定の `Title` 列を使用する想定)
- `TitleSeparator`: 未設定(既定の区切り文字)
`TitleColumns` が明示的に設定されていない一方、標準の `Title` 列自体が `GridColumns` にも `EditorColumnHash` にも含まれておらず、ユーザーが値を入力する経路がない。そのためレコードのタイトルは常に空欄のまま運用されている可能性が高い(詳細は「気になる点」参照)。
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類・選択式) | エリア | 選択肢:`0,東京` `1,愛知` `2,千葉` `3,熊本` `4,静岡` `5,特建事業部` `6,不動産事業部` `7,デザイノ` `9,その他``ChoicesControlType: Radio` によりラジオボタン表示) | `ValidateRequired: true`(必須)、`NoDuplication: true`同一値の重複登録不可1エリアにつき1レコードのみ登録可能という制約と推測、`SearchType: PartialMatch`(部分一致検索対応) |
| Class071 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | 役員 | `ChoicesText: "[[Users*]]"` によりテナント内の全ユーザーが選択肢候補になる特殊指定。`UseSearch: true` で検索ボックス付き、`MultipleSelections: true` で複数人選択可 | `FieldCss: field-wide`(編集画面で入力欄を横幅広く表示) |
| Class072 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | 経理担当 | 同上(`[[Users*]]` によるユーザー選択、検索可、複数選択可) | `FieldCss: field-wide` |
| Class073 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | 工務担当 | 同上 | `FieldCss: field-wide` |
| Class074 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | アフター担当 | 同上 | `FieldCss: field-wide` |
| Class075 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | アシスタント | 同上 | `FieldCss: field-wide` |
| Class076 | 文字列(拡張分類)※実運用は複数選択のユーザー選択欄 | ISO担当 | 同上 | `FieldCss: field-wide` |
`ClassA`, `Class071`〜`Class076` 以外に `EditorColumnHash` へ登場する `ResultId`, `Ver``Columns` 配列に個別定義がなく、標準ラベル・標準設定のまま使用されている。
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
該当する設定はない(省略)。
## 5. 作成・更新権限(フィールド単位)
| 列名(内部) | PermissionForCreating | PermissionForUpdating |
|---|---|---|
| Class071 | 5 | 5 |
| Class072 | 5 | 5 |
| Class073 | 5 | 5 |
| Class074 | 5 | 5 |
| Class075 | 5 | 5 |
| Class076 | 5 | 5 |
`ClassA` にはフィールド単位の作成・更新権限(`PermissionForCreating`/`PermissionForUpdating`)は設定されていない。
これとは別に、`UpdateColumnAccessControls` により `ClassA` 列単体の更新可能グループが `Group 19` のみに制限されている。
| ColumnName | 更新を許可するGroups |
|---|---|
| ClassA | 19 |
`Permissions` セクションでは `User,460`Creator`Group,19` が高い権限レベル511を持つが、`ClassA` に限っては `UpdateColumnAccessControls` の制限が別途優先される可能性があるため、実運用上の挙動は要確認(後述「気になる点」参照)。
## 6. 集計設定Aggregations
設定なし(該当セクションなし)。
## 7. 他サイト連携Links / ルックアップ)
このサイト自身の `SiteSettings` には `Links` の定義はなく、他サイトへの参照設定(自サイトから他サイトへのコピー・ルックアップ)は持たない。また `manifest.json``ServerScripts: []`0件により、サーバースクリプト経由の暗黙的なテーブル参照`items.Get(SiteId)` 等のハードコード)も存在しない。
一方、他サイトの調査時点で確認できた範囲では、本サイト319021: 稟議通知管理)は以下のサイトの**クライアントスクリプトから直接参照されている**本サイト側の設定ではなく、参照元サイト側のScript内でSiteIdがハードコードされている「暗黙的なテーブル参照」
| 参照元サイト | 参照箇所 | 参照方法 |
|---|---|---|
| 319015新・稟議申請書 | `configs/site-319015_新・稟議申請書/scripts/1_1.新・稟議申請書.js``getTuuchiData()` 関数 | `let siteId = '319021';` とSiteIdをハードコードし、選択された `エリア`(参照元の `ClassB`)を条件に `$p.apiGet` でAPI検索。取得したレコードから通知先役員・経理担当・工務担当・アフター担当・アシスタント・ISO担当を取得していると推測される |
これにより、本サイトは「エリアごとの稟議関係者(通知先)を保持するマスタテーブル」として、稟議申請フロー側から都度参照される役割を持つと考えられる。`ClassA`(エリア)に`NoDuplication: true`が設定されているのも、1エリア1レコードというマスタとしての一意性を担保するためと考えると整合する。
`ParentId: 319018` は今回のドキュメント化対象10サイトに含まれておらず、319020稟議項目と同一の親サイトを持つ。全体関連図の作成時に別途確認が必要。
## 8. プロセス設定Processes
設定なし(`configs/site-319021_稟議通知管理/processes.json` も0件、`manifest.json` の `ProcessesCount: 0` で確認済み)。
## 9. スタイルStyles
設定なし(`manifest.json` の `Styles: []` で確認済み)。
## 10. スクリプトScriptsサーバースクリプトServerScripts
設定なし(`manifest.json` の `Scripts: []` / `ServerScripts: []` で確認済み)。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | 未設定 |
| SectionLatestId | 未設定Sections自体が未定義 |
| 各種ガイド文GridGuide/EditorGuide/CalendarGuide等 | いずれも空文字(未設定) |
| Comments | サイト直下の `Comments``[]`(コメント記録なし)。編集画面(`EditorColumnHash`)には `Comments` 列がレイアウトされていないため、標準タブ経由以外ではコメント機能を使う導線がない可能性がある |
---
## 気になる点(レビュー観点)
- `TitleColumns` が未設定な上、標準の `Title` 列自体が `GridColumns``EditorColumnHash` のいずれにも含まれていないため、レコードタイトルが常に空欄になっている可能性が高い。一覧画面や他サイトからの参照時にレコードを識別しづらくなっていないか確認が望ましい。
- `ClassA`(エリア)の選択肢は `0,1,2,3,4,5,6,7,9` と番号が飛んでおり(`8` が欠番)、意図的な欠番か設定漏れか不明。将来的にエリアを追加する際の選択肢追加漏れにも注意が必要。
- `ClassA``NoDuplication: true` によりエリアごとに1レコードのみ登録可能な想定だが、`UpdateColumnAccessControls` で更新可能グループが `Group 19` のみに制限されており、`Permissions` 上は高権限511を持つ `User 460`Creatorや他のGroupがこの列を更新できない可能性がある。意図した制限か確認が望ましい。
- `Class071`〜`Class076`役員経理担当工務担当アフター担当アシスタントISO担当はいずれも `[[Users*]]` でテナント内の全ユーザーが選択肢になっており、部署やエリアによる絞り込みがない。`UseSearch: true` で検索は可能だが、ユーザー数が多い場合は選びにくくなる可能性がある。
- 本サイトは319015新・稟議申請書のクライアントスクリプトからSiteId `319021` がハードコードされて参照されている(正式な`Links`設定には現れない。本サイトの列構成・ラベルを変更する際は319015側のスクリプトに影響が及ぶため注意が必要。
- 入力ガイド文EditorGuide等が一切設定されておらず、入力者向けの説明が画面上に表示されない。エリアごとの担当者登録という重要なマスタメンテナンス作業であるにもかかわらず、操作ガイドがない点は運用上のリスクになり得る。

View File

@ -1,43 +1,55 @@
# 概要書:【部署別】稟議改善
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319022_spec.md](../configs/site-319022_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319022_【部署別】稟議改善_spec.md](./site-319022_【部署別】稟議改善_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「【部署別】稟議改善」で、Resultsを管理・参照するための画面です。
「【部署別】稟議改善」は、発生した稟議(特に問題のあった稟議=いわゆる「赤稟議」など)について、各部署が再発防止・改善のための取組みを登録・報告するための画面です。
原則として、その稟議に該当する部署だけでなく、関連部署や"同系部署"(エリアを問わず)は取組み報告が必須とされています。直接関係のない部署でも、改善へのアイディアや意見を記入することが推奨されます。取組みの内容は議事録として記録し、参加者も含めて入力したうえで、担当役員が内容を精査・承認する流れになっています。承認された取組みは、部門長会議や全体会議などで適宜、組織全体へ共有されます。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 部署 | |
| | 取組み内容 | |
| | 稟議 | |
| | 取組み | |
| | 参加者 | |
| | 参考資料 | |
| | 確認者 | |
| | 確認日 | |
| | 担当役員 | |
| | 全体共有日 | |
| | 議事録の要約 | |
| 対象の稟議 | 稟議 | 改善の対象となる元の稟議【ISO】稟議管理の一覧から選択する |
| 対象の稟議 | 部署 | この取組みを行う部署(初期値は入力者自身の所属部署) |
| 取組み内容 | 取組み内容 | この稟議を今後起こさないようにするための取組み内容、または改善へのアイディア・指摘など |
| 取組み内容 | 参加者 | 取組みの検討・議事録作成に参加したメンバー(複数選択可) |
| 取組み内容 | 参考資料 | 取組み内容の参考となる資料の添付ファイル |
| 議事録 | 議事録の要約 | 取組みについての議事録を要約した添付ファイル(登録完了時に添付が必須) |
| 承認・確認 | 担当役員 | この取組み内容を確認・承認する役員(特定の役員グループの候補から選択) |
| 承認・確認 | 確認者 | 実際に内容を確認した人(「確認完了」操作時に自動的に記録される) |
| 承認・確認 | 確認日 | 内容の確認が完了した日時(「確認完了」操作時に自動的に記録される) |
| 共有 | 全体共有日 | 取組み内容を全体へ共有した日時(「全体共有」操作時に自動的に記録される) |
上記以外に画面には「タイトル」「状態」「担当者」「コメント」といった標準項目も配置されています。「状態」欄には現在の進み具合(新規登録/登録完了/役員確認済み/全体共有済み)が表示され、後述の業務の流れと連動しています。
## 3. 業務の流れ(ボタン操作)
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| 登録完了 | 100 → 150 | 登録完了 |
| 確認完了 | 150 → 800 | 確認完了 |
| 全体共有 | 800 → 900 | 全体共有 |
| 差戻し | -1 → 100 | 差戻し |
| 新規登録 | ―→新規登録 | 部署の担当者が、稟議改善の取組み内容を新規に登録する |
| 登録完了 | 新規登録→登録完了 | 取組み内容と議事録の要約(添付)を入力したうえで、内容の確認を依頼する。取組み内容・議事録の要約はいずれも入力必須 |
| 確認完了 | 登録完了→役員確認済み | 担当役員(役員グループの権限を持つ人)が取組み内容を確認する。確認日・確認者が自動的に記録される |
| 全体共有 | 役員確認済み→全体共有済み | 確認済みの取組みを全体へ共有したことを記録する。全体共有日が自動的に記録される |
| 差戻し | いずれの状態からも→新規登録 | 内容に不備がある場合などに、権限を持つ担当者が新規登録の状態に戻す |
なお、「役員確認済み」または「全体共有済み」の状態になった後は、稟議・部署・取組み内容・参加者・担当役員などの主要項目は編集できなくなり、内容が確定した扱いになります。
## 4. 通知される場面
- 「登録完了」の操作が行われたとき、担当役員・担当者・参加者へ「稟議改善への新たな取り組み内容を登録しました」という通知が届きます(対象の稟議・部署・参加者・取組み内容・担当役員名などがあわせて記載されます)。
- 「確認完了」の操作が行われたとき、同じ関係者(担当役員・担当者・参加者)へ「稟議改善への新たな取り組み内容を確認しました」という通知が届きます(確認者・確認日もあわせて記載されます)。
- 上記いずれの通知も、システム運用担当宛にも同時に共有されます。
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- **【ISO】稟議管理**「稟議」欄で選ぶ元の稟議データは、【ISO】稟議管理の画面に登録されているレコードです。一覧画面には、選んだ稟議に対応する【ISO】稟議管理側の詳細情報複数の分類・説明項目もあわせて表示され、どの稟議についての改善取組みかが一覧上でも分かるようになっています。
- **部署マスタ**:「部署」欄の選択肢は、組織の部署一覧から選びます(初期値は入力者自身の所属部署が自動で入ります)。
- **ユーザー一覧**:「参加者」「担当役員」「確認者」の各欄は、社内のユーザー一覧から選択します。「担当役員」は特定の役員グループに属する候補者のみに絞り込まれています。
- 関連マスタ連携: (不明) → (不明)
---
本サイト固有の特徴: 稟議の起票・承認そのものを扱う「新・稟議申請書」や、稟議の内容・分類を管理する「【ISO】稟議管理」とは別に、本サイトは「起きてしまった稟議の再発防止のための、部署ごとの改善活動」に特化した画面です。稟議申請の承認フローが完了した"後工程"として、各部署の振り返り・改善・役員確認・全体共有という独自の4段階登録完了→役員確認済み→全体共有済み、および差戻しを持つ点が、他の稟議関連画面との違いです。

View File

@ -0,0 +1,236 @@
# サイト仕様書【部署別】稟議改善SiteId: 319022
- 取得元データ: [site-319022_latest.json](../siteSettingJsons/site-319022_latest.json)
- 取得日時: 2026-04-23T08:56:12サイト更新日時設定バージョン `Ver: 4`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 【部署別】稟議改善 |
| ReferenceType | Results |
| ParentId | 319014本システムで管理する10サイトの一つ「新・稟議申請」フォルダ型の親サイト |
| InheritPermission | 319022自サイトIDと同一権限は親から継承せず自サイトで保持 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460 |
| CreatedTime | 2025-03-02T19:15:06 |
| SiteSettings.Version | 1.017 |
本サイトは `新・稟議申請`319014配下の子サイトであり、`ReferenceType: Results`通常のレコード表として稟議改善の取組み内容そのものを保持する実データテーブルである319014自体はフォルダ型で実データを持たない
## 2. アクセス権限Permissions
`Permissions``種別,対象ID,権限レベル` の文字列配列で表現されている。権限値はビットフラグの加算方式のため、正確な意味は環境のロール定義に依存する。
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Group | 13 | 7 |
| Group | 27 | 7 |
| Group | 41 | 7 |
| User | 460 | 511 |
| User | 654 | 511 |
グループ41は、後述の「4. 項目定義」における`ClassC`担当役員の選択肢絞り込み条件、および「8. プロセス設定」の実行権限グループとしても繰り返し登場しており、本サイトにおける「担当役員」ロールを表す組織グループと推測される。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | 標準ラベル(未設定) |
| 2 | Status | 標準ラベル(未設定=「状態」) |
| 3 | ClassZ~319016,Class109 | リンク先サイト319016のClass109列の値を表示ラベルは319016側の定義に依存し、本サイトでは未定義 |
| 4 | ClassZ~319016,Class110 | リンク先サイト319016のClass110列の値を表示同上 |
| 5 | ClassZ~319016,Class111 | リンク先サイト319016のClass111列の値を表示同上 |
| 6 | ClassZ~319016,Description110 | リンク先サイト319016のDescription110列の値を表示同上 |
| 7 | ClassA | 部署 |
| 8 | TitleBody | 標準ラベル(未設定=タイトル表示用の合成列) |
| 9 | Comments | 標準ラベル(未設定=「コメント」) |
| 10 | ClassK | 確認者 |
| 11 | DateL | 全体共有日 |
| 12 | Updator | 標準ラベル(未設定=「更新者」) |
| 13 | UpdatedTime | 標準ラベル(未設定=「更新日時」) |
`ClassZ~319016,Class109` のような `{リンク元列}~{参照先SiteId},{参照先列}` 形式は、リンク列(`ClassZ`経由で参照先サイト319016の特定列の値をそのままグリッドに表示するPleasanterの記法であり、`SiteSettings.Links` とは別に、319016という他サイトのSiteIdがGridColumns定義に直接埋め込まれている詳細は7節
### 3.2 編集画面レイアウトEditorColumnHash / Sections
`EditorColumnHash.General`タブ「General」のみ定義:
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | ResultId | 標準ラベル(未設定) |
| 2 | Ver | 標準ラベル(未設定) |
| 3 | Status | 標準ラベル(未設定) |
| 4 | ClassZ | 稟議 |
| 5 | Title | 標準ラベル(未設定=「タイトル」) |
| 6 | ClassY | 取組みHide: true |
| 7 | _Section-1 | ―(セクション「稟議改善への部署による取組み」開始) |
| 8 | ClassA | 部署 |
| 9 | Owner | 標準ラベル(未設定=「担当者」) |
| 10 | ClassC | 担当役員 |
| 11 | Body | 取組み内容 |
| 12 | AttachmentsA | 参考資料 |
| 13 | _Section-3 | ―(セクション「取組みについての議事録 ※必須」開始) |
| 14 | ClassB | 参加者 |
| 15 | AttachmentsB | 議事録の要約 |
| 16 | _Section-2 | ―(セクション「役員確認」開始) |
| 17 | ClassK | 確認者 |
| 18 | DateK | 確認日 |
| 19 | DateL | 全体共有日 |
| 20 | Comments | 標準ラベル(未設定=「コメント」) |
Sections配列`SectionLatestId: 3`:
| Id | ラベル | AllowExpand | Expand |
|---|---|---|---|
| 1 | 稟議改善への部署による取組み | false | true |
| 3 | 取組みについての議事録 ※必須 | false | true |
| 2 | 役員確認 | false | true |
Sections配列の並び順Id 1→3→2`EditorColumnHash.General` 内の `_Section-N` の出現順とも一致しており、編集画面上ではID順ではなく「取組み内容」→「議事録」→「役員確認」の業務順に並ぶよう明示的に並び替えられている。
### 3.3 タイトル表示TitleColumns / TitleSeparator
`TitleColumns: ["ClassZ", "ClassA", "ClassY"]``TitleSeparator: " "`(半角スペース)で連結。
タイトル表示式: `[ClassZ稟議] [ClassA部署] [ClassY取組み、既定値「の取組み」・非表示項目]`
`ClassY` は編集画面上では非表示Hide: trueだが `DefaultInput: "の取組み"` が初期値として自動投入され、タイトル生成時に「〇〇部署の取組み」のような文言を補うための裏方項目として使われていると推測される。
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類) | 部署 | ― | `ChoicesText: [[Depts]]`(部署マスタ選択)、`DefaultInput: [[Self]]`(自分の所属部署を初期値)、`ExtendedControlCss: code-readonly2`(後述スタイルにより見た目上ロック)、`SearchType: PartialMatch` |
| Owner | ユーザー選択 | 標準ラベル(未設定=「担当者」) | ― | `ExtendedControlCss: code-readonly2` |
| Body | 説明(本文・複数行文字列) | 取組み内容 | この稟議を今後起こさないようにするための取組内容。または取組へのアイディア、指摘など。 | `ExtendedFieldCss` / `ExtendedControlCss: textarea-sizing`(後述スタイルでテキストエリアを自動拡張) |
| ClassZ | 文字列(分類)+リンク | 稟議 | ― | `ChoicesText: [[319016]]`319016サイトのレコードから選択、`Link: true`、`ValidateRequired: true`(必須)、`FieldCss: field-wide`、`UseSearch: true`、`SearchType: PartialMatch` |
| ResultId | 自動採番ID | 標準ラベル(未設定) | ― | `Hide: true` |
| Ver | システム標準項目(バージョン番号) | 標準ラベル(未設定) | ― | `Hide: true` |
| ClassY | 文字列(分類) | 取組み | ― | `DefaultInput: "の取組み"`、`Hide: true`3.3節の通りタイトル合成用の裏方項目) |
| ClassB | 文字列(分類・複数選択) | 参加者 | ― | `ChoicesText: [[Users*]]`(ユーザー一覧から選択)、`MultipleSelections: true`、`UseSearch: true`、`FieldCss: field-wide` |
| AttachmentsA | 添付ファイル | 参考資料 | ― | ― |
| ClassK | 文字列(分類) | 確認者 | ― | `ChoicesText: [[Users*]]`、`ExtendedFieldCss` / `ExtendedControlCss: code-readonly2`、`GridDesign: [ClassK]\n[DateK]`(グリッド内で改行表示)、`SearchType: PartialMatch` |
| DateK | 日付 | 確認日 | ― | `EditorFormat: Ymdhms`(日時形式)、`ExtendedFieldCss` / `ExtendedControlCss: code-readonly2` |
| Status | 状態 | 標準ラベル(未設定=「状態」) | ― | `ExtendedFieldCss` / `ExtendedControlCss: code-readonly2`。選択肢は下記の通り |
| ClassC | 文字列(分類) | 担当役員 | ― | `ChoicesText` はUsersテーブルへの絞り込みビュー定義グループ41かつ有効ユーザーのみ、UserId昇順、`ValidateRequired: true`(必須)、`SearchType: PartialMatch` |
| DateL | 日付 | 全体共有日 | ― | `EditorFormat: Ymdhms`、`NoWrap: true`、`ExtendedFieldCss` / `ExtendedControlCss: code-readonly2` |
| AttachmentsB | 添付ファイル | 議事録の要約 | ― | ― |
`Status` の選択肢(`ChoicesText`:
| 値 | 表示名(一覧) | 表示名(短縮) | CSSクラス |
|---|---|---|---|
| 100 | 新規登録 | 新規 | status-new |
| 150 | 登録完了 | 完了 | status-yellow |
| 800 | 役員確認済み | 確認済 | status-purple |
| 900 | 全体共有済み | 共有済 | status-closed |
`Title` / `Comments``Columns` 配列に個別定義が無く、EditorColumnHash上でのみ使用される標準項目ラベル未カスタマイズ
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
該当項目が存在しないため、この節は省略する。
## 5. 作成・更新権限(フィールド単位)
`PermissionForCreating` / `PermissionForUpdating` はいずれも同一の3項目に権限値4が設定されている。
| 列名(内部) | 表示ラベル | PermissionForCreating | PermissionForUpdating |
|---|---|---|---|
| ClassA | 部署 | 4 | 4 |
| Owner | 標準ラベル(担当者) | 4 | 4 |
| ClassB | 参加者 | 4 | 4 |
## 6. 集計設定Aggregations
| Id | GroupBy | Type | Target |
|---|---|---|---|
| 1 | ClassA部署 | 0 | ―(未指定) |
`Target` が空のため、部署ClassAごとの件数集計Type: 0と推測される。
## 7. 他サイト連携Links / ルックアップ)
`SiteSettings.Links` に以下2件が定義されている。
| 起点列 | 参照先SiteId | 参照先の値→自コピー先 | JsonFormat |
|---|---|---|---|
| ClassZ | 319016【ISO】稟議管理 | 319016のレコードをClassZ列でリンク選択コピーではなく参照リンク | ― |
| ClassC | 0Usersマスタ、10サイトの対象外 | Usersテーブルをグループ41・有効ユーザーに絞り込んだビューから担当役員を選択 | true |
- **ClassZ→319016**: 「稟議」列ClassZは【ISO】稟議管理319016のレコードを選択するリンク項目。3.1節のGridColumns`ClassZ~319016,Class109` 等は、このリンクを介して319016側の複数列Class109, Class110, Class111, Description110の値を一覧画面に直接表示しており、正式なLinks設定ClassZ→319016と組み合わせて機能する。
- **ClassC→Usersマスタ**: `SiteId: 0` はPleasanter予約のUsersマスタを指し、本システムで管理する10サイトの対象外。担当役員の選択肢をグループ41に絞り込むための設定であり、他サイトとのデータ連携ではない。
### 暗黙的なテーブル参照ハードコードSiteIdの確認結果
- `manifest.json` の通り `ServerScripts` は0件であり、サーバースクリプトによる `items.Get(SiteId)` 等の暗黙参照は存在しない。
- クライアントスクリプト(`scripts/1_新規作成時子テーブルに留まる.js`の内容を確認したが、他SiteIdのハードコード参照は無い。新規作成後のレスポンスからレコードIDを取得し、`items/{id}` へ遷移するのみで、他サイトを直接参照するコードではない。
- 上記のとおり、他サイト参照は `SiteSettings.Links`ClassZ→319016およびGridColumns内の `ClassZ~319016,...` 記法のみであり、いずれも正式な設定として現れているScripts/ServerScriptsでの隠れた参照は無し
### サイトツリー上の位置関係ParentId
本サイト319022`ParentId` は 319014新・稟議申請。319014は本システムで管理する10サイトの一つで、実データを持たないフォルダ型サイトであり、319022はその配下の子サイトの一つ他に319015・319016・319017も319014配下として位置づけられる。
## 8. プロセス設定Processes
定義ファイル: [processes.json](../configs/site-319022_【部署別】稟議改善/processes.json)
| Id | Name / DisplayName | 実行条件CurrentStatus→ChangedStatus | 動作 | 成功メッセージConfirmationMessage |
|---|---|---|---|---|
| 1 | 登録完了 | 100新規登録→150登録完了 | Body・AttachmentsB必須入力チェック後にステータス変更。通知あり宛先: ClassC, Owner, ClassBCC: toyokura@next-hd.co.jp, systemadmin@next-hd.co.jp | 稟議への取組み内容の確認を依頼します。宜しいですか? |
| 2 | 確認完了 | 150登録完了→800役員確認済み | Body必須入力チェック後、グループ41のみ実行可。DateK確認日実行時刻、ClassK確認者実行ユーザーを自動セット。通知あり宛先同上 | 稟議改善への取組内容の確認を完了します。宜しいですか? |
| 3 | 全体共有 | 800役員確認済み→900全体共有済み | DateL全体共有日実行時刻を自動セット。`View.Own: true` | この取組みを全体へ共有しました。 |
| 4 | 差戻し | -1任意の状態→100新規登録 | グループ19・41のみ実行可。ステータスを新規登録に戻す | 差戻します。宜しいですか? |
Process 1・2の通知メール`Notifications`は、稟議対象ClassZ・部署ClassA・参加者ClassB・取組み内容Body・担当役員/確認者・確認日等を本文に埋め込んだテンプレートで、宛先に固定のCCアドレスtoyokura@next-hd.co.jp, systemadmin@next-hd.co.jpがハードコードされている。
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | 読み取り専用 | New, Edit | [1_読み取り専用.css](../configs/site-319022_【部署別】稟議改善/styles/1_読み取り専用.css) |
| 2 | 基本的なスタイル | New, Edit | [2_基本的なスタイル.css](../configs/site-319022_【部署別】稟議改善/styles/2_基本的なスタイル.css) |
| 3 | ガイド欄 | All | [3_ガイド欄.css](../configs/site-319022_【部署別】稟議改善/styles/3_ガイド欄.css) |
- Style 1「読み取り専用」: `.code-readonly` / `.code-readonly2` クラスに `pointer-events: none` と背景色・太字を適用し、対象コントロールをクリック不可視覚的に読み取り専用にする。4節で `ExtendedControlCss: code-readonly2` が指定されているClassA・Owner・ClassK・DateK・Status・DateLに適用される。
- Style 2「基本的なスタイル」: セクション見出しの拡大、`.textarea-sizing`Body用テキストエリアの自動拡張、`.field-normal` / `.field-wide` の行間・余白調整。
- Style 3「ガイド欄」: `#Guide` 内の `strong` / `h3` 要素を赤字にする全画面適用。GridGuide/EditorGuideの強調表示に対応。
## 10. スクリプトScriptsサーバースクリプトServerScripts
| Id | Title | 適用画面 | ファイル |
|---|---|---|---|
| 1 | 新規作成時子テーブルに留まる | New | [1_新規作成時子テーブルに留まる.js](../configs/site-319022_【部署別】稟議改善/scripts/1_新規作成時子テーブルに留まる.js) |
概要: 新規レコード作成完了後(`after_set_Create`イベントで、通常の画面遷移一覧への遷移等を上書きし、APIレスポンスから新規作成レコードのIDを取得して `items/{id}` のURLへ直接遷移させるスクリプト。ParentId=319014配下の子サイトとして親レコードに紐づく形で開かれる運用を想定し、作成後もそのレコードの詳細画面子テーブルのコンテキストに留まらせるための実装と推測される。他SiteIdのハードコード参照は無い。
`ServerScripts` は0件`manifest.json` の `ServerScripts: []` の通り)。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | 未設定(キー自体が存在しない) |
| SectionLatestId | 3 |
| AllowCopy | false |
| GridGuide | 設定ありMarkdown。[GridGuide.html](../configs/site-319022_【部署別】稟議改善/html/GridGuide.html) |
| EditorGuide | 設定ありGridGuideと同一内容。[EditorGuide.html](../configs/site-319022_【部署別】稟議改善/html/EditorGuide.html) |
| CalendarGuide / CrosstabGuide / GanttGuide / BurnDownGuide / TimeSeriesGuide / AnalyGuide / KambanGuide / ImageLibGuide | いずれも空文字列(未設定) |
| Comments | `Data.Comments` は空配列 `[]`(コメント投稿実績なし)。編集画面には`Comments`欄が配置されており使用は可能 |
| StatusControls | Id1「読取り専用」`Status: -1`(ワイルドカード)かつ`ColumnFilterHash.Status: ["800","900"]`の条件でBody・Owner・ClassA・ClassB・ClassC・ClassZをReadOnly化。役員確認済み800・全体共有済み900到達後は主要項目を編集不可にする実質的な確定ロック |
---
## 気になる点(レビュー観点)
- 4節・9節の`code-readonly2`はCSSの`pointer-events: none`のみによる見た目上のロックであり、Pleasanterの正式な項目単位アクセス権限フィールドレベルパーミッションによる制御ではない。API経由の直接更新など、UIを介さない操作では制限されない可能性があり、真に確定させたい項目は11節の`StatusControls`Status 800/900でReadOnly化と役割分担されているかを確認したほうがよい。
- Process 1・2の通知CCアドレスに `toyokura@next-hd.co.jp` という特定個人のメールアドレスがハードコードされている。組織変更・退職時にメンテナンスが漏れるリスクがあるため、グループ宛先やロールベースの宛先に置き換えられないか要検討(機密情報ではないが運用上の懸念点)。
- Process 4「差戻し」は`CurrentStatus: -1`(任意の状態から実行可能)となっており、`ChangedStatus: 100`に戻す強い操作。グループ19・41に限定されてはいるが、900全体共有済みからもワンクリックで差戻せてしまう点は意図した仕様か確認したい。
- 3.1節のGridColumns内`ClassZ~319016,ClassNNN`が参照する319016側の列Class109/110/111, Description110のラベル名は本サイトのJSONからは分からない。319016【ISO】稟議管理の仕様書と突き合わせての確認を推奨する。
- `ClassC`担当役員の選択肢はグループ41ユーザーに絞り込まれているが、`Permissions`のグループ41にも編集権限(7)が付与されており、Process 2「確認完了」の実行権限もグループ41限定と一致している。設計として一貫しているが、グループ41のメンバー管理人事異動時の更新が本サイトの正しい運用に直結する点は留意事項として記載しておく。

View File

@ -1,34 +1,47 @@
# 概要書:事前稟議一覧
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-319027_spec.md](../configs/site-319027_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-319027_事前稟議一覧_spec.md](./site-319027_事前稟議一覧_spec.md) を参照。本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「事前稟議一覧」で、Resultsを管理・参照するための画面です。
本サイトは、正式な稟議申請(新・稟議申請書)を行う前段階として「稟議コード」を発行するための画面です。特に「事前稟議」区分の案件について、担当者がエリアや稟議分類、契約コードなどを入力し【作成】ボタンを押すことで、稟議コードが発行されます。
稟議コードは発行後に内容を変更することができません。内容をよく確認したうえで【作成】ボタンを押す必要があり、発行ミスがあった場合は総務へ相談する運用になっています。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | エリア | |
| | 稟議分類 | |
| | 申請者 | |
| | 契約コード | |
| | 派生コード | |
| | 用件・物件名 | |
| | 申請日 | |
| | 稟議コード | |
| 基本情報 | エリア | 対象の物件・案件に対応するエリアを選択します(東京/愛知/千葉/熊本/静岡/特建事業部/不動産事業部/デザイノ/その他)。物件・案件に対応したエリアを選択するよう注意書きが表示されます。 |
| 基本情報 | 稟議分類 | 稟議の種類を選択します(白稟議/赤稟議/駐車場稟議/赤稟議(5万以下)/事前稟議/お客様返金稟議/社用車事故報告/自家用車事故報告)。本一覧画面は既定で「事前稟議」の案件のみが表示される設定になっています。 |
| 案件情報 | 契約コード | 対象案件の契約コードを検索して選択します。 |
| 案件情報 | 派生コード | 契約コードに紐づく派生案件がある場合に選択します。 |
| 案件情報 | 用件・物件名 | 案件名・物件名です。契約コードまたは派生コードの選択と連動して、対応する物件名が自動的に入力される仕様になっています。 |
| 申請情報 | 申請者 | 稟議コードを発行した担当者です(自動入力・変更不可)。 |
| 申請情報 | 申請日 | 稟議コードを発行した日付です(自動入力・変更不可)。 |
| 状態管理 | 状態 | 「発行」「申請」「決裁」「取消」のいずれかの進捗状況を表します。 |
| 状態管理 | 稟議コード | 発行される一意の稟議コードです。発行後は内容を変更できません。 |
| その他 | コメント | 案件についてのメモ・やり取りを残せる欄です。 |
## 3. 業務の流れ(ボタン操作)
| 操作 | 状態の変化 | 説明 |
|---|---|---|
| 新規作成(【作成】ボタン) | ― → 発行 | エリア・稟議分類・契約コードなどを入力し、【作成】ボタンを押すことで稟議コードが発行されます。発行後は内容を変更できません。 |
| 状態の更新(総務等、権限を持つ担当者のみ) | 発行 → 申請 | 一般の利用者は状態を変更できません。総務など、権限を持つ部署・担当者のみが状態を更新します。 |
| 状態の更新(総務等、権限を持つ担当者のみ) | 申請 → 決裁 | 同上。 |
| 状態の更新(総務等、権限を持つ担当者のみ) | 任意の状態 → 取消 | 発行ミスなどがあった場合に「取消」状態にします。取消状態になったレコードは一覧画面でグレー表示され、他のレコードと区別できるようになっています。 |
なお、本サイトにはボタン操作による自動的な承認フロー(プロセス)は設定されておらず、状態の更新は権限を持つ担当者による直接操作で行われます。
## 4. 通知される場面
本サイトには、メール等による自動通知の設定はありません。
## 5. 関連する仕組み(マスタ連携)
- 関連マスタ連携: (不明) → (不明)
- **契約コードマスタとの連携**: 契約コードを検索して選択すると、対応する案件情報が自動的に紐づけられます。
- **派生コードマスタとの連携**: 契約コードに派生案件がある場合、派生コードを選択することで対応する派生案件が紐づけられます。
- **新・稟議申請書との連携**: 本サイトで発行した稟議コードは、正式な稟議申請(新・稟議申請書)を作成する際に呼び出され、両者のレコードが関連付けられます。一覧画面には、関連付けられた稟議申請書側の稟議コード・エリア・稟議分類も合わせて表示され、事前稟議とその後の本申請の対応関係を確認できるようになっています。
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
- 関連マスタ連携: (不明) → (不明)
本サイトは「事前に稟議コードだけを発行しておき、後から本申請新・稟議申請書を作成して正式な稟議申請につなげる」という2段階の業務フローにおける、最初のステップを担う画面です。

View File

@ -0,0 +1,223 @@
# サイト仕様書事前稟議一覧SiteId: 319027
- 取得元データ: [site-319027_latest.json](../siteSettingJsons/site-319027_latest.json)
- 取得日時: 2026-06-08T14:53:48サイト更新日時設定バージョン `Ver: 4`SiteSettings.Version: 1.017
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 事前稟議一覧 |
| ReferenceType | Results |
| ParentId | 319018本ドキュメントが対象とする稟議関連10サイトの一覧には含まれない外部の親サイト |
| InheritPermission | 319027自サイト自身から権限を継承独自の権限設定 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460 |
| CreatedTime | 2025-03-02T19:49:19 |
| UpdatedTime | 2026-06-08T14:53:48 |
| Ver | 4 |
| SiteSettings.Version | 1.017 |
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限値 |
|---|---|---|
| Group | 19 | 511 |
| Group | 27 | 7 |
| User | 460 | 511 |
※権限値はビットフラグの加算方式のため、正確な意味閲覧作成編集削除エクスポート等のどの組み合わせかは環境のロール定義に依存する。511はGroup19・User460の双方に付与されており、他サイト例: 319015でもGroup19=511・User460=511という共通パターンが見られるため、この2者が管理者相当と推測される。Group27は319027では「7」と、他サイトより限定的な値になっている点に留意。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | ID既定ラベル、Columns配列に定義なし |
| 2 | Status | 状態既定ラベル、Columns配列にLabelText定義なし |
| 3 | ClassA | エリア |
| 4 | ClassB | 稟議分類 |
| 5 | ClassC | 稟議コード |
| 6 | ClassD | 契約コード |
| 7 | ClassF | 用件・物件名 |
| 8 | Owner | 申請者 |
| 9 | DateA | 申請日 |
| 10 | ClassD~~319015,ClassA | 関連サイト参照新・稟議申請書SiteId 319015側 ClassA「稟議コード」の値を表示 |
| 11 | ClassD~~319015,ClassB | 関連サイト参照新・稟議申請書SiteId 319015側 ClassB「エリア」の値を表示 |
| 12 | ClassD~~319015,ClassC | 関連サイト参照新・稟議申請書SiteId 319015側 ClassC「稟議分類」の値を表示 |
| 13 | UpdatedTime | 更新日時(既定ラベル) |
`ClassD~~319015,ColumnName` はPleasanterのGridColumns専用の関連サイト参照書式`{基点列}~~{参照先SiteId},{参照先列}`。詳細は「7. 他サイト連携」を参照。
FilterColumns絞り込み対象: Status, Owner, ClassA, ClassB, ClassC, ClassD, ClassE, ClassF, DateA。
### 3.2 編集画面レイアウトEditorColumnHash / Sections
タブ「General」
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Title | タイトル既定ラベル、Columns配列に定義なし |
| 2 | ResultId | ID既定ラベル |
| 3 | Status | 状態(既定ラベル) |
| 4 | ClassC | 稟議コード |
| 5 | _Section-2 | ―(セクション「稟議コード取得」開始) |
| 6 | ClassA | エリア |
| 7 | ClassB | 稟議分類 |
| 8 | Owner | 申請者 |
| 9 | ClassD | 契約コード |
| 10 | ClassE | 派生コード |
| 11 | ClassF | 用件・物件名 |
| 12 | DateA | 申請日 |
| 13 | Comments | コメント |
| 14 | ClassX | (ラベル未設定・非表示項目) |
| 15 | ClassY | (ラベル未設定・非表示項目) |
| 16 | _Links-319015 | ―(サイト間リンク: 新・稟議申請書SiteId 319015との関連付けウィジェット |
Sectionsセクション定義
| Id | ラベル | AllowExpand | Expand |
|---|---|---|---|
| 2 | 稟議コード取得 | false | true |
### 3.3 タイトル表示TitleColumns / TitleSeparator
`TitleColumns`: ClassC稟議コード, Owner申請者, DateA申請日
`TitleSeparator`: `" - "`
タイトル表示式: `{稟議コード} - {申請者} - {申請日}`
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類) | エリア | ExtendedHtmlAfterControlに注意書きあり | NoWrap, ValidateRequired: true, ChoicesControlType: Radio9択, SearchType: PartialMatch |
| ClassB | 文字列(分類) | 稟議分類 | ― | ValidateRequired: true, ChoicesControlType: Radio8択、選択肢ごとに色分けクラス指定あり, SearchType: PartialMatch |
| ClassX | 文字列(拡張分類) | (ラベル未設定) | ― | Hide: true。非表示の裏項目 |
| ClassY | 文字列(拡張分類) | (ラベル未設定) | ― | Hide: true。非表示の裏項目 |
| Owner | ユーザー選択 | 申請者 | ― | NoWrap, EditorReadOnly: true編集画面で読み取り専用, DefaultInput: ""(既定は空=ログインユーザー等) |
| ClassD | 文字列(分類) | 契約コード | ― | UseSearch: true検索選択式, NoWrap, GridDesign: `[ClassD][ClassE]`, SearchType: PartialMatch。ChoicesTextにSiteId 61259への参照JSONあり詳細は7章 |
| ClassE | 文字列(分類) | 派生コード | ― | UseSearch: true, Link: true, SearchType: PartialMatch。ChoicesTextに複数SiteId64583/74927/72434への参照あり詳細は7章 |
| ClassF | 文字列(分類) | 用件・物件名 | 「契約コードまたは派生コードを選択すると自動的に邸名が入力されます」 | ValidateRequired: true, FieldCss: field-wide |
| Status | 状態 | (ラベル未設定・既定ラベル「状態」) | ― | NoWrap。ChoicesText: 100=発行(status-new), 500=申請(status-green), 900=決裁(status-blue), 910=取消(status-rejected) |
| DateA | 日付 | 申請日 | ― | DefaultInput: "0"(当日日付が既定値), EditorReadOnly: true |
| ClassC | 文字列(分類) | 稟議コード | ― | NoWrap, ExtendedFieldCss / ExtendedControlCss: `code-readonly`Style Id1で装飾。9章参照 |
上記に加え、ResultId自動採番ID既定ラベル「ID」、UpdatedTime既定ラベル「更新日時」、Title既定ラベル「タイトル」、Commentsコメント機能がColumns配列には定義されず、GridColumnsEditorColumnHashのみで使用されている。
### 4.1 項目ごとの補足HTMLExtendedHtmlAfterControl
| 列名 | 色(スタイル) | 内容 |
|---|---|---|
| ClassA | `commentAdd red`(赤字想定のクラス) | 「※物件・案件に対応したエリアを選択すること※」という注意書き |
## 5. 作成・更新権限(フィールド単位)
`PermissionForCreating` / `PermissionForUpdating` はSiteSettingsに設定なし。
代わりに `UpdateColumnAccessControls` により、特定項目の更新を部署・グループ単位で制限している。
| 列名 | Depts部署ID | GroupsグループID |
|---|---|---|
| Status | 8, 56 | 19 |
すなわち、状態Status列は部署ID 8・56、またはグループID 19に属するユーザーのみが更新可能であり、それ以外のユーザーからは実質的に変更できない項目になっている。
## 6. 集計設定Aggregations
| Id | GroupBy | Type | Target |
|---|---|---|---|
| 3 | Status | 0 | (空) |
| 1 | ClassA | 0 | (空) |
| 2 | ClassB | 0 | (空) |
Type: 0 は件数Count集計と推定される。Status別・エリアClassA別・稟議分類ClassB別の3種の集計軸が設定されている。
## 7. 他サイト連携Links / ルックアップ)
### 7.1 明示的なLinks設定
| 起点列(内部/ラベル) | 参照先SiteId | 参照先の値→自コピー先 | JsonFormat |
|---|---|---|---|
| ClassD契約コード | 61259 | SearchFormat: `[ClassH] - [ClassJ] - [ClassO] - [ClassP]`(検索結果表示書式) | true |
| ClassE派生コード | 64583 | ― | ― |
| ClassE派生コード | 74927 | ― | ― |
| ClassE派生コード | 72434 | ― | ― |
SiteId 61259, 64583, 74927, 72434 はいずれも本ドキュメントが対象とする稟議関連10サイト319014, 319020, 319021, 319027, 335730, 319017, 319015, 319022, 319016, 160926には含まれない、外部の契約コード・派生コードマスタサイトである。ClassD契約コードは検索選択によりSiteId 61259の該当レコードを参照し、ClassE派生コードは同様にSiteId 64583/74927/72434のいずれかのレコードを参照する構成。
### 7.2 暗黙的なサイト間連携Links配列に現れないもの
- **GridColumns**: `ClassD~~319015,ClassA` / `ClassD~~319015,ClassB` / `ClassD~~319015,ClassC` という書式(`{基点列}~~{参照先SiteId},{参照先列}`で、稟議関連10サイトのひとつである **SiteId 319015新・稟議申請書** の ClassA稟議コード・ClassBエリア・ClassC稟議分類の値を一覧画面に表示している。これはSiteSettings.Linksの列リンク設定ではなく、GridColumns側の関連サイト参照専用書式であり、正式なLinks配列には現れない。
- **EditorColumnHash**: General タブ末尾に `_Links-319015` というPleasanterのサイト間アイテムリンク機能用の特殊項目があり、編集画面上でSiteId 319015新・稟議申請書のレコードとの関連付けリンク操作ができる構成になっている。上記GridColumnsの参照表示は、このアイテムリンクで関連付けられたレコードを参照していると推定される。
- **ViewsId 1のCrosstabValue**: `ClassE~64583-ClassA~61259-ClassW~451952,NumA` という値が設定されており、SiteId 64583, 61259, 451952いずれも稟議関連10サイト外を参照するクロス集計軸の定義が残っている。ただし本サイトの既定ビューDefaultModeは Index一覧であり、Crosstab関連設定は現状使われていない可能性が高い。
### 7.3 Scripts / ServerScripts内のハードコード参照
Scripts`稟議コード生成`, `編集禁止処理`およびServerScripts`取消しグレー表示`の本文を確認したが、稟議関連10サイトのSiteIdを`items.Get(SiteId)`のような形で直接ハードコード参照している箇所は見つからなかった。Script「稟議コード生成」内の `$p.apiGet({'id': code1, ...})` はClassD/ClassEの選択値SiteId 61259等のレコードIDをキーにAPI取得しており、こちらもSiteIdの直接指定ではなくレコードIDのみを渡す形になっている。
## 8. プロセス設定Processes
定義ファイル: [configs/site-319027_事前稟議一覧/processes.json](../configs/site-319027_事前稟議一覧/processes.json)
processes.jsonは空配列`ProcessesCount: 0`であり、本サイトにはボタン操作によるプロセス状態遷移の自動化は定義されていない。状態Statusの変更は、5章のUpdateColumnAccessControlsで許可された部署・グループのユーザーが直接編集する運用と推測される。
## 9. スタイルStyles
| Id | Title | 適用範囲 | ファイル |
|---|---|---|---|
| 1 | readonly-font130%-bold | New, Edit | [styles/1_readonly-font130%-bold.css](../configs/site-319027_事前稟議一覧/styles/1_readonly-font130%-bold.css) |
| 2 | 取消しグレー表示 | Index | [styles/2_取消しグレー表示.css](../configs/site-319027_事前稟議一覧/styles/2_取消しグレー表示.css) |
- Id1: `.code-readonly` に対し `pointer-events: none; font-size: 130%; font-weight: bold;` を適用。稟議コードClassCのExtendedFieldCss/ExtendedControlCssから参照され、発行された稟議コードを大きく太字で強調しつつ操作不可に見せる装飾。
- Id2: `.cancelCode` に対し `background-color: lightgrey;` を適用。10章のServerScript「取消しグレー表示」が付与するCSSクラスと対応しており、状態が「取消」の行を一覧画面でグレー表示するための装飾。
## 10. スクリプトScriptsサーバースクリプトServerScripts
| Id | Title | 適用画面 | 状態 | ファイル |
|---|---|---|---|---|
| 1 | 稟議コード生成 | New新規作成画面 | **Disabled: true無効化** | [scripts/1_稟議コード生成.js](../configs/site-319027_事前稟議一覧/scripts/1_稟議コード生成.js) |
| 2 | 編集禁止処理 | Edit編集画面 | **Disabled: true無効化** | [scripts/2_編集禁止処理.js](../configs/site-319027_事前稟議一覧/scripts/2_編集禁止処理.js) |
- Id1「稟議コード生成」: 新規作成時、非表示項目ClassX/ClassYにClassA/ClassBの値をコピーする処理と、ClassD契約コードまたはClassE派生コードを選択した際に `$p.apiGet` で相手レコードを取得し、用件・物件名ClassFへ邸名を自動補完する処理が定義されている。現在 `Disabled: true` のため、これらの自動処理は動作していない。
- Id2「編集禁止処理」: 編集画面表示時にClassA〜Fの入力コントロールを`disabled`にし、稟議コードClassCをクリップボードにコピーするボタンを追加する処理。外部CDN`cdnjs.cloudflare.com`からtoastr.jsライブラリを動的読み込みする。現在 `Disabled: true` のため動作していない。
| Id | Title | フック | 状態 | ファイル |
|---|---|---|---|---|
| 1 | 取消しグレー表示 | BeforeOpeningRow | 有効 | [serverscripts/1_取消しグレー表示.js](../configs/site-319027_事前稟議一覧/serverscripts/1_取消しグレー表示.js) |
- Id1「取消しグレー表示」: 行を開く前のサーバー処理として、`model.Status == '910'`(取消)の場合に `model.ExtendedRowCss = 'cancelCode'` を設定し、9章のStyle Id2と連動して一覧上の該当行をグレー表示する。
**秘密情報チェック**: 上記Scripts/ServerScriptsの本文を確認したが、APIキー・Webhook URL・パスワード等の秘密情報らしき文字列は見つからなかった外部参照は公開CDN `cdnjs.cloudflare.com` のtoastr.jsライブラリ読み込みのみ
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | trueリンク一覧を非表示にする設定 |
| SectionLatestId | 2 |
| AllowCopy | falseレコードのコピー機能は無効 |
| TitleSeparator | `" - "` |
| GridGuide | 「稟議コード発行テーブルになります。発行後に内容を変更することはできません。〜」という注意文あり([html/GridGuide.html](../configs/site-319027_事前稟議一覧/html/GridGuide.html) |
| EditorGuide | GridGuideと同一内容[html/EditorGuide.html](../configs/site-319027_事前稟議一覧/html/EditorGuide.html) |
| CalendarGuide等その他ガイド | いずれも空 |
| Comments | EditorColumnHashに含まれ、コメント機能は有効。現時点のコメントデータは0件`"[]"` |
| UpdateColumnAccessControls | 5章参照Status列を部署8,56グループ19に制限 |
| Notifications | SiteSettingsに定義なし通知設定なし |
---
## 気になる点(レビュー観点)
- Script Id1「稟議コード生成」・Id2「編集禁止処理」がいずれも `Disabled: true` で無効化されている。ClassX/ClassYへの値コピー、ClassD/ClassE選択時のClassF自動補完、編集画面での入力ロック・コピー用ボタンといった、コード上想定されている挙動が現在は動作していない可能性が高い。意図的な無効化なのか、設定漏れなのか確認が望ましい。
- ClassF用件・物件名のDescriptionには「契約コードまたは派生コードを選択すると自動的に邸名が入力されます」と案内されているが、その処理を担うScript Id1が無効化されているため、案内文と実際の挙動が一致していない可能性がある。
- ClassX / ClassYはHide: trueのみでLabelTextが未設定であり、用途ClassA/ClassBのバックアップ値保持がスクリプト無効化と相まって分かりにくい。
- Status列にLabelTextが設定されておらず既定ラベル「状態」のままである。一覧・絞り込み・権限制御UpdateColumnAccessControlsで使われる主要項目のため、明示的なラベル付けが望ましい。
- GridColumnsの`ClassD~~319015,ClassA/B/C`およびEditorColumnHashの`_Links-319015`は、正式なLinks配列には現れない「暗黙的なサイト間連携」SiteId 319015: 新・稟議申請書)であり、他サイトとの関連図を作成する際に見落としやすい点として明記した。
- ViewsId1のCrosstabValueが稟議関連10サイト外のSiteId64583, 61259, 451952を参照する未整理な設定値を含んでおり、実際に使われているか不明。将来的な整理対象の可能性がある。
- PermissionsGroup 19 = 511, Group 27 = 7, User 460 = 511はビットフラグのため、正確な権限範囲は環境のロール定義に依存する。特にGroup 27は319027では他サイトより限定的な値7になっており、意図した制限か確認が望ましい。
- 秘密情報らしき文字列APIキー・Webhook URL・パスワード等は、Scripts/ServerScripts本文からは見つからなかった。外部参照は公開CDNcdnjs.cloudflare.comのtoastr.jsライブラリ読み込みのみ。

View File

@ -1,19 +1,31 @@
# 概要書:組織エリアマスタ
- 技術仕様(項目のシステム上の名称・設定値等)は [../configs/site-335730_spec.md](../configs/site-335730_spec.md) を参照してください。
- 本書は業務担当者向けに機能面のみを平易に説明するものです。
- 技術仕様(項目のシステム上の名称・設定値等)は [site-335730_組織エリアマスタ_spec.md](./site-335730_組織エリアマスタ_spec.md) を参照。
本書は業務担当者向けに、機能面のみを平易に説明するものです。
## 1. これは何か
このサイトは「組織エリアマスタ」で、Resultsを管理・参照するための画面です。
このサイトは、稟議申請システム内で使用する「組織」と「エリア拠点」の基本情報をあらかじめ登録しておくための一覧マスタです。組織を識別するID・コード・名称と、その組織が属するエリア拠点をまとめて管理します。稟議申請など他の画面で組織やエリアを選ぶ際の参照元データとして使われることを想定した一覧です。
## 2. 登場する情報(入力項目)
| 分類 | 項目 | 内容 |
|---|---|---|
| | 組織ID | |
| | 組織コード | |
| | 組織名 | |
| | エリア | |
| 組織情報 | 組織ID | 各組織を識別するための番号。重複登録できない設定になっている |
| 組織情報 | 組織コード | 組織を表す社内コード |
| 組織情報 | 組織名 | 組織の正式名称。入力欄は編集画面で広めに表示される |
| 組織情報 | エリア | 組織が属する地域拠点。「東京」「愛知」「千葉」「静岡」「熊本」「特建」「バックオフィス」「その他」「未使用」の中から選択する。一覧画面では拠点ごとに異なる色で表示される |
一覧画面のタイトルは「組織ID■組織名■エリア」の形式で表示されます。
## 3. 業務の流れ(ボタン操作)
このサイトには、状態を遷移させるボタン操作(承認・回覧などのワークフロー)は設定されていません。組織・エリアの情報を登録・編集するだけのマスタ一覧です。
## 4. 通知される場面
このサイトにはメール等の通知設定はありません。
## 5. 関連する仕組み(マスタ連携)
このサイト自体には、他サイトから自動的に値を取り込む・他サイトへ値を渡すといった連携設定は見当たりません。サイト名や項目構成組織ID・組織コード・組織名・エリアから、他の稟議関連の画面申請書や稟議管理などから組織・エリアの候補として参照される「マスタ」の役割を持つと推測されますが、その参照設定は参照する側の画面に定義されるものであり、本サイト自身の設定情報からは確認できません。

View File

@ -0,0 +1,121 @@
# サイト仕様書組織エリアマスタSiteId: 335730
- 取得元データ: [site-335730_latest.json](../siteSettingJsons/site-335730_latest.json)
- 取得日時: 2025-05-31T11:38:48サイト更新日時設定バージョン `Ver: 1`
## 1. サイト基本情報
| 項目 | 値 |
|---|---|
| TenantId | 1 |
| Title | 組織エリアマスタ |
| ReferenceType | Results |
| ParentId | 319018本システムの連携10サイト一覧には含まれないSiteId。フォルダ等の親コンテナの可能性がある |
| InheritPermission | 335730自サイトの権限をそのまま継承 |
| Publish | false外部公開なし |
| DisableCrossSearch | false |
| Creator / Updator | 460 / 460 |
| CreatedTime | 2025-05-31T11:21:24 |
| SiteSettings.Version | 1.017 |
## 2. アクセス権限Permissions
| 種別 | 対象ID | 権限レベル |
|---|---|---|
| Group | 13 | 15 |
| Group | 19 | 511 |
| Group | 27 | 1 |
| User | 460 | 511 |
※ 権限値はビットフラグの加算方式のため、正確な意味閲覧編集管理等の組み合わせは環境のロール定義に依存する。Group,27の権限レベル「1」は他のGroupに比べて著しく低く、Group,19およびUser,460Creator/Updatorと同一ユーザーには最大級の権限511が付与されている。
## 3. 画面構成
### 3.1 一覧画面GridColumns
| 順番 | 列名(内部) | 表示ラベル |
|---|---|---|
| 1 | ResultId | ID標準ラベル |
| 2 | ClassA | 組織ID |
| 3 | ClassB | 組織コード |
| 4 | ClassC | 組織名 |
| 5 | ClassD | エリア |
| 6 | Manager | 管理者(標準ラベル) |
| 7 | Owner | 作成者(標準ラベル) |
| 8 | Updator | 更新者(標準ラベル) |
| 9 | UpdatedTime | 更新日時(標準ラベル) |
### 3.2 編集画面レイアウトEditorColumnHash / Sections
タブ「General」のみ。
| 順番 | 項目名(内部名) | ラベル名 |
|---|---|---|
| 1 | Title | タイトル(標準ラベル) |
| 2 | ClassA | 組織ID |
| 3 | ClassB | 組織コード |
| 4 | ClassC | 組織名 |
| 5 | ClassD | エリア |
| 6 | Body | 本文(標準ラベル) |
| 7 | Comments | コメント(標準ラベル) |
`Sections`配列は定義されていない(セクション区切りなし、単一タブ構成)。
### 3.3 タイトル表示TitleColumns / TitleSeparator
`TitleColumns`: ClassA組織ID, ClassC組織名, ClassDエリア
`TitleSeparator`: `■`
タイトル表示式: `{組織ID}■{組織名}■{エリア}`
## 4. 項目定義Columns
| 列名(内部) | 種別 | 表示ラベル | 説明・入力ガイド | 備考 |
|---|---|---|---|---|
| ClassA | 文字列(分類) | 組織ID | なし | `NoWrap: true`(一覧表示で折り返さない)/`NoDuplication: true`(値の重複を禁止) |
| ClassB | 文字列(分類) | 組織コード | なし | 特記事項なし |
| ClassC | 文字列(分類) | 組織名 | なし | `FieldCss: field-wide`(編集画面で入力欄を横幅広く表示) |
| ClassD | 文字列(分類) | エリア | なし | `ChoicesText`により選択肢を固定(下表参照)/`SearchType: PartialMatch`(部分一致検索) |
ClassDエリアの選択肢一覧値, 表示色クラス):
| 選択肢 | 表示色クラス |
|---|---|
| 東京 | new-status-blue |
| 愛知 | new-status-purple |
| 千葉 | new-status-lime |
| 静岡 | new-status-cyan |
| 熊本 | new-status-brown |
| 特建 | new-status-green |
| バックオフィス | new-status-white |
| その他 | new-status-pink |
| 未使用 | new-status-black |
Columns配列に定義のないResultId, Manager, Owner, Updator, UpdatedTime, Title, Body, Commentsは標準ラベル・標準挙動のまま。
## 5. 作成・更新権限(フィールド単位)
設定なし(`PermissionForCreating` / `PermissionForUpdating` は未定義)。
## 11. その他設定
| 項目 | 値 |
|---|---|
| NoDisplayIfReadOnly | false |
| HideLink | 未設定(標準動作) |
| SectionLatestId | 未設定 |
| 各種ガイド文GridGuide, EditorGuide, CalendarGuide等 | すべて空文字列(未設定) |
| Commentsコメント欄 | 編集画面Generalタブに配置されており使用可能 |
| ClassHash / NumHash / DateHash / DescriptionHash / CheckHash / AttachmentsHash | すべて `{}`(ラベル定義なし=標準ラベルのまま) |
このサイトはScripts / Styles / ServerScripts / Html / Processesがいずれも0件`configs/site-335730_組織エリアマスタ/manifest.json`で確認のため、該当節6. 集計設定、7. 他サイト連携、8. プロセス設定、9. スタイル、10. スクリプト/サーバースクリプト)は省略する。`SiteSettings`にも`Aggregations`・`Links`・`Notifications`・`Processes`のいずれのキーも存在しない。
---
## 気になる点(レビュー観点)
- `ParentId: 319018` は本システムの連携対象10サイト319014, 319020, 319021, 319027, 335730, 319017, 319015, 319022, 319016, 160926のいずれにも該当しない。フォルダ的な親サイトの可能性があるが、正体は本仕様書の対象データからは特定できない。
- サイト名「組織エリアマスタ」および項目構成組織ID組織コード組織名エリアから、他の稟議関連サイトから参照されるマスタと推測されるが、本サイト自身の`SiteSettings`には`Links`設定が存在せず、ServerScripts等での参照もないそもそもServerScripts自体が0件。他サイト側で`items.Get(335730)`等の暗黙参照やLinks設定があるかは、本サイト単体の設定からは確認できない。
- 権限設定でGroup,27のみ権限レベル「1」と他Groupより著しく低く、意図した設定か確認が望ましい。
- 組織コードClassBには検索設定SearchTypeが付与されておらず、エリアClassDのみ部分一致検索が設定されている。コード検索の利便性が必要か要確認。
- `NoDuplication: true`が組織IDClassAのみに設定されており、組織コードClassBには重複禁止が設定されていない。コードの一意性も業務上求められる場合は設定漏れの可能性がある。

View File

@ -0,0 +1,89 @@
# サイト関連図:稟議承認ワークフロー関連サイト群
`config.json``SiteId` に列挙された10サイト稟議申請〜承認〜集計〜通知にまたがる連携システムについて、
サイトツリー・明示的な連携Links・暗黙的な連携ServerScripts/Scriptsのハードコード参照を1枚にまとめたもの。
各サイトの詳細(項目定義・権限・プロセス等)は個別の仕様書(`site-{SiteId}_{サイト名}_spec.md`)を参照。
## 1. サイトツリーParentId
10サイトは実際には2つの異なる外部フォルダ`ParentId`)の配下に分かれて配置されている。
```
63543外部フォルダ、詳細不明
├─ 319014 新・稟議申請 ※実データを持たないフォルダ型サイトReferenceType: Sites
│ ├─ 319015 新・稟議申請書 …… 稟議申請の実務データを保持するメインサイト
│ ├─ 319016 【ISO】稟議管理 …… ISO向けの稟議管理・集計サイト
│ ├─ 319017 【ISO】部署担当者別稟議集計 …… 319016の按分集計データ
│ └─ 319022 【部署別】稟議改善 …… 稟議を起点にした改善活動の管理
└─ 160926 稟議コード管理 …… 稟議コードの採番・発行マスタ
319018外部フォルダ、詳細不明。63543とは別系統
├─ 319020 稟議項目 …… 稟議項目マスタ(選択肢用)
├─ 319021 稟議通知管理 …… エリア別の通知先マスタ
├─ 335730 組織エリアマスタ …… 組織・エリアマスタ
└─ 319027 事前稟議一覧 …… 契約前の事前稟議データ
```
**注記**: サイト名「新・稟議申請」319014・フォルダと「新・稟議申請書」319015・実データサイトは名称が酷似しているため混同に注意。`63543`・`319018`はいずれも今回取得した10サイトのJSONには含まれない外部の親サイト社内ポータルの上位フォルダ等と推測されるが、今回の取得範囲では実体不明
## 2. サイト一覧
| SiteId | サイト名 | 役割(推測) | 概要書 |
|---|---|---|---|
| 319014 | 新・稟議申請 | 4サイトをまとめるフォルダ実データなし | [概要書](./site-319014_新・稟議申請_overview.md) |
| 319015 | 新・稟議申請書 | 稟議申請〜承認〜決裁のメインワークフロープロセス18件 | [概要書](./site-319015_新・稟議申請書_overview.md) |
| 319016 | 【ISO】稟議管理 | ISO向けの稟議データ集約・分析 | [概要書](./site-319016_【ISO】稟議管理_overview.md) |
| 319017 | 【ISO】部署担当者別稟議集計 | 319016の按分計上データ閲覧専用 | [概要書](./site-319017_【ISO】部署担当者別稟議集計_overview.md) |
| 319020 | 稟議項目 | 稟議項目の選択肢マスタ | [概要書](./site-319020_稟議項目_overview.md) |
| 319021 | 稟議通知管理 | エリア別の稟議通知先マスタ | [概要書](./site-319021_稟議通知管理_overview.md) |
| 319022 | 【部署別】稟議改善 | 稟議に紐づく改善活動の登録・共有 | [概要書](./site-319022_【部署別】稟議改善_overview.md) |
| 319027 | 事前稟議一覧 | 契約前段階の事前稟議データ | [概要書](./site-319027_事前稟議一覧_overview.md) |
| 335730 | 組織エリアマスタ | 組織・エリアの対応マスタ | [概要書](./site-335730_組織エリアマスタ_overview.md) |
| 160926 | 稟議コード管理 | 稟議コードの採番・発行・取消管理 | [概要書](./site-160926_稟議コード管理_overview.md) |
## 3. 明示的な連携Links
| 起点サイト | 起点列 | 参照先サイト | 内容 |
|---|---|---|---|
| 319015新・稟議申請書 | ClassL | 160926稟議コード管理 | 稟議コード・エリア・稟議分類の値を自動コピー |
| 319015新・稟議申請書 | ClassD | 319027事前稟議一覧 | 関連する事前稟議レコードを選択 |
| 319015新・稟議申請書 | Class011 | 189112対象10サイト外「マスターシート」 | 契約コード・工事名等を参照 |
| 319016【ISO】稟議管理 | ClassD, ClassL | 160926稟議コード管理 | 稟議コード・エリア・稟議分類の値を自動コピー |
| 319016【ISO】稟議管理 | Class110 | 319020稟議項目 | 稟議項目を選択肢として参照 |
| 319016【ISO】稟議管理 | Class111 | 319019対象10サイト外「稟議の原因」 | 原因を選択肢として参照 |
| 319016【ISO】稟議管理 | Class011 | 189112対象10サイト外「マスターシート」 | 319015と同じ外部マスタを参照 |
| 319016【ISO】稟議管理 | ―(埋め込み表示) | 319022, 319017 | 編集画面に関連レコード一覧を埋め込み表示 |
| 319017部署担当者別稟議集計 | ClassO | 319020稟議項目 | 稟議項目を選択肢として参照 |
| 319017部署担当者別稟議集計 | Class100 | 319016【ISO】稟議管理 | 元の稟議管理レコードを参照319016側から見た逆リンクも設定双方向 |
| 319017部署担当者別稟議集計 | ClassP | 319019対象10サイト外「稟議の原因」 | 原因を選択肢として参照 |
| 319022部署別稟議改善 | ClassZ | 319016【ISO】稟議管理 | 元の稟議管理レコードを参照・列表示 |
| 319027事前稟議一覧 | ClassD | 61259対象10サイト外「契約コード」 | 契約コードを参照 |
| 319027事前稟議一覧 | ClassE | 64583 / 74927 / 72434対象10サイト外「派生コード」 | 派生コードを参照 |
| 160926稟議コード管理 | ClassD | 61259対象10サイト外「契約コード」 | 319027と同じ契約コードマスタを参照 |
| 160926稟議コード管理 | ClassE | 64583 / 74927 / 72434対象10サイト外「派生コード」 | 319027と同じ派生コードマスタを参照 |
| 319020稟議項目 | ―(選択肢として参照される側) | 319016, 319017 | 319016・319017のドロップダウン選択肢として使われる値コピーなし |
補足: 189112マスターシート、319019稟議の原因、61259645837492772434契約・派生コード、63543・319018親フォルダは、いずれも今回ドキュメント化対象の10サイトには含まれない外部サイトであり、実体は今回の取得範囲では確認できていない。
## 4. 暗黙的な連携ServerScripts/Scriptsのハードコード参照
正式なLinks設定には現れないが、スクリプト内でSiteIdが直接指定されている今回の調査で発見できた分のみ
| 起点サイト | 参照先サイト | 該当スクリプトファイル | 目的(推測) |
|---|---|---|---|
| 319015新・稟議申請書 | 319021稟議通知管理 | `scripts/1_1.新・稟議申請書.js``getTuuchiData` | 選択したエリアに応じた通知先担当者を自動補完 |
| 319015新・稟議申請書 | 319016【ISO】稟議管理 | `scripts/2_2.稟議申請_作成時処理など.js``uploadISOdata` | 赤稟議の最終決裁時にサマリをISO管理サイトへ複写・計上`upsert` |
| 319015新・稟議申請書 | 189112対象10サイト外 | `scripts/1_1.新・稟議申請書.js``updateMSSdata` | 決裁時にMSSサイトの残金項目を直接更新書き込み方向 |
| 319016【ISO】稟議管理 | 319017部署担当者別稟議集計 | `scripts/1_1.ISO稟議管理スクリプト.js``updateSummary` | プロセス完了時に部署ごとの按分金額を都度アップサート |
| 319016【ISO】稟議管理 | 335730組織エリアマスタ | `serverscripts/1_年選択肢表示.js` | 部署→エリア名の対応表を取得し編集画面に埋め込み |
| 160926稟議コード管理 | 319027事前稟議一覧 | `scripts/3_03.更新時の処理.js` | 更新後のレコード内容を事前稟議一覧へ複製送信(`upsert` |
## 5. セキュリティ上の重要な指摘(横断)
個別調査の過程で、以下3サイトのクライアントスクリプトに **Pleasanter APIキーとみられる文字列が平文でハードコードされている** ことが判明した。クライアントスクリプトはブラウザ上で実行され、ソースコードがログイン可能な全ユーザーに公開されるため、深刻な漏えいリスクがある。
- 160926稟議コード管理: `scripts/3_03.更新時の処理.js`
- 319015新・稟議申請書: `scripts/1_1.新・稟議申請書.js`、`scripts/2_2.稟議申請_作成時処理など.js`
- 319016【ISO】稟議管理: `scripts/1_1.ISO稟議管理スクリプト.js`
値そのものは本書・各spec.mdのいずれにも転記していない。該当ファイルを直接確認のうえ、APIキーの失効・再発行と、サーバースクリプト側への移設サーバースクリプトはクライアントに配信されないため安全を推奨する。

View File

@ -1,13 +1,13 @@
/**
* extract-site-config.js
* ------------------------------------------------------------
* 取得済みのサイト構成 (configs/site-{SiteId}_latest.json) から
* 取得済みのサイト構成 (siteSettingJsons/site-{SiteId}_latest.json) から
* Scripts / Styles / ServerScripts / Processes / ガイドHTML
* 個別ファイルとして configs/site-{SiteId}/ 配下に書き出します
*
* 使い方:
* node extract-site-config.js
* node extract-site-config.js ./configs/site-214812_latest.json
* node extract-site-config.js ./siteSettingJsons/site-214812_latest.json
*
* 出力:
* configs/site-{SiteId}/
@ -172,7 +172,7 @@ if (require.main === module) {
const missing = [];
for (const siteId of siteIds) {
const latestPath = path.join(baseDir, "configs", `site-${siteId}_latest.json`);
const latestPath = path.join(baseDir, "siteSettingJsons", `site-${siteId}_latest.json`);
if (!fs.existsSync(latestPath)) {
console.error(`[警告] ファイルが見つかりません(スキップ): ${latestPath}`);
missing.push(siteId);

View File

@ -2,7 +2,7 @@
* get-site-config.js
* ------------------------------------------------------------
* プリザンターの指定サイトの構成情報SiteSettings等を取得し
* ./configs/ 配下にタイムスタンプ付きJSONとして保存します
* ./siteSettingJsons/ 配下にタイムスタンプ付きJSONとして保存します
*
* 使い方:
* node get-site-config.js
@ -90,7 +90,7 @@ async function fetchAndSaveSite(siteId, { BaseUrl, ApiKey, ApiVersion }) {
}
// 保存
const outDir = path.join(__dirname, "configs");
const outDir = path.join(__dirname, "siteSettingJsons");
if (!fs.existsSync(outDir)) fs.mkdirSync(outDir, { recursive: true });
const timestamp = new Date()