Purchase Order (PO) API - Lump Sum Line Item Data

Issue/Symptom/Question

We have the need to identify lump sum line items in the data returned from the Penta PO API. 

Applies To

Penta Purchase Order (PO) API 

Resolution/Fix/Answer

You can tell that a PO Line is Unit Price based on the existence of a “UnitPrice” in the detail record. It will not be there for lump sum lines.

In this example, LineNumber 1 is unit price, LineNumber 2 is lump sum.

             "Details": [
                {
                    "PurchaseOrderNumber": "7",
                    "OrganizationUnitId": "10000",
                    "LineNumber": 1,
                    "LineType": "Regular",
                    "Description": "override default address",
                    "JobId": "1299",
                    "CostTypeCode": "F",
                    "Costcode": "200",
                    "AccountNumber": "5025",
                    "Status": "Active",
                    "CommittedAmount": 264,
                    "CommittedUnits": 12,
                    "InvoicedAmount": 0,
                    "InvoicedUnits": 0,
                    "RemainingAmount": 264,
                    "RemainingUnits": 12,
                    "UnitPrice": 22,
                    "AllowedOverrunPercent": 5,
                    "DebitOrganizationUnitId": "10000",
                    "AllowedOverrunAmount": 100,
                    "IsTaxable": false,
                    "TaxAmount": 0,
                    "CompositeRate": 0,
                    "TaxablePercent": 100,
                    "TaxExemptReasonCode": "NA",
                    "AllowedUnitPriceOverrunAmount": 1,
                    "AllowedUnitPriceOverrunPercent": 4,
                    "DistributionType": "Job",
                    "CostTypeProcoreId": "3415776",
                    "UserDefinedFieldsRowId": 59476,
                    "UserDefinedFields": []
                },
                {
                    "PurchaseOrderNumber": "7",
                    "OrganizationUnitId": "10000",
                    "LineNumber": 2,
                    "LineType": "Regular",
                    "Description": "test",
                    "VendorProductId": "23",
                    "JobId": "1299",
                    "CostTypeCode": "F",
                    "Costcode": "888",
                    "AccountNumber": "5025",
                    "Status": "Active",
                    "CommittedAmount": 500,
                    "CommittedUnits": 0,
                    "InvoicedAmount": 0,
                    "InvoicedUnits": 0,
                    "RemainingAmount": 500,
                    "RemainingUnits": 0,
                    "DebitOrganizationUnitId": "10000",
                    "IsTaxable": false,
                    "PurchaseUnitOfMeasure": "LF",
                    "TaxAmount": 0,
                    "CompositeRate": 0,
                    "TaxablePercent": 100,
                    "TaxExemptReasonCode": "NA",
                    "DistributionType": "Job",
                    "CostTypeProcoreId": "3415776",
                    "UserDefinedFieldsRowId": 303828,
                    "UserDefinedFields": []
                }
            ],