Symbol Pocket Browser和解码FNC1字符

时间:2017-10-27 13:48:43

标签: servlets barcode symbols motorola code128

我有一个基于servlet的Web应用程序,它为在客户站点上运行的Motorola RF条形码扫描器提供网页,他们仍在使用Symbol Pocket Browser而不是更新的企业浏览器。 我对此没有任何控制权。

该应用程序已经运行多年,因为它只需要使用EAN128条形码规则扫描单个字符串,这是一个20位数字字符串。

我在html中使用meta命令,这样当用户扫描数据时,解码后的值将输入到屏幕上的活动输入框中,然后执行自动输入。一切正常。

我现在需要扫描一个更复杂的EAN-128条形码,其中包含多个应用程序标识符,最重要的是其中一个字段是可变长度,并由FNC1字符终止。当SPB扫描此条形码时,返回的数据没有任何字段分隔符,因此无法正确解码数据。

我现在可以在线找到的是RhoElements和最新的企业浏览器的文档,我没有看到一种方法来读取数据而不会丢失重要的分隔符。

我认为有可能让它在解码数据时运行一些javascript,并且可能将数据保存在我的servlet可以访问的会话变量中 - 但我正在盲目工作。

有没有人遇到过这个场景,可以提供样本html / javascript哪个有效,或者可能是SPB文档的链接(编程指南)?

1 个答案:

答案 0 :(得分:0)

您仍然可以从Zebra Technologies support website下载PocketBrowser v3.x(Zebra Technologies于2014年10月收购了Motorola Solution Enterprise Business)。

下载包中包含PocketBrowser指南。

我们强烈建议现有用户升级到支持更新操作系统和设备的Enterprise Browser,尽可能保持与现有Symbol,Motorola,Zebra设备的兼容性。

For" Symbol Pocket Browser v2.x"你可以使用" scannernavigate"当扫描仪或成像仪成功解码条形码或符号时,META标记导航到URL或调用JavaScript函数。

以下示例在页面上设置扫描程序,以便在成功解码后调用JavaScript函数:

<META HTTP-Equiv="scanner" Content="enabled">
<META HTTP-Equiv="scannernavigate" Content="javascript:doScan('%s', '%s', %s, '%s', %s);">

<script>
   function doScan(data, source, type, time, length)
   {
      if(type == 0x35) //ean 13
      {
         alert('Please scan a non EAN 13 code!');
      }
      else
      {
         var amount = prompt('Enter an amount for code: ' + data', '');
      }
   }
</script>

免责声明:我为Zebra Technologies工作

更新了有关Symbol Pocket Browser v2.x语法的答案