Close this search box.

DATASCOPE WMS Cycle Counting Module

In this article, we’ll focus on the cycle counting module within the DATASCOPE WMS. We want to demonstrate the functionality that exists so that you can feel confident changing settings and optimizing the software for your specific environment.

We’ll cover basic cycle counting methods and full bin counts. We then look at both system and warehouse settings, briefly describing what each one does and how to manipulate them. Finally, we’ll talk about reporting within the software and some of the features and limitations.


In the case of a very basic cycle count, live inventory allows for live counting. You can walk out onto the warehouse floor and can count any bin at any point in time. Multiple people can count at once, the system can auto-transfer a pallet and write off anything that wasn’t counted, and any adjustments are applied to both WMS and SYSPRO.

There are 3 core areas in the warehouse where the cycle counting process can change based on the environment you’re working in:

  1. Main racking area: Also called the bulk storage area, this is where pallets are kept in the racks. Each pallet has a unique ID — known as a TrackID — and this is, generally, a fairly uniform, easy area to count.
  2. Block-stacked area: This area has bins containing multiple pallets, each with their own TrackIDs. These pallets are counted slightly differently.
  3. Typical pick-face environment: This area has many bin locations, each with their own stock codes. Only the particular stock code, or limited range of stock codes, that you’ve assigned to a bin is allowed to be stored there. Cycle counting ensures you won’t have a different product inside one of those bins.

As you do the counting, understanding the concept of a counting bin and TrackID is absolutely vital. A TrackID is one level of data lower than SYSPRO can manage. This means that, whereas SYSPRO holds a stock code in a warehouse, perhaps with an associated lot number, as well as a bin location, DATASCOPE holds one level deeper than that. Our software understands that, within the bin, there are different TrackIDs. The TrackID is a unique ID referencing a grouping of products — pallets, drums, large cartons, flow bins, etc. DATASCOPE’s software keeps a history of everything that goes in and out of that unique number.


The purpose of a full bin count is to count multiple pallets in a single bin. When counting bins, SYSPRO doesn’t understand that there can be 2 pallets in a bin containing the same SKU. If you only cycle counted one pallet, you would be writing that stock off the second pallet without even knowing it. The software will tell you about the variance but it won’t tell you why there’s a variance.

A full bin count allows the operator to start a bin, count it, and once everything has been counted, end the bin. The software then does a net check to see if there is any other stock that might have been missed, allowing you to see where the stock is (if it exists), and how it’s going to be written off for the TrackIDs.

Typically, you’d have a bin location for each pallet, making it easy to count. However, for the pallets on the block stack, you would never want to scan a bin location and then count only one pallet in that bin. Chances are, if that same stock code is at the back of the same bin, that stock would be written off. On block stack bins, you’d always want to do a full bin count.

If we’re doing a cycle count on a bin for a product that is serial tracked, DATASCOPE has its own serial tracking module (our system does not support SYSPRO serial tracking). In our 2021 development cycle, we intend on building the first portion of serial tracking which will help manage the SYSPRO serial tracking on the outbound processes only.


There are lots of configuration options that can change the way the software operates, namely either system settings or warehouse settings. We’ll focus on the settings that are the most applicable to the process flow of the system. 


This setting lets you clear the TrackID after posting the cycle count. Imagine a situation where you have a pallet with a lot of stock on it. The software will allow you to scan the TrackID once and post each stock code without having to keep scanning the TrackIDs. You can simply scan the stock code and enter the quantity without having to continue scanning TrackIDs for each SKU.


Our software also allows you to control how many cycle counts appear on the review screen. The approval screen can become cluttered with information if you have lots of people on the floor all posting cycle counts at the same time. The software lets you set a limit on how many counts you’d like to review at a time. No more long load times and no more feeling overwhelmed while reviewing the data.


  1. SYSPRO Reference: Used to help with reporting.
  2. Validate Pick Face SKU: Used for dedicated pick face locations with a specific SKU that lives in the bin and prevents stock from being counted that hasn’t been set up yet.
  3. Lower/Upper-Value Limits: A permission-based setting that puts a limit on how much the operator can accept as a write-on or write off.


These screen settings are more granular than the system settings listed above and make more sense to be configured at a warehouse level:

  1. Auto-Load Details: This allows the software to guide the operator through a particular TrackID. It automatically picks up the first stock code, requests the quantity, posts that quantity, then repeats that process until it’s looped through the entire TrackID and counts everything. 
  2. Show Quantity: This is seldom used and acts as more of an audit, but it would come in handy if you plan on doing full, blind stock counts every so often. For example, you might do a full, blind stock count on all bins one month and then the next two months you would check the quantity of a particular pallet.
  3. Force Full Bin Count: Ensures that all TrackIDs are counted in a bin.
  4. Prompt for Recount: This is a brand new setting that acts as a warning to the operator telling him/her the value entered doesn’t match the current records. The user can then confirm that the count is, in fact, correct.



Our cycle counting scheduler has been completely rebuilt. Released in mid-2020, the scheduler allows you to schedule counts for a specific period of time. You can count by bin, stock code, or by the lot. Each counting method has its own logic but regardless of the counting method you choose, the software provides a number of dynamic filters so you can be more selective and granular about any data you want to schedule.

Scheduling by bin is more straightforward than scheduling by stock codes and lots. You may not know where stock codes exist, so you can’t pre-allocate stock codes in bins that need to be cycle counted upfront when the schedule is built. The stock in those bins may not exist in 6 months when the operator goes in to count them. 

When counting by stock code, we add the stock code into a schedule and the information is stored against that schedule. As soon as the operator actions it on the scanner, the system does a query to find all the locations where that stock exists, loads those records, and then counts them. This process ensures the count is relevant to the time frame when it’s taking place rather than when the schedule was created.


In addition to scheduling counts, there are also triggered counts. During the picking process, when the picker gets to the bin location and sees an obvious issue with the bin he’s picking from, the software will tell him what the quantity is currently and the picker can easily assign that bin to a schedule (it goes into the system as a triggered count, not a scheduled count). Typically, within a big warehouse cycle count team, there would be someone prioritizing triggered counts because trigger counts indicate there’s a problem with a bin and it should be found and resolved as quickly as possible.

Recently we’ve built 2 brand new business objects that can be used to trigger a count. From a third-party application, we can use the Cycle Count Post business object to post a count directly or use the Cycle Count Schedule business object to post a count into the schedule. The new scanner screens are all HTML5, the key benefit of which is that you can use the design kits to add as much logic to the screens as you want.


There are 2 different sites that are currently using these 2 customizations. The first is an intelligent countback where the normal picking screen has been copied. A custom version is created by adding simple scripting logic to count whatever product is left in a bin if it’s under a certain amount. In the background, it calls the Cycle Count Post business object and immediately writes the cycle count.

The second site has been customized for situations where the software picks from a bin that it believes is empty and then prompts the user to confirm this. If the user says it is not actually empty, the Cycle Count Schedule business object gets called automatically and written into the schedule as a trigger count. Someone can then go and count it manually.

There are many more customization options but we encourage our clients to build their own clever logic into their screens to prompt the cycle counts. It’s better to use their own process rather than taking what has already been created for them that they have limited control over.

Hopefully, you found this article insightful. To learn more about the cycle counting module and see all of these features in action, watch the full webinar. We enjoy sharing our knowledge of our software so that our clients can become more self-sufficient and so that our partners have a better understanding of the functionality and logic that exists within the DATASCOPE software. You can find all of our webinars in the Webinars section of our site.

Congratulations your free gift is on its way!!

Registration Submitted Successfully

Your registration has been submitted. We will be in touch with you shortly.

Registration Submitted Successfully

Your registration has been submitted. You should receive an email with your User Name and Password shortly.