929: Configure Total

Test Case #:284

Test Case Name: Configure Total

System: OpenLMIS

Subsystem: blue

Test case designed by: Paulina Borowa

Design Date:07.11.2016

Short description: As an implementer, I want the option to include the "Total" attribute (Y) on the requisition form so that the user can see the summation of beginning balance and quantity received when they are filling out a request form.

                                                                                                                                                   

Pre – conditions:

                                                                                                                                                                  

Step


Action

Expected system response

Comment

1

           Go  on: host/public/#/login.                                                                                                    

                                                                                                                            

                                                 

2

 Select Requisition > Create/Authorize

select program for example Essential Meds and click on Proceed button


3

Check if Total shows correct number (Beginning Balance + Total Received Quantity


4

Check API for configuring Total (Y)

In URL http://10.222.17.205/requisition/api/requisitions/c23daa21-a977-484f-8024-02c8032b3640?access_token=6c63bf66-f01f-4200-a7fb-5fe407cadb4c

Method: PUT

Body:

{

  "id": "c23daa21-a977-484f-8024-02c8032b3640",

  "createdDate": [

    2016,

    11,

    7,

    12,

    18,

    6,

    773000000

  ],

  "requisitionLineItems": [

    {

      "id": "ae139ec3-2420-4509-93ab-a60c8ba40277",

      "orderableProduct": {

        "id": "2400e410-b8dd-4954-b1c0-80d8a8e785fc",

        "productCode": "C1",

        "name": "Acetylsalicylic Acid",

        "programs": [

          {

            "programId": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

            "productId": "2400e410-b8dd-4954-b1c0-80d8a8e785fc",

            "productCategoryId": "6805dd74-ec00-4697-9a5d-5b78414fcaf6",

            "productCategoryDisplayName": "Antibiotics",

            "productCategoryDisplayOrder": 1,

            "active": true,

            "fullSupply": true,

            "displayOrder": 1,

            "maxMonthsOfStock": 1000,

            "dosesPerMonth": 10,

            "value": null

          }

        ]

      },

      "beginningBalance": 14,

      "totalReceivedQuantity": -18,

      "totalLossesAndAdjustments": 0,

      "stockOnHand": null,

      "requestedQuantity": null,

      "totalConsumedQuantity": 0,

      "requestedQuantityExplanation": null,

      "remarks": null,

      "approvedQuantity": null,

      "totalStockoutDays": null,

      "total": null,

      "stockAdjustments": []

    },

    {

      "id": "e283e709-e456-425c-ac53-610f8c8cbcb3",

      "orderableProduct": {

        "id": "c9e65f02-f84f-4ba2-85f7-e2cb6f0989af",

        "productCode": "C4",

        "name": "Streptococcus Pneumoniae Vaccine II",

        "programs": [

          {

            "programId": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

            "productId": "c9e65f02-f84f-4ba2-85f7-e2cb6f0989af",

            "productCategoryId": "16173fd0-f439-4222-931e-91c413a495c3",

            "productCategoryDisplayName": "Vaccines",

            "productCategoryDisplayOrder": 5,

            "active": true,

            "fullSupply": true,

            "displayOrder": 4,

            "maxMonthsOfStock": 30,

            "dosesPerMonth": 1,

            "value": null

          }

        ]

      },

      "beginningBalance": 12,

      "totalReceivedQuantity": 0,

      "totalLossesAndAdjustments": 0,

      "stockOnHand": null,

      "requestedQuantity": null,

      "totalConsumedQuantity": 12,

      "requestedQuantityExplanation": null,

      "remarks": null,

      "approvedQuantity": null,

      "totalStockoutDays": null,

      "total": null,

      "stockAdjustments": []

    }

  ],

  "comments": [],

  "facility": {

    "id": "e6799d64-d10d-4011-b8c2-0e4d4a3f65ce",

    "code": "HC01",

    "name": "Comfort Health Clinic",

    "description": null,

    "active": true,

    "goLiveDate": null,

    "goDownDate": null,

    "comment": null,

    "enabled": true,

    "openLmisAccessible": true,

    "supportedPrograms": [

      {

        "id": "dce17f2e-af3e-40ad-8e00-3496adef44c3",

        "code": "PRG001",

        "name": "Family Planing",

        "description": null,

        "active": true,

        "periodsSkippable": true,

        "showNonFullSupplyTab": null

      },

      {

        "id": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

        "code": "PRG002",

        "name": "Essential Meds",

        "description": null,

        "active": true,

        "periodsSkippable": false,

        "showNonFullSupplyTab": null

      }

    ],

    "geographicZone": {

      "id": "bf2b810b-cdbf-48b2-b569-149b3cf42387",

      "code": "M-So-Bal-Bal",

      "name": "Balaka",

      "level": {

        "id": "90e35999-a64f-4312-ba8f-bc13a1311c75",

        "code": "City",

        "name": null,

        "levelNumber": 4

      },

      "parent": null

    },

    "operator": {

      "id": "9456c3e9-c4a6-4a28-9e08-47ceb16a4121",

      "code": "moh",

      "name": "Ministry of Health"

    },

    "type": {

      "id": "ac1d268b-ce10-455f-bf87-9c667da8f060",

      "code": "HC",

      "name": "Health Center",

      "description": null,

      "displayOrder": 1,

      "active": true

    }

  },

  "program": {

    "id": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

    "code": "PRG002",

    "name": "Essential Meds",

    "description": null,

    "active": true,

    "periodsSkippable": false,

    "showNonFullSupplyTab": null

  },

  "processingPeriod": {

    "id": "c5012ddf-b145-4eee-9640-b2cbf4f2da85",

    "processingSchedule": {

      "id": "057921bd-1841-4748-8523-dbe5ebb58368",

      "code": "SCH002",

      "description": null,

      "modifiedDate": null,

      "name": "Quarterly"

    },

    "name": "Q2",

    "description": null,

    "startDate": [

      2016,

      4,

      1

    ],

    "endDate": [

      2016,

      6,

      30

    ]

  },

  "status": "INITIATED",

  "emergency": false,

  "supplyingFacility": null,

  "supervisoryNode": null

}


Status 200 OK


5

Change value of begining balance and total recived quantity once again and chcecck value of total:

In URL http://10.222.17.205/requisition/api/requisitions/c23daa21-a977-484f-8024-02c8032b3640?access_token=6c63bf66-f01f-4200-a7fb-5fe407cadb4c

Method: PUT

Body

{

  "id": "c23daa21-a977-484f-8024-02c8032b3640",

  "createdDate": [

    2016,

    11,

    7,

    12,

    18,

    6,

    773000000

  ],

  "requisitionLineItems": [

    {

      "id": "ae139ec3-2420-4509-93ab-a60c8ba40277",

      "orderableProduct": {

        "id": "2400e410-b8dd-4954-b1c0-80d8a8e785fc",

        "productCode": "C1",

        "name": "Acetylsalicylic Acid",

        "programs": [

          {

            "programId": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

            "productId": "2400e410-b8dd-4954-b1c0-80d8a8e785fc",

            "productCategoryId": "6805dd74-ec00-4697-9a5d-5b78414fcaf6",

            "productCategoryDisplayName": "Antibiotics",

            "productCategoryDisplayOrder": 1,

            "active": true,

            "fullSupply": true,

            "displayOrder": 1,

            "maxMonthsOfStock": 1000,

            "dosesPerMonth": 10,

            "value": null

          }

        ]

      },

      "beginningBalance": 100,

      "totalReceivedQuantity": 123,

      "totalLossesAndAdjustments": 0,

      "stockOnHand": null,

      "requestedQuantity": null,

      "totalConsumedQuantity": 0,

      "requestedQuantityExplanation": null,

      "remarks": null,

      "approvedQuantity": null,

      "totalStockoutDays": null,

      "total": null,

      "stockAdjustments": []

    },

    {

      "id": "e283e709-e456-425c-ac53-610f8c8cbcb3",

      "orderableProduct": {

        "id": "c9e65f02-f84f-4ba2-85f7-e2cb6f0989af",

        "productCode": "C4",

        "name": "Streptococcus Pneumoniae Vaccine II",

        "programs": [

          {

            "programId": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

            "productId": "c9e65f02-f84f-4ba2-85f7-e2cb6f0989af",

            "productCategoryId": "16173fd0-f439-4222-931e-91c413a495c3",

            "productCategoryDisplayName": "Vaccines",

            "productCategoryDisplayOrder": 5,

            "active": true,

            "fullSupply": true,

            "displayOrder": 4,

            "maxMonthsOfStock": 30,

            "dosesPerMonth": 1,

            "value": null

          }

        ]

      },

      "beginningBalance": 12,

      "totalReceivedQuantity": 0,

      "totalLossesAndAdjustments": 0,

      "stockOnHand": null,

      "requestedQuantity": null,

      "totalConsumedQuantity": 12,

      "requestedQuantityExplanation": null,

      "remarks": null,

      "approvedQuantity": null,

      "totalStockoutDays": null,

      "total": null,

      "stockAdjustments": []

    }

  ],

  "comments": [],

  "facility": {

    "id": "e6799d64-d10d-4011-b8c2-0e4d4a3f65ce",

    "code": "HC01",

    "name": "Comfort Health Clinic",

    "description": null,

    "active": true,

    "goLiveDate": null,

    "goDownDate": null,

    "comment": null,

    "enabled": true,

    "openLmisAccessible": true,

    "supportedPrograms": [

      {

        "id": "dce17f2e-af3e-40ad-8e00-3496adef44c3",

        "code": "PRG001",

        "name": "Family Planing",

        "description": null,

        "active": true,

        "periodsSkippable": true,

        "showNonFullSupplyTab": null

      },

      {

        "id": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

        "code": "PRG002",

        "name": "Essential Meds",

        "description": null,

        "active": true,

        "periodsSkippable": false,

        "showNonFullSupplyTab": null

      }

    ],

    "geographicZone": {

      "id": "bf2b810b-cdbf-48b2-b569-149b3cf42387",

      "code": "M-So-Bal-Bal",

      "name": "Balaka",

      "level": {

        "id": "90e35999-a64f-4312-ba8f-bc13a1311c75",

        "code": "City",

        "name": null,

        "levelNumber": 4

      },

      "parent": null

    },

    "operator": {

      "id": "9456c3e9-c4a6-4a28-9e08-47ceb16a4121",

      "code": "moh",

      "name": "Ministry of Health"

    },

    "type": {

      "id": "ac1d268b-ce10-455f-bf87-9c667da8f060",

      "code": "HC",

      "name": "Health Center",

      "description": null,

      "displayOrder": 1,

      "active": true

    }

  },

  "program": {

    "id": "10845cb9-d365-4aaa-badd-b4fa39c6a26a",

    "code": "PRG002",

    "name": "Essential Meds",

    "description": null,

    "active": true,

    "periodsSkippable": false,

    "showNonFullSupplyTab": null

  },

  "processingPeriod": {

    "id": "c5012ddf-b145-4eee-9640-b2cbf4f2da85",

    "processingSchedule": {

      "id": "057921bd-1841-4748-8523-dbe5ebb58368",

      "code": "SCH002",

      "description": null,

      "modifiedDate": null,

      "name": "Quarterly"

    },

    "name": "Q2",

    "description": null,

    "startDate": [

      2016,

      4,

      1

    ],

    "endDate": [

      2016,

      6,

      30

    ]

  },

  "status": "INITIATED",

  "emergency": false,

  "supplyingFacility": null,

  "supervisoryNode": null

}

Status 200 OK


6

Configure the display order for Total Stockout Days using API. Change the current display order to 3.

In URL

http://10.222.17.205/requisition/api/requisitionTemplates/5a268780-fafd-4243-9551-5c7daa824913?access_token=6ab1c687-2534-4e87-a34c-e945260cadb4

Method PUT

{
  "id": "5a268780-fafd-4243-9551-5c7daa824913",
  "programId": "dce17f2e-af3e-40ad-8e00-3496adef44c3",
  "columnsMap": {
    "beginningBalance": {
      "name": "beginningBalance",
      "label": "Beginning Balance",
      "indicator": "A",
      "displayOrder": 13,
      "isDisplayed": false,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "33b2d2e9-3167-46b0-95d4-1295be9afc22",
        "name": "beginningBalance",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Beginning Balance",
        "indicator": "A",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "totalLossesAndAdjustments": {
      "name": "totalLossesAndAdjustments",
      "label": "Total Losses And Adjustments",
      "indicator": "D",
      "displayOrder": 6,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "cd57f329-f549-4717-882e-ecbf98122c38",
        "name": "totalLossesAndAdjustments",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Losses And Adjustments",
        "indicator": "D",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "totalStockoutDays": {
      "name": "totalStockoutDays",
      "label": "Total Stockout Days",
      "indicator": "X",
      "displayOrder": 3,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "750b9359-c097-4612-8328-d21671f88920",
        "name": "totalStockoutDays",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Stockout Days",
        "indicator": "X",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "productName": {
      "name": "orderableProduct.name",
      "label": "Product",
      "indicator": "N",
      "displayOrder": 2,
      "isDisplayed": true,
      "source": "REFERENCE_DATA",
      "columnDefinition": {
        "id": "e53e80de-fc63-4ecb-b6b2-ef376b34c926",
        "name": "productName",
        "sources": [
          "REFERENCE_DATA"
        ],
        "label": "Product",
        "indicator": "N",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "totalReceivedQuantity": {
      "name": "totalReceivedQuantity",
      "label": "Total Received Quantity",
      "indicator": "B",
      "displayOrder": 4,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "5ba8b72d-277a-4da8-b10a-23f0cda23cb4",
        "name": "totalReceivedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Received Quantity",
        "indicator": "B",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "approvedQuantity": {
      "name": "approvedQuantity",
      "label": "Approved Quantity",
      "indicator": "K",
      "displayOrder": 10,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "a62a5fed-c0b6-4d49-8a96-c631da0d0113",
        "name": "approvedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Approved Quantity",
        "indicator": "K",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "total": {
      "name": "total",
      "label": "Total",
      "indicator": "Y",
      "displayOrder": 3,
      "isDisplayed": true,
      "source": "CALCULATED",
      "columnDefinition": {
        "id": "ef524868-9d0a-11e6-80f5-76304dec7eb7",
        "name": "total",
        "sources": [
          "CALCULATED"
        ],
        "label": "Total",
        "indicator": "Y",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "productCode": {
      "name": "orderableProduct.productCode",
      "label": "Product Code",
      "indicator": "O",
      "displayOrder": 1,
      "isDisplayed": true,
      "source": "REFERENCE_DATA",
      "columnDefinition": {
        "id": "bde01507-3837-47b7-ae08-cec92c0c3cd2",
        "name": "productCode",
        "sources": [
          "REFERENCE_DATA"
        ],
        "label": "Product Code",
        "indicator": "O",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "totalConsumedQuantity": {
      "name": "totalConsumedQuantity",
      "label": "Total Consumed Quantity",
      "indicator": "C",
      "displayOrder": 5,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "9e825396-269d-4873-baa4-89054e2722f4",
        "name": "totalConsumedQuantity",
        "sources": [
          "USER_INPUT",
          "CALCULATED"
        ],
        "label": "Total Consumed Quantity",
        "indicator": "C",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "requestedQuantity": {
      "name": "requestedQuantity",
      "label": "Requested Quantity",
      "indicator": "J",
      "displayOrder": 8,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "4a2e9fd3-1127-4b68-9912-84a5c00f6999",
        "name": "requestedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Requested Quantity",
        "indicator": "J",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "stockOnHand": {
      "name": "stockOnHand",
      "label": "Stock On Hand",
      "indicator": "E",
      "displayOrder": 7,
      "isDisplayed": true,
      "source": "CALCULATED",
      "columnDefinition": {
        "id": "752cda76-0db5-4b6e-bb79-0f531ab78e2c",
        "name": "stockOnHand",
        "sources": [
          "USER_INPUT",
          "CALCULATED"
        ],
        "label": "Stock On Hand",
        "indicator": "E",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "requestedQuantityExplanation": {
      "name": "requestedQuantityExplanation",
      "label": "Requested Quantity Explanation",
      "indicator": "W",
      "displayOrder": 9,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "6b8d331b-a0dd-4a1f-aafb-40e6a72ab9f5",
        "name": "requestedQuantityExplanation",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Requested Quantity Explanation",
        "indicator": "W",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "remarks": {
      "name": "remarks",
      "label": "Remarks",
      "indicator": "L",
      "displayOrder": 11,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "2ed8c74a-f424-4742-bd14-cfbe67b6e7be",
        "name": "remarks",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Remarks",
        "indicator": "L",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    }
  }
}



Disable the Total Stockout Days using API. Set "isDisplayed" to false.

In URL: http://10.222.17.205/requisition/api/requisitionTemplates/5a268780-fafd-4243-9551-5c7daa824913?access_token=6ab1c687-2534-4e87-a34c-e945260cadb4

Method PUT

Body:

{
  "id": "5a268780-fafd-4243-9551-5c7daa824913",
  "programId": "dce17f2e-af3e-40ad-8e00-3496adef44c3",
  "columnsMap": {
    "beginningBalance": {
      "name": "beginningBalance",
      "label": "Beginning Balance",
      "indicator": "A",
      "displayOrder": 13,
      "isDisplayed": false,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "33b2d2e9-3167-46b0-95d4-1295be9afc22",
        "name": "beginningBalance",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Beginning Balance",
        "indicator": "A",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "totalLossesAndAdjustments": {
      "name": "totalLossesAndAdjustments",
      "label": "Total Losses And Adjustments",
      "indicator": "D",
      "displayOrder": 6,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "cd57f329-f549-4717-882e-ecbf98122c38",
        "name": "totalLossesAndAdjustments",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Losses And Adjustments",
        "indicator": "D",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "totalStockoutDays": {
      "name": "totalStockoutDays",
      "label": "Total Stockout Days",
      "indicator": "X",
      "displayOrder": 3,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "750b9359-c097-4612-8328-d21671f88920",
        "name": "totalStockoutDays",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Stockout Days",
        "indicator": "X",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "productName": {
      "name": "orderableProduct.name",
      "label": "Product",
      "indicator": "N",
      "displayOrder": 2,
      "isDisplayed": true,
      "source": "REFERENCE_DATA",
      "columnDefinition": {
        "id": "e53e80de-fc63-4ecb-b6b2-ef376b34c926",
        "name": "productName",
        "sources": [
          "REFERENCE_DATA"
        ],
        "label": "Product",
        "indicator": "N",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "totalReceivedQuantity": {
      "name": "totalReceivedQuantity",
      "label": "Total Received Quantity",
      "indicator": "B",
      "displayOrder": 4,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "5ba8b72d-277a-4da8-b10a-23f0cda23cb4",
        "name": "totalReceivedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Total Received Quantity",
        "indicator": "B",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "approvedQuantity": {
      "name": "approvedQuantity",
      "label": "Approved Quantity",
      "indicator": "K",
      "displayOrder": 10,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "a62a5fed-c0b6-4d49-8a96-c631da0d0113",
        "name": "approvedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Approved Quantity",
        "indicator": "K",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "total": {
      "name": "total",
      "label": "Total",
      "indicator": "Y",
      "displayOrder": 3,
      "isDisplayed": false,
      "source": "CALCULATED",
      "columnDefinition": {
        "id": "ef524868-9d0a-11e6-80f5-76304dec7eb7",
        "name": "total",
        "sources": [
          "CALCULATED"
        ],
        "label": "Total",
        "indicator": "Y",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "productCode": {
      "name": "orderableProduct.productCode",
      "label": "Product Code",
      "indicator": "O",
      "displayOrder": 1,
      "isDisplayed": true,
      "source": "REFERENCE_DATA",
      "columnDefinition": {
        "id": "bde01507-3837-47b7-ae08-cec92c0c3cd2",
        "name": "productCode",
        "sources": [
          "REFERENCE_DATA"
        ],
        "label": "Product Code",
        "indicator": "O",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "totalConsumedQuantity": {
      "name": "totalConsumedQuantity",
      "label": "Total Consumed Quantity",
      "indicator": "C",
      "displayOrder": 5,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "9e825396-269d-4873-baa4-89054e2722f4",
        "name": "totalConsumedQuantity",
        "sources": [
          "USER_INPUT",
          "CALCULATED"
        ],
        "label": "Total Consumed Quantity",
        "indicator": "C",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "requestedQuantity": {
      "name": "requestedQuantity",
      "label": "Requested Quantity",
      "indicator": "J",
      "displayOrder": 8,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "4a2e9fd3-1127-4b68-9912-84a5c00f6999",
        "name": "requestedQuantity",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Requested Quantity",
        "indicator": "J",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "stockOnHand": {
      "name": "stockOnHand",
      "label": "Stock On Hand",
      "indicator": "E",
      "displayOrder": 7,
      "isDisplayed": true,
      "source": "CALCULATED",
      "columnDefinition": {
        "id": "752cda76-0db5-4b6e-bb79-0f531ab78e2c",
        "name": "stockOnHand",
        "sources": [
          "USER_INPUT",
          "CALCULATED"
        ],
        "label": "Stock On Hand",
        "indicator": "E",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "NUMERIC"
      }
    },
    "requestedQuantityExplanation": {
      "name": "requestedQuantityExplanation",
      "label": "Requested Quantity Explanation",
      "indicator": "W",
      "displayOrder": 9,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "6b8d331b-a0dd-4a1f-aafb-40e6a72ab9f5",
        "name": "requestedQuantityExplanation",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Requested Quantity Explanation",
        "indicator": "W",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    },
    "remarks": {
      "name": "remarks",
      "label": "Remarks",
      "indicator": "L",
      "displayOrder": 11,
      "isDisplayed": true,
      "source": "USER_INPUT",
      "columnDefinition": {
        "id": "2ed8c74a-f424-4742-bd14-cfbe67b6e7be",
        "name": "remarks",
        "sources": [
          "USER_INPUT"
        ],
        "label": "Remarks",
        "indicator": "L",
        "mandatory": false,
        "isDisplayRequired": false,
        "canChangeOrder": true,
        "canBeChangedByUser": false,
        "columnType": "TEXT"
      }
    }
  }
}


OpenLMIS: the global initiative for powerful LMIS software