NC技术汇总笔记
NC常用问题解决方案汇总

NC6系列常见问题解决方案1 单据问题 (3)1.1 单据开发规范 (3)1.1.1 “发布元数据”遇到问题 (3)1.1.2 “generate java resource”遇到问题 (5)1.1.3 生成JAVA源代码报错 (6)1.1.4 “generate sql”遇到问题 (7)1.1.5 单据向导过程出错 (8)1.1.6 单据向导生成资源出错 (9)1.1.7 NC中间件启动报错 (10)1.2 单据前台页面 (12)1.2.1 新增单据信息报错 (12)1.2.2 保存单据信息报错 (13)1.2.3 登录NC客户端出错 (14)1.2.4 报流程平台缓存中不存在该单据或交易类型 (15)1.2.5 单据提交审核时出错 (16)1.2.6 创建开发帐套时无法保存信息 (17)页脚内容11.3 单据后台逻辑 (18)1.3.1 保存数据时出现“未知错误” (18)1.4 单据业务逻辑 (20)1.4.1 业务逻辑问题名称1 (20)2 档案问题 (20)2.1 档案开发规范 (20)2.1.1 “发布元数据”遇到问题 (20)2.2 档案前台页面 (20)2.2.1 前台页面问题名称1 (20)2.3 档案后台逻辑 (20)2.3.1 后台页面问题名称1 (20)2.4 档案业务逻辑 (20)2.4.1 业务逻辑问题名称1 (20)3 报表问题 (20)3.1 报表开发规范 (20)3.1.1 “发布元数据”遇到问题 (20)3.2 报表前台页面 (20)页脚内容23.2.1 自由报表建好后点击节点出现的问题 (20)3.3 报表后台逻辑 (22)3.3.1 后台页面问题名称1 (22)3.4 报表业务逻辑 (22)3.4.1 业务逻辑问题名称1 (22)4 数据库问题 (22)4.1 Oracle问题 (22)4.1.1 Oracle问题名称1 (22)4.2 SQL Server 问题 (22)4.2.1 SQL Server 问题名称2 (22)1 单据问题1.1 单据开发规范1.1.1 “发布元数据”遇到问题1、问题描述:页脚内容32、解决方案方案1:端口号修改为801、nc61_home>conf>server.xml文件里把端口改为80;2、打开运行nc61_home>bin>ncsysconf.bat文件,把服务器端口改为80;3、Eclipse或者UAP-STUDIO工具连击的端口改为80。
数控加工程序(NC)设计

确定加工工艺和切削参数
根据工件材料、加工要求和机床性能, 选择合适的刀具、切削参数和加工工 艺。
建立工件几何模型
根据设计图纸或实体的测量数据,使 用CAD软件建立工件的三维几何模型。
生成。
验证与优化
通过模拟仿真或试切实验,验证NC 程序的正确性和加工效果,根据需要 进行调整和优化。
进一步加工工件表面,为精加 工做准备。
精加工
达到最终尺寸和表面质量要求 的加工。
优化加工顺序
遵循先粗后精、先主后次、先 面后孔的原则。
合理使用G代码和M代码
G代码用于控制机床的移动和切削参数。
M代码用于控制机床辅助功能,如冷却液和主轴 转速。
根据加工需求选择合适的G代码和M代码,提高加 工精度和效率。
02
它具有高精度、高效率、高柔性 等特点,广泛应用于机械制造、 航空航天、汽车、模具等领域。
NC程序在数控加工中的作用
NC程序是数控加工的核心,它通过一 系列代码指令控制机床的运动和加工 过程。
NC程序能够精确地描述工件的几何形 状、加工工艺和切削参数,从而实现 高精度、高效率的加工。
NC程序的设计流程
复杂曲面加工的NC程序
总结词
用于加工复杂曲面的NC程序,如球面、 抛物面和自由曲面。
VS
详细描述
复杂曲面加工的NC程序需要使用更高级 的编程语言,如CAM软件,通过定义复 杂的刀具路径和切削参数,实现复杂曲面 的加工。
多轴联动加工的NC程序
总结词
用于加工多轴联动零件的NC程序,如斜面、 曲面和异形零件。
02 NC程序的基本结构与元 素
程序头和程序尾
程序头
通常包含程序名称、程序编号、 编程者信息等,用于标识程序的 来源和用途。
NC现金流量分析操作技巧

精品好资料——————学习推荐现金流量分析使用技巧【Liuchunfa:近来很多同事反映现金流量分析增加工作量,现总结几个技巧以提高制单效率,本技巧只是个人使用心得,仅供参考】技巧一:将多个分录归集到同一现金流量科目。
对于一个凭证有多条分录,且这些分录的现金流量应归集到同一现金流量科目的,可选择多个想要手工指定到同一个表项中的分录,单击〖归集〗,弹出归集设置窗口,指定表项(现金流量科目)和金额比例后,单击〖确定〗即可。
此功能为手工指定提供了快捷操作。
技巧二:将常用业务且现金流量固定的凭证进行自动分析。
对于经常发生且分录结构与现金流量表项的对应关系固定的凭证,系统提供了两种自动分析方式:按对方科目和按业务规则。
设置后将对对应凭证自动进行现金流量分析,不需手工操作。
以下两种方法可选择:①“按对方科目”是按照科目关系设置中建立的对方科目与现金流量表项的对应关系,将会计科目指定到相应的现金流量表项中。
科目关系设置是通过建立对方科目与现金流量表项的对应关系,然后根据此系,自动生成现金流量分录。
操作方法:进入“科目关系设置”功能,单击〖增加〗,选择界面左侧的现金流量表项,然后在右侧参照选择对应科目、辅助核算等相关信息,点〖保存〗即可。
②“按业务规则”是按照业务规则设置中事先定义好的凭证分录结构(类似于常用凭证)与现金流量项目之间的对应关系来分析凭证,将会计科目指定到相应的现金流量表项中。
业务规则设置是指事先定义好凭证分录的结构与现金流量表项之间的对应关系,然后根据此对应关系,自动生成现金流量分录。
操作方法:进入“业务规则设置”功能,单击〖添加规则〗,在弹出的对话框中输入业务规则名称,单击〖添加〗,在借方科目和贷方科目栏中单击“参照”图标选择会计科目。
可以选择所有科目,但有且只能有一方有会计科目。
在同一业务规则中可以指定多条借方和贷方科目。
会计科目添加完成后,单击〖确定〗返回业务规则设置界面。
选择要指定现金流量表项的会计科目,单击〖添加表项〗,在下方“现金流量表项”栏中单击参照图标选择要将该科目指定到的相应现金流量表项,在“比例”中输入要指定到表项中的金额比例,单击〖保存表项〗即可。
NC—基础教程(2)

NC—基础教程(2)12、框架定义1.框架定义一种运算规范,它把一种直角坐标系转换到另一种直角坐标系。
2.它是一种:工件坐标系的空间描述。
3.在一个框架中可以使用以下几个部分:①零点偏移②旋转③镜像④比例尺如图13、工件坐标系中机床轴的分配工件坐标系的位置就基准坐标系而言(或者机床坐标系),通过可设定的框架确定。
在NC 程序中,这种可设定的框架用相应的指令激活,比如G54。
如图1:如图2N10 G0 G90 X10 Y10 F500 T1 ;返回N20 G54 S1000 M3 ;调用第一个零点偏移,主轴右旋N30 L47 ;程序运行,在此作为子程序N40 G55 G0 Z200 ;调用第二个零点偏移Z,在障碍物之后N50 L47 ;程序作为子程序运行N60 G56 ;调用第三个零点偏移N70 L47 ;程序作为子程序运行N80 G53 X200 Y300 M30 ;零点偏移抑制,程序结束14、实际工件坐标系有些情况下在一个程序当中,可能要求把原来所选择的工件零点移动到另一个位置,或者旋转/镜像/比例尺到另一个位置,它是非常必要的。
使用可编程的框架,可以使当前的零点变更到工件坐标系中一个合适的位置(或者通过旋转、镜像及比例尺),由此得到一个当前工件坐标系。
在一个程序之内,也可以进行几个零点偏移。
15、进给轴一、在编程时可以有以下几种轴:1、加工轴:轴名称可以通过机床数据调整。
缺省设定中名称为:X1, Y1, Z1, A1, B1, C1, U1, V1此外还有固定的轴名,它们可以一直使用:AX1, AX2, …, AXn2、通道轴:所有在一个通道中运行的轴。
名称:X, Y, Z, A, B, C, U, V3、主轴/几何轴:主轴确定一个直角、右旋坐标系。
在该坐标系中编程刀具运行。
在数控技术中,主轴作为几何轴描述。
对于车床,适用:几何轴X,Z,有时有Y。
对于铣床,适用:几何轴X、Y 和Z。
4、辅助轴:与几何轴相反,在辅助轴中没有定义这些轴之间的几何关系。
ncc 开发技巧

ncc 开发技巧NCC开发技巧NCC(网络控制中心)是一个用于管理和监控网络设备的软件系统。
它提供了一套丰富的功能,以帮助网络管理员更好地管理和维护网络。
在进行NCC开发时,掌握一些技巧可以提高开发效率和代码质量。
本文将介绍一些NCC开发技巧,帮助开发者更好地应用NCC。
一、合理规划项目结构在进行NCC开发时,合理规划项目结构是非常重要的。
可以按照模块或功能对代码进行划分,将相关的代码放在一起,提高代码的可读性和维护性。
同时,采用统一的命名规范,可以使代码更加规范整洁。
二、灵活运用NCC提供的APINCC提供了丰富的API接口,开发者可以根据需求灵活运用。
在使用API时,要注意正确地调用接口,传递正确的参数。
同时,可以根据具体需求编写一些封装函数,提高代码的复用性。
三、充分利用NCC的调试功能NCC提供了强大的调试功能,可以帮助开发者快速定位和解决问题。
在开发过程中,可以通过设置断点、查看日志等方式进行调试,提高开发效率。
四、安全性注意事项在进行NCC开发时,要注意安全性。
例如,在处理用户输入时,要进行输入验证,防止恶意输入引发安全漏洞。
此外,要对代码进行安全审计,避免潜在的安全风险。
五、优化性能对于NCC开发来说,性能优化也是一个重要的方面。
在进行性能优化时,可以考虑以下几点:合理使用缓存、减少数据库访问次数、优化算法等。
通过这些优化措施,可以提高系统的响应速度和吞吐量。
六、文档和注释在进行NCC开发时,编写文档和注释也是非常重要的。
良好的文档可以帮助其他开发者更好地理解代码,减少沟通成本。
同时,添加适当的注释可以使代码更易读,方便后续的维护和升级。
七、错误处理在开发过程中,要注意错误处理。
对于可能发生的异常情况,要进行合理的处理,避免程序崩溃或数据丢失。
可以使用try-catch块捕获异常,并进行相应的处理和日志记录。
八、持续学习和更新NCC是一个不断更新和演进的系统,开发者需要时刻保持学习的状态。
Proe-NC数控加工1

后处理概述
CAM过程的最终目的是生成一个数控机床可以 识别的代码程序。自动编程 经过刀具轨迹计算产生 的是刀位文件,而不是数控程序,因此,需要设法 把刀位文件转换为特定机床能执行的数控程序,输 入数控机床的数控系统 ,才能进行零件的数控加工。 把刀位文件转换成指定数控机床能执行的数控程序 的过程称为后置处理(Post Processing)。Pro/E 的刀位文件为NCL文件,要将其转化为NC文件,其 处理结果为生成一个*.tap文件,是一个文本文件, 可以直接用记事本打开并编辑。
9.1.7 后置处理
单击【菜单管理器】中的【制造/完成序 列/CL数据/后置处理】选项,在打开的对话 框中选择需要后置处理的刀位文件,然后单 击【后置处理选项/完成】选项,在弹出的 【后置处理列表】中选取所使用的数控系统, 本例选择Pro/ E NC自带的FANUC 16M系统 的后处理器【UNCX01.P20】。系统开始转 换程序,生成数控代码,完成后系统弹出信 息窗口,单击【关闭】按钮,即可完成程序 的后置处理。
刀位轨迹菜单设置
刀位轨迹演示如图所示。单击【播放路径】对 话框中的【文件/保存】命令,保存本序列的刀位文 件,再单击【关闭】按钮。
【播放路径】对话框
刀位轨迹
4)创建CL数据文件
对于NC序列产生的刀具路径可以生成刀 具路径数据文件,便于保存和进一步对其进 行后置处理。
执行【CL数据/输出/NC序列/体积块铣削/文件/ 完成】,系统弹出“保存副本”对话框,单 击【确定】按钮完成CL文件的创建。
【转轴速度】-----用于设置主轴的运转速度; 【COLLANT_OPTION】-----用于设置冷却液,其值为开放、关
闭。 【间隔-距离】-----用于设置退刀的安全高度;
NC系统常见问题汇总
第四步:检查无误后保存,收入结转的凭证生成。费用和税费的凭证按照类似的方法操作。
9、NC 帐表如何按照金额进行过滤? 解决方案:NC 总帐帐表中除了辅助余额表有余额范围的过滤外,其他帐表都没有在查询条 件中提供金额的过滤条件,但是本人通过摸索发现可以通过如下功能来实现金额过滤的目的: 即在查询出来的帐表上,通过鼠标右键点击表头的本币栏目,然后会出现“定位”,点定位, 输入欲查询的金额即可,如下图
1
在如下图中找到部门档案,将右边会计科目“允许非末级”标志为空的科目将勾打上。 3
2
4
4、存货核算中生成实时凭证界面点查询的结果为空,可能的原因有:A、本月未
进行成本计算;B、本月未计算全月平均单价;C、在生成实时凭证的查询界面未将“是否 已经成本计算”的勾打上,如下图
2
3 1
4
5、本月已经生成了会计凭证,但是发现当月的出入库单据需要修改,如何操作?
即在查询出来的帐表上通过鼠标右键点击表头的本币栏目然后会出现定位点定位输入欲查询的金额即可如下图12注意上图中的查找目标有时候需要按照加逗号的格式输入如果输入1425000无法查询到那么就请输入142500000则一定能查询到
众安康 NC 系统财务模块常见问题汇总
曹连芳 1、请全体财务及仓库管理员注意:如果需要调整出入库单据的单价小数位(系 统 默 认 为 2 位 ), 请参 照如 下步 骤:客 户化 -参 数设 置 -系 统选择 -公 共 参数 -修 改
BD504\BD505\BD506 对应的小数位就可以了。修改保存后,重新登陆 NC 系统将正式生效。
3
1
2
4
5
2、对于会计平台生成的凭证,现在系统是不能增删分录,如果希望增删分录, 可以按照如下进行设置:
nc程序的名词解释
nc程序的名词解释NC程序,即数控程序,是一种调控机床进行加工工作的程序。
通过编写NC程序,可以精确控制机床在指定坐标轴上的运动以及实施各种加工操作,例如切削、钻孔、铣削等。
在现代制造业中,NC程序发挥着重要的作用,为自动化生产提供了便捷和高效的方式。
1. NC程序的历史起源NC程序的发展与计算机技术的进步密切相关。
20世纪50年代初,人们开始尝试使用计算机对机床进行控制。
最初的NC程序由串联的数字信号编码指令组成,用于控制机床的运动。
随着计算机技术的飞速发展,NC程序逐渐演变为具有更强大功能和灵活性的指令系统,并且现代的NC程序通常采用G代码和M代码进行编写。
2. G代码:控制机床的运动G代码是NC程序中最常用的指令之一,用于控制机床在各个坐标轴上的直线、圆弧等运动。
G代码中的指令可以指定机床的起点、终点、切削速度、切削深度等参数,从而实现精确的加工操作。
例如,G01指令表示进行直线插补,G02和G03指令分别表示进行顺时针和逆时针的圆弧插补。
3. M代码:控制机床的功能M代码用于控制机床的具体功能和附件操作。
比如,M03表示启动主轴的正转,M04表示启动主轴的反转,而M05表示停止主轴运转。
此外,M代码还可以控制冷却液的供给、刀具的换刀、进给轴的暂停等功能,提供了更多灵活的操作方式。
4. 坐标系:标定机床的位置坐标系是NC程序中至关重要的概念,用于标定机床的位置和方向。
常用的坐标系有绝对坐标系和相对坐标系。
绝对坐标系是以机床的参考点为原点,通过设定坐标轴的长度来确定机床各个位置的坐标。
相对坐标系则是以当前机床的位置为参照点,按照相对偏移量进行定位。
5. 其他辅助指令除了G代码和M代码外,NC程序还包含一些辅助指令,用于实现更全面的控制和管理。
例如,F指令用于设定切削进给速度,S指令用于设置主轴转速,T指令用于选择刀具。
这些辅助指令可以根据具体加工要求进行灵活调整,提高加工效率和质量。
6. NC程序编写和优化编写一个高效的NC程序是一项挑战性的工作。
nc_UAP技术介绍
nc_UAP技术介绍第一篇:nc_UAP技术介绍UAP-NC 总体介绍UAP是UFIDA Application Platform的首字母缩写。
NC是UFIDA用友软件新一代企业管理软件,目标客户主要为集团企业和企业集团。
作为UFIDA NC构建基础的UAP-NC是一个遵循J2EE技术规范,以企业业务信息管理和企业资源管理为基础,以业务过程控制管理为核心,支持工作流管理和业务流程重组的企业应用运行平台;是基于模式化和提供可视化建模工具的开发平台;是开放的、基于SOA、支持多种集成方式的系统集成平台;是统一的支持JMX的系统管理平台。
UAP-NC可根据具体需求定制,满足企业持续改进的管理需求。
软件开发商、系统实施服务商还可以借助UAP-NC进行增值开发和服务。
UAP-NC作为基于多组织架构的企业应用运行平台、基于模式化的开发平台、开放的系统集成平台及统一的系统管理平台,是建立在Java语言所提供的强大功能的基础上开发的。
基于UAP-NC所开发的应用软件采用Browser/Server(浏览器/服务器)的方式来运行。
B/S的运行方式最大限度地方便了用户部署和维护大型软件系统,保证了瘦客户机运行,从而大大降低了用户目标系统的总体拥有成本(TCO)。
一、体系结构UAP-NC从体系结构上可分为三层,从下往上分别为系统框架层(System Framework)、技术框架层(Technology Framework)及应用框架层(Application Framework)。
UAP-NC还提供开发和管理工具集(Workshop)。
系统框架层系统框架层主要指基础软件,如操作系统、数据库及J2EE应用服务器。
技术框架层技术框架层是在系统框架层(操作系统、数据库及应用服务器)和应用系统之间建立的一层技术封装层和系统资源监控和管理层。
框架中有许多关键技术:企业服务架构(Enterprise Service Architecture,ESA)、连接框架(Connect Framework)、同步(Synchronization)、SQL翻译器(SQL Translator)、元数据管理(Metadata Management)、工作流引擎(Workflow)、规则引擎(Rule Engine)、持久化框架(Persistence Framework)、调度引擎(Scheduler)、缓存(Cache)还提供许多基础算法、第三方登录和安全(Login/CA Security)框架、异常(Exception)消息、日志(Log)等重要功能。
NC开发技巧
一.得到选中的表体行数,列数等内容(总行数和当前选中的行数) (2)二.设置初始化界面时的默认值 (3)三.表单默认执行方法以及常用的操作 (3)四.在报表中显示合计行 (4)五.在UI类中设置小数位数 (5)六.将表体数据清空 (5)七.设置字段是否可编辑的状态 (5)八.在UI类中编写方法打印查询条件 (5)九.弹出提示框 (6)十.在报表中得到查询面板的值 (6)十一.比较时间的开始与结束时间 (6)十二.设置编辑公式 (6)十三.清空缓冲数数据getBufferData().clear(); (7)十四. 在UI类中设置查询对话框的默认值 (7)十五. 管理型界面单据各个类的继承关系 (7)十六.是否显示行号,合计行,数组按钮,隐藏列 (8)十七. 根据单据的不同状态来控制按钮的可用性。
(9)十八. UI工厂开发单据模式下如何自定义按钮? (9)十九.需要设置动作脚本的六个按钮 (10)二十. 单据界面设置某些字段的显示与隐藏 (10)二十一. 单据开发的一般步骤: (10)二十二. 界面数据访问 (11)二十三.导出与导入数据库 (11)二十四.list map set的操作 (11)二十五. 改变焦点自动显示表头金额的值 (12)二十六.设置行选中的状态 (13)二十七,初始进入时默认显示卡片界面或列表界面 (13)二十八,在MyEventHandler类中,在onBoSave()中验证必输项 (13)二十九.多页签得到某一页签到的行数 (14)三十,判断日期的前后 (14)三十一.验证表头的必输项不能为空 (15)三十二,执行表体编辑公式 (15)三十三,ECLIPSE中代码不显示行号 (16)三十四,在ECLIPSE中添加反编译 (16)三十五,编辑后事件的处理 (16)三十六,编辑前事件的处理 (16)三十七。
编辑事件设某一个字段不能编辑 (17)三十八.在保存的时候,验证表体不能为空/ (17)三十九.删除表体某一行触发的事件 (17)四十,UI类中初始化设置 (17)四十一,YES OR NO 对话框 (18)四十二.得到选中的行数与得到选中行数的行号的数组,数组以0开头 (18)四十三.对VO的操作,聚合VO,得到表体,表体某一个页签的VO (18)四十四.添加一个自定义的按钮 (18)四十五.取得某一个页签下的记录的行数 (20)四十六. 修改的时候,清空批号想要保存到数据库必须设置行的状态 (20)四十七.执行表头的公式 (20)四十八.根据不同的条件,过滤不同的参照记录 (20)四十九,获取表体当前操作页签 (21)五十,输入开始和结束日期,从开始到结束日期每天都列出来 (21)五十一,在列表状态下,根据单据的状态,确定按钮是否可用 (21)五十二,不管在是列表还是卡片面下取得表头或表体的值 (22)五十三,UFDouble型的数据变成两位小数的字符型,或零位小数 (22)五十四,系统按钮的操作 (22)五十五,SQL查询时将字符转换成小数型 (23)五十六,删除单页签表体删除行,以及增行 (23)五十七,多页签表体删除行,增行 (23)五十八,得到月份,年份 (23)五十九,如何得到多页签到指定的子VO (24)六十:删除表体行 (24)六十一.传过一个主键的数组,如何组装成‘主键’,‘主键’的形式 (24)六十二.导出TXT文本 (25)六十三,删除表体的记录行 (27)六十四.确定某一列在模板上位置 (27)六十五.单据添加复选,判断选中的记录行 (27)六十六,判断按钮的状态是否可用 (28)一.得到选中的表体行数,列数等内容(总行数和当前选中的行数)//得到选中的列数selCol=getBillCardPanelWrapper().getBillCardPanel().getBillTable().getSelected Column();//得到当前选中列的索引colIndex=getBillCardPanel().getBillTable().convertColumnIndexToModel(selCol);//得到选中的行号从0开始iSelRow= getBillCar dPanel().getBillTable().getSelectedRow();/得到当前选中的行i = getReportBase().getBillTable().getSelectedRow();//得到表体一共有多少行/this.getBillCardPanel().getRowCount();//判断是否选中行if(getSetInBalPriceUI().getBillCardPanel().getBillTable().getSelectedRow() == -1){ getSetInBalPriceUI().showErrorMessage("请选择表体数据行!");return;}//判断选中的某一行的某一列是否为空if (getSetInBalPriceUI().getBillCardPanel().getBodyValueAt(selectRow, "sys_shipper_id") == null) {getSetInBalPriceUI().showErrorMessage("请录入发货单位!");//得到某一行某一列指定的值sys_shipper_id=getSetInBalPriceUI().getBillCardPanel().getBodyValueAt(selectRow,"sys_shipper_id").toString();//得到当前选中行的指定的某一列(String)getReportBase().getBodyValueAt(i,"sendunitID");this.getBillCardPanel().setBodyValueAt(值,行,列);this.getBillCardWrapper().getBillCardPanel();//获取表体第i行字段值getBillCardPanel().getBodyValueAt(i."字段")二.设置初始化界面时的默认值/*** 初始化卡片界面时加载的默认属性在UI中*/public void setDefaultData() throws Exception {//单据类型 87getBillCardPanel().setHeadItem("pk_billtype", IBillType.CY_DYAPPLYPLAN); //制单日期默认值getBillCardPanel().setTailItem("doperatordate", _getDate());}三.表单默认执行方法以及常用的操作//自定义按钮处理事件,在自定义按钮的时候会定义一个值,根据传过来的值判断处理哪个事件执行哪个方法,在MyEventHandler类protected void onBoElse(int intBtn) throws Exception {}* 表单编辑protected void onBoEdit() throws Exception {}*表单删除protected void onBoDelete() throws Exception {}* 表单保存protected void onBoSave() throws Exception {}* 表单取消protected void onBoCancel() throws Exception {}* 表单编辑后事件UI类中public void afterEdit(BillEditEvent evt) {super.afterEdit(evt);String colStr = evt.getKey();int rowCount = evt.getRow();}* 表单编辑前事件UI类中public boolean beforeEdit(BillEditEvent evt) {String colStr = evt.getKey();If(colStr.equals(“字段名”)){return false;}//设置某一个字段不可编辑// TODO自动生成方法存根return super.beforeEdit(arg0);}* 表单标签改变事件UIpublic void afterTabChanged(BillTabbedPaneTabChangeEvent arg0) {String TabName = arg0.getBtvo().getTabcode();System.out.println(TabName);if (TabName.equals("fk_cm_contract1") || TabName.equals("fk_cm_contract2")) { //设置标签fk_cm_consub可编辑this.getBillCardPanel().getBillModel("fk_cm_consub").setEnabled(true);//设置当选中fk_cm_contract1这个标签时,子表的第一个标签到选中显示this.getBillCardPanel().getBodyTabbedPane().getModel().setSelectedIndex(0);//设置标签fk_cm_consub不可编辑this.getBillCardPanel().getBillModel("fk_cm_conisub").setEnabled(false);}* UI类中行改变事件public void bodyRowChange(BillEditEvent ev) {// TODO 自动生成方法存根super.bodyRowChange(ev);int a = ev.getRow();//得到当前选中的行int a = this.getBillCardPanel().getBillTable().getSelectedRow();String b = this.getBillCardPanel().getBodyValueAt(行号, "字段值");}四.在报表中显示合计行protected void onQuery() throws Exception{String pk_corp = this.getCorpPrimaryKey();//设置表头面板显示表头查询条件和打印时表头显示信息createConditionAndHeadPrintInfo();//显示查询结果CircularlyAccessibleValueObject[]results= getQueryResult(port);ReportBaseVO tvo = new ReportBaseVO();tvo.setAttributeValue("port","合计");//添加合计if(results != null && results.length>0){CircularlyAccessibleValueObject[]nvos=newCircularlyAccessibleValueObject[results.length+1];UFDouble totalnum = new UFDouble(0);for(int i=0;i<results.length;i++){totalnum= totalnum.add((UFDouble)results[i].getAttributeValue("shuliang"));nvos[i]=results[i];}tvo.setAttributeValue("shuliang",totalnum);nvos[results.length]=tvo;getReportBase().setBodyDataVO(nvos);this.getReportBase().setBodyValueAt("合计",results.length,"port");}if(results==null||results.length<=0){getReportBase().setBodyDataVO(results);showHintMessage("没有可显示数据");}}}五.在UI类中设置小数位数public ArrearsComStaUI(){ super.setTitleText("欠款单位表");//设置小数位数:this.setColumnDecimal(newString[]{"carnum","tonnum","jsmoney","yingkuids","yunfei","qitafy","amount"}, new int[]{0,0,0,0,0,0,0});或是:this.getReportBase().getBody_Item("quan").setDecimalDigits(0);}六.将表体数据清空this.getBillCardPanel().getBillModel().clearBodyData();七.设置字段是否可编辑的状态/* 发运开始日期结束日期编辑控制在运输方式是地销时可编辑其他不可编辑if(colStr.equals("conveytype")){String str = this.getBillCardPanel().getHeadItem("conveytype").getValue();if(str != null && !str.trim().equals("")){if(ITargetPrimaryID.CARCONVEYANCE_CONVEY.equals(str)){this.getBillCardPanel().getHeadItem("startdate").setEnabled(true);this.getBillCardPanel().getHeadItem("enddate").setEnabled(true);}else{this.getBillCardPanel().setHeadItem("startdate",null);this.getBillCardPanel().setHeadItem("enddate",null);this.getBillCardPanel().getHeadItem("startdate").setEnabled(false);this.getBillCardPanel().getHeadItem("enddate").setEnabled(false);}}} 八.在UI类中编写方法打印查询条件protected void createConditionAndHeadPrintInfo() {this.showCondition(this.createConditionsFromConditionVO(this.getQryDlg().getConditionVO()));this.updateUI();}九.弹出提示框MessageDialog.showOkCancelDlg(getDyApplyPlanUI(), "提示", "你确定要下发该单据吗?")//弹出对话框nc.ui.pub.beans.MessageDialog.showHintDlg(getBillUI(), "提示", "客户基本档案更新成功!!");十.在报表中得到查询面板的值protected void onQuery() throws Exception {getQryDlg().showModal();if (getQryDlg().getResult() == QueryDLG.ID_OK) {//取得查询日期String port = null;//港口ConditionVO[] cndvos = getQryDlg().getConditionVO();for(int i=0;i<cndvos.length;i++){if("port".equals(cndvos[i].getFieldCode())){port = cndvos[i].getValue().trim();}}十一.比较时间的开始与结束时间if(pareTo(enddate) > 0){g etSetInBalPriceUI().showErrorMessage("【起始日期】不能超过【结束日期】!");return;}十二.设置编辑公式// 表体显示公式String[]bodyForm=newString[]{"sys_shipper_id->getColValue(zk_sys_organ,sys_organ_id,sys_organ_id,sys_shipper_id)" };for (int i = 0; i < assayInfo.length; i++) {super.onBoLineAdd();//增行//为表体某一行赋值getSetInBalPriceUI().getBillCardPanel().setBodyValueAt((String)assayInfo[i].getAttributeValue( "laiyangdanwei"), i, "sys_shipper_id");//执行表体公式getSetInBalPriceUI().getBillCardPanel().getBillModel().execFormulas(i, bodyForm);// }十三.清空缓冲数数据getBufferData().clear();十四. 在UI类中设置查询对话框的默认值格式:2009-01protected QueryDLG createQueryDLG() {ZBReportBaseDLG dlg = new ZBReportBaseDLG();dlg.setTempletID(getUIControl()._getPk_corp(), getUIControl()._getModuleCode(), getUIControl()._getOperator(), null);dlg.setValueRef("sdate", getQueryYearMonth());dlg.setValueRef("edate", getQueryYearMonth());// 设置默认的选择当前年QueryConditionVO[] qryvos = dlg.getConditionDatas();for (int i = 0; i < qryvos.length; i++) {if (qryvos[i].getFieldCode().equals("sdate")) {qryvos[i].setValue(this.getClientEnvironment().getDate().toString().substring(0,7));} if (qryvos[i].getFieldCode().equals("edate")) {qryvos[i].setValue(this.getClientEnvironment().getDate().toString().substring(0,7));}} return dlg;}十五. 管理型界面单据各个类的继承关系前台界面类:ClientUI extends BIllManageUI1. 重写父类方法protected BusinessDelegator createBusinessDelegator()返回前台界面业务委托类的具体实现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.得到选中的表体行数,列数等内容(总行数和当前选中的行数) ...................................... 2 二.设置初始化界面时的默认值 ................................................................................................... 3 三.表单默认执行方法以及常用的操作 ....................................................................................... 3 四.在报表中显示合计行 ............................................................................................................... 4 五.在UI类中设置小数位数 ........................................................................................................ 5 六.将表体数据清空 ....................................................................................................................... 5 七.设置字段是否可编辑的状态 ................................................................................................... 5 八.在UI类中编写方法打印查询条件 ......................................................................................... 6 九.弹出提示框 ............................................................................................................................... 6 十.在报表中得到查询面板的值 ................................................................................................... 6 十一.比较时间的开始与结束时间 .................................................................................................. 7 十二.设置编辑公式 .......................................................................................................................... 7 十三.清空缓冲数数据getBufferData().clear(); ..................................................................... 7 十四. 在UI类中设置查询对话框的默认值 .................................................................................. 7 十五. 管理型界面单据各个类的继承关系 .................................................................................... 8 十六.是否显示行号,合计行,数组按钮,隐藏列 ...................................................................... 8 十七. 根据单据的不同状态来控制按钮的可用性。 .................................................................... 9 十八. UI工厂开发单据模式下如何自定义按钮? ...................................................................... 10 十九.需要设置动作脚本的六个按钮 ............................................................................................ 11 二十. 单据界面设置某些字段的显示与隐藏 .............................................................................. 11 二十一. 单据开发的一般步骤: .................................................................................................. 11 二十二. 界面数据访问 .................................................................................................................. 12 二十三.导出与导入数据库 ............................................................................................................ 12 二十四.list map set的操作 ............................................................................................................ 12 二十五. 改变焦点自动显示表头金额的值 .................................................................................. 13 二十六.设置行选中的状态 ............................................................................................................ 13 二十七,初始进入时默认显示卡片界面或列表界面 ................................................................. 14 二十八,在MyEventHandler类中,在onBoSave()中验证必输项 .............................................. 14 二十九.多页签得到某一页签到的行数 ........................................................................................ 15 三十,判断日期的前后 ................................................................................................................. 15 三十一.验证表头的必输项不能为空 ............................................................................................ 16 三十二,执行表体编辑公式 ......................................................................................................... 16 三十三,ECLIPSE中代码不显示行号 ........................................................................................ 17 三十四,在ECLIPSE中添加反编译 ........................................................................................... 17 三十五,编辑后事件的处理 ......................................................................................................... 17 三十六,编辑前事件的处理 ............................................................................................................ 17 三十七。编辑事件设某一个字段不能编辑 ................................................................................. 18 三十八.在保存的时候,验证表体不能为空/ .................................................................................. 18 三十九.删除表体某一行触发的事件 ............................................................................................ 18 四十,UI类中初始化设置 ........................................................................................................... 18 四十一,YES OR NO 对话框 ...................................................................................................... 19 四十二.得到选中的行数与得到选中行数的行号的数组,数组以0开头 ................................ 19 四十三.对VO的操作,聚合VO,得到表体,表体某一个页签的VO ................................... 19 四十四.添加一个自定义的按钮 .................................................................................................... 20