电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

打印多张关联单据图片

来源:金蝶云社区作者:金蝶2024-09-2314

打印多张关联单据图片

1. 案例介绍

    在打印采购申请单时,希望同时能够打印上游单据中多张图片,并且每张图片展示一页纸,该案例将介绍如何通过二开插件实现此类场景。

2. 适用版本

    金蝶云苍穹 V5.0.011及以上版本

3. 模板配置

1. 模板设计

2. 注册插件

    创建插件类PrintRefBillImagePlugin,并继承AbstractPrintPlugin打印插件基类。(基类全路径kd.bos.print.core.plugin.AbstractPrintPlugin),随后在打印模板中注册该插件。

4. 插件开发

Java

 

public class PrintRefBillImagePlugin extends AbstractPrintPlugin {

  //主数据源标识(采购订单formId

   private static final String MAIN_DS = "kd_cgdd";

  //自定义数据源标识

   private static final String CUSTOM_DS = "imageDs";

   //关联上游单据formId(采购申请单formId

   private static final String REF_BILL = "kd_cgsqd";


   @Override

   public void beforeLoadData(BeforeLoadDataEvent evt) {

       PrtDataSource dataSource = evt.getDataSource();

      //在加载主数据数据之前,添加查询字段,这样后续的主数据源DataRowSet中将会查询出源ID字段

       if (MAIN_DS.equals(dataSource.getDsName()) && dataSource instanceof MainDataSource) {

           MainDataSource mainDataSource = (MainDataSource) dataSource;

          //查询字段添加源单ID

           mainDataSource.getQueryField().add("sourcebill");

       }

   }


   @Override

   public void loadCustomData(CustomDataLoadEvent evt) {

       final List<DataRowSet> customDataRows = evt.getCustomDataRows();

       //加载自定义数据源,根据关联关系查询出上游单据中图片地址,构造自定义数据源数据包

       if (CUSTOM_DS.equals(evt.getDataSource().getDsName())) {

           //获取主数据源数据

           DataRowSet mainRowSet = this.getMainDataVisitor().getDataRowSet();

           //拿到源单ID

           Object sourceBill = mainRowSet.getFi

打印多张关联单据图片

1. 案例介绍 在打印采购申请单时,希望同时能够打印上游单据中多张图片,并且每张图片展示一页纸,该案例将介绍如何通过二开插件实现此...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信