AX barcode

来源:互联网 发布:自学php需要什么基础 编辑:程序博客网 时间:2024/04/27 09:21

AX barcode

    
不要把barCode 想的有多么高深。 它其实只是模拟键盘的操作而已,当光标定位在某个控件,在该位置输入字符串。

另外,有些细节需要注意的:

 

在报表中打印条形码时,有时会发现打出乱码,即使是标准系统!
在设置打印条形码时,对应的StringEdit有两个属性需要注意:Font和DataMethod,

以BC开头的字体是条形码,如果将Font设置为:“BC C128 HD Wide” 则需要将DataMethod设置为对应的“BarcodeEAN128”。
学习如何使用BarCode 可以参考Report:AssertBarcode 在确定了我们要使用的BarCode字体后,可以使用如下的代码直接得到

 

BarCode:

        BarcodeCode39 barcode;
        ;
        barcode = Barcode::construct(BarcodeType::Code39); //is it needed to validate this barcode before print?
        barcode.clear();
        barcode.string(true,strltrim(strrtrim(num2str(this.OprNum,10,0,1,0))));
        return barcode.barcodeStr();

 

系统中BarCode 的是所有条形码的父类,在它之下有很多不同的子类,我们只要声明对应的类,并使用对于的ENUM值construct构造返回对应的实例,然后传递我们要转化为条形码的字符串给该实例,读取条形码就可以了。
有时候会出现乱码,检查代码和属性时发现一切都是正确的。
产生这一问题的原因有几种可能:


                1. 需要的字体类型在客户端或服务器端不存在
                2.客户端操作系统与服务器端操作系统不同,所以导致字符集会不同


解决方案:


                首先保证客户端和服务器端都有这种字体,然后更改调用该报表的MenuItem的RunOn属性为“Called from”(更改操作系统显然是不现实的!)。
 

原创粉丝点击