We enhanced the order attribute framework to show and update the attribute values for the cash and carry (C&C) transaction and customer order directly from the point of sale (POS). In the last release, we enhanced the CRT framework to support attributes for different scenarios, but there was no UI available in POS to set the values, and extensions have to build the UI and read and update from CRT manually. With this new feature, developers can configure the attribute panel in the headquarters screen layout designer and access it in POS to set the attribute values for both a C&C transaction and a customer order.
If there are custom scenarios where it is required to capture and show additional data for C&C transaction or customer order, this feature can be used without any additional code. In addition, it can be customized for any additional business logic in CRT or POS. Previously to do this, scenario developers had to be involved and modify Commerce headquarters, CDX, CRT, RS, channel DB, and POS. Now this can be done through a configuration-driven approach, and any business user can do this. To modify the business logic, the developer persona is required.
This initial version supports only the String attribute type, but future versions will support other attribute types. If you want the data to come from the master table, and that data involves complex search logic and core business logic in X++, you should use extension properties.
If you want to add new fields with minimum business logic to C&C transactions, customer orders, or call center orders, and if you want to capture the information in the POS or retail headquarters, use order attributes. Previously, to add a new field to a C&C transaction (transaction header or lines) or a customer order in the POS, you had to create a new extension table in Retail headquarters and the channel database, and then make inline changes to CRT and POS code to handle the various screens and operations. You also had to configure Commerce Data Exchange to synchronize the data between the channel database and Retail headquarters. Customer attributes now let you complete all these actions through configuration without writing any code or creating custom extension tables. (You still need to create the core business logic and the POS UI).
For the full feature details, refer to Order attributes.