setSaveDataPage
设置 PageOffice 控件的数据保存页面。
此属性是 PageOfficeCtrl 控件的重要属性。SaveDataPage 页面用来接收 PageOfficeCtrl 控件提交的用户输入的数据。如果您需要保存用户输入到文档中的数据,您就必须在调用 webOpen 之前给 SaveDataPage 属性赋值。
调用 webOpen 方法之前,创建 com.zhuozhengsoft.pageoffice.word.WordDocumentWriter 或 com.zhuozhengsoft.pageoffice.excel.WorkbookWriter 对象指定要提交的DataRegions、Cells 或 Tables 并且调用 setWriter 方法设置数据对象。
如果当前文档是Word文档,webOpen 方法中的 OpenMode 参数必须设置为 OpenModeType.docSubmitForm。如果当前文档是Excel文档,webOpen 方法中的 OpenMode 参数必须设置为 OpenModeType.xlsSubmitForm。
给 SaveDataPage 属性赋值后,您需要创建 SaveData 页面用来接收 PageOfficeCtrl 控件提交的数据。在 SaveData 页面里,您需要创建 com.zhuozhengsoft.pageoffice.word.WordDocumentReader 或 com.zhuozhengsoft.pageoffice.excel.WorkbookReader 对象用来接收控件提交的用户输入数据。
当 PageOfficeCtrl 控件保存文档的时候,PageOfficeCtrl 控件首先提交文档中需要提交的数据到指定的 SaveDataPage 页面,然后再提交文档到指定的 SaveFilePage 页面。
如果 SaveDataPage 属性没有赋值,控件就不会提交文档中的指定数据。如果 SaveFilePage 属性没有赋值,控件就不会提交文档。 如果 SaveDataPage 属性和 SaveFilePage 属性都没有赋值,PageOfficeCtrl 控件会报错。
语法:
public void setSaveDataPage(java.lang.String saveDataPage)
参数:
saveDataPage
- 无默认值。SaveDataPage 属性的值是用来接收控件提交用户输入数据的服务器页面的URL。
这里的URL可以是相对于当前页面的相对地址,也可以是http开头的绝对地址。相对URL可以是相对于当前页面的地址,也可以是以"/"开头的相对于整个Web应用程序根的地址。
注意:如果URL采用http开头的绝对地址,您必须确保这个地址和当前页面同属于一个网站。
示例:
Word 示例代码:
WordDocumentWriter doc = new WordDocumentWriter();
DataRegionWriter dataRegion = doc.openDataRegion("name");
dataRegion.setEditing(true);
poCtrl.setSaveDataPage("savedata.jsp");
poCtrl.setWriter(doc);
poCtrl.webOpen("doc/test.doc", OpenModeType.docSubmitForm, "Jack");
Excel 示例代码:
WorkbookWriter wb = new WorkbookWriter();
ExcelCellWriter cell1 = wb.openSheet("Sheet1").OpenCell("B2");
cell1.setSubmitName("ItemCount");
poCtrl.setSaveDataPage("savedata.jsp");
poCtrl.setWriter(wb);
poCtrl.webOpen("doc/test.xls", OpenModeType.xlsSubmitForm, "张三");