java 實現不一樣用戶編輯 word 文檔的不一樣區域

1:需求web

    案例分析: 員工寫了一篇文案 . 須要各位領導須要填寫各自的意見 .服務器

2:方案:code

    不一樣的用戶編輯不一樣區域的方法, orm

    核心思想:  pageoffice 提供了指定區域是否可編輯的方法server

在這兒解釋一下DataRegion.
DataRegion也就是word 文檔中的書籤.能夠看看下面連接中DataRegion具體的描述blog

https://www.kancloud.cn/pageoffice_course_group/pageoffice_course/663125文檔

3:具體代碼get

(1):調用PageOffice在線打開word文件,好比:test.docit

(2):設置不一樣的用戶編輯不一樣的區域(設置數據區域是否可編輯)io

String userName = request.getParameter("userName");
	//***************************卓正PageOffice組件的使用********************************
	WordDocument doc = new WordDocument();
	//打開數據區域
	DataRegion dTitle = doc.openDataRegion("PO_title");
	//給數據區域賦值
	dTitle.setValue("某公司第二季度產量報表");
	//設置數據區域可編輯性
	dTitle.setEditing(false);//數據區域不可編輯

	DataRegion dA1 = doc.openDataRegion("PO_A_pro1");
	DataRegion dA2 = doc.openDataRegion("PO_A_pro2");
	DataRegion dB1 = doc.openDataRegion("PO_B_pro1");
	DataRegion dB2 = doc.openDataRegion("PO_B_pro2");

	//根據登陸用戶名設置數據區域可編輯性
	//A部門經理登陸後
	if (userName.equals("zhangsan")) {
		userName = "A部門經理";
		dA1.setEditing(true);
		dA2.setEditing(true);
		dB1.setEditing(false);
		dB2.setEditing(false);
	}
	//B部門經理登陸後
	else {
		userName = "B部門經理";
		dB1.setEditing(true);
		dB2.setEditing(true);
		dA1.setEditing(false);
		dA2.setEditing(false);
	}

	PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
	poCtrl.setWriter(doc);


	//設置服務器頁面
	poCtrl.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必須
	
	poCtrl.setMenubar(false);
	//設置文檔打開方式
	poCtrl.webOpen("doc/test.doc", OpenModeType.docSubmitForm, userName); ******必須用submit 模式
相關文章
相關標籤/搜索