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

# Groovyスクリプト

> DingTalk YiDAの高度なワークフローデザイナーでGroovyスクリプトを使用し、承認者ルールを制御する方法を解説します。フォーム入力値に応じて承認者を自動で振り分けるための前提条件・手順・スクリプト例を紹介します。

高度なワークフローデザイナーでユーザータスクノードの承認者ルールを設定する際、**その他ルール**を選択すると、**Groovyリクエスト**オプションが表示されます。ビジネスニーズに合わせてGroovyスクリプトを記述し、承認者を制御できます。

## 前提条件

Groovyスクリプトを使用する前に、Groovyの基礎を理解しておいてください。詳細は、[W3C Groovyチュートリアル](https://www.w3cschool.cn/groovy/groovy_overview.html)および[Apache Groovy公式サイト](http://www.groovy-lang.org/)を参照してください。

## 手順

入力フィールドに入力された数値に基づいて、経理承認者を決定します。100未満のリクエストは特定の担当者が承認し、100以上のリクエストは別の担当者が承認します。

<Steps>
  <Step title="ワークフローフォーム編集ページでテキストボックスを追加し、その一意の識別子をコピーします" />

  <Step title="承認フローを設定します：承認ノード > 承認者ルール > その他ルール > Groovyルールの順に選択します" />
</Steps>

経理承認ノードの承認者には、**Groovyリクエスト**を使用します。

`textField_kov80fx9`は、フォーム上のテキストボックスの一意の識別子です。

**注意**：Groovyリクエストスクリプトを編集する際は、`toInteger()`メソッドを使用してください。ワークフロー内部の変数は文字列型のためです。

`toInteger()`メソッドの使用がデフォルトで必要です。以下のフォーマットを参考にしてください。

以下のコードをそのままコピーしてご利用ください。

```javascript theme={"theme":{"light":"github-light","dark":"github-dark"}}
if(uniqueIdOfSingleLineTextBox.toInteger()<100  {
         return['approverUserId']
    }  else  {
       return['approverUserId']
    }
```

このコードは、テキストボックスの数値が100未満の場合はリクエストを一方の承認者へ、それ以外の場合はもう一方の承認者へルーティングすることを意味します。

複数の承認者を返すことも可能です。
