Integracje / ERP / Fulcrum
Przewodnik po integracji Fulcrum z SkyPlanner APS do harmonogramowania produkcji
Ten przewodnik pokazuje konsultantom i zespołom IT, jak połączyć Fulcrum (Fulcrum Pro) z SkyPlanner APS. SkyPlanner wymienia dane z Fulcrum w obu kierunkach przez Fulcrum Public API:
- Do SkyPlanner trafiają zlecenia wraz z pozycjami do wyprodukowania i operacjami, marszruty technologiczne pozycji, gniazda produkcyjne, urządzenia, zmiany robocze w działach, przestoje, stany magazynowe i zamówienia zakupu.
- Planowany początek, planowane zakończenie i stanowisko robocze są zapisywane w polach niestandardowych każdej operacji zlecenia.
- Czas pracy operatorów i wykonane ilości są przesyłane z powrotem do Fulcrum jako zapisy timerów i aktualizacje ilości.
- Webhooki SkyPlanner przesyłają zmiany w harmonogramie na bieżąco.
Podczas wdrożenia zespół SkyPlanner dostosowuje integrację do konfiguracji Fulcrum i zapewnia jej wsparcie po uruchomieniu produkcyjnym. Ten przewodnik jest przeznaczony dla konsultantów i programistów, którzy chcą uczestniczyć w tych pracach lub samodzielnie tworzyć rozwiązania oparte na udokumentowanym REST API SkyPlanner (dokumentacja API).
Fulcrum Public API
Fulcrum to jeden produkt chmurowy w architekturze wielodostępnej, więc wszyscy klienci korzystają z tego samego API. Portal dla programistów opisuje je jako publiczne API do „REST API calls directly into your Fulcrum site.” (wywołań REST API bezpośrednio do instancji Fulcrum).
- Specyfikacja. OpenAPI „Fulcrum PublicAPI” v1, do pobrania pod adresem
https://api.fulcrumpro.com/swagger/v1/swagger.json. Fulcrum zaleca wygenerowanie na jej podstawie klienta z typowaniem. Strona History zawiera wszystkie zmiany wraz z datami. - Hosty. Standardowe instancje korzystają z
https://api.fulcrumpro.com. Instancje ITAR używająapi.fulcrumpro.us, a żądania z tokenami ITAR wysyłane do hosta .com otrzymują odpowiedź 401. - Sposób wywoływania. Listy pobiera się przez
POST .../listz filtrem w treści żądania, stronicowaniem za pomocąSkipiTakeoraz sortowaniem przezSort.Field/Sort.Dir. Wiele obiektów obsługuje PUT, a zlecenia także JSON Patch.
Endpointy używane przez integrację do harmonogramowania:
| Obszar | Endpointy |
|---|---|
| Pozycje i marszruty technologiczne | /api/items, /api/items/{itemId}/routing, /routing/operations, /routing/input-items, /routing/input-materials |
| Konfiguracja produkcji | /api/work-centers, /api/equipment, /api/operations, /api/department-shifts, /api/equipment-downtimes |
| Zlecenia | /api/jobs, /api/jobs/{jobId}/items-to-make/{itemToMakeId}/operations, /api/work-orders |
| Materiały | /api/inventory, /api/materials, /api/purchase-orders, /api/reporting/material-requirements/list |
| Hala produkcyjna | /api/job-tracking-timers/start i /stop, /api/timers, .../operations/{operationId}/add-quantity-completed, .../complete |
Na stronie integracji Fulcrum wprost opisano zakres prac: „Every system is a little bit different and requires some configuration.” (Każdy system jest nieco inny i wymaga pewnej konfiguracji). Właśnie tę konfigurację zespół SkyPlanner bierze na siebie podczas wdrożenia.
Uwierzytelnianie
Fulcrum używa tokenu Bearer w nagłówku Authorization. „A public API token can be generated within your fulcrum site via Business Setup -> System Data -> Public Api.” (Token publicznego API można wygenerować w swojej instancji Fulcrum w sekcji Business Setup -> System Data -> Public Api). Każdy token ma nazwę, opis i datę ważności. Można utworzyć dowolną liczbę tokenów, a każdy z nich unieważnić przez usunięcie. Utwórz osobny token dla integracji SkyPlanner i ustaw przypomnienie przed upływem jego ważności.
Po stronie SkyPlanner REST API używa do uwierzytelniania tokenu API w nagłówku Authorization-Token (SkyPlanner Settings > API). Dokumentacja jest dostępna w Swagger/OpenAPI. Samouczek integracji prowadzi przez pierwsze wywołania.
Zdarzenia i cykliczne odpytywanie
Fulcrum obsługuje webhooki konfigurowane przez administratora. Od września 2026 webhooki, które kończą się błędem, są wstrzymywane i ponownie testowane codziennie, zamiast ponawiać próby bez końca. Historia API wymienia zdarzenia takie jak PurchaseOrderUpdated i ItemUpdated.
Integracja odczytuje dane z Fulcrum w następujący sposób:
- Otwarte zlecenia są pobierane co kilka minut z filtrem statusów
schedulediinProgressoraz warunkiemhasIncompleteOperations: true. To filtr zalecany przez Fulcrum, aby uzyskać dane zgodne z jego stroną harmonogramu. - Zamówienia zakupu i stany magazynowe są odczytywane przed każdym przeliczeniem harmonogramu lub po otrzymaniu webhooka
PurchaseOrderUpdated, jeśli jest skonfigurowany. - Pozycje, marszruty technologiczne, urządzenia i zmiany są odczytywane po zmianie danych lub co noc.
W przeciwnym kierunku webhooki SkyPlanner przesyłają zmiany harmonogramu na bieżąco, więc zapis zwrotny jest wyzwalany zdarzeniami.
Mapowanie danych
| Obiekt Fulcrum (endpoint) | Obiekt SkyPlanner | Kierunek | Częstotliwość |
|---|---|---|---|
Item, Materials (/api/items, /api/materials) | Produkty i materiały | Fulcrum → SkyPlanner | Import początkowy, następnie co noc |
Pozycje i materiały wejściowe marszruty technologicznej (/routing/input-items, /input-materials) | Struktura produktu, podprodukty, materiały przypisane do produktu | Fulcrum → SkyPlanner | Import początkowy, następnie po zmianie danych |
Operacje marszruty technologicznej (/routing/operations): setupTime, laborTime, machineTime (stały lub na jednostkę), selectedEquipmentIds | Etapy procesu, czasy przezbrojeń, czasy trwania, dozwolone stanowiska robocze | Fulcrum → SkyPlanner | Import początkowy, następnie po zmianie danych |
Work Center (/api/work-centers) | Grupa stanowisk roboczych | Fulcrum → SkyPlanner | Import początkowy, później sporadycznie |
Equipment (/api/equipment): unlimitedCapacity, canRunUnattended, status | Stanowiska robocze, operacje wsadowe, praca bez nadzoru | Fulcrum → SkyPlanner | Import początkowy, status codziennie |
Department Shifts (/api/department-shifts), Equipment Downtimes | Zmiany i nieobecności | Fulcrum → SkyPlanner | Import początkowy, następnie codziennie |
Job i operacje zlecenia (/api/jobs, .../items-to-make/{id}/operations): priority, productionDueDate, earliestStartDate, wartości szacunkowe | Zamówienia i operacje | Fulcrum → SkyPlanner | Odpytywanie co kilka minut |
| Inventory, Purchase Orders z datami Expected Receive | Zapasy i oczekiwane dostawy materiałów | Fulcrum → SkyPlanner | Przed każdym przeliczeniem harmonogramu |
customFields operacji zlecenia (POST .../operations/{operationId}) | Planowany początek, planowane zakończenie, stanowisko robocze | SkyPlanner → Fulcrum | Po zmianie harmonogramu, przez webhook SkyPlanner |
customFields zlecenia (PUT /api/jobs/{jobId}/custom-fields) | Planowane zakończenie zlecenia | SkyPlanner → Fulcrum | Po zmianie harmonogramu |
Timery rejestrujące pracę nad zleceniem, /api/timers, add-quantity-completed, complete | Zapisy czasu pracy, ilości wykonane i ilości braków | SkyPlanner → Fulcrum | Na bieżąco, gdy operatorzy rejestrują pracę |
| Brak w Fulcrum | Operatorzy wskazani imiennie, macierz czasów przezbrojeń, narzędzia o ograniczonej dostępności, alternatywne stanowiska robocze | Dane utrzymywane w SkyPlanner | Konfiguracja podczas wdrożenia |
Schematy integracji
1. Początkowy import danych podstawowych. Pobierz pozycje, materiały, marszruty technologiczne, gniazda produkcyjne i urządzenia, a następnie zmiany robocze w działach i przestoje. Każde gniazdo produkcyjne Fulcrum staje się w SkyPlanner grupą stanowisk roboczych, do której należą przypisane do niego urządzenia. Urządzenia wybrane dla każdej operacji marszruty wyznaczają jej dozwolone stanowiska robocze. Urządzenia z ustawieniem Unlimited Capacity, takie jak piece i kabiny lakiernicze, są odwzorowywane jako operacje wsadowe.
2. Synchronizacja zamówień. Odczytaj otwarte zlecenia wraz z pozycjami do wyprodukowania i operacjami, a także otwarte zamówienia zakupu i stany magazynowe. SkyPlanner uznaje zamówiony materiał za dostępny w terminie dostawy zamówienia zakupu i aktualizuje zapas, gdy zamówienie otrzyma status Delivered. Przy każdym ponownym przeliczeniu harmonogramu sprawdzane są zapasy i oczekiwane dostawy z zakupów.
3. Zapis zwrotny harmonogramu. Fulcrum samodzielnie oblicza scheduledStartUtc, scheduledEndUtc i scheduledEquipmentId i zwraca te pola tylko do odczytu. Aktualizacja operacji obsługuje customFields. SkyPlanner zapisuje planowany początek, planowane zakończenie i stanowisko robocze w polach niestandardowych każdej operacji zlecenia, a planowane zakończenie zlecenia — w jego polu niestandardowym. Działy sprzedaży i zakupów widzą terminy ze SkyPlanner bezpośrednio w zleceniu w Fulcrum.
4. Potwierdzenia z hali produkcyjnej. Operatorzy rejestrują pracę w SkyPlanner za pomocą Mobile Confirmations, Production Timer lub Quick Log Mode. SkyPlanner przesyła czas do Fulcrum przez /api/job-tracking-timers/start i /stop lub jako zakończony blok czasu przez /api/timers. Ilości są przesyłane przez add-quantity-completed, a końcowa liczba sztuk wraz z brakami — przez complete. Kalkulacja kosztów zleceń w Fulcrum pozostaje aktualna.
5. Zasady odpowiedzialności za dane i rozstrzygania konfliktów. Mechanizm harmonogramowania Fulcrum „dictates the order of operations in Job Tracking.” (narzuca kolejność operacji w Job Tracking). Dlatego dla każdej operacji wybierz jeden kanał przekazywania pracy operatorom: kolejkę operatora w SkyPlanner albo Fulcrum Job Tracking. Spisz zasady przed uruchomieniem produkcyjnym:
| Dane | System odpowiedzialny |
|---|---|
| Kartoteki, marszruty technologiczne, kalkulacje wstępne, zapasy, zakupy, kalkulacja kosztów | Fulcrum |
| Kolejność operacji, terminy rozpoczęcia i zakończenia, przydział stanowisk roboczych | SkyPlanner |
| Operatorzy, macierz czasów przezbrojeń, narzędzia, zasoby alternatywne | SkyPlanner |
| Zmiany i przestoje | Jeden system wybrany na etapie określania zakresu |
| Zarejestrowany czas i wykonane ilości | SkyPlanner, z przesyłaniem do Fulcrum |
Typowe etapy projektu
Wdrożenie zwykle kończy się w ciągu kilku tygodni od rozpoczęcia onboardingu. Wcześniej możesz skorzystać z 30-dniowego bezpłatnego okresu próbnego na własnych danych. Wyeksportuj kartoteki, marszruty technologiczne i otwarte zlecenia z tabel Fulcrum do plików CSV, zaimportuj je i zweryfikuj harmonogram.
Sam projekt obejmuje:
- Token i zakres. Utwórz token Public API i uzgodnij pola niestandardowe do zapisu zwrotnego.
- Mapowanie. Ustal tabelę mapowania, zasady odpowiedzialności za dane i kanał przekazywania pracy operatorom.
- Import początkowy. Kartoteki, materiały, marszruty technologiczne, gniazda produkcyjne, urządzenia, zmiany, przestoje.
- Synchronizacja zamówień i zamówień zakupu. Cykliczne pobieranie zmian w zleceniach oraz synchronizacja zamówień zakupu i zapasów.
- Konfiguracja ograniczeń w SkyPlanner. Operatorzy i ich zmiany, macierz czasów przezbrojeń, narzędzia i alternatywne stanowiska robocze.
- Zapis zwrotny. Pola niestandardowe operacji zleceń i samych zleceń.
- Przesyłanie danych z hali produkcyjnej. Rejestry czasu i ilości trafiają do Fulcrum.
- Testy równoległe i uruchomienie produkcyjne. Uruchom SkyPlanner równolegle z harmonogramem Fulcrum, porównaj terminy, popraw dane podstawowe, a następnie przełącz przydzielanie pracy na SkyPlanner.
Co uwzględnić przy planowaniu integracji z Fulcrum
- Obsada zmian określa dostępność pracowników. Parametr Max Equipment na zmianę w Fulcrum „is usually determined by how many people you have working in a certain area at that time.” (zwykle zależy od liczby osób pracujących w danym obszarze w tym czasie). Konkretnych operatorów i ich zmiany konfiguruje się w SkyPlanner. Ich imiona i nazwiska pochodzą z danych użytkowników w
/api/users. - Operacje są planowane na urządzeniach. Gniazda produkcyjne w Fulcrum to grupy urządzeń, które mogą się wzajemnie zastępować. Zadbaj o prawidłowy dobór urządzeń w marszrucie technologicznej, ponieważ to spośród nich mechanizm harmonogramowania wybiera zasób.
- Zlecenia produkcyjne grupują zadania. Zlecenie produkcyjne grupuje operacje kilku zadań, na przykład w ramach jednego rozkroju. Uruchomienie licznika czasu dla zgrupowanej operacji uruchamia zamiast tego licznik zlecenia produkcyjnego, który obejmuje wszystkie operacje zadań w grupie.
- Ograniczenia rejestrów czasu. Bloki czasu rejestrowane wstecz przez
/api/timers„may not be in the future, older than 30 days, or longer than 7 days.” (nie mogą dotyczyć przyszłości, a ich wiek i długość nie mogą przekraczać podanych limitów). Przesyłaj czas na bieżąco, gdy operatorzy go rejestrują. - Formaty czasu są różne. Zmiany używają czasu lokalnego w formacie HHmm, przestoje i zaplanowane terminy są podawane w UTC, a szacowane czasy operacji — w sekundach.
- Aktualizacja urządzenia zastępuje cały rekord. Żądanie PUT dla urządzenia czyści każde pominięte pole. SkyPlanner tylko odczytuje dane urządzeń — nigdy ich nie zapisuje.
- Instancje ITAR. Użyj hosta
.usi tokenu ITAR.
Integracja z Fulcrum: kto ją konfiguruje i zapewnia wsparcie
Prace obejmują mapowanie działów, gniazd produkcyjnych, urządzeń i marszrut technologicznych oraz konfigurację ograniczeń, których Fulcrum nie przechowuje: konkretnych operatorów, macierzy czasów przezbrojeń, narzędzi i zasobów alternatywnych.
- Zespół SkyPlanner konfiguruje integrację podczas onboardingu i zapewnia wsparcie po uruchomieniu produkcyjnym. Każdy zakład korzysta z Fulcrum inaczej — właśnie na tym etapie wykorzystujemy wiedzę o tych różnicach.
- Integrację może zbudować Twój konsultant Fulcrum lub partner integracyjny. SkyPlanner udostępnia REST API, dokumentację Swagger/OpenAPI i webhooki.
- Twoi programiści również mogą zbudować na tej podstawie integrację. Na początek wystarczy token API, a zespół SkyPlanner pomaga w razie potrzeby. Dokumentację produktu, w tym zamówień zakupu oraz API produktów i materiałów, znajdziesz w dokumentacji SkyPlanner.
Cena SkyPlanner zaczyna się od 199 € miesięcznie za 5 stanowisk roboczych, przy rozliczeniu miesięcznym. Integrację wyceniamy z góry, zgodnie z Twoimi procesami i potrzebami, wraz z wybranym planem. Dzięki temu znasz pełny koszt przed rozpoczęciem prac. Sprawdź cennik i funkcje oraz zobacz porównanie z mechanizmem harmonogramowania Fulcrum w artykule Harmonogramowanie produkcji w Fulcrum z uwzględnieniem dostępnych zdolności produkcyjnych. Informacje ogólne znajdziesz na stronie Fulcrum, a inne systemy ERP — w centrum integracji z ERP.
Opinie producentów o SkyPlanner
2 hoszczędności co tydzień
„Dzięki SkyPlanner przeszliśmy od planowania produkcji w arkuszach Excel do optymalizacji produkcji w czasie rzeczywistym.”
Kalle Kalliomäki, specjalista ds. łańcucha dostaw
UTU · Rozdzielnice elektryczne i aparatura łączeniowa
Planowanie produkcji pozwala zaoszczędzić 2 godziny pracy tygodniowo, a nowa kolejka pracy trafia na linię w kilka sekund.
+90%wzrostu efektywności produkcji
„Efektywność produkcji wzrosła o 90%.”
Abdul Rucyinga, szef IT
Laboratory & Allied · Produkcja farmaceutyczna
Efektywność produkcji wzrosła o 90%, a przygotowanie zoptymalizowanego planu na trzy miesiące dla wszystkich stanowisk roboczych zajmuje mniej niż 30 minut.
99,2%terminowości dostaw
„SkyPlanner ułatwił nam dostrzeganie wąskich gardeł i sprawił, że zarządzanie produkcją stało się bardziej przejrzyste.”
Toni Tuori, kierownik produkcji
Piristeel · Zabezpieczenia dachowe i systemy odprowadzania wody deszczowej
Terminowość dostaw osiągnęła w tym roku 99,2%, a harmonogramowanie pozwala zaoszczędzić do czterech godzin pracy dziennie.
98%terminowości dostaw — wzrost z około 50%
„SkyPlanner odgrywa kluczową rolę w utrzymaniu naszej terminowości dostaw.”
Hannu Lahtinen, dyrektor zarządzający
KJH-Comp · Obróbka blach i produkcja kontraktowa
Terminowość dostaw wzrosła z około 50% do nawet 98%, a harmonogramowaniem zajmuje się teraz jeden kierownik zamiast dwóch.
Najczęściej zadawane pytania
Czy Fulcrum ma API?
Tak. Fulcrum Public API to REST API ze specyfikacją OpenAPI v1. Uwierzytelnianie odbywa się za pomocą tokenu Bearer generowanego w Business Setup > System Data > Public Api. Instancje ITAR korzystają z osobnego hosta .us.
Czy SkyPlanner może zapisać harmonogram z powrotem w Fulcrum?
Tak. Terminy zapisane w harmonogramie Fulcrum są dostępne tylko do odczytu, dlatego SkyPlanner zapisuje planowany początek, koniec i stanowisko robocze w polach niestandardowych każdej operacji zadania, a planowany koniec — w samym zadaniu. Czas pracy operatorów i wykonane ilości są przesyłane z powrotem jako rejestry czasu i aktualizacje ilości.
Czy Fulcrum wysyła zmiany w czasie rzeczywistym?
Fulcrum udostępnia webhooki konfigurowane przez administratora, obsługujące zdarzenia takie jak PurchaseOrderUpdated. Dane otwartych zadań są pobierane co kilka minut z użyciem tego samego filtra, którego Fulcrum używa na stronie harmonogramu. Własne webhooki SkyPlanner wysyłają zmiany harmonogramu na bieżąco.
Kto buduje integrację z Fulcrum?
Zespół SkyPlanner konfiguruje dwukierunkową integrację podczas onboardingu i zapewnia wsparcie po uruchomieniu produkcyjnym. Twój konsultant Fulcrum, partner integracyjny lub Twoi programiści również mogą ją zbudować, korzystając z udokumentowanego REST API SkyPlanner.
Czy możemy przetestować SkyPlanner przed zbudowaniem integracji?
Tak. W 30-dniowym bezpłatnym okresie próbnym możesz korzystać z maksymalnie 20 stanowisk roboczych i importować dane z Fulcrum przez pliki CSV. Karta kredytowa nie jest wymagana. Rozpocznij okres próbny lub porozmawiaj z działem sprzedaży, aby określić zakres integracji.