Boyum - 'Quick Sales Order Entry'
The 'Quick Entry' sales order functionality was created using Boyum B1 Productivity tools. The sales clerk accesses a 'Quick Entry' button on the business partner master screen. This presents the clerk with a limited list of items for 'quick entry'. The clerk enters the quantity required and Boyum creates the sales order. The Boyum 'Line Loop' and 'While' functions were used in this example.
User view of This function
Items in Program
Quick Sales Order Entry
Create list of 'Quick Sale' items
User enters Quantities
Item Master ButtonUse the Item Placement Tool to create a button on the item master to allow the user to set the item property flag 10 to indicate item is part of the quick entry program.
BP Master ButtonUse the Item Placement Tool to create a button on the business partner master screen to initiate the 'Quick Entry' process.
Click 'Set Property' Button on Item MasterThis B1 Validation is initiated from the click of the 'Set Property' button on the item master. It calls a UF to actually present items to be flagged.
SQL UF to Display Items for SelectThis Universal Function (UF) called by the B1 Validation displays a SQL list of items that are active and saleable and therefore eligible to be flagged as items to be selected as part of the 'Quick Entry' program. NOTE: the first field in the SQL select is 'Editable'.
Validation - Update Item Property 10This B1 Validation is invoked when the user clicks the 'Close' button on the SQL form list after selecting which items are part of the Quick Entry program.
Line Loop to set Property 10The B1 Validation calls a 'Line Loop' UF to set property 10 for the items 'Checked' in the SQL list. The end result is that each selected item has property 10 'checked' in the item master. The SQL condition selects only items 'Checked' by the user on the SQL form.
UF Macro to Set Property 10 for ItemThis UF Macro performs the steps necessary to access the item master for the item selected and update 'Property 10' to 'Checked' (Y).
Clean Up After Line LoopThe last step in the Line Loop is to clean up the forms shown and then call another UF to display the list of items that were selected - as a verification for the user.
List Items With Property 10 SetThis is a simple query to show items flagged as part of the Quick Entry program.
Initiate a 'Quick Order'From the BP Master Screen the user clicks the 'Quick Entry' button to start the sales order create process.
start the Quick EntryThis macro is called when the 'Quick entry' button is clicked. It stores the customer code from the current BP master screen. Then it calls the UF that is a SQL query that lists all of the items with property 10 set.
Enter the Quantity for Each ItemA SQL UF displays all items available for the Quick Entry program. The user can 'Edit' the first field - see the 'Format' portion of the screen. By 'Edit' we mean that the user can enter the quantity of this item required. The default is zero - meaning this item is not being ordered by the customer. There is a 'Close' button at the bottom of the SQL form.
Click 'Close' on the Item Select FormClicking the 'Close' button on the SQL Form initates this B1 Validation which calls a line loop UF to process the sales order.
Line Loop Creates the OrderThe Line Loop processes all SQL items that have the quantity greater than 0. The 'First Pass' of the line loop opens the sales order form and populates a few fields. Then the line loop processes each of the non-zero quantity items. Then the line loop executes another UF to clean up the sales order and open documents.
Initiate the Sales Order
- Calls a UF to check if the 'Availability' check is in use.
- Activates the sales order form
- Sets the customer code from the '@STORE1' variable stored when the Quick Entry button was clicked.
- Sets the PO number
- Creates a remarks saying this was created via the Quick Entry process
- Sets the due date to tomorrow
- Sets the ship via to next day UPS Red. You will need to adjust this to your shipping type codes.
Availability Check FlagThis macro checks to see if the on hand availability check flag is set in Document Settings in SAP. If it is and an entry clerk selects a quantity on the quick entry select screen greater than the available on hand, an SAP screen will appear. Boyum does not have control of this screen so in this macro I turn OFF the availability check flag in order to smoothly process the Quick Entry sales order. When the order is completed, I re-instate this flag.
Line Loop - Item Post to OrderFor each line item in the line loop, the item and the quantity are posted to the last line on the sales order. Then control is returned to the SQL form.
Line Loop - Final ResultThe 'Final Result' of the line loop does cleanup functions. The first thing it does is re-instate the 'Availability Check' flag if it was originally set to 'Y'. If the number of ship to destinations for this customer is greater than 1, the focus on the sales order is set to the 'Ship to' field in the Logistics tab - forcing the clerk to make a selection. If not, the sales order focus remains on the 'Content' tab of the sales order.
While Loop to Reset Property 10An option to 'Reset' property 10 in the item master is provided. When this is invoked, a 'While Loop' is used to loop through the items that currently have property 10 set and reset these to 'N'. Study this macro for how this is used to reset the propery 10.