/**
* 批量导出照片
* add by majie 2013-01-18
*/
public void batchExportPic(){
GeneralVO[] vos = getSelectPsnListData();
if(vos == null || vos.length == 0)
return;
//只能选择目录
getFileDirChooser().setFileSelectionMode(javax.swing.JFileChooser.DIRECTORIES_ONLY);
int userOperate = getFileDirChooser().showSaveDialog(this);
if (userOperate == 0) {// 0:保存,1:撤销
File file = getFileDirChooser().getSelectedFile();
if (file == null) {
nc.ui.pub.beans.MessageDialog.showHintDlg(this,
nc.ui.ml.NCLangRes.getInstance().getStrByID("600700",
"UPP600700-000108")/* @res "警告" */,
nc.ui.ml.NCLangRes.getInstance().getStrByID("600700",
"UPP600700-000109")/* @res "您没有选择要下载的目录!" */
);
return;
}
//文件名称,照片byte[]
Map<String,byte[]> map = new HashMap<String,byte[]>();
String id = null;
String psnname = null;
byte[] data = null;
GeneralVO[] picVO = null;
for(int i=0;i<vos.length;i++){
id = (String) vos[i].getAttributeValue("id");
psnname = (String) vos[i].getAttributeValue("psnname");
try {
picVO = HIDelegator.getPsnInf().queryByPsnPK((String) vos[i].getAttributeValue("pk_corp"),(String)vos[i].getAttributeValue("pk_psnbasdoc"));
} catch (BusinessException e) {
e.printStackTrace();
}
if(picVO != null && picVO.length > 0){
data = (byte[])picVO[0].getFieldValue("photo");
}
if(data != null && data.length > 0){
map.put(id+psnname,data);
}
}
if(map.size() == 0){
nc.ui.pub.beans.MessageDialog.showHintDlg(this, "警告","选择的员工均没有照片");
return;
}
Iterator<String> fileNames = map.keySet().iterator();
String filePath = null;
String key = null;
byte[] bts = null;
FileOutputStream outstream = null;
while(fileNames.hasNext()){
key = fileNames.next();
filePath = file+File.separator+key+".jpg";
bts = map.get(key);
try {
outstream = new FileOutputStream(filePath);
outstream.write(bts);
outstream.flush();
outstream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
nc.ui.pub.beans.MessageDialog.showHintDlg(this, "提示","导出完成");
}
}
发表评论
-
NC客户化开发群 75930309
2014-01-02 12:37 4NC客户化开发群 75930309 -
NC二次开发群 75930309
2014-01-02 12:36 3NC二次开发群 75930309 用友NC二次开发群 75 ... -
北京用友NC二次开发群75930309
2013-12-05 00:23 13北京用友NC二次开发群 75930309 用友NC二次 ... -
NC参照客户化开发设置
2013-05-08 13:56 2352NC参照客户化开发设置 1. ... -
NC自定义参照开发方法
2013-05-08 13:57 5381自定义参照开发规范 自定义参照可以定义参照的UI界 ... -
设置业务锁
2013-05-08 13:57 804//设置业务锁 boolean loc ... -
单据开发步骤
2013-05-08 13:57 11900. 做单据(字段不能变): 名称 编码 数据库模型 ... -
单据动作执行脚本标准写法示例
2013-05-07 22:11 1111单据动作执行脚本标准写法示例 ************** ... -
NC代码中执行公式方法
2013-05-07 22:09 1451/** * 公式查询 * * @param tabl ... -
NC人员信息维护中任职记录顺序按照日期顺序排序解决方法
2013-05-07 22:06 1111--修改任职信息表中的信息 --备份任职信息表create ... -
常用数据库表操作语句
2013-05-07 22:04 536为表增加字段的方法: alter tabl ... -
NC单据开发的一般步骤
2013-05-07 21:56 1839单据开发的一般步骤: 1. 数据建模,生成数 ... -
各种各样的选中和行编辑问题
2013-05-06 11:01 11921.各种各样的选中,以及代码设置选中以及得到选中行的 ... -
NC审批流涉及的表
2013-05-06 11:01 2017---审批流涉及的表 select * from p ... -
oracle中dblink 的创建方法
2013-05-06 11:02 639oracle中dblink ... -
NC报表导出Excel的工具类
2013-05-06 11:03 1015package nc.ui.fh.des.excel; ... -
导出Excel的工具类,对BillListPanel进行导出
2013-05-06 11:03 924package nc.ui.fh.des.excel; ... -
FTP工具类,在NC客开过程中遇到使用ftp的可以直接使用
2013-05-05 18:16 818package nc.bs.ht.ftp; import ... -
NC全选全消按钮实现方法
2013-05-05 18:07 1197//全选 publicvo ... -
NC平台添加自定义按钮组步骤
2013-05-05 18:05 3102NC平台添加自定义按钮组步骤 1,在ICust ...
相关推荐
系统通常支持批量导入和导出数据,方便企业进行人事档案的维护。此外,系统还能够记录员工的入职、转正、晋升、离职等职业生涯关键节点,便于追踪员工的发展历程。 二、招聘管理 招聘管理模块帮助人力资源部门发布...
7. **宏与VBA编程**:对于更复杂的操作,可以编写VBA(Visual Basic for Applications)宏,自动化处理如批量更新员工信息、自动生成晋升报告等功能。 8. **链接与引用**:如果公司有其他系统或数据库,可以通过...
在实际操作中,确保使用正确的用户权限执行导入,并且在导入后及时清理临时文件,以维护数据库的安全性。 综上所述,本实例展示了如何利用Neo4j的Cypher语言和脚本工具进行大批量数据导入,以及如何构建和优化复杂...
表单建模功能作为泛微OA的一项重要更新,旨在通过简单配置即可实现数据模块的搭建,无需专门的开发工作,从而大幅降低二次开发成本并提高系统的可维护性。 #### 功能描述 表单建模功能主要针对企业内部常见的数据...
- **子集管理**:分类存储自定义信息,批量导入和导出数据,按关键词查询。 - **统计报表**:自动生成多维度统计报表,如人员结构、流动情况、年龄、学历、性别比例等。 - **基础设置**:允许自定义字段、子集,...
同时,支持批量导入功能,减少手动输入的工作量。 - **审核流程定义单元**:采用可视化编辑器,允许管理员根据实际情况灵活调整业务流程,支持多种条件分支和循环结构,提高系统的灵活性。 - **审核步骤单元**:每个...
本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作...
本文档详细阐述了北京神州数码思特奇信息技术股份有限公司的开发流程,以BBS帖子批量导入功能为例,指导开发者如何进行操作。 **一、申请OPCODE** 在开发开始之前,开发者需要向相关负责人申请OPCODE。通过发送邮件...
1. PA30事务码:这是SAP中进行个人主数据维护的标准事务码,用于处理员工的社会保险信息。在这里,可以录入和更新员工的社会保险编号、参保类型、缴费基数、比例等相关信息。对于新入职员工,需要在系统中输入他们的...
1. **员工信息管理**:软件支持批量导入或逐个录入员工基本信息,包括姓名、身份证号、入职日期、工资基数等,便于进行社保费用计算。 2. **社保费用计算**:根据国家及地方的社保政策,自动计算每个员工每月应缴的...