Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7970521
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 4, 20262026-06-04T07:24:44+00:00 2026-06-04T07:24:44+00:00

So, I’m building a simple inventory system. The information will be stored in a

  • 0

So, I’m building a simple inventory system. The information will be stored in a remote SQL Server 2005 database. On the current part of the project I’m working on I need to scan a barcode(which holds two pieces of data, employee ID and product ID). We’ll be using the MC9090-G scanner. At the same time it is being scanned, it will be sitting on a scale. I need to keep these three piece of data together, and upload them to the database.

First of all, I need to figure out how to collect the data. Secondly, I need to figure out the best platform to write the client side applications in. These will be fairly simple, such as inserting the above data. I’m not sure if I should use an ACCESS 2010 front end, or write the front end with something else.

I’m sorry if this question appears vague, please ask me for any more details. Thanks for the help guys, I’m really lost here.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-04T07:24:46+00:00Added an answer on June 4, 2026 at 7:24 am

    This is a duplicate of your previous question. You don’t have to re-create a new question for it to be visible again: just edit your original question with more data and it will go to the top again.

    No-one was able to answer then simply because this is too vague. For these types of systems, how the worker physically work is what drives the solution: you need to streamline their actions so that they flow naturally and do not require more movements and confirmations and handling than strictly necessary.

    So, let’s try something.

    Assumptions

    Because I don’t know enough about your environment, equipment and process, I’ll make some assumptions about the problem:

    • A computer is installed near the scale for data input.

    • The barcode scanner and scale are both connected to the computer

    • The barcode reader behaves like a HID device (like if the input was typed on a keyboard )

    • The barcode reader is configured to add a CR (carriage return) suffix after each scan (all readers have this type of configuration).

    • The employee barcode is printed along (above or below) the Product ID a label that is applied on the fish.
      The Employee ID barcode will be of the form: @123456 where 123456 is the employee ID.
      The @ prefix allows the system to detect that the scanned barcode is an Employee ID.
      Use Code128 or similar to print alphanumerical strings.

    • The fish barcode label is assumed to be on the fish or printed on a card.
      The fish bar code label can be anything, but must not start with @.

    • We assume that the scale has an interface. Since you don’t mention which one you use or how the data is retrieved from the PC, we’ll have to assume that there is a SDK provided with the scale, or something that allows you to read the current weight.
      Let’s call that function ReadScale() and assume it returns you a float with the weight in whatever measurement makes sense for your task.

    Worker Process

    Here again, we make some assumptions. Depending on your exact setup and what is the flow of actions physically performed, things may be very different, in which case, your software may also need to behave differently.

    I assume that by the weighting and data entry is the final operation: the label is already applied on the fish/product by that time.

    Possible process:

    • The worker is on the front of the computer and scale

    • The worker puts the fish on the scale

    • The worker wait for the reading to stabilise

    • The worker scans the 2 barcodes on the label placed on the fish.

    Alternatively:

    • The worker scans the 2 barcodes on the label placed on the fish.

    • The worker puts the fish on the scale

    • The worker wait for the reading to stabilise

    • The worker types the ENTER key on the keyboard or scans a special OK barcode that tells the software that the process is completed.

    The first alternative requires less operations, but it requires that the labels are visible for scanning while the product is on the scale. That may or may not be true.

    Software solution

    There are a thousand different ways to achieve what you want, but since you mentioned Access, we’ll assume that is what you are comfortable with.
    Beside, it provides a nice way to prototype a solution since it’s easy to update an Access application.

    I assume that the SQL Server database is on the same LAN as the data input computer that will host the Access application.
    If that’s not the case, or if you must use Wifi, the way to connect to the database and save data would be different (and probably a bit more complex).

    Data flow

    When the employee scans the barcodes, the application will receive a stream of keys, as if the employee actually typed on the keyboard:

    For instance, say the user scanned the employee ID, then the product ID. The computer will receive the following stream of data as if it was coming from the keyboard:

    @443678¶
    876657098¶
    

    The ¶ symbol just represents the CR code suffix added by teh bar code scanner (same code as the ENTER key).

    SQL Server Database

    I assume that you have a ProductLog table in a Fishery database on SQL Server.
    That ProductLog table will simply record the set of data for each fish/product:

    ID          : Auto-increment ID (IDENTITY), to identify each record uniquely
    EmployeeID  : Stores the Employee ID (INT/CHAR) 
    ProductID   : stores the Product ID (INT/CHAR)
    Weight      : Store the measured weight (FLOAT)
    TimeStamp   : records the operation's exact date and time (DATETIME).
    

    Now link the ProductLog table to your Access application front-end.
    We’ll then be able to use it as if it was a local Access table.

    Data input form

    Le’t go for the most basic thing: create a blank form and add 3 large labels to it, that you will call: labelEmployeeID, labelProductID and labelWeight.

    Edit the form’s properties so that it becomes modal and stays in the front of the application, among other things:

    Default View    : Single Form
    Record Selector : No
    Pop up          : yes
    Modal           : yes
    key Preview     : Yes  (on the Events page)
    

    Design of the form

    Open the VBA IDE to edit the code for the form and add the following:

    Option Compare Database
    Option Explicit
    
    ' The SQL Server Connection String. Update to match your database '
    Const SQLSERVERCONSTR As String = "ODBC;DRIVER=SQL Server;SERVER=MYSERVER;DATABASE=Fishery;Trusted_Connection=Yes;"
    
    ' Just clear the labels on the screen when we open the form '
    Private Sub Form_Load()
        labelEmployeeID.Caption = "-"
        LabelProductID.Caption = "-"
        labelWeight.Caption = "-"
    End Sub
    
    ' Most of the processing is done here: the barcode scanner will act   '
    ' as if the scanned code was typed on the keyboard.                   '
    ' We trap each keystroke and use a basic state machine to reconstruct '
    ' each barcode and process them once they have been received          '
    Private Sub Form_KeyPress(KeyAscii As Integer)
        ' Status = 0 : Waiting for any barcode input        '
        ' Status = 1 : Currently reading EmployeeID barcode '
        ' Status = 2 : Currently reading ProductID barcode  '
        ' Status = 3 : All barcode data read                '
        Static Status As Integer
        ' Keep track of our barcodes '
        Static EmployeeID As String
        Static ProductID As String
    
        ' All barcodes entered, but not processed yet, do not accept more entry '
        If Status = 3 Then Exit Sub
    
        ' We received a CR, check if we have both barcodes and complete '
        If KeyAscii = vbKeyReturn Then
            Dim employeeCodeReceived As Boolean
            Dim productCodeReceived As Boolean
            employeeCodeReceived = (EmployeeID <> vbNullString)
            productCodeReceived = (ProductID <> vbNullString)
    
            ' Update UI to reflect the completed code we scanned '
            If employeeCodeReceived Then
                labelEmployeeID.Caption = "Employee : " & EmployeeID
            Else
                labelEmployeeID.Caption = "-"
            End If
    
            If productCodeReceived Then
                LabelProductID.Caption = "Product  : " & ProductID
            Else
                LabelProductID.Caption = "-"
            End If
    
            labelWeight.Caption = "-"
    
            ' If both have been received, complete the transaction '
            If employeeCodeReceived And productCodeReceived Then
                Status = 3
                ' Get the weight from the scales '
                Dim weight As Double
                weight = ReadScale()
                ' Display the weight '
                labelWeight.Caption = "Weight   : " & Format(weight, "0.000") & " kg"
                ' Save to log '
                Save EmployeeID, ProductID, weight
                ' Reset barcode data '
                EmployeeID = vbNullString
                ProductID = vbNullString
            End If
            Status = 0
            Exit Sub
        End If
    
        Dim c As String
        c = Chr(KeyAscii)
    
        ' We're starting a barcode '
        If Status = 0 Then
            If c = "@" Then
                Status = 1
                EmployeeID = vbNullString
                Exit Sub ' Skip the @ prefix '
            Else
                Status = 2
                ProductID = vbNullString
            End If
        End If
    
        If Status = 1 Then
            EmployeeID = EmployeeID & c
        ElseIf Status = 2 Then
            ProductID = ProductID & c
        End If
    End Sub
    
    Private Sub Save(ByVal EmployeeID As String, ByVal ProductID As String, ByVal weight As Double)
        ' We use ADO and late binding to avoid requiring a library reference '
        Dim rs As Object
        Set rs = CreateObject("ADODB.Recordset")
    
        ' Open using options adOpenDynamic(2) and adLockOptimistic(3) '
        rs.Open "ProductLog", SQLSERVERCONSTR, 2, 3
        ' Add a new record and close '
        With rs
            .AddNew
            !EmployeeID = EmployeeID
            !ProductID = ProductID
            !weight = weight
            !timestamp = Now()
            .Update
            .Close
        End With
        Set rs = Nothing
    
    End Sub
    
    ' Magic function to be replaced by whatever you need to do to read the scale '
    Private Function ReadScale() As Double
        Randomize
        ReadScale = Rnd() * 2
    End Function
    

    All this is of course a particularly simple implementation based on simple assumptions that may or may not match your particular case.
    There is no error handling, and it’s not even very good code, but it can help you throw something together and get started.

    Use

    To try to simulate the data entry process, just open the form and use the keyboard.
    For instance, entering the following (entering ProductID first then EmployeeID will also work):

    @TIMOTHY¶
    987654¶
    

    Will result in this screen, with the data being automatically recorded:

    enter image description here

    Sample database

    I’ve made public a sample database showing the code in action.
    It will save the data to itself for the demo.
    Download it.

    Conclusion

    Again, the main issue when building these warehouse data entry applications is to model the data entry to an actual streamlined physical process.
    If you do not think about the actual environment and practices of the user, your solution may risk being counter-productive, requiring more effort for the worker and making his job awkward instead of efficient.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

link Im having trouble converting the html entites into html characters, (&# 8217;) i
I have just tried to save a simple *.rtf file with some websites and
I have a string like this: La Torre Eiffel paragonata all&#8217;Everest What PHP function
I am doing a simple coin flipping experiment for class that involves flipping a
We're building an app, our first using Rails 3, and we're having to build
I'm parsing an RSS feed that has an &#8217; in it. SimpleXML turns this
Seemingly simple, but I cannot find anything relevant on the web. What is the
I need a function that will clean a strings' special characters. I do NOT
I have a reasonable size flat file database of text documents mostly saved in
I'm working with an upstream system that sometimes sends me text destined for HTML/XML

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.