While data collection through barcode or QR code scanning has long been part of business system development and implementation, our company has, in recent years, been recommending QR code management via smartphones to clients considering on-site terminal導入 at manufacturing sites or warehouses. Production Control System in Indonesia It’s not limited to Indonesia, but it’s often said that the ultimate goals of the manufacturing industry are twofold: "cost reduction through productivity improvement" and "delivering products on time without delays." From a management perspective, business plans are crafted to maximize growth based on market supply and demand adjustments. However, even if sales increase due to low pricing, it only reduces gross profit, leading to losses from selling and administrative expenses or non-operating costs. On the other hand, raising unit prices isn’t straightforward due to market price considerations. Therefore, process management based on production plans aimed at reducing costs through ... 続きを見る
Overview of Lot Management
The function of a lot management system is to “record the movement of physical lots in the system.” To achieve this, item tags issued by the system are attached to lots, and each time the physical item moves, performance data must be entered into the system using the lot number as the key. The item tag links the system and physical goods via the lot number.
In a lot management system, human judgment is involved—either “allocating” input lots when issuing manufacturing instructions or “selecting from inventory” input lots when recording production performance. While it’s possible to automatically deduct input items based on a BOM (Bill of Materials) using FIFO (First-In, First-Out), the likelihood of physical goods being input exactly as the system dictates is extremely low.
The ultimate form of lot management is serial number management. By assigning a serial number from the material purchase request stage, materials are received into inventory with serial numbers, and specifying the serial number in manufacturing instructions ensures the correct materials are allocated. The serial number follows the product until completion. This suits individual order production, with cost tracking done per serial number via individual cost accounting.
Purpose of Lot Management
What is the purpose of lot management in the first place? If the effort to manage lots in the system isn’t effectively utilized for factory operations, it’s meaningless.
Lot Tracing
To investigate the cause of defective products found at a customer’s site, tracing is performed in the system to identify the problematic lot and its affected scope. This limits recall targets, reducing the risk of a full product recall. Providing “peace of mind” to customers or partners through traceable history is also significant.
However, this is only possible if performance data is entered into the system exactly matching physical movements, with the system and physical goods perfectly aligned.
Maintaining Inventory Management Accuracy
Lot-level management enables control over discrepancies between system quantities and actual quantities due to measurement errors or losses during production management system performance input.
When recording performance by location (process) rather than lot, you can grasp “what is where and how many,” but since the smallest inventory unit is “location,” casually “counting physical items to verify theoretical values” is difficult. Counting inventory at a location is a major event—inventory counting—typically taking half or a full day.
In contrast, recording performance by lot—the unit of physical flow—allows checking “how many are in this lot” at each flow destination. Checking lot quantities at each destination equates to continuously verifying the theoretical inventory total through role-sharing across destinations.
Real-time performance input is ideal, but realistically, some processes (e.g., night shifts or weekend work) reflect performance in the system the next day, while others (e.g., shipping) consistently reflect in real-time. With lot management in the system, lot quantities are overwritten by downstream process performance, converging toward accurate quantities as processes progress.
Barcode Format and Lot Numbers
Barcodes typically appear on box labels or item tags. Deciding what to include in the barcode format for barcode management is a tricky issue. The lot number is essential, but you must also consider whether other info needed for performance recording can be obtained from the barcode itself or retrieved using the lot number as a key.
In location-based inventory systems, the item code is the key. For FIFO or lot management needs, barcodes require at least the lot number and item code for inventory control. Location info changes with flow destinations, so it’s not included in the item tag barcode.
Lot numbers are structured as “date + serial number.” Managing down to packaging level requires a packaging number, and skipping quantity input during barcode scanning requires including the pack quantity.
Lot Management with Barcodes
The basic on-site operation—whether in warehouses, manufacturing, or shipping areas—is FIFO (First-In, First-Out), but whether this is managed in the system is a separate matter. While implementing FIFO in an inventory system is possible, it requires input staff to select the correct lot without errors during receipt and issuance, significantly increasing operational burden.
Receipt (Materials IN)
At receipt, item tags are issued and scanned for each package (or pallet) to process inventory entry. If all item tags for the same lot are identical, inventory is managed as “item code - lot number.” If package-level management is needed, it becomes “item code - lot number - package number.”
For shelf management, shelf numbers must be input or scanned at receipt. After scanning package item tags, either scan from a barcoded shelf list or scan barcodes on the physical shelf location to record receipt. Inventory is then managed as “item code - lot number - package - shelf number.”
Material Issuance (Materials TRANSFER)
Scan the material lot’s item tag to move materials from the material warehouse to the on-site material storage area. If no issuance quantity is keyed in during barcode scanning, the default package quantity is moved to the on-site area.
Material Input (Materials OUT)
For manufacturing instructions, display an alert if incorrect input materials are used to prevent errors. When returning unused leftovers from a package to the material warehouse, key in the remaining quantity during barcode scanning.
First Process Performance Input (WIP IN)
Scan the item tag barcode to increase WIP inventory quantity. If no receipt quantity is keyed in, the default package quantity is recorded as received.
WIP Inventory Transfer (WIP OUT, Product IN)
Scan the item tag to deduct WIP and move it to the product warehouse. If no issuance quantity is keyed in, the default package quantity is recorded as issued.
Issuing Shipping Instructions
Change the inventory status of the scheduled shipping quantity to allocated.
Shipping (Product OUT)
Scan the item tag to deduct the product. If an item tag inconsistent with the shipping instruction is scanned, display an alert.
Barcode Reader (Scanner)
Typically connected to a PC via USB cable (formerly RS232C), Bluetooth types paired with a PC are called Bluetooth scanners or wireless scanners.
USB cable connection to a PC is straightforwardly called “cable connection,” but connecting devices via Bluetooth is termed “pairing” rather than just “Bluetooth connection.” This special term reflects a process beyond simple connection—for example, when using a Bluetooth scanner for shipping while a smartwatch and smartphone are paired, it ensures proper selection of the PC’s signal among three Bluetooth waves.
Barcode readers, also called scanners, simply scan barcodes and capture data, serving two purposes: reducing manual keyboard input effort and preventing input errors.
For instance, when reading an instruction’s “Instruction NO,” its role is to quickly and accurately input the Instruction NO into a search field. The business system then displays instruction info (Instruction NO, manufactured item, shipping item, received item, transferred item, planned quantity, location, etc.), and the operator inputs performance data (start time, end time, actual quantity) from the screen to update.
When reading an item tag’s “item code + lot NO,” its role is to display inventory info (item, lot NO, location, quantity, etc.), after which the operator inputs performance data (location, actual quantity, etc.) from the screen to update.
In barcode reader operations, the active entities shift as follows:
- Barcode reader (entity reading key info)
- PC-side app (entity displaying info from the database using the key)
- Operator (entity inputting performance data)
- PC-side app (entity saving performance data to the database)
A beep confirms barcode recognition, but judging whether the data was correctly captured by the PC or is valid is the PC-side app’s task. Thus, it’s assumed to be used within sight of the PC monitor.
I once introduced a Cipher Lab Bluetooth scanner from a Taiwanese maker with a 100m range at an MM2100 factory. Despite its long-range capability, if the PC screen was too far from the physical item’s location, confirming correct data capture became a dilemma.
Handheld Terminal
“Handheld terminal” generally refers to a type that collects data and transfers it to a PC business system in batches. Performance is gathered using the terminal against pre-created instructions.
- Create receipt/issuance instruction info in the PC-side business system beforehand.
- Process instruction info via an interface and transfer it to the handheld terminal.
- Distribute instructions on-site (Instruction NO is barcoded).
- On-site staff scan the Instruction NO, then scan the physical label barcode (item code + lot NO) and key in the quantity.
- Check if the item code and lot NO exist in the instruction—OK if present, NG if not (master check on the handheld side possible).
- After completion, import receipt/issuance performance into the interface, process it into the business system’s performance format, transfer, and record.
For handheld terminals, the goal is to check if the physical label’s barcode info matches data stored in the terminal, requiring the following functions to be implemented:
- Menu function to select task types (receipt, shipping, inventory counting, etc.)
- Function to select relevant instruction info using the Instruction NO as a key
- Menu function to select locations or shelves
- Function to check if physical barcode info matches instruction info
Additionally, an interface is needed for format conversion when importing instruction info into the terminal and for importing and recording performance data into the business system.
Wireless Handheld Terminal
Despite being usable as a regular barcode reader or batch handheld, models with OS like Windows CE are called “wireless handhelds” to distinguish them from batch types. This is because they’re typically purchased to wirelessly transmit scanned barcode data for real-time processing.
- Windows apps developed for the handheld can directly reference the server database.
- Based on scanned data, the handheld’s Windows app can record performance in the business system without an interface.
Apps for wireless handheld terminals can be developed with the same approach as regular Windows apps.
Which to Choose: Scanner, Handheld Terminal, or Wireless Handheld Terminal?
While barcode-based inventory management is commonplace in Japanese warehouses, many Japanese companies in Indonesia are still considering it. Barcode-reading devices come in three types: scanners connected to a PC via cable or Bluetooth pairing, batch data-transfer handheld terminals, or wireless handheld terminals with OS like Windows CE.
Rough criteria for choosing include:
- Scanner
- Cheap and easy to introduce but positioned as a keyboard input substitute
- Assumes work near a PC
- Aims to quickly and accurately obtain key info, with other needed info retrieved by the PC-side app
- Handheld Terminal
- Cheap but requires programming with Basic or VBScript-like proprietary tools for handhelds
- Assumes use in large warehouses or on-site
- Typically interacts with PC-side apps via CSV files
- Wireless Handheld Terminal
- Expensive but allows terminal app development with a regular PC development feel
- Assumes wireless LAN availability on-site
- Can write directly to the server database
Batch handheld terminals are often chosen by elimination—“Scanners tied to a PC limit on-site freedom, but wireless handhelds are too expensive.” However, this requires developing two apps: a menu-style app on the handheld for receipt/issuance or inventory tasks, and a PC-side app to connect data to the core system. Commercial handheld terminals typically come with proprietary app development tools.

Recording Performance in the Core System
With batch handheld terminals, there are two methods: collecting performance based on instructions issued by the core system, checking if physical items are scanned per instructions before linking to the core system, or scanning physical items without instructions and recording the performance in the core system.
- Receipt: From uninspected area to material warehouse—attach item tag upon inspection pass
- Material issuance (issuance instruction): From material warehouse to manufacturing site
- Material return: From manufacturing site to material warehouse
- Product receipt: From manufacturing site to product warehouse—attach item tag upon inspection pass
- Shipping (picking list): From product warehouse to shipping area
- Disposal: From warehouse to disposal area
- Inventory counting (inventory list): Warehouse
Reflecting performance without instructions in the core system:
- Shelf transfer: From shelf to shelf
App Development on the Handheld Terminal Side
On the handheld terminal side, apps for warehouse receipt/issuance tasks are developed using proprietary scripts (Basic or VBScript-like) provided by manufacturers, typically with menus, buttons, and text boxes. SQLite—free, lightweight (core is just 225KB), supports all basic SQL statements, and excels with CSV files—is commonly used as the database to store instruction or master data from the core system. Development involves testing on a PC emulator.
The left diagram shows a flow using a handheld to ensure materials are correctly issued from the material warehouse to the manufacturing site based on input plan info in manufacturing instructions. It scans the Instruction NO printed on the instruction header from the core system, checks if the correct lot item is issued from the relevant warehouse shelf, and implements functions like setting tolerance for performance quantity differences and displaying errors or alerts.
Using CSV files on a handheld terminal involves four data conversions:
- Convert from the receipt/issuance system’s DB to CSV and upload to the handheld
- Import CSV to SQLite on the handheld
- Convert from SQLite to CSV on the handheld and download
- Import into the receipt/issuance system’s DB
Scanning shelf barcodes on rack labels occurs at the start for issuance processes (e.g., material issuance or shipping) to read the source shelf, and at the end for receipt processes (e.g., material receipt or product receipt) to read the destination shelf.
Advantages of Introducing Smartphone QR Code Management in Business Systems
Recently, Indonesia’s smartphone payment market has seen a three-way battle for share among OVO (linked with Grab and Tokopedia), GOPAY (Gojek’s standard e-wallet), and DANA, which bets on aggressive discounts to challenge the OVO-GOPAY duopoly.
By scanning QR codes at restaurant counters or on receipts and deducting from pre-charged app balances, all three offer attractive discounts or point rewards, rapidly spreading smartphone payments in Indonesia.
While barcode and QR code scanning for data collection has been part of business system development, our company has recommended smartphone QR code management to clients considering on-site terminals at manufacturing sites or warehouses in recent years. Here’s why:
Easy, Low-Cost導入
Since everyone owns a smartphone, there’s no need to buy expensive scanners or handheld terminals. Implementing a function to scan QR codes and reflect them in the business system allows quick, easy導入.
Avoiding Major Investment in Legacy Tech During the Transition to RFID
In the future, Indonesian manufacturing sites are expected to shift from barcodes and QR codes to RFID (Radio Frequency Identifier), which uses radio waves to read/write RF tag data contactlessly.
Rather than investing in separate readers for legacy barcode/QR scanning, using universally owned Android smartphones as on-site terminals minimizes costs.
QR Codes Pair Well with Smartphones
Smartphone cameras recognize QR codes more easily than 1D barcodes, and QR labels are smaller.
Reading long-digit 1D barcodes requires a decent-quality scanner, but QR codes—with vast data capacity—can be adequately read by cheap Android smartphones.
For Indonesian on-site workers accustomed to smartphone payments in daily life, QR code scanning shouldn’t be a burden.
Easier App Development for Smartphones
Developing inventory or receipt/issuance apps for handheld terminals requires C or device-specific scripts, but Android smartphone apps can be built quickly with PhoneGap + HTML + jQuery, offering business-specific UI/UX.
Alternatively, if the business system’s UI is a responsive web interface, no dedicated smartphone app is needed.
Image of Scanning QR Codes with a Smartphone to Register Data in a Business System
The video on the left is a simple demo: pressing the “QR Code Scan Button” on the receipt processing screen activates the camera, scanning a QR code on an item to complete receipt processing.
Starting from a receipt screen with two registered records, scanning a QR code increases the record count to three. It can auto-register at scan time or batch-register multiple records with continuous scanning.
Our business system development template, Hana First, has a responsive web UI, eliminating the need for a separate smartphone app. However, with PhoneGap + HTML + jQuery, we can quickly develop Android apps for receipt/issuance or inventory processing.
Scenarios for registering performance in the business system via QR code scanning include material receipt, material issuance, product receipt, disposal, and shipping (picking) processes.