Fulcrum連携ガイド SkyPlanner APSで生産スケジューリングを行うには
このガイドでは、コンサルタントやITチーム向けに、Fulcrum(Fulcrum Pro)とSkyPlanner APSを接続する方法を説明します。SkyPlannerはFulcrum Public APIを通じて、Fulcrumと次のように双方向で連携します。
- 製造対象の品目と工程を含む作業、品目の工順、作業区、設備、部門のシフト、停止時間、在庫、購買発注を取り込みます。
- 各作業の工程にあるカスタムフィールドに、開始予定、終了予定、リソースを書き込みます。
- 作業者の作業時間と完成数量をFulcrumに送り返し、タイマーと数量を更新します。
- SkyPlannerのWebhookが、スケジュールの変更を発生時に通知します。
SkyPlannerチームが導入時にお客様のFulcrum環境に合わせて連携を設定し、本稼働後もサポートします。このガイドは、連携作業に参加するコンサルタントや開発者、または公開されているSkyPlannerのREST API仕様(APIリファレンス)を参照して独自に開発する方を対象としています。
Fulcrum Public API
Fulcrumは単一のマルチテナント型クラウド製品であり、すべてのお客様が同じAPIを利用します。開発者ハブでは、この公開APIについて “REST API calls directly into your Fulcrum site.”(お客様のFulcrumサイトを直接呼び出すREST API)と説明しています。
- 仕様。OpenAPI “Fulcrum PublicAPI” v1は、
https://api.fulcrumpro.com/swagger/v1/swagger.jsonからダウンロードできます。Fulcrumは、この仕様から型付きクライアントを生成することを推奨しています。日付付きのHistoryページに、すべての変更が掲載されています。 - ホスト。標準サイトは
https://api.fulcrumpro.comを使用します。ITARサイトはapi.fulcrumpro.usを使用します。ITARトークンで.comホストにアクセスすると、401が返されます。 - 呼び出し形式。一覧の取得には
POST .../listを使い、リクエストボディでフィルターを指定します。ページングにはSkipとTake、並べ替えにはSort.Field/Sort.Dirを使います。多くのオブジェクトはPUTに対応し、作業はJSON Patchにも対応しています。
スケジューリング連携で使用するエンドポイントは次のとおりです。
| 対象 | エンドポイント |
|---|---|
| 品目と工順 | /api/items, /api/items/{itemId}/routing, /routing/operations, /routing/input-items, /routing/input-materials |
| 製造現場の設定 | /api/work-centers, /api/equipment, /api/operations, /api/department-shifts, /api/equipment-downtimes |
| 作業 | /api/jobs, /api/jobs/{jobId}/items-to-make/{itemToMakeId}/operations, /api/work-orders |
| 資材 | /api/inventory, /api/materials, /api/purchase-orders, /api/reporting/material-requirements/list |
| 製造現場 | /api/job-tracking-timers/startと/stop、/api/timers、.../operations/{operationId}/add-quantity-completed、.../complete |
Fulcrumの連携紹介ページも、必要な作業を明確に説明しています。”Every system is a little bit different and requires some configuration.”(システムはそれぞれ少しずつ異なるため、設定が必要です。)この設定を、導入時にSkyPlannerチームが担当します。
認証
Fulcrumは、AuthorizationヘッダーのBearerトークンで認証します。”A public API token can be generated within your fulcrum site via Business Setup -> System Data -> Public Api.”(公開APIトークンは、FulcrumサイトのBusiness Setup -> System Data -> Public Apiで生成できます。)各トークンには名前、説明、有効期限があります。必要な数だけ作成でき、削除すると無効になります。SkyPlanner連携専用のトークンを用意し、有効期限の前に通知されるようリマインダーを設定してください。
SkyPlanner側のREST APIは、Authorization-Tokenヘッダーに指定したAPIトークンで認証します(SkyPlanner Settings > API)。仕様はSwagger/OpenAPIで公開されています。最初のAPI呼び出しの手順は、連携チュートリアルで確認できます。
イベントとポーリング
FulcrumはWebhookに対応しており、管理者が設定します。2026年9月以降、失敗したWebhookは無期限に再試行されるのではなく、一時停止され、毎日再テストされます。APIのHistoryには、PurchaseOrderUpdatedやItemUpdatedなどのイベントが記載されています。
連携では、次のようにFulcrumからデータを読み取ります。
- 未完了の作業を
scheduledとinProgress、およびhasIncompleteOperations: trueで絞り込み、数分ごとにポーリングします。これは、スケジュール画面と一致するデータを取得するためにFulcrum自身が提示しているフィルターです。 - 購買発注と在庫は、スケジューリングの実行前に毎回取得します。
PurchaseOrderUpdatedのWebhookが設定されている場合は、その受信時に取得します。 - 品目、工順、設備、シフトは、変更時または毎晩取得します。
逆方向では、SkyPlannerのWebhookがスケジュールの変更を発生時に送信するため、書き戻しはイベント駆動で行われます。
データのマッピング
| Fulcrumオブジェクト(エンドポイント) | SkyPlannerオブジェクト | 連携方向 | 頻度 |
|---|---|---|---|
Item、Materials(/api/items、/api/materials) | 製品と資材 | Fulcrum → SkyPlanner | 初回取り込み後、毎晩 |
工順の投入品目と材料(/routing/input-items、/input-materials) | 製品構成、子製品、製品ごとの材料 | Fulcrum → SkyPlanner | 初回取り込み後、変更時に同期 |
工順の工程(/routing/operations):setupTime、laborTime、machineTime(固定または単位数量あたり)、selectedEquipmentIds | 工程、段取り時間、所要時間、使用可能なリソース | Fulcrum → SkyPlanner | 初回取り込み後、変更時に同期 |
Work Center(/api/work-centers) | リソースグループ | Fulcrum → SkyPlanner | 初回取り込み後はまれに同期 |
Equipment(/api/equipment):unlimitedCapacity、canRunUnattended、status | リソース、バッチ作業、無人運転 | Fulcrum → SkyPlanner | 初回取り込み後、ステータスは毎日同期 |
Department Shifts(/api/department-shifts)、Equipment Downtimes | シフトと不在時間 | Fulcrum → SkyPlanner | 初回取り込み後、毎日同期 |
作業とその工程(/api/jobs、.../items-to-make/{id}/operations):priority、productionDueDate、earliestStartDate、見積値 | オーダーと作業 | Fulcrum → SkyPlanner | 数分おきにポーリング |
| 在庫、入荷予定日を含む購買オーダー | 在庫と入荷予定の材料 | Fulcrum → SkyPlanner | スケジューリングの実行前に毎回同期 |
作業工程のcustomFields(POST .../operations/{operationId}) | 開始予定、終了予定、リソース | SkyPlanner → Fulcrum | スケジュール変更時にSkyPlannerのwebhook経由で同期 |
作業のcustomFields(PUT /api/jobs/{jobId}/custom-fields) | 作業の終了予定 | SkyPlanner → Fulcrum | スケジュール変更時に同期 |
作業時間計測タイマー、/api/timers、add-quantity-completed、complete | 作業時間記録、完成数量、廃棄数量 | SkyPlanner → Fulcrum | 作業者が実績を記録するたびに同期 |
| Fulcrumにはなし | 個人別の作業者、段取り時間マトリクス、数量に制約のある工具、代替リソース | SkyPlannerで管理 | 導入時に設定 |
連携パターン
1. マスタデータの初回取り込み。品目、材料、工順、作業区、設備を取得し、続いて部門のシフトと停止時間を取得します。Fulcrumの各作業区は、その配下の設備をメンバーとするSkyPlannerのリソースグループになります。工順の各工程で選択されている設備は、その工程で使用可能なリソースになります。炉や塗装ブースなど、Unlimited Capacityが設定された設備はバッチ作業として扱われます。
2. オーダーの同期。未完了の作業とその製造対象品目・工程に加え、未完了の購買オーダーと在庫を読み込みます。SkyPlannerは、発注済みの材料を購買オーダーの納入日に使用可能とみなし、購買オーダーがDeliveredになると在庫を更新します。スケジュールを再計画するたびに、在庫と入荷予定を確認します。
3. スケジュールの書き戻し。FulcrumはscheduledStartUtc、scheduledEndUtc、scheduledEquipmentIdを自ら計算し、読み取り専用で返します。工程の更新ではcustomFieldsへの書き込みが可能です。SkyPlannerは、各作業工程のカスタムフィールドに開始予定、終了予定、リソースを書き込み、作業のカスタムフィールドにも終了予定を書き込みます。営業担当者と購買担当者は、Fulcrumの作業データでSkyPlannerの予定日を確認できます。
4. 製造現場での実績登録。 作業者はMobile Confirmations、Production Timer、Quick Log Modeを使ってSkyPlannerに作業実績を記録します。SkyPlannerは/api/job-tracking-timers/startと/stopを通じて時間をFulcrumに送信するか、/api/timersを通じて完了した作業時間をまとめて送信します。数量はadd-quantity-completedで、廃棄数量を含む最終数量はcompleteで送信します。Fulcrumの作業原価には常に最新の実績が反映されます。
5. データの管理責任と競合時のルール。 Fulcrumのスケジューラは”dictates the order of operations in Job Tracking.”(Job Trackingでの工程順序を決定します)。そのため、各工程への作業指示は、SkyPlannerの作業者向けキューかFulcrum Job Trackingのどちらかに統一します。本稼働前に、次の管理ルールを文書化してください。
| データ | 管理元 |
|---|---|
| 品目、工順、見積、在庫、購買、原価計算 | Fulcrum |
| 工程順序、開始・終了時刻、リソースの割り当て | SkyPlanner |
| 作業者、段取り時間マトリクス、工具、代替リソース | SkyPlanner |
| シフトと停止時間 | 要件定義で選定した一つのシステム |
| 記録された作業時間と完了数量 | SkyPlannerで管理し、Fulcrumに送信 |
標準的な導入手順
通常、オンボーディング開始から数週間で導入が完了します。その前に、30日間の無料トライアルで自社のデータを使って試せます。Fulcrumの一覧画面から品目、工順、未完了の作業をCSVにエクスポートし、SkyPlannerにインポートしてスケジュールを検証します。
導入プロジェクトでは、次の作業を行います。
- トークンと対象範囲。 Public APIトークンを作成し、書き戻し先のカスタムフィールドを決めます。
- マッピング。 マッピング表、データの管理責任に関するルール、作業指示の経路を確定します。
- 初期データの取り込み。 品目、材料、工順、作業区、設備、シフト、停止時間を取り込みます。
- オーダーと発注書の同期。 作業の差分をポーリングで取得し、発注書と在庫も同期します。
- SkyPlannerでの制約条件の設定。 作業者とそのシフト、段取り時間マトリクス、工具、代替リソースを設定します。
- 書き戻し。 作業とその各工程のカスタムフィールドに書き戻します。
- 製造現場の実績送信。 タイマーと数量のデータをFulcrumに送信します。
- 並行テストと本稼働。 Fulcrumのスケジュールと並行してSkyPlannerを運用し、日程を比較してマスタデータを修正した後、作業指示を切り替えます。
Fulcrum連携で事前に検討する点
- 人員の制約はシフトごとの設備数に反映されます。 FulcrumのシフトごとのMax Equipmentは、”is usually determined by how many people you have working in a certain area at that time.”(通常、その時間帯に対象エリアで働く人数によって決まります)。作業者個人とそのシフトはSkyPlannerで設定します。氏名は
/api/usersのユーザーデータから取得します。 - スケジュールは設備単位で組みます。 Fulcrumの作業区は、相互に代替可能な設備をまとめたものです。工順で選択した設備がエンジンの割り当て候補になるため、正確に設定しておく必要があります。
- 製造指図は複数の作業をまとめます。 製造指図は、ネスティングなどのために複数の作業の工程をまとめるものです。グループ内の工程でタイマーを開始すると、代わりに製造指図のタイマーが開始され、グループ内のすべての作業工程が計測対象になります。
- タイマーの制限。
/api/timersで過去の実績として登録する時間枠は、”may not be in the future, older than 30 days, or longer than 7 days.”(未来の日時は指定できず、さかのぼれる日数と記録する期間にも上限があります)。作業者が時間を記録する都度、送信してください。 - 時刻の形式はデータによって異なります。 シフトには現地時刻のHHmm値を使用し、停止時間と予定日時にはUTCを使用します。工程の見積時間は秒単位で取得します。
- 設備の更新ではレコード全体が置き換わります。 設備へのPUTでは、省略したフィールドがすべてクリアされます。SkyPlannerは設備データの読み取りのみを行い、書き込みは一切行いません。
- ITAR環境。
.usホストとITARトークンを使用します。
Fulcrum連携の設定・サポート担当
部門、作業区、設備、工順のマッピングに加え、Fulcrumが保持しない制約条件も設定します。対象は、作業者個人、段取り時間マトリクス、工具、代替リソースです。
- SkyPlannerチームがオンボーディング中に設定し、本稼働後もサポートします。 Fulcrumの運用方法は工場ごとに異なります。その現場のノウハウを連携設定に反映します。
- 貴社のFulcrumコンサルタントや連携パートナーによる構築も可能です。 SkyPlannerはREST API、Swagger/OpenAPIドキュメント、Webhookを提供します。
- 自社の開発者でも構築できます。 APIトークンがあれば着手でき、必要に応じてSkyPlannerチームが支援します。発注書や製品・材料APIを含む製品ドキュメントは、SkyPlannerドキュメントをご覧ください。
SkyPlannerは5リソースを含めて月額199 €から利用でき、月ごとの請求となります。連携費用は貴社の工程と要件に合わせて、プランとともに事前に見積もるため、開始前に総費用を把握できます。料金、機能をご確認ください。Fulcrum標準スケジューラとの比較は、Fulcrumの生産スケジューリングで紹介しています。概要はFulcrumページ、他のERPについてはERP連携一覧をご覧ください。
製造業のお客様によるSkyPlannerの評価
2時間毎週の作業時間を削減
「SkyPlannerにより、Excelの表で行っていた生産計画が、リアルタイムの生産最適化へと変わりました。」
Kalle Kalliomäki、サプライチェーンスペシャリスト
UTU · 配電盤・開閉装置
生産計画にかかる作業時間を毎週2時間削減し、新しい作業キューを数秒でラインに届けられます。
+90%生産効率
「生産効率が90%向上しました。」
Abdul Rucyinga、IT責任者
Laboratory & Allied · 医薬品製造
生産効率は90%向上し、全リソースを対象とした三か月分の最適化計画を30分未満で作成できます。
99.2%納期遵守率
「SkyPlannerによりボトルネックが見えるようになり、生産管理が明確になりました。」
Toni Tuori、生産部長
Piristeel · 屋根用安全設備・雨水排水システム
今年の納期遵守率は99.2%に達し、スケジューリングにかかる作業時間を一日あたり最大四時間削減しています。
98%納期遵守率が約50%から向上
「SkyPlannerは、当社の納期遵守率を維持するうえで決定的な役割を果たしています。」
Hannu Lahtinen、代表取締役
KJH-Comp · 板金加工・受託製造
納期遵守率は約50%から最高98%まで向上し、以前は二人必要だったスケジューリングを、現在は一人の管理者で行えます。
よくある質問
FulcrumにはAPIがありますか?
はい。Fulcrum Public APIは、OpenAPI v1仕様に対応したREST APIです。Business Setup > System Data > Public Apiで生成するBearerトークンで認証します。ITAR環境では専用の.usホストを使用します。
SkyPlannerからFulcrumにスケジュールを書き戻せますか?
はい。Fulcrum自身が管理する予定日時は読み取り専用のため、SkyPlannerは各作業工程のカスタムフィールドに開始予定、終了予定、リソースを書き込み、作業にも終了予定を書き込みます。作業者の実績時間と完了数量は、タイマーと数量の更新としてFulcrumに送信します。
Fulcrumは変更をリアルタイムでプッシュ通知しますか?
Fulcrumには管理者が設定するWebhookがあり、PurchaseOrderUpdatedなどのイベントに対応しています。未完了の作業は、Fulcrumのスケジュールページと同じフィルターを使って数分ごとにポーリングします。SkyPlanner独自のWebhookは、スケジュールの変更が発生するたびにプッシュ通知します。
Fulcrum連携は誰が構築しますか?
SkyPlannerチームがオンボーディング中に双方向連携を設定し、本稼働後もサポートします。貴社のFulcrumコンサルタント、連携パートナー、自社の開発者が、SkyPlannerのドキュメント化されたREST APIを使って構築することも可能です。
連携を構築する前にSkyPlannerを試せますか?
はい。30日間の無料トライアルでは、FulcrumからCSVをインポートして最大20リソースまで試せます。クレジットカードは不要です。トライアルを開始するか、連携の要件定義について営業担当にご相談ください。