Accurate Stock Management: Why it should matter

Accurate Stock Management: Why it should matter

Abstract

Inventory management is one of the most critical factors influencing the profitability and efficiency of a retail business. Maintaining accurate stock levels ensures that products are available at the right time and location, reduces loss due to shrinkage or overstocking, and contributes to customer satisfaction. This article explores some of the core stock management principles, types of stock counts, and the role of technology in reducing stock variance and provides calculations used to evaluate discrepancies. Additionally, the article highlights key best practices from peer-reviewed studies on inventory management to give readers a thorough understanding of effective stock control.

The Importance of Stock Variance in Retail

Stock variance, or shrinkage or discrepancy, occurs when differences exist between the actual physical count of products and recorded system values. This discrepancy can arise due to theft, spoilage, administrative errors, or supplier inaccuracies. Accurate stock variance tracking is vital for profitability, inventory turnover and customer satisfaction.

For example, Heese (2020) demonstrates that implementing RFID technology can significantly reduce stock variance and improve profitability. In other words, Reducing shrinkage can directly improve the bottom line. Understanding variance is crucial for accurate reordering and stock replenishment in retail and inventory management, for example, identifying trends and patterns, improving forecast accuracy, optimising inventory levels, and managing costs more effectively. According to Jayaraman et al. (2019), embracing cycle counting leads to fewer disruptions and more accurate stock levels, enhancing turnover rates. As highlighted by Kang and Gershwin (2018), improving visibility and accuracy ensures that products are consistently available to meet customer demand, positively impacting customer experience.

Stock Variance Determination

The calculation used in stock variance percentage is as follows:

Stock Variance(%)=((Quantity Counted−System Quantity​) / System Quantity))×100

For instance, if the system registers 100 units of a product instead of only 90 units tallied during a stocktake, the variance calculation yields -10%.

A negative variance indicates a stock shortfall. However, the shortfall could be due to various reasons, such as potential theft or loss, data entry errors, human error in miscounting during stocktake, stock discrepancies due to returns, and damaged or expired goods. On the other hand, a positive variance may indicate overstocking or a counting error. Factors such as over-reporting inventory due to data entry errors and unaccounted receipts (such as not recording stock when it arrives) may cause the shortfall. Occasionally, this variance may be due to manual operational adjustments effected by the team bypassing the automated routine in the inventory management system (IMS). Another source of IMS inaccuracy is when the business migrates an existing inventory management system to a new one and attempts to rectify the data movements between the systems. The reason is that the process of trueing may take time to verify the various sources of inventory data in parallel to ensure that all the systems are in sync. One particular cause of disparities between such systems is timing issues caused by the different time processes within inventory management and other data sources that affect the inventory numbers that run before complete execution.

Stock Count activities and their purpose

Stock counts, or stocktakes, are regular assessments of current stock levels to match recorded data. The specific type of stock count carried out typically varies based on the retail business’s nature, how often stock moves, and the intricacy of the inventory.

Conducting a Physical Inventory count (PI count) is essential for verifying a business’s actual physical stock of inventory items. It is best practice to perform this count at regular intervals, such as annually, semi-annually, or quarterly, to ensure that the recorded inventory levels in the accounting or inventory management system match the stock on hand. Multiple methods exist for conducting item counts, such as manual counting and using advanced technology like barcode scanners. This process involves creating a detailed list of items and their quantities to verify accuracy with inventory records.

  • Periodic Inventory (PI) Count

This traditional inventory counting method involves physically counting and recording all stock at pre-established intervals, such as annually or quarterly. The periodic inventory count, also known as physical inventory count (PI count), is particularly useful for large-scale retailers, as it allows for a comprehensive assessment of stock levels. However, it can be labour-intensive and disruptive to regular business operations.

This method is typically employed to conduct a thorough inventory review and to recalibrate stock levels at a specific point in time. It is best suited for businesses that do not require real-time or continuous stock updates. While it provides an accurate snapshot of inventory at a fixed moment, it may not be suitable for businesses that need to constantly monitor and adjust their stock levels.

  • Cycle Count

In this method, inventory is counted in portions rotating throughout the year. This allows businesses to continuously check stock without shutting down operations. It involves continuous, smaller stock checks that reduce the disruption of full counts. This method best suits businesses with high transaction volumes or multiple SKUs.

  • Spot Count

Performing a spot count on a specific product or set of products is crucial when there is suspicion of a discrepancy or other issues. This proactive approach is often used after an abnormal transaction or during loss prevention investigations. This targeted count helps to investigate specific discrepancies or high-value items, ensuring accuracy and security for our products.

  • Perpetual Inventory Count

The Perpetual Inventory Count method ensures that stock is consistently updated in real-time through automated systems that promptly adjust records after every transaction, be it a sale, return, or restock. This guarantees sustained accuracy with minimal human intervention, making it an ideal choice for retailers with sophisticated high-tech systems and automated processes. Tokar et al. (2017) studied the cost-effectiveness of combining perpetual inventory systems with traditional physical counts, concluding that such hybrid systems increased accuracy and profitability in retail operations.

  • Scanning Stock Check (SSC)

This method involves using handheld or mobile scanning devices to register stock, enabling faster and more efficient counting without disrupting operations. It reduces human error and accelerates the counting process. It is most effective when used in combination with modern inventory management software.

Best Practices for Stock Management

  1. Implement Regular Cycle Counts**

Jayaraman et al. (2019) discussed the benefits of cycle counting over periodic inventory counts, emphasizing that frequent, smaller counts led to fewer disruptions and more accurate stock levels. Regular cycle counts effectively mitigate the potential for significant discrepancies by continuously monitoring stock levels. Implementing frequent cycle counts promptly identifies errors and minimizes the necessity for extensive periodic inventories.

  1. Invest in Technology

Modern inventory management systems integrating barcodes, RFID, and real-time tracking can significantly improve stock accuracy. Kang and Gershwin (2018) evaluated the role of real-time stock visibility and its impact on stock management accuracy, finding that improved visibility led to a 15% reduction in shrinkage rates. Barcode scanners, handheld devices, and software updating real-time inventory counts should be part of any modern retail operation.

  1. Leverage Automation

Fischer et al. (2020) explored the link between technology adoption and stock accuracy, specifically noting the positive impact of automated counting systems on overall accuracy and loss prevention. Automation reduces the need for manual input, thus minimising errors and improving efficiency. For example, UI Automation can trigger specific actions based on stock discrepancies, such as raising flags for further investigation or automatically adjusting stock levels.

  1. Loss Prevention Protocols

Shrinkage due to theft is a common source of stock variance. Implement loss prevention strategies such as employee training, surveillance systems, and RFID tags to deter theft and catch discrepancies early. Heese (2020) demonstrates that RFID technology can reduce stock variance by improving real-time data accuracy. The study found that RFID-based systems helped businesses achieve a 98% accuracy rate, significantly reducing shrinkage.

  1. Analyse Historical Variances

Maintaining a historical record of stock variances helps identify shrinkage patterns over time. Yin et al. (2021) examined the role of predictive analytics in inventory management, showcasing how machine learning models can forecast stock variance and allow for preemptive correction. By analysing trends, retailers can pinpoint problem areas (such as particular products or store locations) and focus loss prevention efforts accordingly.

Technology and Stock Management: Using Barcode Scanning and UI Automation

As retailers adopt modern technologies, barcode scanning has become critical for speeding up stock counts and improving accuracy. Combined with **UI Automation**, these systems can be configured to trigger specific actions, such as adjusting stock counts or sending alerts when a variance exceeds acceptable thresholds.

How Barcode Scanning Works

When a barcode is scanned, the system automatically records the product information and updates stock counts. This reduces the risk of human error and accelerates the counting process.

Ultimately, the goal is to maintain a stock variance threshold of **1% or lower**, which can be achieved through best practices, automation, and continuous monitoring. Accurate inventory management is not just about counting products—it’s about ensuring that the right products are available in the right place at the right time while minimizing operational costs and losses.

References

  1. Heese, H. (2020). “The Impact of RFID on Retail Inventory Accuracy: A Case Study.” *Journal of Retail and Distribution Management*, 46(2), 150-162.
  2. Jayaraman, K., Luo, Y., & Luo, L. (2019). “Cycle Counting and its Effect on Stock Accuracy: An Empirical Study.” *International Journal of Operations & Production Management*, 39(3), 217-234.
  3. Kang, S., & Gershwin, S. (2018). “Real-time Inventory Visibility: Impacts on Stock Accuracy.” *Production and Operations Management*, 27(9), 1605-1616.
  4. Fischer, M., Suhail, S., & Yu, P. (2020). “The Role of Automated Counting Systems in Inventory Management: A Review.” Journal of Supply Chain Management, 56(4), 45-58.
  5. Tokar, T., Bhattacharya, S., & Raghunathan, S. (2017). “Hybrid Inventory Systems: Integrating Perpetual Inventory with Physical Counts.” International Journal of Production Research, 55(10), 2907-2925.
  6. Yin, R., Liu, X., & Zhang, Y. (2021). “Predictive Analytics in Inventory Management: A Machine Learning Approach.” Operations Research Letters, 49(6), 733-740.
  7. Zhou, H., & Piramuthu, S. (2019). “Blockchain Technology in Inventory Management: Implications for Stock Accuracy.” Journal of Business Research, 105, 418-426.
  8. Ghobadian, A., Gallear, D., & O’Regan, N. (2018). “The Human Factor in Inventory Management: Employee Training and Loss Prevention.” International Journal of Retail & Distribution Management, 46(6), 556-570.

 

 

Adding a new person on Telleion MIS

Adding a new person on Telleion MIS

To add a new person to your school’s information repository through the Telleion platform, follow these steps:

1. Log In to Telleion Software:
Open your web browser and navigate to https://telleiondemo.purplewells.com.
Enter your username and password to log in to the platform.

2. Navigate to the Profiles >> Contact Section:
– Once logged in, locate the main navigation menu. This is usually found on the top of the menu strip.
– Look for an option labeled “Contact. Click on this option to access the people management section.

3. Add a New Person:
– In the contact section, you should see a button or link that says “Add New,” action label. Click on this button.
– A form or data entry screen will appear, prompting you to enter details about the new person.

4. Enter Personal Information:
– Fill out the form with the necessary details. Common fields may include:
– LastName: Full name of the person.
– Ethnicity: Enter or select the person’s ethnicity.
– Main Language Spoken at Home: Specify the primary language spoken by the person at home.
– Contact Information: Include email, phone number, and address details.
– Staff-to-Student Ratio: If applicable, specify the staff-to-student ratio for this person’s class or grade.

5. Save the Information:
– After entering all the required details, review the information to ensure accuracy.
– Click the “Save,” “Submit,” or “Create” button at the bottom of the form to add the new person to the system.

6. Confirmation:
– A confirmation message should appear at the bottom of the screen, indicating that the new person has been successfully added to the system.
– You may also receive an option to view the new person’s profile or go back to the contact section.

Tips for Efficient Data Entry

  • Use Auto-Complete Features: If the platform supports auto-complete or suggestions based on previously entered data, utilize these features to speed up the process.
  • Mandatory Fields: Pay attention to mandatory fields marked with an asterisk (*) and ensure they are filled out to avoid errors during submission.
  • Consistency: Maintain consistency in data entry to ensure uniformity across the system. This helps in better data management and analysis.
Conclusion

Adding a new person on Telleion Software is a straightforward process. By following the steps outlined above, you can efficiently add students, staff, or other individuals to the system, ensuring that your school’s information is up-to-date and comprehensive. Regularly updating and managing this data will help in better resource allocation, personalized support, and overall improved school management.

Photo album of contacts in the Telleion

Photo album of contacts in the Telleion

Exploring locking in SQL Server

Exploring locking in SQL Server

Introduction

In the realm of SQL Server, managing data involves various intricate processes that impact the integrity and consistency of stored information. Critical aspects like locking, data modification, and committing changes play a pivotal role in ensuring the reliability and stability of a database system in large data workloads.

Understanding Locking

In SQL Server, locking plays a fundamental role in managing concurrent access to data. Locks control resource contention, ensuring the isolation and integrity of data modifications performed by different transactions. There are different types of locks, such as shared locks, exclusive locks, and update locks. For instance, when a SELECT statement reads data, it acquires shared locks, while UPDATE or DELETE statements acquire exclusive locks to prevent other transactions from modifying data concurrently.

Data Modification

When modifying data in SQL Server, it’s essential to consider the effects on the integrity of the database. Operations include INSERT, UPDATE, and DELETE. For example, an UPDATE statement alters existing records, while DELETE eliminates records from the database. Inserting new records impacts the primary key constraints and relationships within the database.

Committing Data

Committing changes in SQL Server is an essential step in finalising modifications to the database. The COMMIT statement ensures that all changes made by a transaction are successfully applied and persisted in the database. If changes are not committed, they remain in a pending state and are not visible to other transactions. Conversely, the ROLLBACK statement reverses modifications made by a transaction if there’s an error or an intentional rollback.

Practical Examples

Example 1 – Locking Scenarios:

Consider a scenario where two users concurrently access the same table. User A performs an UPDATE operation on a set of records while User B simultaneously attempts to modify the identical records. This scenario might lead to contention due to conflicting locks, impacting data consistency.

Example 2 – Data Modification and Committing:

Assume a banking system where a transaction involves transferring funds between two accounts. The operation requires updating the balance in both accounts while ensuring the atomicity of the transaction. Committing the changes ensures that the funds are transferred accurately and durably stored in the database.

To prevent table locks in SQL scripts or statements, consider the following strategies:

  • To improve concurrency and minimise locks on tables, consider using snapshot isolation levels like READ COMMITTED SNAPSHOT or ALLOW_SNAPSHOT_ISOLATION. These levels store a version of the data when changes are made, which allows for concurrent read access. Using snapshot isolation, you can reduce the chances of blocking other users from accessing the same data.
  • Implementing table partitioning divides large tables into smaller, more manageable units based on criteria such as date ranges. This strategy helps distribute data across multiple partitions, reducing contention and the likelihood of table-level locks.
  • Column store indexes can significantly enhance the performance of queries for large workloads, particularly regarding analytical queries on extensive tables. They are highly efficient when dealing with large-scale data warehouse scenarios where analytical queries aggregate vast amounts of data. By organising data by column rather than row, these indexes reduce I/O and memory requirements, resulting in faster query execution and reducing the impact of locking.
  • Another effective strategy is utilising the column store index’s compression and storage capabilities. Compared to traditional indexes, column store indexes have better compression, allowing more data to be stored in memory and reducing the need for frequent I/O operations. This can significantly improve query performance without causing locks due to reduced disk access. Bear in mind that the decision to implement column store indexes in a data workload is context-dependent and varies based on factors such as the size of the dataset, the nature of queries executed, and the performance requirements. 

Conclusion

Understanding the intricacies of locking, data modification, and committing data in SQL Server is crucial for maintaining data integrity, concurrency, and overall database performance. Practising these concepts with a comprehensive grasp of their implications ensures efficient and reliable database management.

This article aims to provide a broad understanding of the core concepts surrounding locking, data modification, and committing data in SQL Server, along with practical examples to illustrate their significance in database management.

Batch Script Waiting File Monitor

Batch Script Waiting File Monitor

The file monitor batch script is purposefully designed to wait for files in a folder before subsequent downstream processes are started. This is useful in integration applications where there are dependencies on such files or resources to be present before those processes ca n be initialised.

Rem Desc   : This script when activated waits for files in a folder to be present. When  the specified is available it then proceeds to start a SQL Agent job to kick subsequent processes.

@echo off
setlocal enabledelayedexpansion

:: Set variables
set "folderPath=\\bhxappfs01\InhouseApps\UAT\Blue Yonder\Outbound"  REM Path to the folder to monitor
set "ssisJobName=Dashboard_CostPriceDeltaOutput"  REM Name of the SQL Server Agent job

:: File patterns to look for
set "patterns=PMM_DB_IB01_ PMM_DB_IB02_ PMM_DB_ADJ_ PMM_DB_BR02_"

:loop
:: Initialize an array to keep track of found files
set "foundFiles="

:: Loop through the file patterns and find the most recent files
for %%P in (%patterns%) do (
    set "mostRecentFile="
    for /f "delims=" %%F in ('dir /b /o-d "%folderPath%\%%P" 2^>nul') do (
        if not defined mostRecentFile (
            set "mostRecentFile=%%F"
            set "foundFiles=!foundFiles! %%F"
        )
    )
)

:: Check if all four files are found and output their filenames and extensions
for %%P in (%patterns%) do (
    echo Looking for %%P...
    if not "!foundFiles: %%P=!"=="" (
        set "filename="
        for %%F in (!foundFiles: %%P=!) do (
            set "filename=%%~nF"
            set "extension=%%~xF"
            echo %%P found: !filename!!extension!
        )
    ) else (
        echo %%P not found. Waiting for all files...
        goto continueWaiting
    )
)

:: All four files are found; trigger the SSIS job
echo All required files found. Triggering the SSIS job...
sqlcmd -S YOUR_SERVERNAME -Q "EXEC msdb.dbo.sp_start_job @job_name = '%ssisJobName%'"

:continueWaiting
:: Pause for a specified time (e.g., 5 minutes)
timeout /t 300 >nul
goto loop

</pre>