2011-03-01 4 views
0

다른 바코드를 읽고 동일한 양식이나 페이지의 다른 필드에 데이터를 입력 할 수있는 Delphi 응용 프로그램을 작성하고 있습니다. 동일한 "ID가"여러 항목에 사용할 수 있기 때문에특정 응용 프로그램 필드/텍스트 상자에 바코드를 할당하는 방법

(예 : ID (123)는 부품, 소재, 직원 등이 될 수있다), 내가 방법을 찾을 필요가 :

  1. 적절한 태그를 통합을/field를 바코드 자체에 입력하십시오 (예 : userid = 123 또는 partid = 123).
  2. 이 바코드 정보를 관련 필드/값 쌍으로 구문 분석하여 올바른 응용 프로그램 텍스트 상자/선택/라디오에 데이터를 삽입하십시오 버튼/등.

파서가 쌍을 필드 값으로 분리하는 웹 URL에 사용되는 쌍과 비슷합니다.

감사합니다.

+1

코드가/EAN128 단순히 소프트웨어의 종류를 알려주는 고정 길이 "애플리케이션 코드"를 정의 데이터는 나머지 문자로 인코딩됩니다. 판독기가이를 처리 할 수 ​​있다면 한 바코드에서 여러 번 사용할 수 있습니다. – mjn

답변

2

"바코드"는 대부분 관련성이 없습니다. 가능한 한 작은 공간에 이름 = 값 쌍을 팩하고 나중에 "이름"과 "값"부분을 분리하려고합니다. "바코드"부분은 몇 가지 제한 사항을 부과하기 때문에 만 관련이 있습니다. : 사용하는 바코드의 종류에 따라 숫자 만 사용할 수 있으며 너무 많지는 않습니다. 따라서 "="기호는 사용할 수 없습니다.

다음과 같은 구현 방법이 있습니다. 모든 "이름"에 숫자를 할당하십시오. "부품 번호"가 1이고, "재료"가 2이고, "직원"이 3이라고 가정 해 봅시다. 바코드에 입력 한 텍스트 앞에 번호를 붙여주십시오.

인코딩은 다음과 같이 수행됩니다

Barcode.code := '1' + PartNumber; 
Barcode.code := '2' + MaterialNumber; 

디코딩은 그냥 쉽게 : UCC와 같은

case BarcodeText[1] of 
    '1': PartNumber := Copy(BarcodeText,2,MaxInt); 
    '2': MaterialNumber := Copy(BarcodeText,2,MaxInt); 
end; 
+0

고마워, 나는 그것이 쉬울 것임을 알았다. 모든 바코드가 접두사인지 확인해야합니다 (또는 내 바코드가 특수 문자를 처리 할 수 ​​있음). – BeachBoy

관련 문제