/** * Purchase-order lifecycle status */ export const PurchaseOrderOrderStatus = { "DRAFT": "DRAFT", "SUBMITTED": "SUBMITTED", "ORDERED": "ORDERED", "CANCELLED": "CANCELLED", "CLOSED": "CLOSED" } as const; export type PurchaseOrderOrderStatus = (typeof PurchaseOrderOrderStatus)[keyof typeof PurchaseOrderOrderStatus]; /** * Receipt fulfillment status — set on approval */ export const PurchaseOrderReceiptStatus = { "NOT_RECEIVED": "NOT_RECEIVED", "PARTIALLY_RECEIVED": "PARTIALLY_RECEIVED", "RECEIVED": "RECEIVED" } as const; export type PurchaseOrderReceiptStatus = (typeof PurchaseOrderReceiptStatus)[keyof typeof PurchaseOrderReceiptStatus]; /** * Billing fulfillment status — set on approval */ export const PurchaseOrderBillingStatus = { "NOT_BILLED": "NOT_BILLED", "PARTIALLY_BILLED": "PARTIALLY_BILLED", "BILLED": "BILLED" } as const; export type PurchaseOrderBillingStatus = (typeof PurchaseOrderBillingStatus)[keyof typeof PurchaseOrderBillingStatus]; /** * Whether the changed field belongs to the PO header or one of its lines */ export const PurchaseOrderFieldChangeRecordType = { "HEADER": "HEADER", "LINE": "LINE" } as const; export type PurchaseOrderFieldChangeRecordType = (typeof PurchaseOrderFieldChangeRecordType)[keyof typeof PurchaseOrderFieldChangeRecordType]; /** * ADDED, MODIFIED, or REMOVED — describes the nature of the change */ export const PurchaseOrderFieldChangeChangeKind = { "ADDED": "ADDED", "MODIFIED": "MODIFIED", "REMOVED": "REMOVED" } as const; export type PurchaseOrderFieldChangeChangeKind = (typeof PurchaseOrderFieldChangeChangeKind)[keyof typeof PurchaseOrderFieldChangeChangeKind];