Plan Reservations

Create plan reservations to hard allocate supply to demand.

Overview

If there are no reservations, Autoplan will allocate the first supply to the first demand. This should be the preferred approach because it will adjust your plan as supply and demand change, with no additional manual input required. However, at times, it may be useful to reserve supply for a specific plan. There may be certain constraints in your factory that necessitate a specific supply is used on a specific project.

When a plan reservation is in place, Autoplan will allocate that supply to demand from that plan and if there is no demand for that part on that plan, it will not be allocated.

See the video below for an example.

Adding/updating plan reservations

Plan reservations can be added via the inventory interface. Plan reservations can be added via the "Planned for" column:

Clicking "Add Plan reservation" will bring up a modal with options to select the plan and quantity. The quantity will default to the inventory quantity.

Clicking on the column again allows for the plan reservation to be edited or deleted.

API

Please see below for the different mutations and check out the video for more info.

mutation CreatePlanReservation($input: CreatePlanReservationInput!) {
    createPlanReservation(input: $input) {
        planReservation {
            id
            partInventoryId
            planId
            quantity
        }
    }
}
query GetPlanReservations($filters: PlanReservationsInputFilters, $sort: [PlanReservationSortEnum]) {
    planReservations(sort: $sort, filters: $filters) {
        edges {
            node {
                id
                plan {
                    id
                    name
                }
                partInventory {
                    id
                    lotNumber
                    part {
                        partNumber
                        description
                    }
                    runs {
                        id
                    }
                    serialNumber
                }
                quantity
            }
        }
        
    }
}
mutation DeletePlanReservation($id: ID!, $etag: String!) {
    deletePlanReservation(id: $id, etag: $etag) {
        id
    }
}

The input for the deleting the plan reservation will take the following shape:

{
    "id": <id>,
    "etag": <etag>
}

Last updated