/** * Sales-order document-control lifecycle status */ export const SalesOrderOrderStatus = { "DRAFT": "DRAFT", "SUBMITTED": "SUBMITTED", "CONFIRMED": "CONFIRMED", "CANCELLED": "CANCELLED", "CLOSED": "CLOSED" } as const; export type SalesOrderOrderStatus = (typeof SalesOrderOrderStatus)[keyof typeof SalesOrderOrderStatus]; /** * Fulfillment progress derived from fulfilled quantities */ export const SalesOrderFulfillmentStatus = { "NOT_FULFILLED": "NOT_FULFILLED", "PARTIALLY_FULFILLED": "PARTIALLY_FULFILLED", "FULFILLED": "FULFILLED" } as const; export type SalesOrderFulfillmentStatus = (typeof SalesOrderFulfillmentStatus)[keyof typeof SalesOrderFulfillmentStatus]; /** * Billing progress derived from billed quantities */ export const SalesOrderBillingStatus = { "NOT_BILLED": "NOT_BILLED", "PARTIALLY_BILLED": "PARTIALLY_BILLED", "BILLED": "BILLED" } as const; export type SalesOrderBillingStatus = (typeof SalesOrderBillingStatus)[keyof typeof SalesOrderBillingStatus]; /** * Whether the changed field belongs to the SO header or one of its lines */ export const SalesOrderFieldChangeRecordType = { "HEADER": "HEADER", "LINE": "LINE" } as const; export type SalesOrderFieldChangeRecordType = (typeof SalesOrderFieldChangeRecordType)[keyof typeof SalesOrderFieldChangeRecordType]; /** * ADDED, MODIFIED, or REMOVED — describes the nature of the change */ export const SalesOrderFieldChangeChangeKind = { "ADDED": "ADDED", "MODIFIED": "MODIFIED", "REMOVED": "REMOVED" } as const; export type SalesOrderFieldChangeChangeKind = (typeof SalesOrderFieldChangeChangeKind)[keyof typeof SalesOrderFieldChangeChangeKind];