nc推单---弹出新单据框
来源:互联网 发布:湖北广电网络武汉有线 编辑:程序博客网 时间:2024/04/30 21:15
nc 推单的话,先生成action按钮:
代码如下:
@Override
public void doAction(ActionEvent e) throws Exception {
if (getModel().getSelectedData() != null) {
//获取当前表单数据
AggInspectReportVO inspectReportVO = (AggInspectReportVO) getModel()
.getSelectedData();
//向下游单据传输数据
showDetailData(inspectReportVO);
}
super.doAction(e);
}
----------------------------------------------------------------------------------------------------------
private void showDetailData(AggInspectReportVO inspectReportVO) {
FuncRegisterVO funcRegisterVO = WorkbenchEnvironment.getInstance()
.getFuncRegisterVO("K0H1040000");
if (inspectReportVO == null|| funcRegisterVO == null) {
return;
}
FuncletInitData initData = new FuncletInitData();
initData.setInitType(ILinkType.LINK_TYPE_ADD);
//关键代码,向下游传输数据,这个方法接收的是一个Object参数,所以 initData里面的内容可以随意定,
//传什么样的数据,下游就有什么样的数据类型来接收,下游接收调用的是data.getInitData()方法,见再下面代码:
initData.setInitData(inspectReportVO);
int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width * 9 / 10;
int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height * 9 / 10;
FuncletWindowLauncher.openFuncNodeFrame(this.getModel().getContext()
.getEntranceUI(), funcRegisterVO, initData, null, true,
new Dimension(screenWidth, screenHeight));
}
--------------------------------------------------------------------------------------------------------
设置单据初始化功能节点佂听:
配置文件加:
#####################################################
<bean id="InitDataListener" class="nc.ui.bgymem.bgyqc40.listener.InspectReportFunInitListener">
<property name="model" ref="manageAppModel"/>
<property name="context" ref="context"></property>
<!-- VO的类名 -->
<property name="voClassName" ref="aggVoName"/>
<!-- 打开节点节点后要显示的界面 -->
<property name="autoShowUpComponent" ref="billFormEditor"/>
<property name="multiLinkQueryEnable" value="true"/>
</bean>
##########################################################################
添加类:
public class InspectReportFunInitListener extends JZFDCDefaultFuncNodeInitDataListener{
@SuppressWarnings("restriction")
@Override
public void initData(FuncletInitData data) {
super.initData(data);
if (data != null && data.getInitData() instanceof AggInspectReportVO) {
AggInspectReportVO initData = (AggInspectReportVO)data.getInitData();
InspectReportBillForm billForm = (InspectReportBillForm)this.getAutoShowUpComponent();
if (!billForm.isComponentVisible()) {// 判断是否为卡片界面
billForm.showMeUp();// 跳转到卡片界面
}
this.getModel().setUiState(UIState.ADD);
try {
billForm.loadAllData(initData);
} catch (BusinessException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
}
----------------------------------------------------------------------------------------------------------------------------------------
billform添加方法:
------------------------------------------------------------------------------------------------------------------------------------------
public void loadAllData(AggInspectReportVO aggvo) throws BusinessException {
getModel().getContext().setPk_org(aggvo.getParentVO().getPk_org());
this.getBillOrgPanel().setPkOrg(aggvo.getParentVO().getPk_org_v());
BillItem[] items = this.getBillCardPanel().getHeadItems();
for(BillItem item : items){
this.getBillCardPanel().setHeadItem(item.getKey(), aggvo.getParentVO().getAttributeValue(item.getKey()));
}
InspectReportBVO[] inspectReportBVO = (InspectReportBVO[]) aggvo.getChildren(InspectReportBVO.class);
this.getBillCardPanel().getBillModel("pk_inspproj").setBodyDataVO(inspectReportBVO);
this.getBillCardPanel().getBillModel("pk_inspproj").loadLoadRelationItemValue();
this.getBillCardPanel().getBillModel("pk_inspproj").execLoadFormula();
InspectReportB4VO[] inspectReportB4VO = (InspectReportB4VO[]) aggvo.getChildren(InspectReportB4VO.class);
this.getBillCardPanel().getBillModel("pk_inspspecial").setBodyDataVO(inspectReportB4VO);
this.getBillCardPanel().getBillModel("pk_inspspecial").loadLoadRelationItemValue();
this.getBillCardPanel().getBillModel("pk_inspspecial").execLoadFormula();
InspectReportB1VO[] inspectReportB1VO = (InspectReportB1VO[]) aggvo.getChildren(InspectReportB1VO.class);
this.getBillCardPanel().getBillModel("pk_inpgather").setBodyDataVO(inspectReportB1VO);
this.getBillCardPanel().getBillModel("pk_inpgather").loadLoadRelationItemValue();
this.getBillCardPanel().getBillModel("pk_inpgather").execLoadFormula();
InspectReportB2VO[] inspectReportB2VO = (InspectReportB2VO[]) aggvo.getChildren(InspectReportB2VO.class);
this.getBillCardPanel().getBillModel("pk_inspnotice").setBodyDataVO(inspectReportB2VO);
this.getBillCardPanel().getBillModel("pk_inspnotice").loadLoadRelationItemValue();
this.getBillCardPanel().getBillModel("pk_inspnotice").execLoadFormula();
InspectReportB3VO[] inspectReportB3VO = (InspectReportB3VO[]) aggvo.getChildren(InspectReportB3VO.class);
this.getBillCardPanel().getBillModel("pk_insporg").setBodyDataVO(inspectReportB3VO);
this.getBillCardPanel().getBillModel("pk_insporg").loadLoadRelationItemValue();
this.getBillCardPanel().getBillModel("pk_insporg").execLoadFormula();
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
另外,特殊情况下,可以利用方法重新组装initdata,然后再传到下游单据:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
private ILinkQueryData getInitDatas(final AggInspectReportVO inspectReportVO) {
List<ILinkQueryData> initDatas = new ArrayList<ILinkQueryData>();
InspectReportVO assessVO =inspectReportVO.getParentVO();
final String pk_mkbhvass = assessVO.getPk_mkbhvass();
final String pk_org = assessVO.getPk_org();
ILinkQueryData initData=new ILinkQueryData() {
@Override
public String getBillID() {
return pk_mkbhvass;
}
@Override
public String getBillType() {
return "K071-Cxx-01";
}
@Override
public String getPkOrg() {
return pk_org;
}
@Override
public Object getUserObject() {
return inspectReportVO;
}
};
return initData;
}
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- nc推单---弹出新单据框
- NC存货核算单据推单通用接口nc.itf.ia.bill.IBill
- nc界面推单界面无法显示已生成单据问题
- Nc单据制作单据步骤
- 用友NC单据模板公式
- NC单据模板公式使用
- nc 单据模板初始化 查找相应的单据类型
- nc 前后台获取单据当前单据日期
- nc 调用后台接口 生成单据编码单据编号
- 用友NC单据UI基本代码示例
- nc生成单据主表主键
- NC单据表体显示合计行
- NC单据不存在通知消息报错
- NC界面弹出网页
- NC单据期初数据从Excel导入
- NC库存单据增加审批流资源的索引贴
- [转]用友NC单据UI基本代码示例
- nc 单据拓展字段 元数据导出脚本
- Android使用XML的方式为背景添加渐变,描边,圆角的效果
- FFmpeg常用基本命令
- 浅析 rand7生成rand10 方法 之 代码篇(二)
- 三年过去了,小米为何还不指纹解锁?
- 演讲大厅安排 解题报告
- nc推单---弹出新单据框
- STM32定时器PWM输出
- Directshow 的前世今生,兼谈Media Foundation
- C调用java代码
- POJ---3349-Snowflake Snow Snowflakes(hash)
- IO-02 整数四则运算
- js思路总结
- C实现二叉树的各种遍历
- ubuntu建立和删除用户