> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alforse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# リスク登録簿

> アイテム、得意先、仕入先、ジョブ、見積明細、作業区に対するリスクと機会を記録し、それぞれを重大度と発生可能性で評価して、クローズまたは受容まで追跡します。

リスク登録簿は、起きる*かもしれない*問題、または追求する価値のある機会を、起きる前に記録します。会社の誰でもエントリを起票でき、品質担当者がそれを評価し、格付けして、解決まで進めます。

## 概要

エントリは通常、Alforse の別のレコードに紐づきますが、一般的なリスクとして単独で存在することもできます。**種類**のほかに、**重大度**と**発生可能性**（それぞれ独立して 1～5 で評価）、担当者、そして `"Closed"` か `"Accepted"` で終わるステータスを持ちます。

エントリは 2 か所で確認できます。

* **品質 → リスク**には、会社全体のリスク登録簿が表示されます。
* アイテム、得意先、仕入先、ジョブ、見積明細、保全指示のページには、それぞれ、そのレコード自身のエントリを一覧するリスクカードがあり、新しいエントリを追加できます。

## リスクを起票する

1. **品質 → リスク**を開いてエントリを追加するか、リスクが関係するレコードのリスクカードを開きます。
2. **タイトル**を入力し、**種類**を選んで、**重大度**と**発生可能性**を評価します。
3. 必要に応じて、担当者を割り当て、1 行の説明を追加し、メモを書きます。
4. 保存します。

レコードのページから追加したエントリには、そのレコードの**ソース**が自動的に設定されます。レコードなしで**品質 → リスク**から追加した場合は、`General` になります。

## フィールド

各エントリは 1 つの `riskRegister` レコードで、`apps/erp/app/modules/quality/quality.models.ts` の `riskRegisterValidator` によって検証されます。

FieldType

<details>
  <summary>**title**required</summary>

  リスクの短い名前。常に必須の唯一のテキストフィールドです。
</details>

<details>
  <summary>**type**required</summary>

  `Risk`（マイナス面）または `Opportunity`（プラス面）。既定は `Risk`。
</details>

<details>
  <summary>**severity**required`1–5`</summary>

  影響がどれほど深刻か。
</details>

<details>
  <summary>**likelihood**required`1–5`</summary>

  どれほど起こりやすいか。同じスケールですが、別々に評価します。
</details>

<details>
  <summary>**status**required</summary>

  エントリのライフサイクル上の位置。既定は `"Open"`。
</details>

<details>
  <summary>**source**required</summary>

  リスクが属するレコードの種類: `Customer`、`General`、`Item`、`Job`、`Quote Line`、`Supplier`、`Work Center`。追加したページから自動的に入力されます。
</details>

<details>
  <summary>**assignee**</summary>

  責任者。空欄の場合、既定ではエントリを作成した人になります。変更すると通知が送信されます。
</details>

<details>
  <summary>**description**</summary>

  一覧とレコードのカードに表示される 1 行の要約。
</details>

<details>
  <summary>**notes**</summary>

  JSON として保存されるリッチテキストの詳細。
</details>

## 重大度と発生可能性

どちらの評価も 1～5 のスケールを使用し、`RiskRating.tsx` によって、1 点につき 1 本の色付きバーの列として描画されます。

| 評価 | バーの色 |
| - | - |
| 1～2 | エメラルド |
| 3 | 黄色 |
| 4 | オレンジ |
| 5 | 赤 |

レコードのカードでは、重大度のバーが警告アイコンの後ろに、発生可能性のバーがサイコロのアイコンの後ろに置かれ、一目で両方を読み取れます。

NOTE

**統合されたリスクスコアはありません。**

重大度と発生可能性は 2 つの別々の整数で、それぞれ 1 から 5 に限定されます。Alforse がそれらを掛け合わせて 1 つのスコアにしたり、リスクマトリクスのセルに置いたりすることはなく、UI は意図的に並べて表示します。登録簿が優先度を計算してくれることは期待しないでください。

なぜ分けておくのか。ほとんど起きないが起きれば壊滅的な不具合と、毎週起きるがコストの小さい迷惑事は、掛け合わせると同じ中程度の数字になってしまいます。別々に表示すれば、それぞれが本来の姿を保ち、重み付けはあなたの判断に委ねられます。

## ステータス

ステータスは、`quality.models.ts` の `riskStatus` 列挙型から取得されます。自由に設定でき、Alforse は順序を強制せず、どのステータスからどのステータスにも変更できます。

<details>
  <summary>**オープン**</summary>

  起票されたが、まだ確認されていません。新しいエントリの既定。
</details>

<details>
  <summary>**レビュー中**</summary>

  評価中。対応するかどうか、どう対応するかを決めています。
</details>

<details>
  <summary>**低減中**</summary>

  重大度または発生可能性を下げるための対処が進行中です。
</details>

<details open>
  <summary>**クローズ**</summary>

  解決済み。リスクは低減されたか、もはや当てはまりません。
</details>

<details>
  <summary>**受容**</summary>

  対処せずに、リスクとともに過ごすという意識的な判断。`"Closed"` とは異なる結果です。
</details>

### 対処を追跡する

独立した低減アクションのレコードはありません。エントリを `"In Review"` と `"Mitigating"` で進め、詳細を**メモ**に書き、対処した場合は `"Closed"`、許容すると決めた場合は `"Accepted"` で終えることで、対処を追跡します。

## リスクカードが表示される場所

これらのページはすべて、1 つの共有カードを再利用し、固定の `source` とレコードの ID を渡します。そのため、各カードにはそのレコード自身のエントリだけが表示され、そこで追加したものは正しいソースで登録されます。

| レコード | コンポーネント | ソース |
| - | - | - |
| アイテム: 部品、材料、工具、消耗品、サービス | `ItemRiskRegister.tsx` | `Item`。外部キー `itemId` も入力 |
| 得意先（リスクタブル） | `CustomerRiskRegister.tsx` | `Customer` |
| 仕入先（リスクタブル） | `SupplierRiskRegister.tsx` | `Supplier` |
| ジョブ | `JobRiskRegister.tsx` | `Job`。アイテムも入力 |
| 見積明細 | `QuoteLineRiskRegister.tsx` | `Quote Line` |
| 保全指示 | 指示ページの共有カード | `Work Center`。指示の作業区に紐づく |

作業区は例外で、専用のページにはカードがありません。ソースが `Work Center` のエントリは、保全指示と会社全体の一覧に表示され、そこでは `riskRegisters` ビューが作業区の名前を提供します。

TIP

**一覧ビューとエンティティのカードは、別のソースを読みます。**

会社全体の一覧（`getRisks`）は `riskRegisters` ビューを読み、各行に作業区の名前を加えます。レコードのカードと単一エントリの編集ページは、`source` とレコード ID で絞り込んだ、ベースの `riskRegister` テーブルを読みます。データは同じで、読み取りの経路だけが異なります。

## 権限と通知

| アクション | 要件 |
| - | - |
| リスクの作成 | 会社の**従業員**であること。新規リスクのルートは、`quality` の作成権限ではなく `role: "employee"` を確認するため、現場の誰でも起票できます。 |
| リスクの編集 | `quality` の**更新** |
| リスクの削除 | `quality` の**削除** |

データベースも同じ区分を強制します。

担当者になった人は、バックグラウンドの `notify` ジョブによって送信される `RiskAssignment` 通知を受け取ります。編集で担当者が以前と異なる場合にのみ発生するため、エントリを再度保存しても、現在の担当者に影響はありません。

## リスクと問題・CAPA の違い

リスク登録簿は、不適合やその是正・予防処置との、コード上のリンクが**ない**、独立したテーブルです。リスクを起票しても問題は作成されず、問題をクローズしてもリスクには影響しません。

| | リスク登録簿 | [問題](https://docs.alforse.com/ja/docs/reference/quality.md) |
| - | - | - |
| 視点 | 将来向け: 起こるかもしれないこと、または機会 | 過去向け: すでに起きた不具合 |
| 目的 | 事前に評価して対処する | 封じ込め、ワークフローのタスクでクローズまで進める |

登録簿は先を見越した評価に、問題は事後の封じ込めに使ってください。

## トラブルシューティング

| メッセージまたは症状 | 原因 | 対処 |
| - | - | - |
| "Title is required"、"Severity is required"、または "Likelihood is required"（タイトル／重大度／発生可能性は必須です） | フォームに必須の値がありません。 | タイトル、重大度、発生可能性を入力します。 |
| 重大度または発生可能性が拒否される | 値が 1～5 の整数ではありません。範囲はデータベースが強制します。 | 1 から 5 の値を選びます。 |
| "Failed to create risk"、"Failed to update risk"、または "Failed to delete risk"（リスクの作成／更新／削除に失敗しました） | 書き込みが失敗しました。多くは権限が原因です。 | 上の権限の表を確認します。 |
| ステータスの変更が保持されない | ステータスにワークフローのルールはないため、原因は保存の失敗か権限の不足です。 | `quality` の更新権限があるか確認します。 |
| リスクを作成できるが、編集または削除できない | 従業員のアクセスはあるが、`quality` の更新または削除権限がありません。 | 管理者にそれらの権限を依頼します。 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.