public void testExport() throws Exception { String[] headers = {"数据", "字符", "日期", "日历", "是否", "null"}; String[] properties = {"INT", "CHAR", "DATE", "CALENDAR", "BOOL", "NULL"}; DolphinObject obj; List data = new ArrayList(10); for (int i = 1; i < 10; i++) { obj = new DolphinObject(); data.add(obj); obj.setProperty(properties[0], i); obj.setProperty(properties[1], "你好" + i); obj.setProperty(properties[2], new Date()); obj.setProperty(properties[3], new GregorianCalendar()); obj.setProperty(properties[4], true); obj.setProperty(properties[5], null); } IConvertor converter = (IConvertor) PureFactory.getBean("SimpleConvertor"); DolphinExportGoods goods = new DolphinExportGoods(); goods.setName("你好"); goods.setHeaders(headers); goods.setData(data, properties, converter); BufferedOutputStream bos = null; try { IExporter exporter = new ExcelExporterImpl(); bos = new BufferedOutputStream(new FileOutputStream("export.xls")); exporter.export(bos, goods); System.out.println("Excel file created: " + new File("export.xls").getAbsolutePath()); } finally { goods.clear(); if (bos != null) bos.close(); } }
public static String getRemindNoticeText() throws PureException { INoticeMgr mgr = (INoticeMgr) PureFactory.getBean("INoticeMgr"); Notice notice = mgr.getNotice("project$all"); if (notice == null) return ""; NoticeItem item = notice.getItem("hurry"); return item == null ? "" : item.getText(); }
public static void setRemindNoticeText(String _sText) throws PureException { INoticeMgr mgr = (INoticeMgr) PureFactory.getBean("INoticeMgr"); Notice notice = mgr.getNotice("project$all"); if (notice == null) notice = new Notice("project$all"); NoticeItem item = notice.getItem("hurry"); if (item == null) { item = new NoticeItem("hurry"); notice.getItems().put("hurry", item); } item.setText(_sText); mgr.updateNotce(notice); mgr.store(); }
/** Exports object list. */ protected ActionForward doExport() throws PureException { SearchForm thisform = (SearchForm) form; IObjects exObjs = null; try { // 1. to fetch the objects collection if (thisform.getExportMode() == SearchForm.EX_MODE_SELECTED && thisform.getExportIds() != null) { Class entityClass = thisform.getEntityMetadata().getEntityClass(); IContentMgr mgr = ArkContentHelper.getContentMgrOf(entityClass); if (!isFromTemp()) { exObjs = mgr.lookupByIds(thisform.getExportIds()); } else { String strSQL = "SELECT * FROM " + thisform.getEntityMetadata().getTempTable() + " WHERE {this.id} IN (" + thisform.getExportIds() + ")"; ISession session = LocalContextHelper.currentSession(); IStatement query = session.createQuery(strSQL, entityClass, 0); try { exObjs = query.executeQuery(); } finally { query.clear(); } } } else { exObjs = getIObjects(); } // 2. to prepare the columns ListHelper lh = new ListHelper(); lh.setSenery(getScenery()); List baseCols = thisform.getColunms(); String sClassName = exObjs.getElementClass().getName(); if (baseCols == null || baseCols.size() < 1) { baseCols = lh.prepareBase(exObjs.getElementClass().getName()); } lh.setSenery(getExportSenery()); lh.setAct("content"); List colInfos = lh.prepareColsInfo(baseCols, getInclude(), getExclude(), null, sClassName, false); String[] headers = new String[colInfos.size()]; String[] properties = new String[colInfos.size()]; SceneryContext sceneryContext = null; try { boolean bUsePropertyName = (thisform.getExportType() == ExportHelper.TYPE_XML); String sHeader; for (int i = 0; i < colInfos.size(); i++) { ColumnInfo colInfo = (ColumnInfo) colInfos.get(i); if (bUsePropertyName) { sHeader = colInfo.getOldName(); } else { sHeader = colInfo.getTitle(); if (sHeader.indexOf('$') >= 0) { if (sceneryContext == null) { IDVContextFactory factory = (IDVContextFactory) PureFactory.getBean("IDVContextFactory"); DolphinObject obj = (DolphinObject) exObjs.getElementClass().newInstance(); sceneryContext = factory.createSceneryContext(obj, getExportSenery(), "plain.default"); } sHeader = Executer.execute(ScriptReader.readBlock(sHeader), sceneryContext); } } headers[i] = sHeader.replaceAll("[\\\\\\[\\]\\?/<>]+", "_"); properties[i] = colInfo.getName(); } } catch (Exception ex) { throw new PureException(ArkExceptionTypes.EXPORT_CONTENTS, "failed to get the headers", ex); } finally { if (sceneryContext != null) { sceneryContext.clear(); } colInfos.clear(); } // 3. to prepare the data IConvertor convertor = new ExportConvertor(getExportSenery(), "content"); DolphinExportGoods goods = new DolphinExportGoods(); goods.setType(thisform.getExportType()); goods.setName(getTitle()); goods.setHeaders(headers); goods.setData(exObjs, properties, convertor); // 4. to return request.setAttribute("export", goods); return mapping.findForward("guest-export"); } finally { LocalContextHelper.closeSession(); } }