This proposal outlines the development of a QR code generation feature for inventory items and the creation of an external page to scan and manage bin locations.

Proposal Summary 

This proposal outlines the development of a QR code generation feature for inventory items and the creation of an external page to scan and manage bin locations.  

The estimated time for the completion of this proposal is 100 hours.  

The scope and the provided estimate are based on discussions and email communications. Any scope changes or additional feature requests identified during development will be treated as change requests. 

Requirement 

Client would like to implement the following enhancements: 

Requirement 1: Generate QR Code from Item Record 

  • Scope: Limited to inventory items. 
  • User Interaction: A new button Generate QR will be added to the item record. When clicked, it will generate a QR code for the item. 
  • Label Dimensions: The QR code label dimensions will be 22 x 22 millimeters. 

 

Requirement 2: Create an External Page with Scanning Capabilities 

User Interface: The page must have three buttons: 

  1. Scan Item: Activates a scanner to read the QR code from an item, retrieves the item ID, and displays the primary item information from the item record on the page: 

 

  • Item Name/Number 
  • Display Name/Code 
  • Vendor Name/Code 
  • Authenticity # 
  • Note (A, A#, etc.) 
  • Cent (example -25 or 25 for positive) 
  • Bowl Size (e.g., 7″) 
  • Pricing Group 

Note: The image and media file link are not considered. 

  1. Scan Location: Opens a scanner to read the bin location QR code, verifies the QR code’s existence, retrieves bin location name and id. 
  2. Submit Button: Confirms the updates and completes the process. 

 

Deliverables 

Requirement 1: Generate QR Code from Item Record 

This functionality involves adding a custom button named “Generate QR” to the inventory item record page in NetSuite. The button will be exclusively available for inventory items. Upon clicking, the button will encode essential item information, such as item ID and other relevant details, into a QR code. The generated QR code will be designed to fit existing label dimensions (22 x 22 millimeters) and displayed in a pop-up or new window for easy printing.  

  • Generate QR Code Button: 
  • A custom button named Generate QR to the inventory item record page 
  • The button will only be available in inventory item record. 
  • QR Code Generation: 
  • Encode essential item information in the QR code, such as item ID and other relevant details (refer the link for more details). 
  • Label Printing: 
  • The generated QR code fits the label dimensions 22 x 22 millimeters. Clicking the button will open the QR code in a new page for printing. 

 

Requirement 2: Create an External Page with Scanning Capabilities 

  • External Page Development: 
  • An external Suitelet page will be available for scanning purposes, designed to streamline the scanning process. This Suitelet page will contain three buttons: a Scan Item Button, a Scan Location Button, and a Submit Button. These buttons will facilitate the scanning of item information and locations and allow users to submit the scanned data efficiently. 
  •  
  • Button Functionality 
  1. Scan Item Button: 
  2. When the user clicks this button, the scanner will activate and read the QR code. 
  3. The system will fetch the item details based on the scanned QR code and display the primary information from the item record on the page, including: 
  4. Item Name/Number 
  5. Display Name/Code 
  6. Vendor Name/Code 
  7. Authenticity # 
  8. Note (A, A#, etc.) 
  9. Cent (example -25 or 25 for positive) 
  10. Bowl Size (e.g., 7″) 
  11. Style (Tall, Morph, etc) 
  12. Pricing Group 

The above-mentioned field values will be auto-populated after the scan. 

  1. Scan Location Button: 
  2. On the same external page, there will be an additional button for scanning the bin location. 
  3. When the user clicks this button, the scanner will activate and read the QR code. 
  4. The system will fetch the location name and ID based on the scanned QR code. 
  5. The bin location name will be displayed in the placeholder on the same page. 

 

  1. Submit Button: 
  2. After completing the details on the page through scanning, the user can hit the submit button. 
  3. The submit button will be disabled until all essential details, such as item details and bin location, are filled in. 
  4. Upon submission, the backend functionality will update the bin location in the corresponding item record with the provided details. 
  5. If the update is successful, a success message will be shown. 
  6. If any error occurs during submissio9n, an error message will be displayed. 
  7. The user will need to resubmit the form after correcting the error. 

 

 

Assumptions 

  • Since there is an existing QR code for the bin location, when the scanner reads the code, it will extract all relevant data. The QR code must contain the bin location name, and the bin location ID used in NetSuite to ensure the bin location field is updated correctly. 
  • Assuming the label dimensions are 22 x 22 millimeters, any changes to these dimensions should be communicated before development. 
  • The system assumes that the bin location scanned on the Suitelet page will be available for that item in NetSuite. If the scanned location is not present in the dropdown list of bin locations for the item record, the update will not occur, and an error message will be displayed on the page. 
  • If any of the primary information fields in the item record are empty, those fields will remain empty on the Suitelet page. 

 

  

Note: 

  • The scope is limited to printing QR codes on the specified label size (22 x 22 millimeters) from NetSuite only. 
  • As a mockup has not been provided, the scanning page will be designed and developed according to the implementer’s preference. 
  • Since the bin location is not currently used in the NetSuite account, it needs to be properly set up for this development to function correctly. 

Query: 

  • Since we only have access to the production environment and no sandbox, can we proceed with the development directly in production? Additionally, during the development phase, we will need to update the bin location in the record. 

 

Exemptions 

  • This proposal does not cover non-inventory items or service items. 
  • Since we are using a Suitelet page from NetSuite, there are concurrency limitations. As a result, simultaneous use of the page by multiple users may lead to concurrency issues. 

Leave a comment

Your email address will not be published. Required fields are marked *