Integrate KanbanBOX with Oracle Fusion Cloud SCM

Integrate KanbanBOX with Oracle Fusion Cloud SCM

Use this recipe to create purchase orders and work orders in Oracle Fusion Cloud Supply Chain & Manufacturing (SCM) when Kanban cards are released in KanbanBOX.

Note: This recipe is available as KanbanBOX — Oracle Fusion Cloud SCM | Manage Replenishment in the Integration Store. Oracle provides this recipe as a sample only. The recipe is meant only for guidance, and is not warranted to be error-free. No support is provided for this recipe.

Overview

This recipe integrates Oracle Fusion Cloud SCM with KanbanBOX (a third-party application). It complements existing supply-chain management capabilities of Oracle Fusion Cloud SCM with additional Kanban-replenishment capability.

This is an application-driven recipe that creates the necessary purchase orders and work orders in Oracle Fusion Cloud Procurement and Oracle Fusion Cloud Manufacturing (components of Oracle Fusion Cloud SCM), respectively, when a Kanban card is released in KanbanBOX. The bin-replenishment requirements in the production line drive the release of Kanban cards in KanbanBOX.

To use the recipe, you must install the recipe package and configure the connections and other resources within the package. And, when you scan a card (or a batch of cards) as released in KanbanBOX, a REST request is sent to Oracle Integration with the necessary cards data to create the corresponding orders. For each card in the request, Oracle Integration creates a purchase order (PO) in Oracle Fusion Cloud Procurement or a work order in Oracle Fusion Cloud Manufacturing, based on the type of request from KanbanBOX. Also, Oracle Integration sends the purchase order and work order information, including status changes, back to KanbanBOX.

The recipe package contains seven integration flows for executing this use case. Initially, a REST request (with necessary data) from KanbanBOX triggers the following two integration flows of the recipe:

When the purchase order and work order are fulfilled, the following two integration flows of the recipe are triggered:

In addition, the Oracle ERP KanbanBOX ErrorHandler integration flow of the recipe blocks the respective Kanban card if any failures are encountered during work order or purchase order creation.

System and Access Requirements

Assumptions

Before You Install the Recipe

You must perform the following configuration tasks on your Oracle Fusion Cloud SCM and KanbanBOX instances in order to successfully run the recipe.

Configure Oracle Fusion Cloud SCM

To access Oracle Fusion Cloud SCM from Oracle Integration and create purchase orders and work orders, you’ll need to perform the following configuration tasks on your Oracle Fusion Cloud SCM instance.

  1. Perform all the base configurations in Oracle Fusion Cloud SCM, including setting up security, access roles, inventory, procurement, manufacturing, and product hub. Here is a list of important base configurations:

    1. Configure descriptive flex-fields in work order and/or purchase requisition, depending on your implementation requirements, for storing the Kanban card identifier.

    2. Optionally, configure a distinct sub-inventory for your Kanban-specific inventory.

    3. Leverage a Blanket Purchase agreement to automatically convert your purchase requisitions for Kanban items into purchase orders.

  2. Create a integration user account on Oracle Fusion Cloud SCM.
    To access Oracle Fusion Cloud SCM from Oracle Integration, you’ll require a separate user account on Oracle Fusion Cloud SCM.

    Log in to the Oracle Fusion Cloud SCM instance as an Administrator and perform the following tasks.

    1. Create a user account for Oracle Integration. Make a note of the user name and password you set for the account. You’ll use the credentials of this user account to connect to Oracle Fusion Cloud SCM from Oracle Integration, using the Oracle ERP Cloud adapter.

    2. Assign the following roles to the user account. See Assign Required Roles to an Integration User.

    3. In addition to the above roles, also assign the following roles and privileges to the account:

      • Accounts Receivable Manager

      • Buyer

      • BuyerGSE

      • Cost Accountant

      • Employee

      • GSE Role for RFSmartAdvanced Procurement Requester

      • Inventory Manager

      • Manufacturing Engineer

      • Order Manager

      • Procurement Application Administrator

      • Procurement Catalog Administrator

      • Procurement Manager

      • Procurement Preparer

      • Procurement Requester

      • Production Operator

      • Production Supervisor

      • Quality Engineer

      • Receiving Agent

      • Supplier Administrator

      • Supplier Manager

      • Supplier Qualification

      • Warehouse Manager

      • Warehouse Operator

      • Warehouse OperatorEmployee

Configure KanbanBOX

To access KanbanBOX from Oracle Integration, you’ll need to perform the following configuration tasks on your KanbanBOX instance.

  1. Obtain the API key associated with your KanbanBOX instance.

  2. Configure the outbound payloads from KanbanBOX. In order to configure this, you’ll require the following information from the Oracle Fusion Cloud SCM instance.

    • Unit of Measurement

    • Customer Number

    • Business Unit

    • Requestor

    • Buyer

    • Delivery Location

    • Organization

    • Part Number

    • Customer Name

    • Supplier Name

    • Supplier Number

Install and Configure the Recipe

On your Oracle Integration instance, install the recipe package to deploy and configure the integrations and associated resources.

  1. On the Oracle Integration home page, scroll to the Accelerators & Recipes section.

  2. Click Search All.

  3. Find the recipe package that you want to install.

  4. Select the package, and then click the Install Install icon icon.

  5. After the package is installed, click the Configure Configure icon icon on the recipe card to configure the resources deployed by the package.

    The Configuration Editor page opens, displaying all the resources of the recipe package. Configure the following resources before you activate and run the recipe.

Configure the Oracle REST OIC API Connection

  1. On the Configuration Editor page, select Oracle REST OIC API Connection, then click Edit Edit icon.
    The connection configuration page appears.

  2. In the Connection Properties section, enter the following details.

    Field Information to Enter
    Connection Type Leave REST API Base URL selected.
    Connection URL Enter the host name of the Oracle Integration instance in which you’ve installed the recipe.
  3. In the Security section, enter the following details.

    Field Information to Enter
    Security Policy Select Basic Authentication.
    Username Enter the user name of the Oracle Integration user account with the Service Invoker role. See System and Access Requirements.
    Password Enter the password of the Oracle Integration user account with the Service Invoker role.
  4. Click Save. If prompted, click Save for a second time.

  5. Click Test to ensure that your connection is successfully configured.
    A confirmation message is displayed if your test is successful.

  6. Click Back Back icon to return to the Configuration Editor page. Click Save again if prompted.

Configure the Oracle REST KanbanBOX Connection

  1. On the Configuration Editor page, select Oracle REST KanbanBOX Connection, then click Edit Edit icon. The connection configuration page appears.

  2. In the Connection Properties section, enter the following details.

    Field Information to Enter
    Connection Type Leave REST API Base URL selected.
    Connection URL Enter the host name of your KanbanBOX instance.
  3. In the Security section, enter the following details.

    Field Information to Enter
    Security Policy Select API Key Based Authentication.
    API Key Enter the API key obtained from the KanbanBOX instance. See Configure KanbanBOX.
  4. Click Save. If prompted, click Save for a second time.

  5. Click Test to ensure that your connection is successfully configured.
    A confirmation message is displayed if your test is successful.

  6. Click Back Back icon to return to the Configuration Editor page. Click Save again if prompted.

Configure the Oracle ERP Cloud Connection KanbanBOX

  1. On the Configuration Editor page, select Oracle ERP Cloud Connection KanbanBOX.

  2. Click Edit Edit icon.
    The connection configuration page appears.

  3. In the Connection Properties section, enter the Oracle Fusion Cloud SCM host name. For example: https://your_domain_name.fa.DC.oraclecloud.com.

  4. In the Security section, enter the following details.

    Field Information to Enter
    Security Policy Select Username Password Token.
    User Name Enter the user name of the account created for Oracle Integration on Oracle Fusion Cloud SCM. See Configure Oracle Fusion Cloud SCM.
    Password Enter the password of the account created for Oracle Integration on Oracle Fusion Cloud SCM.
  5. Click Save. If prompted, click Save for a second time.

  6. Click Test to ensure that your connection is successfully configured.
    A confirmation message is displayed if your test is successful.

  7. Click Back Back icon to return to the Configuration Editor page. Click Save again if prompted.

Configure the Lookup Tables

Edit the lookup tables and enter the necessary values. On the Configuration Editor page, select a lookup table, and click Edit Edit icon.

This recipe package contains the following lookup tables.

Oracle-BRT-ERP_KanbanBOX_WO_Config

This lookup table contains the information needed to create a work order in Oracle Fusion Cloud Manufacturing. The following table provides the description for each parameter:

Name Description
WorkDefinitionCode

The value of the Work Definition code used in the work order creation as configured on the Oracle Fusion Cloud Manufacturing instance.

Example value: ORA_MAIN

Note: Do not modify this value unless the Oracle Fusion Cloud Manufacturing configuration has changed.

WorkOrderStatusCode

The status of the work order created using the integration, which is predefined.

Example value: ORA_RELEASED

Note: Do not modify this value unless the Oracle Fusion Cloud Manufacturing configuration has changed.

ExplosionFlag

The value of the Explosion Flag set while creating the work order as configured on Oracle Fusion Cloud Manufacturing.

Example value: TRUE

Note: Do not modify this value.

KanbanAdmin

The Kanban Admin email ID that must be notified if there are errors while updating KanbanBOX.

Example value: abc@xyz.com

Update this value based on your KanbanBOX configuration.

WONotificationUserName

The user name of the Oracle Fusion Cloud Manufacturing user who receives the Fusion pop-up notifications on work order creation; this value is case -sensitive.

Example value: Terry.Johnson

Update this value based on the configuration in Oracle Fusion Cloud Manufacturing.

TaskCreator

The name of the task creator displayed in the Fusion pop-up notifications for work orders.

Example value: Terry Johnson

Update this value based on the configuration in Oracle Fusion Cloud Manufacturing.

BatchCardLimit

The threshold limit on the number of batch cards to be processed by Oracle Integration in a single Kanban release (via an integration call). Any incoming request having batch cards beyond this number is not processed by Oracle Integration.

Example value: 5

Update this value based on the configuration in Oracle Integration.

OICAdminEmail

The Oracle Integration Admin email ID that must be notified on failures.

Example value: abc@xyz.com

Update this value based on the configuration in Oracle Integration.

Oracle-BRT-ERP_KanbanBOX_PO_Config

This lookup table contains the information required to create a purchase order in Oracle Fusion Cloud Procurement. The following table provides the description for each parameter:

Name Description
ApproverEmail

The email ID for the purchase order approval workflow as configured on Oracle Fusion Cloud Procurement.

Example value: calvin.roth@oraclepdemos.com

Update this value based on the configuration in Oracle Fusion Cloud Procurement.

Description

The description used in the mapping for the Requisition Header information.

Example value: Requisition from KanbanBOX

Update this value based on your requirements.

DocumentStatusCode

The standard value of the Document Status code while creating purchase requisitions as configured on Oracle Fusion Cloud Procurement.

Example value: APPROVED

Note: Do not modify this value.

PreparerEmail

The email ID of the purchase-requisition preparer, which is to be used in the mapping.

Example value: Nash.Lans@oraclepdemos.com

Update this value based on the configuration in Oracle Fusion Cloud Procurement.

DestinationTypeCode

The standard value of the Destination Type code to be used in the mapping while creating purchase requisitions.

Example value: INVENTORY

Note: Do not modify this value.

KanbanAdmin

The Kanban Admin email ID that must be notified if there are errors while updating KanbanBOX.

Example value: abc@xyz.com

Update this value based on your KanbanBOX configuration.

PONotificationUserName

The user name of the procurement manager in Oracle Fusion Cloud Procurement who receives the Fusion pop-up notifications on purchase order creation; this value is case-sensitive.

Example value: nash.lans

Update this value based on the configuration in Oracle Fusion Cloud Procurement.

TaskCreator

The name of the procurement manager (task creator) displayed in the Fusion pop-up notifications for purchase orders.

Example value: Nash Lans

Update this value based on the configuration in Oracle Fusion Cloud Procurement.

OICAdmin

The Oracle Integration Admin email ID that must be notified on failures.

Example value: abc@xyz.com

Update this value based on the configuration in Oracle Integration.

BatchCardLimit

The threshold limit on the number of batch cards to be processed by Oracle Integration in a single Kanban release (via an integration call). Any incoming request having batch cards beyond this number is not processed by Oracle Integration.

Example value: 5

Update this value based on your requirement.

Oracle-BRT-ERP_KanbanBOX_PO_MasterData

This lookup table contains the Requester information that’s used for creating the purchase requisition on Oracle Fusion Cloud Procurement. Update the requester details according to your implementation.

Name Description
RequesterEmail

The email ID of the Requester used to create the purchase requisition.

Example value: kanban.user@oraclepdemos.com

Update this value based on the configuration in Oracle Fusion Cloud Procurement.

Activate and Run the Recipe

After you’ve configured the connections and lookup tables, activate the recipe package and run it.

  1. On the Configuration Editor page, click Activate in the title bar. In the Activate Package dialog, click Activate again.
    A confirmation message is displayed informing that the integrations have been submitted for activation. Refresh the page to view the updated status of the integrations.

  2. Run the recipe.

    1. Obtain the endpoint URLs for the trigger integration flows, namely Oracle KanbanBOX ERP PurchaseOrder Create and Oracle KanbanBOX ERP WorkOrder Create.

      1. On the Configuration Editor page, select an integration flow and click Run Run icon.

      2. On the resulting pop-up dialog, click the Metadata URL link.

      3. From the new tab that opens, copy the Endpoint URL value. This is the integration flow’s endpoint URL.

    2. Log in to your KanbanBOX instance, and configure it to perform the following actions when a Kanban card is released:

      When the recipe receives these POST requests, it invokes the subsidiary flows in the package, creates a corresponding purchase order in Oracle Fusion Cloud Procurement and work order in Oracle Fusion Cloud Manufacturing, and finally sends the numbers of the orders created back to KanbanBOX.
      You can monitor the integration flows triggered as detailed in Step 3.

    3. Log in to Oracle Fusion Cloud Procurement as the Procurement Manager, and verify the purchase requisitions and orders created. In addition, create a purchase-order receipt when a purchase order is fulfilled.

      1. To view the purchase requisitions created, click the Procurement tab on the home page, and then click Purchase Requisitions.

      2. To view the purchase orders created, click the Procurement tab on the home page, and then click Purchase Orders. Note the order numbers generated for specific Kanban cards to later verify them.

      3. To view the purchase-order creation notifications, click the Bell icon in the top-right corner. The notifications display the purchase-order number for each KanbanBox card.

      4. To create a purchase-order receipt when a purchase order is fulfilled:

        • On the home page, click the Procurement tab, and then click My Receipts.

        • On the Receive Items page, select the required purchase order line, and click Receive. (If required, search for a purchase order using its number).

        • On the Create Receipts page, enter the necessary data like quantity, waybill number, and so on, and then click Submit.

        A receipt is created and its number is displayed. This action triggers the Oracle ERP KanbanBOX PurchaseOrder Receipt flow in Oracle Integration, which propagates the receipt status to KanbanBOX.

    4. Log in to Oracle Fusion Cloud Manufacturing as the Manufacturing Plant Manager, and verify the work orders created. In addition, mark a work order complete when it is fulfilled.

      1. To view the work orders created:

        • Click the Supply Chain Execution tab on the home page, and then click Work Execution.

        • On the resulting page, click Tasks on the right pane, and then click Manage Work Orders.

        • On the Manage Work Orders page, search for the required work orders.

      2. To view the work-order creation notifications, click the Bell icon in the top-right corner. The notifications display the work-order number for each KanbanBox card.

      3. To mark a work order complete when it is fulfilled:

      • Click the Supply Chain Execution tab on the home page, and then click Work Execution.

      • On the resulting page, click Tasks on the right pane, and then click Manage Work Orders.

      • On the Manage Work Orders page, click Tasks on the right pane, and then click Review Dispatch List.

      • On the Review Dispatch List page, search for the required work order along with an associated work area (operation).

      • When the work-order row is displayed, expand it and click Quick Complete.
        Similarly, mark all the operations associated with the work order as complete.

      • Click Done.

      The completion action triggers the Oracle ERP KanbanBOX WorkOrder Status flow in Oracle Integration, which propagates the work order status to KanbanBOX.

  3. At any stage while running the recipe, you can monitor the execution of the integration flows in Oracle Integration.

    1. On the Configuration Editor page of the recipe, select any integration flow.

    2. Click Run Run icon, then click Track Instances.

    3. On the Track Instances page, you’ll see the integration flows of the recipe being triggered and executing successfully.

      Note: If there are any failures during work order or purchase order creation, you’ll also see an instance of the Oracle ERP KanbanBOX ErrorHandler integration flow on this page. This integration flow blocks a specific Kanban card if there are any failures associated with it, and sends a detailed block response to KanbanBox.

  4. Finally, log in to your KanbanBOX instance, and check for the order numbers and statuses for each Kanban card.

    On a Kanban card that has been released:

    1. View the purchase order number updated on the card. The number is updated in the field named, order_number_for_customer.

    2. View the status of the Kanban card. It’s set to Full if the purchase order has been received.

    3. View the work order number updated on the card.

    4. View the work order completion status and quantity updated on the card.

Related Documentation

Appendix A: Example Request Payloads

This section provides the example request payloads that must be sent from KanbanBOX to trigger the recipe. Using the payload information provided here, you can test the recipe for readiness in Oracle Integration. See Test REST Adapter Trigger Connection-Based Integrations.

Example: Purchase Requisition Payload

Here’s an example payload to trigger the Oracle KanbanBOX ERP PurchaseOrder Create integration flow of the recipe.

{
  "kanbanbox_params": {
    "batch_cards": [{
      "part_unit_of_measurement": "Ea",
      "kanban_quantity": "1",
      "required_date": "2022-02-28",
      "customer_number": "K Store",
      "last_status_change_date": "2022-02-28",
      "type_of_kanban": "purchase",
      "business_unit": "US5 Business Unit",
      "requestor": "User, KanbanBox",
      "buyer": "Lans, Nash",
      "deliver_to_location": "Chicago 501",
      "kanban_status_name": "released",
      "organization": "501",
      "part_number": "G2A4009",
      "customer_name": "K Store",
      "supplier_name": "Allied Supplies",
      "ekanban_string": "R3GDA9C",
      "supplier_number": "300000230281607"
    }]
  }}

Definition: Purchase Requisition Payload

The following table describes the attributes in the Purchase Requisition payload.

Attribute Name Description
part_unit_of_measurement The unit of measurement that is used to specify the part quantity in Oracle Fusion Cloud Procurement.
required_date The required date for the part as entered in a purchase requisition. This field accepts the current date or a future date.
customer_number This is mapped to the sub-inventory name in Oracle Fusion Cloud Procurement for the purpose of integration.
customer_name This is mapped to the sub-inventory name in Oracle Fusion Cloud Procurement for the purpose of integration.
last_status_change_date The field that provides information about the last-updated status change date. The field is not used or mapped in the recipe.
type_of_kanban The attribute value purchase indicates that a purchase requisition needs to be created. The field is not used or mapped in the recipe.
business_unit The business-unit name from where the purchase requisition is created in Oracle Fusion Cloud Procurement.
requestor The user owning the requisition in Oracle Fusion Cloud Procurement. The field is not used or mapped in the recipe.
buyer The person managing the purchase requisition in Oracle Fusion Cloud Procurement.
deliver_to_location The location to deliver the goods in Oracle Fusion Cloud Procurement.
kanban_status_name The status of the card from the Kanban system. For example, Released. The field is not used or mapped in the recipe.
organization The code for the organization where goods are delivered.
part_number The item number in Oracle Fusion Cloud Procurement.
supplier_name The name of the supplier in Oracle Fusion Cloud Procurement. The field is not used or mapped in the recipe.
ekanban_string The unique card-identifier generated and sent from KanbanBox.
supplier_number The unique identifier representing the supplier in Oracle Fusion Cloud Procurement. The field is not used or mapped in the recipe.

Example: Work Order Payload

Here’s an example payload to trigger the Oracle KanbanBOX ERP WorkOrder Create integration flow of the recipe.

{
  "kanbanbox_params": {
    "batch_cards": [{
      "part_unit_of_measurement": "Ea",
      "kanban_quantity": "40",
      "required_date": "2022-02-26",
      "customer_number": "K Store",
      "last_status_change_date": "2022-02-26",
      "type_of_kanban": "production",
      "kanban_status_name": "released",
      "organization": "501",
      "part_number": "G2A4008",
      "customer_name": "K Store",
      "supplier_name": "Allied Supplies",
      "ekanban_string": "PTA7RT59",
      "supplier_number": "300000230281607"
    }]
  }}

Definition: Work Order Payload

The following table describes the attributes in the Work Order payload.

Attribute Name Description
part_unit_of_measurement The unit of measurement that is used to specify the part quantity in Oracle Fusion Cloud Manufacturing. The field is not used or mapped in the recipe.
kanban_quantity The number of quantities placed to create the work order against the item pre-configured in Oracle Fusion Cloud Manufacturing.
required_date The required date for the part as entered in a work order. This field accepts the current date or a future date.
last_status_change_date The field that provides information about the last-updated status change date. The field is not used or mapped in the recipe.
type_of_kanban The attribute value production indicates that a work order needs to be created.
kanban_status_name The status of the card from the Kanban system. For example, Released. The field is not used or mapped in the recipe.
Organization The code for the organization where goods are delivered.
part_number The item number in Oracle Fusion Cloud Manufacturing.
customer_name This is mapped to the sub-inventory name in Oracle Fusion Cloud Manufacturing for the purpose of integration. The field is not used or mapped in the recipe.
supplier_name The name of the supplier in Oracle Fusion Cloud Manufacturing. The field is not used or mapped in the recipe.
ekanban_string The unique card-identifier generated and sent from KanbanBOX.
supplier_number The unique identifier representing the supplier in Oracle Fusion Cloud Manufacturing. The field is not used or mapped in the recipe.
customer_number This is mapped to the sub-inventory name in Oracle Fusion Cloud Manufacturing for the purpose of integration.