Senior ERP連携ガイド SkyPlanner APSによる生産スケジューリング
このガイドでは、パートナーとITチームに向けて、Senior SistemasのSenior ERP(Gestão Empresarial | ERP XT with Senior X)をSkyPlanner APSに接続する方法を解説します。SkyPlannerはSeniorが提供するインターフェースを使い、Senior ERPと双方向に連携します。
- 製造指図(OP)とその工程、工程経路(roteiros)、リソースとリソースセンター、SKU、製品構成、在庫、発注情報を取り込みます。
- OPの各工程の開始・終了予定日時と、各工程に選ばれたリソースをOPに書き戻します。
- 必要に応じて、作業者の時間記録を生産実績(apontamentos de produção)として書き戻します。
- OPの工程ステータスが変わるとSenior X Events HubがSkyPlannerに通知し、スケジュールが変わるとSkyPlannerのWebhookがその都度変更を送信します。
SkyPlannerチームが導入支援の中で、お客様のSenior ERP環境に合わせて連携を設定し、本稼働後もサポートします。このガイドは、その作業に参加するパートナーや開発者、またはSkyPlannerの公開REST API(APIリファレンス)を使って独自に開発したい方を対象としています。
Senior ERPの連携インターフェース
ERP XTはハイブリッド構成です。Seniorのドキュメントでは、Gestão Empresarial XTについて “becomes a hybrid system: an on-premises (local) system with integration of cloud solutions”(クラウドソリューションと連携するオンプレミスのハイブリッドシステムになる)と説明しています(Seniorドキュメント、翻訳引用)。生産スケジューラは、Seniorの三つのインターフェースを利用します。
- G5 web services(SOAP)。Seniorサーバー上で動作するサービスで、モジュールごとに名前が付けられています(com.senior.g5.co.<module>…)。各サービスには、sapiens_Sync、sapiens_Async、sapiens_Scheduledという三種類のWSDLが公開されています。生産関連のサービスには、com.senior.g5.co.mpr.pcp.ordemproducaoがあります。Seniorのドキュメントでは、このサービスはERP画面と同様に “calls the same production order generation routine”(同じ製造指図生成ルーチンを呼び出す)と説明されています(Seniorドキュメント、翻訳引用)。このほか、製品(com.senior.g5.co.ger.cad.produto)や生産実績報告のサービスがあります。
- Senior X Platform REST APIs。api.senior.com.brで提供され、製品や受注など、SeniorがSenior X上で公開するERP領域にアクセスできます(Seniorドキュメント)。
- Events HubのWebhook。Senior XのTecnologia > Customização > Events Hub > Webhooksで作成します。OPの工程ステータスが変わると、Manufacturingがイベントerp_man/pcp_programacaocontrole/orderProductionStageChangeStatusを発行します(Seniorドキュメント)。
認証とアクセス
- Senior X Platform。連携処理では、ユーザーをuser@tenantの形式で指定し、platform.senior.com.brの/t/senior.com.br/bridge/1.0/rest/platform/authentication/actions/LoginにPOSTしてログインします。レスポンスにはBearerアクセストークンとリフレッシュトークンが含まれます。アプリケーションキーを使う場合は、loginWithKey(access key、secret、tenant)でログインできます。REST呼び出しにはauthorizationヘッダーと、接続元アプリケーションを識別するclient_idヘッダーを付けます。このアプリケーションはSenior APIポータルに登録し、ERPのロールに紐付けます。
- G5 web services。呼び出しにはuser、password、encryptionの各パラメーターを含めます。Senior Xのトークンを使う場合は、passwordの代わりにトークンを渡します(Seniorドキュメント)。
- 権限。連携専用のSeniorユーザーを作成し、連携処理で読み書きするPCP、設計、在庫、購買のデータへのアクセス権を付与します。
SkyPlanner側のREST APIは、Authorization-TokenヘッダーにAPIトークンを指定して認証します(SkyPlanner Settings > API)。仕様はSwagger/OpenAPIで公開されています。最初の呼び出し手順は、連携チュートリアルで確認できます。
イベントとポーリング
Events Hubは製造現場の状況を伝えます。OPの工程ステータスが変わるとWebhookがSkyPlannerに届き、スケジュールが更新されます。それ以外のデータはポーリングで取得します。確定済み・リリース済みのOPと直近の変更に絞って読み込むことで、新たな作業を取り込みます。頻度は工場ごとに設定し、OPは数分ごと、在庫は毎時などとします。
SkyPlannerは状態やスケジュールが変わるとWebhookを送信するため、書き戻しはイベント駆動で行われます。
データの対応付け
| Senior ERPのオブジェクト(インターフェース) | SkyPlannerのオブジェクト | 連携方向 | 連携頻度 |
|---|---|---|---|
| SKU:produtoとderivação、計量単位(G5 web servicesまたはSenior Xのエンティティ) | 製品と資材 | Senior → SkyPlanner | 初回取り込み後、ポーリング |
| 製品構成(engenharia do SKU) | 製品構成、子製品、製品ごとの資材 | Senior → SkyPlanner | 初回取り込み後、変更時 |
| estágiosを含むRoteiro:工程順序、前工程への依存関係 | 順序付けられた工程 | Senior → SkyPlanner | 初回取り込み後、変更時 |
| Recurso:Tempo processo、Tempo setup、Tempo carga e descarga、Tempo transferência、Fator de carga | リソース、所要時間、段取り・後片付け時間、稼働効率 | Senior → SkyPlanner | 初回取り込み後はまれに更新 |
| リソースセンター(Centro de recurso) | リソースグループ | Senior → SkyPlanner | 初回取り込み後、更新はまれ |
| Calendário:Feriados、シフト別の生産カレンダー | シフトと非稼働日 | Senior → SkyPlanner | 毎日同期、またはSkyPlannerで独自のシフトを管理 |
| Ordens de produção(Firme、Liberada)とその工程・資材 | 指図と作業、その納期と資材所要量 | Senior → SkyPlanner | 数分おきにポーリング |
| OPの工程ステータス(Events HubのorderProductionStageChangeStatus) | 作業の進捗 | Senior → SkyPlanner | Webhookでリアルタイムに反映 |
| SKU別のEstoque | 在庫残高 | Senior → SkyPlanner | 毎時またはスケジューリング実行時にポーリング |
| 納入日を含むOrdens de compra | 発注情報、納入日別の入荷予定資材 | Senior → SkyPlanner | 毎時またはスケジューリング実行時にポーリング |
| OP工程:開始・終了予定日時、リソース | 作業ごとの開始・終了予定日時、割り当てたリソース | SkyPlanner → Senior | スケジュール変更時にSkyPlannerのWebhookで反映 |
| Apontamento de produção:numOrp、codEtg、seqRot、qtdRel、qtdRfg、開始・終了日時 | 時間記録と作業者による実績報告 | SkyPlanner → Senior | 書き戻す場合、実績報告ごとまたはシフトごと |
| Senior ERPにはない項目 | 段取り時間マトリクス、数量制約のあるリソースとしての工具、複数作業者による作業、代替設備・要員 | SkyPlannerで管理 | 導入支援時に設定 |
連携パターン
1. マスタデータの初回取り込み。SKU、製品構成、roteiros、recursos、centros de recurso、生産カレンダーを読み込みます。リソースセンターの対応付けは、意図を明確にして決めてください。四台の設備を持つcentro de recursoは、一つのリソースグループ、または四つのリソースとして扱います。Fator de cargaはSkyPlannerのリソースの稼働効率かシフトのいずれかに反映し、両方には反映しません。
2. OPの同期。FirmeおよびLiberadaのOPを工程・資材とともに読み込み、未完了の発注情報も取得します。PlanejadaのOPはMRPによって変更・削除される可能性があるため、先の見通しが必要な場合に限ってスケジューリングします。SkyPlannerは発注済み資材を発注書(PO)の納入日に利用可能とみなし、POがDeliveredになると在庫を更新します。
3. スケジュールの書き戻し。エンジンが工程を配置・移動すると、SkyPlannerのWebhookをきっかけに書き戻しが行われます。各OP工程の開始・終了予定日時と選択されたリソースを設定します。これは、計画担当者がProgramação de produçãoで編集するものと同じフィールドです。使用するWebサービスは、要件定義の段階でSkyPlannerチームがお客様とSeniorパートナーと合意して決めます。
4. 現場からの実績報告。作業者はSkyPlanner Mobile ConfirmationsまたはProduction Timerで作業を記録し、その時間記録によってスケジュールが最新に保たれます。実績時間をSeniorに書き戻すかどうかは、お客様が選択します。書き戻す場合、各報告は生産数量、廃棄数量、開始・終了時刻を含むOP工程のapontamento de produçãoになります。Seniorが生産実績報告を受け付けるのは、LiberadaまたはAndamentoのOPだけです。Fábrica ao Vivoで実績を報告する場合は、代わりにSkyPlannerがEvents Hub経由で進捗を読み取ります。
5. データの管理主体と競合時のルール。稼働開始前に、以下を文書化します。
| データ | 管理主体 |
|---|---|
| SKU、製品構成、roteiros、OPの数量とステータス | Senior ERP |
| 工程順序、開始・終了時刻、リソースの割り当て | SkyPlanner |
| 段取り時間マトリクス、工具・作業者の要件、代替リソース | SkyPlanner |
| 生産カレンダーとシフト | 要件定義で選ぶ一つのシステム |
| 生産実績(Apontamentos)、在庫移動、原価計算 | Senior ERPで管理し、直接入力またはSkyPlannerの時間記録から登録 |
工程日程の書き込み元は一つに決めてください。計画担当者が引き続きProgramação de produçãoやガントチャートで同じOPの順序を設定する場合は、どのOPをSkyPlannerの管理対象にするか合意しておきます。
一般的な導入手順
通常、導入支援の開始から数週間以内に実装が完了します。その前に、SeniorからCSVまたはExcelで出力したリソース、roteiros、未完了のOPを使い、30日間の無料トライアルでスケジュールを検証してください。
- マッピング。対応表、管理責任のルール、同期頻度、apontamentosを書き戻すかどうかを確定します。
- Seniorへのアクセス。連携ユーザーを作成し、Senior APIポータルにアプリケーションを登録して、G5 web servicesとEvents HubのWebhookを有効にします。まず検証環境でテストしてください。
- 初回取り込み。SKU、製品構成、roteiros、recursos、centros de recurso、カレンダーを取り込みます。
- OPと発注情報の同期。フィルターとリトライを備えたポーリングに、工程ステータスのWebhookを組み合わせます。
- SkyPlannerでの制約設定。段取り時間マトリクス、工具、作業ごとの作業者数、代替の機械や人員を設定します。
- スケジュールの書き戻し。SkyPlannerのWebhookから工程の日程とリソースを書き戻し、選択した場合はapontamentosも書き戻します。
- 並行テスト。現行の計画と並行してSkyPlannerを動かし、予定日時を比較してマスタデータを修正します。
- 稼働開始。データの整合性を確認してから、書き戻しを有効にします。
Senior ERP連携で事前に検討すべきこと
- リソースが持つ四種類の時間。Recursoには、加工、段取り、積み降ろし、搬送の時間が記録されています。積み込みや搬送の時間は、設備の稼働時間ではなく、荷扱い時間の場合があります。各時間をどう対応付けるかリソースごとに決めないと、すべての所要時間が誤ったものになります。
- リソースごとに一つの段取り時間。SeniorのTempo setupは単一の値です。導入支援時に、実際の切り替え作業に基づいてSkyPlannerに段取り時間マトリクスを作成します。
- 製品バリエーション。SeniorのSKUは製品とderivaçãoの組み合わせで、derivaçãoによってroteirosが異なる場合があります。SkyPlannerの製品キーにはderivaçãoのコードも含めてください。
- OPのステータス。生産実績報告を受け付けるのは、LiberadaとAndamentoのOPだけです。ステータスの変更はSeniorで行い、SkyPlannerをEvents Hub経由でその変更に追従させます。
- ハイブリッド構成。G5 web servicesはSeniorサーバー上で、Events HubはSenior X上で動作します。両方へのネットワークアクセスを計画してください。
- 数値の書式。SeniorのWebサービスでは、桁区切り記号を含む数値は受け付けられず、小数点にはカンマを使う必要があります。この書式で数値を送信してください。
Senior ERP連携の設定とサポートの担当
- SkyPlannerチームが導入時に設定し、本稼働後もサポートします。対象は、合意したWebサービス、Senior XのAPI、Events HubのWebhookです。Senior ERPの運用は工場ごとに異なるため、各工場の運用に関する知識をここで活かします。
- お客様のSeniorパートナーも参加できます。パートナーはお客様の構成やカスタマイズ、ライセンスを把握しているため、SkyPlannerチームとともに連携用ユーザーの設定、APIポータルへの登録、Webサービスの設定を進められます。
- 自社の開発者による追加開発も可能です。APIトークンを使ってSkyPlannerのREST APIに接続します。APIトークンがあれば開発を始められ、必要に応じてSkyPlannerチームが支援します。技術資料はSkyPlanner連携ドキュメントをご覧ください。
SkyPlannerは5リソースを含めて月額199 €から、月ごとの請求です。連携費用は、お客様の業務プロセスと要件に合わせて、ご利用プランとともに事前にお見積もりします。料金、Senior ERPと連携した生産スケジューリング、Senior ERPのページ、ERP連携一覧をご覧ください。
製造業のお客様によるSkyPlannerの評価
2時間毎週の作業時間を削減
「SkyPlannerによって、当社の生産計画はExcelの表計算からリアルタイムの生産最適化へと変わりました。」
Kalle Kalliomäki、サプライチェーンスペシャリスト
UTU · 配電盤・開閉装置
生産計画にかかる作業時間を毎週2時間削減し、新しい作業順序も数秒でラインに届くようになりました。
+90%生産効率が向上
「生産効率が90%向上しました。」
Abdul Rucyinga、IT部門責任者
Laboratory & Allied · 医薬品製造
生産効率が90%向上し、全リソースを対象に三か月分の最適化された計画を30分未満で作成できるようになりました。
数1,000件の製造指示を自動でスケジューリング
「生産をこれまでとは違う形で管理できるようになり、生産能力の把握もまったく違うレベルになりました。」
Hannu Ryynänen、CEO
Mamec · 産業用ミキサー、ポンプ、ハイテク製品の受託製造
数千件の製造指示を自動でスケジューリングし、組織全体で生産状況をリアルタイムに把握しています。
減少材料不足による生産停止
「SkyPlannerの価値は、日々の業務で役立つツールであることです。特に納期の設定に役立っています。」
Tommi Männistö、生産計画マネージャー
Eskomatic · 受託機械加工
負荷の割り付けを自動化したことで納期の精度が上がり、材料不足による生産停止も大幅に減少しました。
よくある質問
Senior ERPには製造指示用のAPIがありますか?
はい。G5のWebサービスcom.senior.g5.co.mpr.pcp.ordemproducaoは、ERP画面と同じ処理でOPを生成します。製品や生産実績の報告には、ほかのG5サービスが対応しています。さらにSenior X Platformでは、BearerトークンでログインするREST APIとEvents HubのWebhookを利用できます。
Senior ERPはWebhookに対応していますか?
はい。Senior X Events HubはWebhookを送信します。OPの工程のステータスが変わった際に送信されるorderProductionStageChangeStatusもその一つです。SkyPlannerはこれを使って製造現場の進捗をリアルタイムに把握し、SkyPlanner側のWebhookでスケジュールの変更をSenior ERPに返します。
計画日時はどのようにSenior ERPに書き戻されますか?
SkyPlannerは、OPの各工程の開始予定日時と終了予定日時、および割り当てるリソースを設定します。これらは、計画担当者がProgramação de produçãoで編集する項目と同じです。スケジュールが変わるたびに、SkyPlannerのWebhookを起点として書き戻しが実行されます。書き戻しには、導入時の要件定義でSkyPlannerチームがお客様のSenior環境に合わせて設定した経路を使います。
Senior XとERP XTでも連携できますか?
はい。ERP XTはお客様のサーバー上で稼働し、クラウドサービスはSenior X上で動作します。連携には、サーバー上のG5 Webサービスと、クラウド上のSenior XのAPIおよびEvents Hubを使います。