import { ParentService } from '../services/parent.service'; export declare class RecWindow { private log; protected mainTable: any; protected objStatus: number; mainObject: any; mainSrv: ParentService; protected childRelation: any; protected outRelation: any; protected curPage: number; protected pageCount: number; protected pageSize: number; protected recordCount: number; protected curRec: number; protected queryString: string; protected searchString: string; ownerWnd: RecWindow; app: string; protected wfenabled: boolean; orderby: string; actionlink: string; protected multiple: boolean; protected showmultiple: boolean; protected required: string[]; protected fldsigRequired: string[]; protected requiredFields: string[]; protected readonly: any[]; protected readonlyFields: any[]; protected readonlyList: boolean; hasException: boolean; protected wfActive: boolean; protected wfinstid: number; protected wfMyTaskActive: boolean; private searchList; constructor(); /** * 将web层的对象RecWindow传递到业务层 * 如果要对将变量和对象传递到业务层的必须写在RecWindow对象中 * 作者:潘立海 日期:2017-11-5 */ protected initMainSrv(): void; /** * 导出列表数据到EXCEL或者XML * 潘立海 2017-10-7 * @throws Exception */ exportExcel(): void; /** * 显示及绑定屏幕主表数据 * 潘立海 2017-8-31 * @throws Exception */ bandData(): void; /** * 设置主屏幕字段的授权,只读、必输 * @param objreadonly * @throws Exception * 潘立海 2017-8-16 下午06:37:21 */ protected sigMainData(objreadonly: boolean): void; /** * 调用字段授权设置屏幕字段权限 * 潘立海 2017-8-31 * @throws Exception * */ sigMainField(): void; /** * 根据字段授权信息设置字段的只读和必输 * 潘立海 2017-8-31 * @param fieldSigInfo */ sigFields(fieldSigInfo: any): void; /** * 是否启用工作流 * 潘立海 2017-11-1 * @return */ WFEnabled(): boolean; /** * 由子类继承,应用程序接口,在屏幕数据显示完后,在做屏幕字段授权之前 * 潘立海 2017-8-31 * @throws Exception */ initData(): void; /** * * 获取某个关系子表的数据,从关系中获取子表条件语句 * 潘立海 2017-8-2 下午01:52:21 * @param relname 关系名,同时也是子表的ID * @throws Exception */ fetchChildData(relname: string): void; /** * 刷新某个子表的数据,保持原来的子表过滤条件 * 潘立海 2017-8-31 * @param relname * @throws Exception */ refreshChildData(relname: string): void; /** * 刷新数据 * 潘立海 2017-8-31 * @throws Exception */ refreshData(): void; /** * 获取默认的查询过滤条件 * 潘立海 2017-8-31 * @param qStr * @throws Exception */ setQueryString(qStr: string): void; /** * 组合最终的查询条件 * 潘立海 2017-8-31 * @return * @throws Exception */ getQueryString(): string; /** * 设置自定义查询条件,只是在界面第一次打开的时候执行,以后就不执行了。 * 潘立海 2009-6-16 * @return * @throws Exception */ getDefaultQueryString(): string; /** * 设置全屏幕只读或者全屏幕非只读 * @throws Exception */ setAllReadonly(readonly: boolean): void; /** * 设置所有子表只读 * 潘立海 2008-1-28 * @param readonly */ setAllChildReadonly(readonly: boolean): void; /** * 设置某个子表只读 * 潘立海 2008-1-28 * @param readonly */ setChildReadonly(childid: string, readonly: boolean): void; /** * 用户点击列表上的排序后,调用该方法。 * 作者:潘立海 日期:2017-3-14 */ sortBy(field: string, ascending: string): void; /** * 设置系统主键字段在非添加的情况下为只读 * 潘立海 2017-8-31 * @param cmp */ setPrimarykeyFieldReadonly(cmp: any): void; /** * 产生字段的自动编号,产生方法 genAutokey("大写的字段名") * @param colname 需要产生自动编号的字段,大写 * @return String * @throws Exception * 潘立海 2017-8-5 下午03:18:44 */ genAutokey(tablename: string, colname: string): string; /** * * 根据结果集配置的字段ID,获取字段值或者关联表的数据,自定义format * 潘立海 2017-8-4 下午12:15:37 * @param mObject 主对象 * @param relfield 需要获取值的字段名,可以是:字段 或者 关系名.字段 * @return String * @throws Exception */ getFieldValue(mObject: any, relfield: string, format: string): string; /** * * 通过关系获取一对一关联的数据库实体对象,该实体对象具有值。 * 潘立海 2017-8-2 下午06:13:22 * @param mObject 要获取关联的数据的主表实体对象 * @param ibr 一对一的关系名 * @return 返回带值的数据库实体对象 * @throws Exception */ getObjectByRelation(mObject: any, ibr: any): any; /** * 关闭目前的window窗口 * 潘立海 2017-8-31 * @return */ closeWindow(): boolean; /** * 菜单授权 * 潘立海 2017-8-31 */ protected sigMenu(): void; /** * 弹出窗口的方法类,不指定弹出窗口的父级窗口,都将以Component topWnd = topPage.getFellow("topWnd")为父窗口 * 因此在命名空间上将存在唯一ID的限制,不能使用该方法级联弹出多个窗口 * 潘立海 2017-8-22 上午10:22:25 * @param mainObject 要传递的主对象 * @param dialogPage 窗口的页面文件地址 * @param queryString 过滤条件-当弹出应用程序主窗口时,可以将过滤条件传递过去,进行数据的过滤限制 * @param param 需要传递给弹出窗口的参数 * @return * @throws Exception */ popupDialog(mainObject: any, dialogPage: any, queryString: any, param: any): any; /** * 显示指定页面的DIALOG窗口,需要指定弹出窗口的父级窗口Component parentcmp * 潘立海 2017-8-22 上午10:22:25 * @param parentcmp 弹出窗口的父窗口 * @param mainObject 要传递的主对象 * @param dialogPage 窗口的页面文件地址 * @param queryString 过滤条件 * @param param 需要传递给弹出窗口的参数 * @return * @throws Exception */ popupDialogOn(parentcmp: any, mainObject: any, dialogPage: any, queryString: any, param: any): any; /** * 通过应用程序名弹出应用程序界面,并定位到指定的记录。 * 潘立海 2009-10-17 * @param appname 应用程序名,如pr,po等 * @param linkString 通过条件定位到指定的记录,如wonum='1022' 或 id=122等 * @param param HashMap参数,可以传递到弹出窗口中 * @return * @throws Exception */ popupAppLinkByname(appname: any, linkString: any, param: any): any; /** * 通过应用程序的页面地址打开并定位到指定的记录 * 潘立海 2009-10-17 * @param appPage 应用程序对应的xul页面地址,如/workorder/workorder.xul * @param linkString 通过条件定位到指定的记录,如wonum='1022' 或 id=122等 * @param param HashMap参数,可以传递到弹出窗口中 * @return * @throws Exception */ popupAppLink(appPage: any, linkString: any, param: any): any; /** * 设置字段为非必输 * @param cmp * 作者:潘立海 日期:2017-3-18 */ setNoRequired(cmp: any): void; /** * 设置字段为必输 * @param cmp * 作者:潘立海 日期:2017-3-18 */ private setRequired(cmp); /** * 设置字段为只读 * @param cmp * 作者:潘立海 日期:2017-3-18 */ setReadonly(cmp: any): void; /** * * 设置字段为非只读 * @param cmp * 潘立海 2017-8-25 */ setNoReadonly(cmp: any): void; /** * * 屏幕字段鼠标焦点移动调用事件,从屏幕传递过来的事件对象 * @param component * @throws Exception * 潘立海 2017-8-25 */ fieldBlur(component: any): void; /** * * 屏幕字段修改后调用事件,在该方法中进行数据绑定、关联字段显示、调用字段类action方法、 * 更改字段修改状态 * @param component * @param boolean toLoadBind 标识是否加载绑定里面的信息到界面上,对于修改字段的修改是要加载的toloadbind=true * 对于修改字段带动的其他字段的修改时,其他字段值虽然改变了,但是不加载绑定信息到界面上,等修改字段一起加载。 * @throws Exception * 潘立海 2017-8-31 */ fieldChange(component: any, toLoadBind: any): void; /** * 屏幕字段修改后调用事件 * @param event 从屏幕传递过来的事件对象 * @throws Exception * 作者:潘立海 日期:2006-12-14 public fieldChange(Event event) :void { Component component = event.getTarget(); this.fieldChange(component); } */ /** * 单击高级搜索按钮,弹出高级搜索窗口 * @throws Exception * 作者:潘立海 日期:2017-4-16 */ searchmore(): void; /** * * 标记修改 * @throws Exception * 潘立海 2017-8-31 */ modify(): void; /** * * 判断是否可以进行记录行编辑状态的改变 * @param targetStatus * @return * @throws Exception * 潘立海 2017-8-31 */ protected canChangeObjStatus(targetStatus: any): boolean; /** * * 更改目前记录行编辑状态 * @param targetStatus * @throws Exception * 潘立海 2017-8-31 */ protected changeObjStatus(targetStatus: any): void; /** * * 应用程序链接跳转 * @param param * @throws Exception * 潘立海 2017-8-31 */ applink(param: any): void; /** * * 运行报表配置程序配置好的报表,默认的运行报表链接: * http://地址/webReportServer?reportlet=报表路径&id=xxx&corpnum=xxx&sitenum=xxx&sitenum2=xxx&其他参数... * id=xxx&corpnum=xxx是每张具有地点级或者组织的表都会默认带过去的 * sitenum和sitenum2后面的字符串格式是根据不同授权,传递相应的参数 * 报表的参数接收: * select * from xxx where id='[?id?]' and corpnum='[?corpnum?]' and sitenum [?sitenum|like '%'?] * @param rptname 报表名称 * @param rptpath 报表路径 * @throws InterruptedException * 潘立海 2017-8-19 下午06:29:06 */ runreport(rptname: any, rptpath: any, userParam: any): void; /** * 帮助文档 * 潘立海 2008-8-12 */ runhelp(): void; /** * * 点击字段右键-字段帮助 * @param keyparam * 潘立海 2017-8-31 * @throws Exception * @throws */ fieldattr(keyparam: any): void; /** * * 潘立海 Dec 21, 2009 * @param boxid public viewstruct(String boxid) throws Exception { //Messagebox.show("消息框:" + boxid); Component cmp = this.getFellow(boxid); if(cmp instanceof IBandbox) { IBandbox bandbox = (IBandbox) cmp; String fldname = Util.fieldidToColname(boxid); int pos = boxid.indexOf("."); String fldtable = boxid.toUpperCase(); if(pos>0) fldtable = boxid.substring(0,pos).toUpperCase(); String fldvalue = bandbox.getValue(); //TableInfo tableInfo = (TableInfo) IBSServer.getIBSServer().getIbstablesinfo().get(fldtable); Ibstablecols colinfo = IBSServer.getIBSServer().getIbstablecols(fldtable, fldname); if(colinfo!=null) { String listname = colinfo.getListname(); ListInfo listinfo = (ListInfo) IBSServer.getIBSServer().getIbslistinfo().get(listname); Ibslisttable listtable = listinfo.getIbslisttable(); if(listtable!=null) { String tablename = listtable.getTablename(); } } } } */ /** * * 更新数据列表的分页信息 * 潘立海 2017-8-22 下午06:20:29 */ updatePageNav(): void; /** * * 获取人员信息 * @return * 潘立海 2017-8-31 */ getLaborInfo(): void; /** * * 获取用户信息 * @return * 潘立海 2017-8-31 */ getUserInfo(): void; /** * * 根据传递过来的主对象,获取该对象的ID,然后通过服务类的findById方法从数据库中重新提取数据 * @param objtmp 主对象 * @return 重新从数据库中获取的主对象,如果没有,则返回原来的对象 * @throws Exception * 潘立海 2017-8-2 下午05:59:10 */ getMainObjectByObject(objtmp: any): void; /** * * 返回目前主对象的ID * @return * @throws Exception * 潘立海 2017-8-2 下午05:59:10 */ getMainObjectId(): void; /** * 根据数据库表中对象,初始化一个新对象 * 作者:潘立海 日期:2017-5-29 */ getNewMainObject(): void; /** * 附加文档 * 潘立海 2017-11-10 * @throws Exception */ attachDoc(readonly: any): void; /** * 用户接口 * 在保存方法之前被调用 * 返回true-执行保存动作,返回false-不保存 * 潘立海 Nov 14, 2009 * @return * @throws Exception */ beforeSave(): boolean; /** * 保存记录 * @throws Exception * 作者:潘立海 日期:2006-12-14 */ save(): void; /** * 用户接口 * 保存方法执行后调用用户接口 * 潘立海 Nov 14, 2009 * @throws Exception */ afterSave(): void; showchart(rptname: any): void; /** * 根据自定义的文件名,打开并编辑图形文件 * 如果图形文件不存在,会自动创建,并打开编辑器,编辑完后直接保存即可。 * 潘立海 2017-11-16 * @param fileName * @param editable * @throws Exception */ editDraw(fileName: any, editable: any): void; /** * 取出图形文件,自动显示PNG预览图片 * 界面上必须有控件