テーブルの管理:プロセス
## 概要
[プロセス](/ja/manual/advanced-operations-process)機能を使うことで、稟議申請などで用いられる承認ワークフロー機能を実現します。プロセス管理用のボタン設定、入力検証、ステータスごとの条件、ボタン表示有無のアクセス制御、自動採番、ボタン押下時の通知を設定することができます。
具体的な使用方法については以下をご参照ください。
[FAQ:稟議申請などのワークフロー(承認プロセス)をプロセス機能で実現する](https://pleasanter.org/manual/faq-process-workflow)
## 制限事項
1. 「一括処理を許可」により一括処理を実施する場合、[入力検証](/ja/manual/table-management-validation)は適用されません。
1. 実行種別が「作成または更新ボタン」を選択した場合、[入力検証](/ja/manual/table-management-validation)は機能しません。
1. OnClickにスクリプトを設定する場合、「アクション種別」の「保存」「ポストバック」は機能しません。
## 設定手順
![image](https://pleasanter.org/binaries/d68d842f207e4feda645bbadb9e7896c)
該当のテーブルを開いた状態でナビゲーションメニューより「管理」-[テーブルの管理](/ja/manual/table-management)をクリックしてください。
※サイトの管理権限が無いユーザには表示されません。
![image](https://pleasanter.org/binaries/027ef752c70e4d1ea64193ae6cafe950)
テーブルの管理からプロセスタブをクリックして開きます。
## 設定内容
新規作成ボタンをクリックし、プロセスを設定します。
### 共通設定・全般タブ
![image](https://pleasanter.org/binaries/347a2f6e34094c4d99f3faef5844b195)
|項目名|説明|
|:---|:---|
|名前|任意のプロセス名を設定。|
|表示名|プロセス機能で追加されたボタンに表示する名称を設定。|
|画面種別|プロセス機能で追加されたボタンを表示する画面を設定。 ※1|
|現在の状況|プロセス管理対象とするステータスを設定。 ※2|
|変更後の状況|プロセス処理後に更新するステータスを設定。 ※2|
|ツールチップ|プロセス機能で追加されたボタンに表示するツールチップを設定。|
|確認メッセージ|プロセス機能で追加されたボタンクリック時に表示するメッセージを設定。|
|成功メッセージ|プロセス処理後に表示するメッセージを設定。 ※3|
|OnClick|プロセス機能で追加されたボタンクリック時に実行するスクリプトを設定。 ※4|
|実行種別|プロセス機能を実行する方法を設定。 ※5|
|アクション種別|プロセス機能で追加されたボタンのアクション種別を設定。 ※6|
| 一括処理を許可|プロセス機能で追加したボタンを一覧画面で選択して実行するための設定|
※1 アクション種別が「追加したボタン」である場合に有効となる設定。「新規作成」または「編集」を選択します。(既定値:編集)
※2 ステータスに応じて、ボタンが表示されます。また、*を指定することで、全てのステータスでボタンが表示されます。
※3 角括弧([])囲いで項目名を指定することで、動的にメッセージを設定することができます。
```申請しました。申請金額 :[金額]```
※4 OnClickにスクリプトを設定する場合「アクション種別」の「保存」「ポストバック」は機能しません。
※5 「追加したボタン」「作成または更新」から選択します。(既定値:追加したボタン)
#### 実行種別
|選択肢|説明|
|:---|:---|
|追加したボタン|プロセス機能で追加したボタンから実行します。|
|作成または更新|標準の作成・更新ボタンから実行します。この場合、プロセス機能によるボタンは追加されません。|
※6 アクション種別が「追加したボタン」である場合に有効となる設定。「保存」「ポストバック」「無し」から選択します。(既定値:保存)
#### アクション種別
|選択肢|説明|
|:---|:---|
|保存|更新処理を行いたい場合に選択します。|
|ポストバック|更新処理を行わずに、サーバ側での処理を行いたい場合に選択します。例)ボタンを押したときに[サーバスクリプト](/ja/manual/table-management-server-script)のみを動かしたい等|
|無し|更新処理を行わずに、クライアント側での処理を行いたい場合に選択します。例)ボタンを押したときに[スクリプト](/ja/manual/table-management-script)のみを動かしたい等|
#### 制限事項
#### 一括処理を許可
チェックを付けると、一覧画面で複数のレコードにプロセスを実行することができます。
- チェックを付けたプロセスのうちアクセス権限がある全てのプロセスが表示されます。
![image](https://pleasanter.org/binaries/de2cf52bbf014cfc8100efe12c66bacb)
- 特定のプロセスを選択すると、実行モードになります。プロセスの条件によって絞り込みが行われます。
![image](https://pleasanter.org/binaries/9ec8df3caf194f7baaee84ff57a5a3dd)
### 入力検証タブ
プロセス処理時の入力検証内容を設定します。
![image](https://pleasanter.org/binaries/cd19f42b437147a3bb203b328cf5492e)
|項目名|説明|
|:---|:---|
|入力検証種別|プロセス機能で追加されたボタンの入力検証種別を設定。 ※7|
※ 「マージ」「置換」「無し」から選択します。(既定値:マージ)
#### 入力検証種別
|選択肢|説明|
|:---|:---|
|マージ|[エディタの項目の設定](/ja/manual/table-management-editor-columns)の[入力検証](/ja/manual/table-management-validation)とプロセスの[入力検証](/ja/manual/table-management-validation)を行います。|
|置換|[エディタの項目の設定](/ja/manual/table-management-editor-columns)の[入力検証](/ja/manual/table-management-validation)を行わず、プロセスの[入力検証](/ja/manual/table-management-validation)のみを行います。|
|無し|[入力検証](/ja/manual/table-management-validation)を行いません。|
新規作成ボタンをクリックし、検証条件を設定をします。
![image](https://pleasanter.org/binaries/9a8cdc3d5f8b48508b249885a91fac2f)
|項目名|説明|
|:---|:---|
|項目|検証対象とする項目を設定。|
|入力必須|入力必須とする場合に設定。|
|クライアント正規表現|入力後に、項目からフォーカスが移ったタイミングで検証する内容を正規表現で設定。|
|サーバ正規表現|レコードの作成・更新のタイミングで検証する内容を正規表現で設定。|
|エラーメッセージ|検証エラー時に表示するメッセージを設定。|
### 条件タブ
プロセス用のボタンを表示する条件を件を設定します。
![image](https://pleasanter.org/binaries/702e66d88bf34c05a1326768f8076b04)
項目プルダウンから対象項目を選択・追加し、条件を設定します。
エラーメッセージに、条件不備時のメッセージを設定します。
### アクセス制御タブ
プロセス用のボタンを表示対象とする権限を設定します。
![image](https://pleasanter.org/binaries/d0f790b2fd1e4ac0a4ebec5963c24343)
選択肢一覧より、対象とするユーザ・グループ組織を選択肢、追加します。
### データの変更タブ
プロセス用のボタン押下時のデータの変更内容を設定します。
例)承認ボタンを押したときに承認者と承認日を自動的に設定する。
![image](https://pleasanter.org/binaries/ff133d3978ef48c9a6c9d5beedd60a77)
#### 変更種別
|No|選択肢|説明|
|:---|:---|:---|
|1|値のコピー|指定した「コピー元」の項目の値が、指定した[項目](/ja/manual/table-management-column)にコピーされます。|
|2|表示名のコピー|指定した「コピー元」の項目の表示名が、指定した[項目](/ja/manual/table-management-column)にコピーされます。|
|3|値の入力|指定した「値」が、指定した[項目](/ja/manual/table-management-column)にコピーされます。「値」には項目の表示名を指定することも可能です。 ※7|
|4|日付の入力|「基準日時」に「期間」を単位として「値」を加算した日付が、指定した[項目](/ja/manual/table-management-column)に設定されます。例)値に「1」と入力し、期間に「日」を選択した場合は1日後の日付が設定されます。|
|5|日時の入力|「基準日時」に「期間」を単位として「値」を加算した日時が、指定した[項目](/ja/manual/table-management-column)に設定されます。例)値に「1」と入力し、期間に「日」を選択した場合は1日後の日時が設定されます。|
|6|組織の入力|ログインした[ユーザ](/ja/manual/table-management-choices-text-users)の所属する[組織](/ja/manual/table-management-choices-text-depts)が設定されます。|
|7|ユーザの入力|ログインした[ユーザ](/ja/manual/table-management-choices-text-users)が設定されます。|
※7 角括弧([])囲いで項目名を指定することで、動的に値を設定することができます。
```申請金額 :[金額]```
#### 変更種別:値のコピー
例)分類Aの値を分類Bにコピーする
![image](https://pleasanter.org/binaries/d4160d7149af4898bf5663aafeb3a8e4)
#### 変更種別:表示名のコピー
例)分類Cの表示名を分類Dにコピーする
![image](https://pleasanter.org/binaries/9541046924f149d497c869a3a6ad60d0)
#### 変更種別:値の入力
例)値(固定文字列+分類Eの値)を分類Fにコピーする
![image](https://pleasanter.org/binaries/f757b3406f894a9faac5ebab567c003f)
#### 変更種別:日付の入力
例)プロセスを実行した日の 1 日後の日付を日付Aに設定する
![image](https://pleasanter.org/binaries/414dccd72bb24839bf730bb3c52b0b35)
#### 変更種別:日時の入力
例)プロセスを実行した瞬間の 1 ヶ月前の日時を日付Bに設定する
![image](https://pleasanter.org/binaries/0c13dec732594186bd1e1157f05d7eb3)
#### 変更種別:組織の入力
例)ログインした[ユーザ](/ja/manual/table-management-choices-text-users)の所属する[組織](/ja/manual/table-management-choices-text-depts)を分類Gに設定する
![image](https://pleasanter.org/binaries/fc27c28dd5be491fb16b8391a93ff061)
#### 変更種別:ユーザの入力
例)ログインした[ユーザ](/ja/manual/table-management-choices-text-users)を分類Hに設定する
![image](https://pleasanter.org/binaries/e02a827401ab4877bf661ce8bc564a47)
例)上記の各変更種別を設定した場合:データの変更前(testボタン押下前)
![image](https://pleasanter.org/binaries/154123c3d66e4b5b8c6434d37340136f)
例)上記の各変更種別を設定した場合:データの変更後(testボタン押下後)
![image](https://pleasanter.org/binaries/32a9e93ac7034560b838ccf227381559)
項目の型が異なる場合([タイトル項目](/ja/manual/table-management-title)や[分類項目](/ja/manual/table-management-class)などの文字列項目から[日付項目](/ja/manual/table-management-date)や[チェック項目](/ja/manual/table-management-check)などに値をコピーする等)でも、C#のToString関数で変換できる場合は値をコピーすることができます。
#### 設定/入力例
|No|変更種別|項目|コピー元|コピー元の入力文字列|項目の設定結果|
|:---|:---|:---|:---|:---|:---|
|1|値のコピー|日付A|タイトル|2022/07/03|2022/07/03|
|2|値のコピー|日付A|タイトル|令和4年7月3日|2022/07/03|
|3|値のコピー|日付A|タイトル|abc|(コピーされない)|
|4|値のコピー|チェックA|タイトル|1|チェックON|
|5|値のコピー|チェックA|タイトル|0|チェックOFF|
|6|値のコピー|チェックA|タイトル|true|チェックON|
|7|値のコピー|チェックA|タイトル|false|チェックOFF|
|8|値のコピー|チェックA|タイトル|abc|(コピーされない)|
変更種別を複数設定している場合は、上から順に処理が行われます。また、項目に[ルックアップ](/ja/manual/table-management-lookup)を設定している場合はそれぞれの変更種別の実行後に処理が行われます。下記例のように、一度の[プロセス](/ja/manual/advanced-operations-process)で連続したデータの変更を行うことができます。
#### 操作/処理例
|No|操作/処理|補足説明|
|:---|:---|:---|
|1|操作:プロセス用のボタン押下|[プロセス](/ja/manual/advanced-operations-process)機能で設定を行います。|
|2|処理:分類Aを分類Bにコピー|[プロセス](/ja/manual/advanced-operations-process)機能:データの変更タブで変更種別「値のコピー」の設定を行います。|
|3|処理:分類Bを分類Cに転記|[エディタ](/ja/manual/table-editor)機能:選択肢一覧で[ルックアップ](/ja/manual/table-management-lookup)の設定を行います。|
|4|処理:分類Cを分類Dにコピー|[プロセス](/ja/manual/advanced-operations-process)機能:データの変更タブで変更種別「値のコピー」の設定を行います。|
No.1の操作を行うことにより、No.2~4の処理が連続して実行されます。
### 自動採番タブ
プロセス実行時のタイミングで自動採番を行うことができる機能です。
レコード作成時の[自動採番](/ja/manual/auto-numbering)は[エディタの項目の詳細設定](/ja/manual/table-management-column-settings)から行うことが可能ですが、レコード更新時に自動採番を行いたい場合はプロセスの設定で行うことが可能です。
![image](https://pleasanter.org/binaries/646f8090f4c840df8d71008286927b2c)
プロセスの「条件」や[アクセス制御](/ja/manual/site-access-control)との組み合わせで任意のタイミングで自動採番を行えるほか、全般タブの実行種別を「作成または更新」に設定することで、独自に設定したプロセスボタンだけでなく標準の更新ボタンを押下してレコードが更新されたタイミングで動作させることも可能です。
自動採番を設定した項目に対して入力内容をクリアした場合は再度採番が行われるため、採番済みの入力内容に対する変更を許可しない場合は読取専用としてください。
プロセスの自動採番の設定画面では対象となる項目を設定することが可能です。それ以外については[エディタの項目の詳細設定](/ja/manual/table-management-column-settings)の[自動採番](/ja/manual/auto-numbering)と同様になりますので、詳細につきましては以下のマニュアルをご確認ください。
[テーブルの管理:エディタ:項目の詳細設定:自動採番](/manual/auto-numbering)
### 通知タブ
プロセス実行時に通知する内容を設定します。
通知が行われるのは、実行種別が「作成または更新」である場合、もしくは、実行種別が「追加したボタン」であってアクション種別が「保存」と設定された場合です。
![image](https://pleasanter.org/binaries/5724b477438a4432b7f2df355a09b87d)
新規作成ボタンをクリックし、通知内容を設定をします。
![image](https://pleasanter.org/binaries/9c39ef6225ab44b6b77d592caa446749)
#### 詳細項目
|項目名|説明|設定方法|
|:---|:---|:---|
|ID|通知の管理ID|編集不可|
|通知種別|通知の種別を指定|メール、Slack、ChatWork、LINE、LINEグループ、Teams、Rocket.Chat、InCircleから選択|
|件名|通知するメールの件名を指定|任意の件名を入力 ※10|
|アドレス|通知先を指定|任意のメールアドレス、WebHook、roomIDのURL、またはLINEのUserID、GroupIDを入力|
|トークン|chatworkのトークンまたは、LINEボットアカウントのアクセストークンを指定|取得したchatworkのトークンまたはLINEボットアカウントのアクセストークンを入力 ※9|
|内容|通知の本文に出力する書式|任意の内容を入力 ※10|
※9 ChatWork、LINE、LINEグループ、InCircleを指定した場合に表示されます。
※10 角括弧([])囲いで項目名を指定することで、動的にメッセージを設定することができます。
```申請しました。申請金額 :[金額]```
#### 通知種別を指定する
通知種別を指定します。以下の通知種別のうち、[パラメータ設定:Notification.json](/ja/manual/notification-json)で有効化したものを選択できます。
|通知種別|説明|
|:--|:--|
|メール|[プリザンターからメールを送信できるように設定する](/manual/smtp-mail)|
|Slack|[Slackに通知できるように設定する](/manual/slack)|
|ChatWork|[Chatworkに通知できるように設定する](/manual/chatwork)|
|LINE|[LINEに通知できるように設定する(個々のユーザーに対して通知を行う場合)](/manual/line)|
|LINEグループ|[LINEに通知できるように設定する(LINEグループに対して通知を行う場合)](/manual/line)|
|Teams|[Microsoft Teamsに通知できるように設定する](/manual/teams)|
|Rocket.Chat|[Rocket.Chatに通知できるように設定する](/manual/rocketchat)|
|InCircle|[InCircleに通知できるように設定する](/manual/incircle)|
※メールで通知する場合はメール送信の設定が必要です。
#### メール通知の宛先を動的に設定する
メール通知の宛先は特定のメールアドレスだけではなく、担当者や管理者などのほか、任意の項目で指定されたメールアドレスを宛先にすることができます。
#### 宛先に指定できる対象
|対象|挙動|
|---|---|
|固定のメールアドレス(example@example.com)|対象レコードの全てが指定した固定アドレスに送信されます。複数の固定アドレスを指定した場合には、全ての固定アドレスをTOとして送信します|
|担当者、管理者|対象レコードの担当者、管理者に指定されたユーザのメールアドレスに送信します|
|タイトル、内容、分類、説明|対象レコードのタイトル、内容、分類、説明に記載されたメールアドレスすべてに送信します。メールアドレスはカンマ区切りまたは改行区切りで指定することができます|
## 画面操作
プロセスを設定することで、フッターにボタンが追加されます。
![image](https://pleasanter.org/binaries/2d3d85d7d4fd48fb836965fcd5c05925)
ボタンをクリックすると、プロセス設定に従い処理されます。
## 関連情報
<div id="ManualList"><ul><li><a href="/en/manual/site-access-control">Site Function: Access Control</a><span>10.09.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/table-editor">Table Function: Record Editor Screen</a><span>10.02.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/table-management">Manage Table</a><span>10.02.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/table-management-column">Manage Table: Column</a><span>10.07.2024 up</span></li>
<li><a href="/en/manual/table-management-title">Table Management: Item: Title</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-class">Table Management: Item: Classification</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-date">Table Management: Item: Date</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-check">Table Management: Item: Check </a><span>08.13.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/auto-numbering">Table Management: Editor: Item Detail Settings: Automatic Numbering</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-editor">Table Management: Editor</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-editor-columns">テーブルの管理:エディタ:エディタの項目の設定</a><span>04.09.2024 up</span></li>
<li><a href="/en/manual/table-management-column-settings">Manage Table: Editor: Column Advanced Settings</a><span>10.02.2024 up</span></li>
<li><a href="/en/manual/table-management-choices-text-depts">Table Management: Editor: Item Detail Settings: Option List: Departments</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-choices-text-users">Table Management: Editor: Item Detail Settings: Option List: User</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-lookup">Table Management: Editor: Item Detail Settings: Choice List: Lookup</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-validation">Manage Table: Editor: Column Advanced Settings: Input Validation</a><span>10.11.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/table-management-record-access-control">Table Management: Access Control: Record Access Control</a><span>08.13.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/table-management-script">Table Management: Script</a><span>08.13.2024 up</span></li>
<li><a href="/en/manual/table-management-server-script">Table Management: Server Script</a><span>08.13.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/dept">Department Management Function</a><span>08.13.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/user">User Management Function</a><span>10.30.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/dev-column-name">Correspondence of Column name and Name in the system in the Database</a><span>10.04.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/server-script">Developer Function: Server Script</a><span>08.14.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/advanced-operations-link">応用編:リンク</a><span>08.14.2023 up</span></li>
<li><a href="/en/manual/advanced-operations-process">Advanced Operation: Process and Control by Status</a><span>10.01.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/faq-process-comment-required">FAQ:更新時に必ずコメントを入力させたい</a><span>04.29.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/faq-server-script-log">FAQ: I want to output the error log of a server script</a><span>08.14.2024 up</span></li></ul></article>
<ul><li><a href="/en/manual/faq-process-workflow">FAQ:稟議申請などのワークフロー(承認プロセス)をプロセス機能で実現する</a><span>04.29.2024 up</span></li></ul></article></div><input id="SearchTextHidden" type="hidden" value="" />