!++++
!----
生成AIによるJavaScriptエンジンの実装サンプルです。
単票ブロックで受注データを登録・変更し、その内容を在庫管理に自動反映する仕組みを実現しています。
この処理は、TALONの標準機能である「他機能呼出」と「入力チェックパターン」を組み合わせて実現することも可能ですが、今回はJavaScriptエンジンを使用して実装します。
- 機能ID:AI_SAMPLE_ORDER_REGISTRATION(単票)
受注データの登録・変更を行います。 - 機能ID:AI_SAMPLE_STOCK_STATUS(明細)
在庫状況を管理するための明細データです。
具体的には、受注数の変更に応じて以下のロジックが動作します。
- 受注数が増加した場合は、在庫数から減算
- 受注数が減少した場合は、その分を在庫に加算
- 在庫が安全在庫数を下回った場合は、アラートメッセージを表示
- 受注数が在庫数を超過した場合は、エラーメッセージを表示し、処理を中断
この一連の処理は、AIがJavaScriptエンジン用コードとして自動生成しています。
完成画面のイメージ
上記の画面で受注数を登録または変更すると、対応する在庫データが自動的に更新されます。
さらに、画面右上の「在庫照会」ボタンをクリックすると、下図の在庫照会画面へ遷移します。
完成画面のイメージ
生成AIによるコード生成の流れ
- 生成AIボットのサイトにアクセスします。(権限がない場合は以下にURLが表示されません)
!++++
TALON JavaScriptエンジン 生成AIボットβ版
!----
- コードを記述する対象箇所を選択します。
- 実装したい仕様を、AIに対して具体的かつ的確に入力します。
このサンプルでは、AIに以下の内容を指示することで、要件に沿ったJavaScriptエンジン用コードを自動生成できます。
コード記述箇所:ブロック設定>詳細設定>JavaScript(処理前)
コード生成文:
----------------------------------------------
単票ブロック1(対応テーブル名:ai_sample_jyucyu) に
物理項目名:JYUCYU_NO(VARCHAR)
物理項目名:NOKI_DATE(DATETIME)
物理項目名:SMPL_CUST_CODE(VARCHAR)
物理項目名:ITEM_CODE(VARCHAR)
物理項目名:JYUCYU_SU(VARCHAR)
その他いくつかの物理項目から生成した画面がある。
受注数を新たに登録、変更した際に、在庫数を連動してアップデートしてほしい。
ai_sample_jyucyuテーブルから更新前の受注数JYUCYU_SUをSELEACT文を使用して取得して。
在庫データの管理について
- ai_sample_stock_item テーブルの在庫は ITEM_CODEごとに管理している。
- JYUCYU_NOではなく、ITEM_CODEをキーにして在庫を更新すること。
- そのため、受注テーブル(sample_jyucyu)から JYUCYU_NO をもとに ITEM_CODE を取得し、ITEM_CODE を使って在庫を更新すること。
新しく受注数を登録する場合、
- SELECT文でJYUCYU_SUとJYUCYU_NOを取得した際に何も返ってこない。
そのため新しく登録したJYUCYU_SUをai_sample_stock_itemテーブルのSTOCK_QTYにITEM_CODEをキーにしてSTOCK_QTYから新しく登録したJYUCYU_SUを引いてアップデートする。 - STOCK_QTYを上回った瞬間、エラーメッセージを「受注数が、在庫数を(※超えた個数)個超えています。」と表示して。
- STOCK_QTYがai_sample_stock_itemテーブルのSAFE_QTYを下回った瞬間、アラート文を、「在庫数が安全在庫数を下回っています。残り在庫数は(※実際の現在の在庫数)個です。」と表示して。
既に登録されている受注数を変更する場合、
- 増えた場合、ai_sample_stock_itemテーブルのSTOCK_QTYからITEM_CODEをキーにして受注数の差を引く。
- 減った場合、ai_sample_stock_itemテーブルのSTOCK_QTYにITEM_CODE(VARCHAR)をキーにして受注数の差を足す。
- 受注数がSTOCK_QTYよりも上回った際は、エラーメッセージを表示。
- STOCK_QTYがai_sample_stock_itemテーブルのSAFE_QTYを下回った場合アラート文を表示。
----------------------------------------------
生成AIボットに指示をする画面のイメージ
AIが返答してきた画面のイメージ
AIが生成したプログラムコードにはコピー用ボタンが付いています。このボタンをクリックすると、コードがクリップボードにコピーされます。コピーしたコードは、ブロック設定>詳細設定>JavaScript(処理前)に張り付けて使用します。
生成されたコード:
おわりに
生成されたコードについては、コード下部に簡単な解説が表示されます。さらに詳しい解説が必要な場合は、「コードの詳しい解説をして」などとAIに入力することで、より詳細な説明を受けることができます。
!++++
併せて、以下の資料もご活用ください。
- JavaScriptエンジン コードサンプル
URL: https://dev.talon.jp/manual/html/010_JavaScriptEnginSample_ja/index.html - JavaScriptエンジン チュートリアル
URL: https://dev.talon.jp/manual/html/011_JavaScriptEnginTutorial_ja/index.html - 機能構築マニュアル - JavaScriptエンジン説明ページ
URL: https://dev.talon.jp/manual/html/007_SettingManual_ja/sectionid__1275.html
!----
生成AIボット(β版)に関するお問い合わせは、以下の連絡先までご連絡ください。
TALON事業部 TALON AI R&Dチーム
E-MAIL:ai-rd@talon.jp