「CELF」とはExcelライクな業務アプリを作成できるノーコード/ローコード開発ツールです。
業務アプリを作成できるので、複数人で入力した大量データの集計などを簡単に実現できるだけでなく、アプリの見た目や操作感がExcelと同じなので現場に馴染みやすいといった特長があります。既存のExcelファイルを取り込むことで業務アプリをつくることもできます。また、APIによって他サービスとシームレスに連携することも可能です。
そこで今回は、CELFのAPIを活用したシステム間連携の一例として、ERPの機能拡張をCELFとASTERIA Warpを使ったカスタマイズのみで実現する方法をご紹介します。これは、ERP本体には手を加えず、必要な追加機能は別のシステムとしていわゆる「Side-by-Side開発」で実装を進める事でシステムの柔軟性を確保する手法です。さらに、それをノーコードツールを主軸に置いて開発することでシステム開発の迅速性を高めることができます。
今回の連携内容は、ERPや生産管理システムとCELFを連携し、フォーキャスト管理(FCST管理)をCELFの機能で実現するイメージとしました。詳細は次の画像の通りです。
そして、その際に必要なデータの連携や加工をASTERIA Warpで行います。なお、今回はERPや生産管理システムと実際に接続する代わりに、予め用意したCSVファイルをそれらから取得したデータとして扱い実装を進めていきます。
図の中で、赤枠となっているERPと生産管理システムからCELFへのデータの登録がASTERIA Warpで自動化する処理になります。ERPからは案件マスター、部材マスター、在庫データを、生産管理システムからは生産実績データを連携します。
そして緑枠の部分はCELFで実装する処理となっています。今回は部材のフォーキャスト管理を行うアプリを用意しました。このアプリではERPから連携されたデータを「FCST管理」シートで参照しながら必要な情報を入力、そのデータを使って将来的な部材の在庫数を算出し「在庫管理」シートで表示します。
それでは、連携処理(フロー)を作成していきましょう。
CELFでは、APIを利用する際に事前準備としてAPIキーの発行とテーブルの公開設定が必要になります。これらの手順に関しては、CELFのヘルプページをご参照ください。
ERPから出力されたデータをCELFの3つのテーブルに登録する連携処理のうち、案件データの連携処理から作成していきます。新規フローを作成し、画像のようにコンポーネントを配置します。
上から2番目のFileGetコンポーネントは、ERPから案件マスターを取得する処理に相当します。ここでは、あらかじめサーバー上に配置しておいたCSVファイルを読み取るように設定しています。
なお、今回使用する案件マスターは、「案件ID, 担当者, 案件名, 開始予定日」の4項目から構成されています。
そのため、FileGetコンポーネントの出力ストリームの型を「CSV」とし、フィールド名は画像のように設定しました。
また今回のCSVファイルにはヘッダーが含まれているため、「読込み開始行」プロパティを「2」としています。
つづいて、3番目に配置したマッパーコンポーネントで、データをCELF側のフォーマットに合わせて加工します。
そのためにデータの登録先となる、CELFの「案件マスター」テーブルを確認します。
ここでは、自動でデータが作成されるカラムを除いた赤枠内の3項目が登録先となります。
そしてこの登録先の情報を参照し、マッパーコンポーネントで出力するデータについて設定します。CELFのヘルプページより、今回行いたいデータの登録では各カラム名から成るjson形式のデータをリクエストボディに使用することが確認できるので、画像のように設定します。
そして今回用意したCSV形式のデータでは、上記で確認した通り4項目が含まれていますが、その内CELF側のテーブルで使用するのは「案件名」「案件ID」「担当者」のみなので、画像のようにマッピングを行います。
そして出力されたデータを下から2番目のRESTコンポーネントで受けとり、APIでCELFのテーブルに登録します。
使用するAPIのリクエストはCELFのヘルプページを確認しながら作成していきます。今回はデータの登録を行うため、パスを基本タブで画像のように入力します。
また今回はパラメーターとヘッダーについても指定する必要があるので、それぞれのタブで指定します。パラメーターについては画像のように企業IDを設定しています。
ヘッダーについてはCELFで発行したAPIキーに加えて、「Content-Type」と「User-Agent」の3つを指定しています。
他のテーブルへデータ登録を行う部分も同様のコンポーネントの配置で作成可能です。各コンポーネントのプロパティをCELF側の設定や、登録に使用するデータに合わせて編集していきます。コンポーネントはまとめてコピーやペーストが行えるため、今回のように類似した部分を複数作成する際はご活用ください。
そしてERPが連携元となる処理については画像のようなフローになりました。
また生産管理システムが連携元となる処理についても同様のコンポーネントの配置を行い、画像のようなフローとなりました。
ここでは完成したフローを実行し、CELFへのデータの反映とアプリの動作を確認します。まずフロー実行前は画像のようにCELFのテーブルにはデータが入っていません。
その後、フローを実行します。
実行後に改めて表示すると、画像のようにデータが登録されていることが確認できます。
そして残り3つのテーブルについても同様に確認します。
最後にアプリが正常に動作することを確認します。
今回用意したアプリは、「FCST管理」シートと「在庫確認」シートから構成されています。いずれもボタンをクリックしてデータの取得や登録を進めていきます。各ボタンの詳細や使用順は画像の通りです。
それでは、CELFのアプリについての動作確認を進めていきましょう。
まずは「FCST管理」シートの「名称取得」ボタンについて確認します。このボタンをクリックする事で「案件名」「使用部材名」列のセルにて、プルダウンで選択肢を表示することが可能になります。以下は「案件名」列を対象にした確認結果となります。
このボタンのクリック前は画像の通りです。
そしてクリック後に改めて確認すると、画像のようにデータの反映が確認できます。
続いて「ID取得」ボタンについて確認します。
クリックすると、画像のように選択した案件名と使用部材名に紐づくそれぞれのIDが表示されます。
そして使用予定数を入力し「登録」ボタンをクリックすることで、「FCST管理」テーブルにデータが登録されます。
このデータと、生産管理システムから連携された各種データにより算出される「予測後在庫数」の計算結果は、「在庫確認」シートの「取得」ボタンを押すと確認できます。
ここではCELFとASTERIA Warpの連携を行い業務の自動化・効率化に成功した事例をご紹介します。
仏壇墓石事業や葬祭事業、生活雑貨・ギフト販売を事業としている株式会社太田屋様ではデータベース管理ソフトを使用したアプリケーションを事業部毎に運用していたため、データの2重入力による人的ミスが懸念されていました。そこで全社で標準化された業務プロセスへ移行し、部門を横断したデータ活用を実現するためにERPを導入しました。そしてERPやPOSシステムが持つデータをリアルタイムで確認するシステムをCELFとASTERIA Warpで作成。各マスターや売上データを自動連携し、大幅な業務効率化を実現しています。
ASTERIA Warp導入の背景や具体的な効果、システム間の概要などはこちらからご確認ください。
今回はASTERIA Warpを使用し、CELFとERPなどの社内システムの連携を実現しました。また連携元となる各システムはそのまま使用し、必要なカスタマイズは全てCELFとASTERIA Warpを使ってノーコードで行っています。今回のような連携を実現することで、業務効率化を素早く簡単に実現できます。
2024年にアステリアに入社。アステリア製品を対象に、コンテンツの作成やプリセールス業務を行っています。
Related Posts
ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。
アステリア製品デベロッパー同士をつなげ、技術情報の共有やちょっとしたの疑問解決の場とすることを目的としたコミュニティです。