【NC6】非供应链模块的其他节点打印次数客开

前言

在打印次数功能中主要涉及了三张表,两张需要预置的表(pub_printlimit 和 pub_printpara)与一张最终入库的表(PUB_PRINTNUMBER)
字段属性自行查看数据字典

数据表

1.打印次数设置表 pub_printlimit
在这里插入图片描述
样例:

insert into pub_printlimit (BILLTYPENAME, BILLTYPENAME2, BILLTYPENAME3, BILLTYPENAME4, BILLTYPENAME5, BILLTYPENAME6, CONTROLTYPE, CREATIONTIME, CREATOR, DR, FUNCODE, MODIFIEDTIME, MODIFIER, PK_BILLTYPE, PK_GROUP, PK_ORG, PK_PRINTLIMIT, PRINTLIMIT, TEMPLATEID, TS)
values ('付款单', null, null, null, null, null, 0, '2023-10-26 16:43:55', '0001A1100000000001G3', 0, '20080EBR', '2023-10-30 10:35:05', '1001A110000000000K3B', '0001A1100000000017VX', '0001A1100000000003ZW', '0001A1100000000003ZW', '0001A11000000000DJO3', 0, null, '2023-10-30 10:35:05');

2.打印参数表 pub_printpara

在这里插入图片描述
样例:

insert into PUB_PRINTPARA (BILLIDNAME, BILLNONAME, DR, ORGNAME, PK_PARA, PK_PRINTLIMIT, PROPOSER, PROPOSETIME, TS)
values ('pk_paybill', 'billno', 0, 'pk_org', '0001A11000000000PPO3', '0001A11000000000DJO3', 'billmaker', 'creationtime', '2023-10-26 10:15:49');

PK_PRINTLIMIT 关联的 打印次数设置表的数据的主键

3.打印次数 pub_printnumber
在这里插入图片描述

后端代码集成

重构打印和预览按钮
继承nc.ui.pubapp.uif2app.actions.MetaDataBasedPrintAction
打印详细代码块

package nc.ui.arap.actions;

/** <a href="http://www.cpupk.com/decompiler">Eclipse Class Decompiler</a> plugin, Copyright (c) 2017 Chen Chao. **/

import java.awt.event.ActionEvent;

import nc.ui.arap.sideforms.TaxForm;
import nc.ui.pubapp.pub.power.PowerCheckUtils;
import nc.ui.pubapp.uif2app.actions.MetaDataBasedPrintAction;
import nc.ui.uif2.actions.ActionInitializer;
import nc.vo.arap.pay.AggPayBillVO;

public class BillPrintAction extends MetaDataBasedPrintAction {
	private static final long serialVersionUID = 1L;
	private TaxForm taxForm = null;

	public void setTaxForm(TaxForm taxForm) {
		this.taxForm = taxForm;
	}

	public TaxForm getTaxForm() {
		return this.taxForm;
	}

	public BillPrintAction() {
		ActionInitializer.initializeAction(this, "Print");
	}

	public void doAction(ActionEvent e) throws Exception {
		AggPayBillVO aggVo = (AggPayBillVO) getModel().getSelectedData();
		PowerCheckUtils.checkHasPermission(new AggPayBillVO[] { aggVo }, "D3",
				"Print", "billno"); 
		super.setPreview(false);
		super.doAction(e);
	}
}

billno 关联打印参数表 pub_printpara 中的BILLNONAME

预览按钮代码块

/** <a href="http://www.cpupk.com/decompiler">Eclipse Class Decompiler</a> plugin, Copyright (c) 2017 Chen Chao. **/
package nc.ui.arap.actions;

import nc.ui.arap.sideforms.TaxForm;
import nc.ui.pub.print.PrintEntry;
import nc.ui.pubapp.uif2app.actions.BaseMetaDataBasedPrintAction;
import nc.ui.pubapp.uif2app.actions.MetaDataBasedPrintAction;
import nc.ui.uif2.actions.ActionInitializer;
import nc.vo.ml.AbstractNCLangRes;
import nc.vo.ml.NCLangRes4VoTransl;

public class PrintPreviewAction extends MetaDataBasedPrintAction {
	private static final long serialVersionUID = 1L;
	private TaxForm taxForm = null;

	public void setTaxForm(TaxForm taxForm) {
		this.taxForm = taxForm;
	}

	public TaxForm getTaxForm() {
		return this.taxForm;
	}

	public PrintPreviewAction() {
		setBtnName(NCLangRes4VoTransl.getNCLangRes().getStrByID("common",
				"UC001-0000112"));
		ActionInitializer.initializeAction(this, "Preview");
	}

	public void doPrint(PrintEntry entry) {
		super.setPreview(true);
		entry.preview();
	}
}

技术细节

问题1:没有找到设置的打印模板信息
原因: 主要是没有指定打印模板,
方法1: config配置文件中 nodekey属性赋值默认模板节点标识
在这里插入图片描述

方法2: 也可在打印次数设置表 pub_printlimit 表中TEMPLATEID 字段绑定打印模板

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值