com.zhuozhengsoft.pageoffice.excelreader
类 Workbook

java.lang.Object
  继承者 com.zhuozhengsoft.pageoffice.excelreader.Workbook

public class Workbook
extends java.lang.Object

Workbook 类代表一个Excel文档,用来读取用户输入到Excel表格中的数据。

Workbook 对象是PageOffice开发平台定义的Excel数据读取对象。com.zhuozhengsoft.pageoffice.excelreader.Workbook 对象只能在 PageOfficeCtrl.SaveDataPage 指定的页面中创建,只能读取那些在打开文档时被设置了SubmitName的 Cell 和 Table 中的数据。

版本:
2.0
作者:
北京卓正志远软件有限公司

构造方法摘要
Workbook(HttpServletRequest request, HttpServletResponse response)
          初始化 Workbook 类的新实例。
 
方法摘要
 void close()
          关闭 Workbook 对象并返回保存成功的消息。
 java.lang.String getFormField(java.lang.String name)
          获取 PageOfficeCtrl 控件所在页面指定的Form控件的值。
 java.util.ArrayList<Sheet> getSheets()
          获取控件提交的 Sheet 集合。
 Sheet openSheet(java.lang.String sheetName)
          打开指定的工作表,并返回 Sheet 对象。
 void setCustomSaveResult(java.lang.String value)
          设置开发者自定义保存结果。
 void showPage(int width, int height)
          在浏览器里弹出对话框显示HTML格式的自定义保存结果。
 
从类 java.lang.Object 继承的方法
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

Workbook

public Workbook(HttpServletRequest request,
                HttpServletResponse response)
         throws java.lang.Exception,
                java.io.IOException
初始化 Workbook 类的新实例。 Workbook 对象只能在 PageOfficeCtrl.SaveDataPage 指定的页面中创建,只能读取那些在打开文档时被设置了SubmitName的 Cell 和 Table 中的数据。

抛出:
java.lang.Exception
java.io.IOException
方法详细信息

setCustomSaveResult

public void setCustomSaveResult(java.lang.String value)
设置开发者自定义保存结果。

下面的示例展示如何使用 CustomSaveResult 属性。

 Workbook wb = new Workbook(request, response);
 Sheet sheet1 = wb.openSheet("sheet1");
 String strCompanyName = sheet1.openCell("CompanyName").getValue();
 //保存读取到的数据到数据库
 
 wb.setCustomSaveResult("我的返回值");
 wb.close();
 

然后在控件所在的 JSP 页面里定义的 JavaScript 保存函数(自定义保存按钮触发)里获取自定义保存结果。

 <script language="javascript" type="text/javascript">
     function SaveDocument() {
         document.getElementById("PageOfficeCtrl1").WebSave();
         alert(document.getElementById("PageOfficeCtrl1").CustomSaveResult);//您可以判断CustomSaveResult编写自己的代码逻辑。
     }
 </script>
 


getSheets

public java.util.ArrayList<Sheet> getSheets()
                                     throws java.io.IOException,
                                            java.lang.Exception
获取控件提交的 Sheet 集合。

抛出:
java.io.IOException
java.lang.Exception

openSheet

public Sheet openSheet(java.lang.String sheetName)
                throws java.io.IOException,
                       java.lang.Exception
打开指定的工作表,并返回 Sheet 对象。 If the specified worksheet exists, this method will return a ExcelReqSheet object.

参数:
sheetName - Sheet 的名称。Sheet的名称可以在工作表的底部Tab标签上找到。
返回:
返回 Sheet 对象。
抛出:
java.io.IOException
java.lang.Exception
另请参见:
Sheet.openCell()方法中的示例代码。

close

public void close()
           throws java.io.IOException
关闭 Workbook 对象并返回保存成功的消息。

保存文档数据的代码成功执行后,您必须调用此方法关闭 Workbook 对象。

抛出:
java.io.IOException
另请参见:
Sheet.openTable()方法中的示例代码。

showPage

public void showPage(int width,
                     int height)
              throws java.io.IOException
在浏览器里弹出对话框显示HTML格式的自定义保存结果。

如果您需要弹出HTML格式的自定义保存结果对话框,您需要调用此方法。 对话框里显示的内容是 SaveDataPage 返回的页面。默认情况下,SaveDataPage 页面什么也不显示。您需要在 SaveDataPage 页面里设计友好的提示信息。

参数:
width - 对话框的宽度,以像素为单位。
height - 对话框的高度,以像素为单位。
抛出:
java.io.IOException
另请参见:
Sheet.openTable()方法中的示例代码,学习如何使用 ShowPage 方法在浏览器里显示自定义保存错误对话框。

getFormField

public java.lang.String getFormField(java.lang.String name)
                              throws java.io.IOException,
                                     java.lang.Exception
获取 PageOfficeCtrl 控件所在页面指定的Form控件的值。

当 PageOfficeCtrl 提交文档时,您可以调用此方法获取PageOfficeCtrl 控件所在页面里Form控件的值。

注意:为了获取Form控件的值,Form控件必须包含 name 属性。

这里的Form控件包括输入框、下拉框、单选框、复选框、TextArea、隐藏域等类型的控件。

下面的示例展示如何使用 getFormField 获取 PageOfficeCtrl 控件所在页面Form域里的指定Form控件的值。

 Workbook wb = new Workbook(request, response);
 String strSubject = wb.getFormField("EditSubject"); 
 //保存读取到的数据到数据库
 Sheet sheet1 = wb.openSheet("sheet1");
 String strCompanyName = sheet1.openCell("CompanyName").getValue();
 wb.close();
 

参数:
name - Form控件的名称(name)。
返回:
返回Form控件的值。
抛出:
java.io.IOException
java.lang.Exception