If it is required to count even those locations which are empty (systematically), it can be done by configuring "Put Location on count even if No Inventory" flag in count strategy.
In this case ("Put Location on count even if No inventory" flag is checked), system will not check the inventory (getNodeInventory API will not be called). Count criteria is used to determine the task type. System will blindly check all eligible locations and proceed ahead to create the tasks for them.
(All the eligible locations of the zones which are not virtual/intransit etc will be checked and the count tasks will be created for them. Or the if the volume/no of locations is very high, releaseCountRequest API can time out and not create any tasks at all.)
In some cases where inventory is present physically at the location, but not present in the system; task cannot be created for such locations if we go by checking the system inventory and creating count task based on that. To handle such scenarios where location is empty according to system but actually location is not empty "Put Location on count even if No inventory" flag is provided as a handle.
Essentially this means, for a zone count can be done based on system inventory or actual location inventory.
To count based on system inventory, "Put Location on count even if No inventory" flag should NOT be checked. For what ever count criteria passed, inventory will be retrieved (getNodeInventory API will be called) and count tasks will be created for those locaitons with inventory.
Or count can be based on actual location inventory; in which case "Put Location on count even if No inventory" flag should be checked. Since user has to count and confirm the inventory, system will not check the inventory and proceed ahead with creating count tasks for all eligible locations. (getNodeInventory API will not be called in this case).
What if there is a requirement where it is required to count empty locations of a zone (through regular cycle counts) and also count a subset of locations in the same zone based on some specific criteria (like for a receipt no, or a particular item classification etc)?
Creating two count strategies for the same set of zones; one with the flag enabled and one without the flag, will not help here. System can take any of the count strategy.
This requirement can be achieved by creating a new Count Request Type. (Request types available out of the box are: Cycle count, Physical Count, Manual Count). Below steps can be followed.
Create a new count request type.
Create a new count strategy for this custom request type.
Create the count request with this custom request type.
Pass this custom request type while releasing the count request.