markdowns

Back Office Inventory Features for Version 7

The velocity of new features being shipped in NeXT has really accelerated during the past 3 months.  Most of the work has been centered on our Food and Beverage modules, but plenty of features for Retail have shipped as well. Version 7.26.47 was released on Sunday, November 6, 2011. The full scope of Version 7 of DataWorks' NeXT Back Office Inventory system  is massive, but here is the short list of enhancements and features that I wanted to highlight. Product Form:

  • New Wrapper to separately maintain Retail, Food and Supplies Products.
  • New Menu to Review Archived Products
  • New Lock / Unlock of  Cost and Retail Controls
  • Standardization of Product Attributes to enable control for Retail, Food, Supplies or Global access.
  •  Taxable Purchases setup for Supplies
  • Catch Weight definition for Food
  • Sysco 832 EDI order guide import
  • Vendor Product EDI Linking / Unlinking capacity
  • Vendor Product to Manufacturer product creation.

Purchase Orders:

  • Reusable Templates for Shopping List and Common Reorders grouped by employee access
  • The Ship To Facility was freed from Employee Access rights.
  • Added Search for Outlets allocated on a purchase order(s)
  • Suppress need for Retail Input for Food and Supply vendors
  • Ability to define Catch Weights for One-Step PO's
  • New Internal and External Documents that specify Order, Pack and Weight units
  • Search Option for Input Method (i.e. Manual, Suggested, Requisition, or EDI Import)
  • Email PO to Vendor option

Receiving

  • Catch Weight Input
  • Automatic and Manual Tax Calculation
  • Addition Landed Cost Calculation
  • Suppress Need of Retail Input for Food and Supply Vendors
  • Posting to Accounts payable distribution enhanced to smoothly round to two decimals

Physical Inventory

  • Initialization of Physical Counts HUGE speed increase. Example: 30 minutes now 5 minutes.

Markdowns

  • Enhanced Selection Ability
  • Added Previewer with multiple selector
  • Added Hand held interface for uploads

Requisitions and Fulfillment

  • Default "Work For" Facility by Employee
  • Reusable Templates by Employee Access Group
  • Support for Hand Held Uploads
  • Sort Options for details
  • Debugged Store Specific Requisition Option when From Facility is a Warehouse
  •  Date Needed Always Calculated - not just for Events
  • Allow Fulfillment options to be re-evaluated by Warehouse staff's Employee Access rights
  • Start Fulfillment form with a Find form
  • Loosen  Requisition rules to allow more liberal submitting
  • Changed Transfer Specific Option for Transfer From Facility to be free from Employee Access

Reports

  • Warehouse Location Reports (D013 and D014)
  • Consolidation Report C001,002, and 003 dynamically display number of decimals for fractional food and supplies
  • Detail Sales reports DCOG01-09 compare base, landed and theoretical cost of goods.
  • Barcode label printing  for Warehouse locations
Interfaces
  • Base, Net, Landed, Center of Plate and Theoretical Cost of Goods now saved for historical reporting.
  • MICROS Symophony POS  support
  • Added Zip file options for packaging multiple export files into a fix or unique file name
  • RX30 POS support
  • Book4Time POS Support
  • Version 3.0 of AP and GL exports support single flatten csv file format.
  • Version 3.1 of AP export supports all optional PO User Defined Attributes
General
  • Input for Product No and Description are now "Contains " rather than "Begins With"
  • Verify Barcode export to hand helds for Receiving and  Transfer Ins
  • Sped up access routines associated with adding a new facility

Retail Inventory Control Operations - The 10 Second Rule - Part 1

Retail Inventory control operations have been DataWorks'  focus for the past 24 years. We design systems to assist buyers in creating purchase orders; receivers to process packing slips, auditors to review costs, and controllers to generate accounts payable invoices and credit memos.

One of our design tenets is that user input time on heavily-used-forms is very expensive - so we try to spend our CPU coin wisely.  If we can shave a half a second off a process, that half second gets multiplied by all our end-users doing the same process every single day.  A billion here, a billion there, pretty soon it adds up to whole lot of time for running reports, re-ordering fast movers, or dialing in a pizza.

Notice that our tenet has a condition - "Heavily-Used-Forms". If a form is used to launch a one time process or it is a rarely used configuration option, we don't spend our R&D budget on making the form into a high performance, code-injected hot rod.

Speed to save and process a transaction is of extreme importance. If a transaction takes over 10 seconds to save then the end-user's cranium shifts into idle and the neurons start filling their synaptic gaps with sudoku puzzles and we fail in our efforts to get more data for the price of one transaction.

The receiving transaction is the core of our inventory control operations -  It has a lots of moving parts and it generates a lot of transactional heat. When the receiver clicks on the process button, he or she is kicking off a big assembly line of linear processes:

  1. Accommodate Units of Measure, Currency Rates, Terms Discounts, Freight Charges, Cost Changes and Vendor Allowances
  2. Consider the employee's access rights and privileges
  3. Update Inventory Quantity On Hand, Quantity Received, and Status
  4. Flag an Item for the need to update the Stock Ledger *
  5. Update a Purchase Orders' Quantity On Order and Back Order Status
  6. Calculate Base Cost, Net Cost, and Landed Cost
  7. Update a log for any shifts in cost or retail
  8. If merchandise price tags are needed, generate a Ticket Batch
  9. If a Packing Slip, generate a General Ledger journal entry to book the Asset and PO-Clearing accounts
  10. If an Invoice, generate an Accounts payable Invoice with the appropriate distributions.
  11. If  allocating to more than one outlet, generate one or more Transfer-Outs.
  12. If Transfers are set to process in one step versus two, process one or more Transfer-Ins.

The bad news is this  gymnastic routine takes much longer than 10 seconds to stick. With large receipts of over a 100 SKUs just the calculation of new costs take longer than 10 seconds to execute.

By the way, the one thing that does not occur here is a posting to our Daily Inventory Summary system. Notice the special * above. We set a flag but we don't do any actual work. The summary table is a daily stock ledger that is used to track various pieces of information such as beginning on hand, net sales, discounts, receipts, returns, markdowns and shrink. We decided it would take too long to update the core of our analytical system. And since the stock ledger is not a requirement for daily operations we reasoned that it could wait and run at a later time.

This is actually a clue to our design thinking. Operational events are linear and need to occur in the users'  time frame;  analysis and data crunching are not time sensitive.  Analysis can run a minute, a hour,  a day or even be regenerated a year from now.

So how can we speed up operations but deal will the need for real time information?

That will be the subject of our next post.