沈阳 发表于 2019-8-13 09:25:29

通过打开外部程序 调用bartender静默打印标签文件

本帖最后由 bruce 于 2019-8-13 09:35 编辑

云表有一个很实用的功能,填表公式支持 打开外部程序。而且支持参数传递,这样,云表就能和外部程序交互了。
我分享一下 如何通过这个功能,调用标签打印软件,根据传递的参数,打印出指定的标签文件。


第一步,通过 bartender企业版,建立好标签文件,保存到 你指定的位置,我放置在 D:\XM.btw 这个位置;

第二步:标签数据源中,定义好SQL语句,连接到云表的模板数据表,并指定好 查询提示参数   参数的写法是'?参数名称'

这个参数 用来接收,云表传递过来的值,这样就能打印出指定的内容

标签中的,文本绑到数据库字段。



第三部:
   在云表模板中建立 填表公式。 公式类型为,打开外部程序。打开 bartend 传递参数。

程序    填写 "bartend"
参数填写"/F=D:\XM.btw /PD /X?订单编号="+ 本表单.订单编号
/*解释一下
/F=标签存放的完整路径;我的路径是 D:\XM.btw
/PD 表示 弹出打印对话框,让用户去设置需要的打印份数,记录数 等等;
/X表示打印完成后退出
?订单编号=   这里表示给你在标签中设置的接收参数变量赋值   我 的变量是名称是 【?订单编号】

*/



这样操作,云表就可以调用bartender的打印功能,打印出想想要的任何标签格式。


附上 bartender的 参数写法


敬鑫 发表于 2019-8-13 09:38:24

厉害厉害

沈阳 发表于 2019-8-13 09:41:16

这个的好处,解决了批量打印的问题。打印的事情交给bartender 去处理,不影响当前云表的操作;特别是当打印量1000条数据以上是,传统的方法,云表需要10分钟以上才能完成,,而且你不能做任何事情; bartender打印只需要几秒就可以了。

杭州-涛 发表于 2019-12-2 16:40:02

方式确实不错,正是我需要的,但我怎么数据传递不到参数上,Bartend上数据筛选不出来,能请教下的吗?求指导!!!

杭州-涛 发表于 2019-12-4 23:16:36

已找到其本人,很热心,谢谢!

叶建 发表于 2020-6-28 10:50:16

我的参数不能传递,可以帮我检查一下吗?84452153

铁甲钢拳 发表于 2020-6-28 11:34:34

本帖最后由 Lato_Howard 于 2020-6-28 11:36 编辑

@shuyeshuye
原理:填表公式增加一个按钮,这个按钮可以打开外部程序,并且传递表单的数据给外部程序,这个外部程序可以进行打印的功能

1.这个参数在第二步中,这个参数“订单编号”是自定义,作为变量的。
2.其次,这个参数由云表提供过去的值,通过填表公式的“打开外部程序功能”,打开程序,把云表表单中的本表单.订单编号 这个数据传递给这个参数
3.第三步中,
参数填写"/F=D:\XM.btw /PD /X?订单编号="+ 本表单.订单编号   
本表单.订单编号 就是你要传递过去给参数的数据"/F=D:\XM.btw /PD /X?订单编号="您可以认为是一个格式,字符串的拼接,“订单编号”是一个参数

叶建 发表于 2020-6-28 15:07:33

提示未找到记录。





叶建 发表于 2020-6-28 15:17:43

找到原因了,?包装完工ID 不能有',多了一个标点就不能用了,大意了啊!

铁甲钢拳 发表于 2020-6-28 15:22:11

本帖最后由 Lato_Howard 于 2020-6-28 15:32 编辑

@shuyeshuye
您好,这个未找到记录                                                                                                                            ①您可以看看数据库的数据。如:把参数代入后,bartend进行查询,但是返回:未找到记录。 参数是否代入正确,代入后,数据库是否查询有这个数                                                                                              ②程序.exe是否正确选择



页: [1] 2
查看完整版本: 通过打开外部程序 调用bartender静默打印标签文件