Ask a questionAsk a question
 

AnswerReading Data from Scanner

  • Thursday, October 22, 2009 9:08 AMDulal Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Hi Everybody

    Is it possible to capture raw data from scanner before it is transformed into encoded in any symbology.
    If yes. Is there anybody who can help me.

Answers

  • Thursday, October 22, 2009 10:26 AMYortAnswererUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi,

    According to the Pos .Net SDK help you can set the DecodeData property to false, and then the (mostly) raw data will be placed in the ScanData property before the data event fires.

    For specific information about what data is and isn't processed from the device when DecodeData is false, see the Pos .Net SDK help for the Scanner.DecodeData property... note, you'll need to view this in the .chm file that is included with the Pos .Net SDK download, as the online help seems to have less information.

    From the sdk help;

    " Scan data is generally in the format delivered from the scanner. Message header and trailer information are removed, however, because they contain no useful information for an application and are likely to be scanner-specific.

    Common header information is a prefix character (such as an STX character). Common trailer information is a terminator character (such as an ETX or CR character) and a block check character if the scanner generates one.

    ScanData should include a symbology character if the scanner returns one (for example, an ‘A’ for UPC-A). ScanData should also include check digits if the label contains them and the scanner returns them. (Notice that both symbology characters and check digits may be present, depending on the scanner configuration. The Scanner Service Object returns them if they are present, but does not generate or calculate them if they are absent.)

    Some merchandise may be marked with a supplemental bar code. This bar code is typically put to the right side of the main bar code, and consists of two or five characters of additional information. If the scanner reads merchandise that contains both main and supplemental bar codes, the supplemental characters are appended to the main characters, and the result is delivered to the application as one label. Notice that a scanner may support a configuration that enables or disables the reading of supplemental codes.

    Some merchandise may be marked with multiple labels, also known as multisymbol labels or tiered labels. These bar codes are typically arranged vertically, and may be of the same or different symbology. If the scanner reads merchandise that contains multiple labels, each bar code is delivered to the application as a separate label. This is necessary because of the current lack of standardization of these bar code types. One cannot determine all variations based on the individual bar code data. Therefore, the application must determine when a multiple label bar code has been read based on the data returned. Notice that a scanner may support reading of multiple labels.

    ScanData is set by the Service Object only before delivering the DataEvent event to the application."

    Also see the ScanDataLabel and ScanDataType properties.

    • Marked As Answer byYortAnswererFriday, October 30, 2009 3:32 AM
    • Proposed As Answer byYortAnswererFriday, October 30, 2009 3:31 AM
    •  
  • Friday, October 30, 2009 3:28 AMSylvester-MSFTMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    As Yort said, set DecodeData to false.  For more details see UPOS specification:

    http://www.nrf-arts.org/UnifiedPOS/default.htm

All Replies

  • Thursday, October 22, 2009 10:26 AMYortAnswererUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Hi,

    According to the Pos .Net SDK help you can set the DecodeData property to false, and then the (mostly) raw data will be placed in the ScanData property before the data event fires.

    For specific information about what data is and isn't processed from the device when DecodeData is false, see the Pos .Net SDK help for the Scanner.DecodeData property... note, you'll need to view this in the .chm file that is included with the Pos .Net SDK download, as the online help seems to have less information.

    From the sdk help;

    " Scan data is generally in the format delivered from the scanner. Message header and trailer information are removed, however, because they contain no useful information for an application and are likely to be scanner-specific.

    Common header information is a prefix character (such as an STX character). Common trailer information is a terminator character (such as an ETX or CR character) and a block check character if the scanner generates one.

    ScanData should include a symbology character if the scanner returns one (for example, an ‘A’ for UPC-A). ScanData should also include check digits if the label contains them and the scanner returns them. (Notice that both symbology characters and check digits may be present, depending on the scanner configuration. The Scanner Service Object returns them if they are present, but does not generate or calculate them if they are absent.)

    Some merchandise may be marked with a supplemental bar code. This bar code is typically put to the right side of the main bar code, and consists of two or five characters of additional information. If the scanner reads merchandise that contains both main and supplemental bar codes, the supplemental characters are appended to the main characters, and the result is delivered to the application as one label. Notice that a scanner may support a configuration that enables or disables the reading of supplemental codes.

    Some merchandise may be marked with multiple labels, also known as multisymbol labels or tiered labels. These bar codes are typically arranged vertically, and may be of the same or different symbology. If the scanner reads merchandise that contains multiple labels, each bar code is delivered to the application as a separate label. This is necessary because of the current lack of standardization of these bar code types. One cannot determine all variations based on the individual bar code data. Therefore, the application must determine when a multiple label bar code has been read based on the data returned. Notice that a scanner may support reading of multiple labels.

    ScanData is set by the Service Object only before delivering the DataEvent event to the application."

    Also see the ScanDataLabel and ScanDataType properties.

    • Marked As Answer byYortAnswererFriday, October 30, 2009 3:32 AM
    • Proposed As Answer byYortAnswererFriday, October 30, 2009 3:31 AM
    •  
  • Friday, October 30, 2009 3:28 AMSylvester-MSFTMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    As Yort said, set DecodeData to false.  For more details see UPOS specification:

    http://www.nrf-arts.org/UnifiedPOS/default.htm