TRS+WCM二次開發(fā)文檔_第1頁
TRS+WCM二次開發(fā)文檔_第2頁
TRS+WCM二次開發(fā)文檔_第3頁
TRS+WCM二次開發(fā)文檔_第4頁
TRS+WCM二次開發(fā)文檔_第5頁
已閱讀5頁,還剩108頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、trs+wcm二次開發(fā)文檔trs wcm二次開發(fā)文檔第1頁1文檔概述7ii文檔的建立71.2 文檔的適用范圍71.3 文檔的組織71.4 文檔的目標(biāo)81.5 文檔術(shù)語91.6 我們的建議92閱讀前的準(zhǔn)備102.1 安裝 trs wcm v65 應(yīng)用102.2 安裝 eclipse102.3 導(dǎo)入 trs wcm developer 工程102.4 運行方法10101011133 wcm持久化實現(xiàn)3.1 概述3.2 集合和元素創(chuàng)3.3 集合和元素進階3.4 集合和元素的產(chǎn)生14341配置ant運行環(huán)境143.4.2 mwcmstudio7/e153.5 查詢sql描述對象wcmfilter.16

2、trs wcm二次開發(fā)文檔第3頁3.6查詢讀取指定條件的數(shù)據(jù)20212222233.10.1判斷指定id是否在集合中233.10.2.獲取指定位置的元素3.7 刪除指定的數(shù)據(jù)3.8 新增數(shù)據(jù)3.9 修改數(shù)據(jù)3.10 集合常用操作26243.10.3獲取指定id的元素24310.4從集合中移除指定位置的元素,不從數(shù)243.10.5從集合中移除指定id的元素,不從數(shù)據(jù)3.11 元素常用操作253.11.1.根據(jù)id獲取指定元素對象253.2判斷指定對象是否可以被當(dāng)前用戶修改253.12數(shù)據(jù)類型trs wcm二次開發(fā)文檔第3頁3.13如何操作沒有對應(yīng)持久化對象的表3.14 常犯錯誤24253.14.

3、1 構(gòu)造wcmfilter包含關(guān)鍵字253.14.2 構(gòu)造wcmfilter時sql各部分順序反了263.14.3 .構(gòu)造wcmfmer時漏了要提取的字段263.14.4 構(gòu)造wcmfilter時指定的字段在元素對應(yīng)的表中不存在.26273.14.6.查詢數(shù)據(jù)采用了低效方式28.權(quán)限判斷返回不是預(yù)期的值3.14.5 根據(jù)業(yè)爭取元素采用集合方式3.14.8 集合移除操作需要從后往前29303.15 常見問題3.15.1 每次會否需要領(lǐng)用戶303.15.2.如何分頁讀取集合數(shù)據(jù)303.75.3 多表聯(lián)合查詢怎么辦313.15.4.不同的查詢條件和排序條件如何合并31345.5如何

4、規(guī)避sql注入323.15.6是否支持從其它表中提取數(shù)據(jù)323.15.7.如果查詢語句要有333.15.8.如果新增段,如果使用象讀取3059構(gòu)時候是指定三個參數(shù)會出現(xiàn)什么情況.4 wcm分層介紹344.1持久層4.2業(yè)務(wù)層4.3服務(wù)層3435365如何使用服務(wù)層375.1概述37trs wcm二次開發(fā)文檔第35頁5.2使用步驟4153實戰(zhàn)1獲取固定欄目的文檔415.4 實戰(zhàn)2汨文檔455.5 實戰(zhàn)3處理參數(shù)和服務(wù)要求的參數(shù)名不一致475.6 實戰(zhàn)4僅顯示狀態(tài)為已發(fā)的文檔.485.7 實戰(zhàn)5使用多個服務(wù)516如何撰寫服務(wù)層536.1撰寫步驟536.l1實現(xiàn)合適的接口iservicep,ouid

5、er或者其 壬類536.l3撰寫服務(wù)層測試用例、5355556.l2撰寫配置文件6.2常用api6.2.1 保存法中將傳入的參數(shù)都設(shè)置到對象中.6.2.2 查詢(query)服務(wù)中將頁面?zhèn)魅氲膮?shù)56組合成wcmfilter7在 wcm 中注入項目特性578給wcm換一個表現(xiàn)575757582hello,北9置標(biāo)擴展9.2理解trs wcm 置標(biāo)9.1閱讀建議9.3 置標(biāo)解析器(parser) 9.5如何獲取置標(biāo)上設(shè)置的屬性9.4 ahhello, world!京/上海/廣州!9.6 如何獲取置標(biāo)所處語境頁面對象的信息-hello,站點 xxx/欄目 xxx/文檔 xxx!99.7 如何獲取置

6、標(biāo)所處語境當(dāng)前相關(guān)對象的信息顯示文檔作者的聯(lián)系電話9.8 wcm置標(biāo)屬性規(guī)范981 id9.8.1 field983num9.8.4 autoformatautoformattype9.9 常用的方法991根據(jù)置標(biāo)id上設(shè)置的屬性獲取相關(guān)的欄 旦169.9.2根據(jù)置標(biāo)設(shè)置的屬性獲取相關(guān)的欄且171818993獲取當(dāng)前頁面所在路徑994獲取指定對象的http路徑、9.95 獲取文檔的httpurl (第一頁)18 996計算一個地址相對于當(dāng)前頁面的相對地 址189.96 8按照置標(biāo)屬性設(shè)定的要求轉(zhuǎn)義字符串.189.97 9將文件分發(fā)到分發(fā)點上199.98 10將置標(biāo)可以很指定的欄目建立觸發(fā)發(fā)布

7、,2210附錄23101附錄1: wcm常用的持久化對象及對應(yīng) 的表2310.2 附錄2:數(shù)據(jù)類型2410.3 附錄3:服務(wù)調(diào)用對象jsprequestprocessor26常用fao27104 附錄 4: publishtagcontext 常用介紹3010.4.1獲取置標(biāo)屬性set attribute)3010.4.2 獲取置標(biāo)所處語境頁面對象(火 etpaweelement) 3110.4.3 獲取置標(biāo)所處語境當(dāng)前對象(getupperhost) 32trs wcm二次開發(fā)文檔trs, 2011-02-201文檔概述1. 1文檔的建立/本文檔是專門針對wcm產(chǎn)品的二次開發(fā) 而編寫的指導(dǎo)性

8、手冊;它從設(shè)計原理和應(yīng)用 實踐兩個方面詳細(xì)闡述了有關(guān)二次開發(fā)中 所涉及的問題。,本文檔是由trs wcm產(chǎn)品開發(fā)組共同建 立和維護的。在實際的應(yīng)用中,wcm開發(fā) 組有義務(wù)不斷更新和補充完善本文檔。1.2文檔的適用范圍所有內(nèi)容適用于trs wcm v6.0以上版本。wcm持久化實現(xiàn)和業(yè)務(wù)邏輯層開發(fā)可適用于 trs wcm v5.2wcm持久化實現(xiàn)可適用于trs wcmv5.0/5.11. 3文檔的組織/本文檔在內(nèi)容組織上,注重設(shè)計原理和應(yīng)用 實踐兩個方面并重。因為我們認(rèn)為,理解設(shè) 計原理是更好應(yīng)用的基礎(chǔ),也是較深層的二 次開發(fā)所必須了解的內(nèi)容。/本文檔在布局上,按照下面的方式安排: 首先闡述wc

9、m開發(fā)平臺的持久哈,它 是應(yīng)用和擴展wcm的最基礎(chǔ)、最核心 的內(nèi)容; 然后分別闡述了 wcm分層架構(gòu), 最后重點討論。1.4文檔的目標(biāo)在閱讀完本文檔后,您應(yīng)當(dāng)明確理解和掌握的 內(nèi)容是:/如何應(yīng)用wcm持久化框架操作數(shù)據(jù)庫中數(shù)據(jù);/如何擴展wcm持久化對象/如何熟練應(yīng)用wcm中有關(guān)任務(wù)和計劃調(diào)度、工作流、發(fā)布等關(guān)鍵性的擴展性支持開 發(fā);/如何熟練解決wcm應(yīng)用開發(fā)中的一些問題。/最終:您應(yīng)當(dāng)能夠熟練掌握和應(yīng)用本文檔中 所有wcm擴展開發(fā)內(nèi)容。1. 5文檔術(shù)語eclipse:對象:實例:見xxx.xxx():為參考工程中實例方法1. 6我們的建議在閱讀和學(xué)習(xí)本文檔時,我們建議您注重以下 方面:1

10、.從設(shè)計原理上去理解和把握wcm解決關(guān)鍵問題的思路和方法;2 .多做練習(xí),在練習(xí)中理解wcm對象模型的體系結(jié)構(gòu)和建構(gòu)原則,并熟練應(yīng)用該模型 解決實際問題和擴展應(yīng)用。3 .在較短的時間內(nèi),迅速完成本文檔中所有涉 及到的關(guān)鍵性開發(fā)問題;如果把一切問題都待實際應(yīng)用開發(fā)中去做,往往會事倍功半。2閱讀前的準(zhǔn)備2.1安裝trs wcm 65應(yīng)用2. 2 安裝 eclipse2. 3 導(dǎo)入 trs wcm developer 工程1 .從ftp上下載工程2 .在eclipse中導(dǎo)入工程3 .修改工程中數(shù)據(jù)庫配置文件,指向新裝的wcm數(shù)據(jù)庫4 .修改工程的注冊碼,將wcm65應(yīng)用中的注冊碼更新到工程中2. 4

11、 example中示例方法運行方法如下圖所示,在方法上點擊回右鍵runas-junit test assign worxmg6vcm.v6.5.devekrc。 toggle method breakpoint3 com.trsrun as5documentdebug as,examplecompare with,ej documercp|accw;th coarestore fromlocal history.dfwt7 query2q : void31jv 1 ju nit testalt+shift+x, t. g-trun configurations.(xxx)紙目(docunten

12、c = null) aont1nue;41 imi 方t;記:x or wy?京1tem.out.println(doctitle: + document.get for3 wcm持久化實現(xiàn)2.1 概述應(yīng)用系統(tǒng)首先需要解決持久化問題,就是如何 將關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換成java對象;很多 系統(tǒng)利用hibernate開源框架解決,wcm開發(fā)平臺是自主研發(fā)的持久化框架o她的特點是“集合、元素”、“分頁載入”、“先 載入id再讀取數(shù)據(jù)”、“拆分sql”如何利用wcm持久化框架操作關(guān)系數(shù)據(jù)庫 中的數(shù)據(jù)是一切的基礎(chǔ),所以讀懂和擴展wcm 先從這里開始。3. 2集合和元素初始select doctitle

13、,docld,cruser from wcmdocument where docld=l and docld=l and dqcld=l and docld=10,hdoctitle zdocid,cruserh);/ 2發(fā)出查詢請求,獲取結(jié)果對應(yīng)的集合documents documents = documents.openwcmobjs(null, filter);/ 3遍歷集合,輸出每條記錄的數(shù)據(jù)for (int i = 0 z nsize = documents.size() ; i save、insert、update delete remove均會調(diào)用父類中方法與數(shù)據(jù)庫交互,產(chǎn)生預(yù)期

14、的結(jié)果,與數(shù)據(jù)庫操作都定義在超級父類baseobj中,使用者不用關(guān)心數(shù) 據(jù)庫細(xì)節(jié)與數(shù)據(jù)庫耦合主要在于wcmfilter (查詢語 句的構(gòu)造上)元素對象都必須以公開靜態(tài)常量的方式定義對應(yīng)的表和id字段名,id的字段類型必須是整型ublic class document extends cmsobj /常是定義小對象類型(605) 7public final static int obj_type- 605;/“對象所對應(yīng)的數(shù)據(jù)表名7public final static string db_table_name = wcmdocument”;/*對象數(shù)據(jù)存儲的id字段名7public final

15、 static string db_id_name =doqd”;uiipui i win. xini a. ulix. ua iauat)c. t-,spublic class test extends cjisdbj a*對象類型編號*/public final static int gbj.type = 166485363;/*對象物捉存儲的薊抿隹名因public final static strin; db_table_nahe = wchtest、/*對象數(shù)據(jù)存儲的id字翳fpublic final static string db id m頌e = testid;/*構(gòu)造圖數(shù).:保

16、留默認(rèn)接口 */3. 4集合和元素的產(chǎn)生可利用 wcmstudio產(chǎn)生,wcmstudio從內(nèi)網(wǎng)獲?。恢荒苓\行在windows環(huán)境中;3.4.1 配置ant運行環(huán)境下載ant介質(zhì),解壓將ant配置到系統(tǒng)的path中進入cmd窗口,運行ant命令看到如下結(jié)果, 證明成功,否則重新配置:sb 管理員:c:windowssys.tem 32cmd.exemicrosoft uindovs 版本 6.1,7601j版權(quán)所有 2009 microsoft cohpoiation 保留所有權(quán)利c:usersscaohuiant buildfile: build.xml does not exist? bu

17、ild failed3.4.2 利用wcmstudlo產(chǎn)生代碼下載介質(zhì),解開直接點擊運行3*; acuw6utt a gee&a-5fi*q cuf &t-klstj/w mmw. /k/ 易csvmil 0 : j 3,an口i”局悻加無在右側(cè)project節(jié)點點擊右鍵今新建packagee q szoject少com/ ih-jl) con/ ,jd test2白至trsr-sj hai o -3d :”c .c ldxx(h il d.一1在新的package上點擊右鍵今新建javabean點擊新的對象,依次在屬性列表中通過右鍵“添加”新建屬性,其中頁面顯示不關(guān)注:序性設(shè)置j點擊保存,然

18、后點擊生成代碼,系統(tǒng)將產(chǎn)生:元素和集合對應(yīng)的java類(在。trs.wcm.devsrc 中)創(chuàng)建數(shù)據(jù)庫的腳本buildfila: d:xvostuliobui:d zn:*scnar&ta:jave2 log4no appencers could be found for locger r (coa trs. xvcz. tcastudio. ceneratns3cxvigefagece?.javaz ic4j:wasn please initielise the los4j systez piopexly.(java!或二生前工件r . ;tf.s r.xv.srcmoat”i2itas:

19、 javajava?求m生怠工俘,.itfs cx. dv.srccoate5t2;tests. javajava;我喧生我工1多,.、tfs rat. v.contdzt.taitsxtazt_asdcc:t. jspjav 我h生或文件:.-.ies. z3. ccv.5antazttast2tczt-addcclt.二二1lave:玄關(guān)生或工件:.ies.cc order select;其中:這四部分的關(guān)鍵字都不能在參數(shù)中設(shè)置from如果不指定,默認(rèn)為持久化對象對應(yīng)的表名;select不指定,默認(rèn)為/錯誤的代碼1,帶了關(guān)鍵字where和selectwcmfilter filter = n

20、ew wcmfilter(mhz -where docld=lz select doctitie , dodd, crusern );/錯誤的代碼2, where和order反了wcmfilter filter = new wcmfilter(nh, -docld desch z ndocid=lz doctitle zdocidzcruserh);一般為了規(guī)避sql注入,不再推薦見where 中直接寫查詢條件,需要改為?的方式,比如查 詢曹輝創(chuàng)建的文檔,id小于10的wcmfilter 建議這么寫:wcmfilter filter = new wcmfilter(hncruser=? doc

21、ld=10n r ndoctitle zdocidzcruser*);3. 6查詢讀取指定條件的數(shù)據(jù)實現(xiàn)步驟:1 . 了解要操作的表對應(yīng)的集合對象(比如文檔對應(yīng)為document),見附錄1:附錄1: wcm常用的持久化對象及對應(yīng)的 表2 .構(gòu)造查詢語句并設(shè)置查詢用到的參數(shù)3 .通過對應(yīng)的集合對象發(fā)出查詢請求,獲取結(jié) 果對應(yīng)的集合4 .遍歷集合,逐個讀取元素的屬性如何分頁顯示見常見問題描述章節(jié):如何分頁 讀取集合數(shù)據(jù)示例代碼(讀取admin發(fā)布的id小于10的文檔),見 documentexample.query2():/ 1構(gòu)造查詢語句并設(shè)置where用到的參數(shù)wcmfilter filte

22、r = new wcmfilter(z cruser=? docld=?zdoctitle zdocidruser);filter addsearchvalues(nadminm;filter.addsearchvalues(10);/ 2通過對應(yīng)的集合對象發(fā)出查詢請求,獲取結(jié)果對應(yīng)的集合documents documents = documents.openwcmobjs(null, filter);/ 3遍歷集合,輸出每條記錄的數(shù)據(jù)for (int i = 0, nsize = documents.size(); i = 0);3.10.2 獲取指定位置的元素相關(guān)方法:baseobjs.g

23、etat(int)示例代碼:/獲取指定文檔集合中第三條記錄的文檔int nlndex = 2;document document = (document)documents.getat(nlndex);3.10.3 獲取指定id的元素相關(guān)方法:baseobjsegetbyid(int)示例代碼:/獲取指定文檔集合中指定文檔工d為23的文檔int ndocid = 23;document document = (document)documents.getbyld(ndocid);3.10.4 從集合中移除指定位置的元素,不從數(shù)據(jù)庫刪除相關(guān)方法:baseobjs.removeat(int, bo

24、olean)示例代碼:/移除指定文檔集合中第三條記錄的文檔int nlndex = 2;documents.removeat(nlndex, false);3.10.5 從集合中移除指定id的元素,不從數(shù)據(jù)庫刪除相關(guān)方法:baseobjseremove(int, boolean)示例代碼:/移除指定文檔集合中工d為23的文檔int ndodd = 23;documents . remove(ndocidf false);3. 11元素常用操作3.1.1 根據(jù)id獲取指定元素對象相關(guān)方法:findbyld(int)示例代碼(所有元素對象都要求定義了這個方 法):/ 1產(chǎn)生元素對象的實例int n

25、docid = 23;document document = document.findbyjd(ndocid);3.1.2 判斷指定對象是否可以被當(dāng)前用戶修改所有元素對象都支持鎖定操作,防止被其它用 戶修改,如果a用戶鎖定了指定元素對象d,那 么b用戶就不可以修改指定元素對象d;支持鎖定的元素對象一般都是從cmsobj繼承而來相關(guān)方法:cmsobj.canedit(user)示例代碼:/ 2判斷是否可以修改 boolean bcanedit = document . cailedlt (loginuser);3.12數(shù)據(jù)類型wcm所有元素對象都是從baseobj繼承而 來,支持:通過通用方法

26、getproperty讀取屬性通過通用方法setproperty設(shè)置屬性和數(shù)據(jù)庫中字段類型對應(yīng)關(guān)系見附錄:附拈 數(shù)據(jù)類型3. 13如何操作沒有對應(yīng)持久化對象的表按照wcm開發(fā)平臺約定,wcm db中所有的表都有對應(yīng)的集合和元素,但是不可避免有些表沒有對應(yīng)的java對象,為了解決這類問題,系統(tǒng)提供一個通用的集合和元素對象:集合:com.trs.infra.persistent.cmyresultsets元素:com.trs.infra.persistent.cmyresultset(查詢文檔com.trs.example.cmyresultsetsexample.query documents(

27、):/指定查詢的sqlstring ssql = hselect doctitle,docld from wcmdocvunent where docid10000;/指定這次查詢相關(guān)的sql/如果確定這次查詢沒有明確id字段,系統(tǒng)支持將記錄行號作為工d string sldfieldname = ndocidm;/發(fā)出查詢獲取集合cmyresultsets amyresuitesets = new cmyresultsets(); amyresultesets.open(ssql, sldfieldname);/遍歷輸出結(jié)果(hfind + amyresultesets

28、.size() + record!h);for (int i = 0; i =ln , hselect doctitiezdocld,cruserh;3.14.2 構(gòu)造wcmfilter時sql各部分順序反了/錯誤的代碼2, where和。rder反了wcmfilter filter = new wcmfilter ( , docld desc , ,docid=l, “ doctitle zdocld, cruser1);3.14.3 構(gòu)造wcmfilter時漏了要提取的字段/錯誤代碼3:需要提取的字段沒有在select中wcmfilter filter3 = new wcmfilter(h

29、, ndocid=l and docid=10h, hdocid desc , hdocidzcruser11);documents documents = documents.openwcmobjs(null, filter3);for (int i = 0, nsize = documents.size(); i =l and docid=10h,- dodd desc-, -doctitle2 ,docld,cruserh;documents = documents , openwcmobjs(null, filter4);for (int i = 0, nsize = document

30、s.size(); i nsize; i+) document document = (document) documents.getat(i);if(document = null)/永遠(yuǎn)是走到這個邏輯上system, out .printin (hwcmfiltermi? ?); continue;/永遠(yuǎn)走不到這個邏輯system.out.printin(ndoctitle: ” + document.gettitle();/ end for在后臺將會看到這樣的異常輸出:err-1100裝載指定頁(0)失敗(ponents.wcm.content.persistent.documents

31、ensurepageloaded)err-40裝載指定頁失敗(ponents.wcm.content.persistent.document s ,loadpage) : sql=select doctitle2 z docldf cruser from wcmdocument where docid in(?f ?, ?, ?, ?z ?z ?z ?z ?z ?) =l and docid=10h rdocuments documents = documents , openwcmobjs(null, filter); for (int 1=0, nsize = documents.size

32、(); i =l and docidcruser;這樣構(gòu)造文檔對象,雖然提取字段少了,高效 了,但權(quán)限判斷可能會出現(xiàn)問題:int ndocid = 23;document document = document.findbyid(ndoctdfndocid, doctitle, cruser, docchannel ”);應(yīng)該這樣構(gòu)造:int ndocid = 23;document document = document.findbyid(ndoctdf hdocid z doctitle n;3.14.8 集合移除操作需要從后往前在某些場景下,需要遍歷集合中所有元素,如 果符合某些條件,將

33、元素從集合中移除;經(jīng)常看 到有些代碼從0開始操作,這樣很容易出現(xiàn)一些 元素被略過處理,如果倒數(shù)第二個元素是被溢出 還會出現(xiàn)下標(biāo)溢出情況。這是任何java集合操作都需要規(guī)避的問題, 不是wcm強制規(guī)則;/錯誤代碼:下標(biāo)不應(yīng)該遞增for (int i = 0 z nsize = documents.size() ; i =0; i-) document document = (document) documents.getat(i); if (hasright(document)continue;documents . removeat (i z false); / end for3.15常見問題

34、3.15.1 每次打開集合是否需要傳遞用戶如果不執(zhí)行刪除所有的操作(removeall),所有 集合查詢時要求傳入的用戶都可以指定為null3.15.2 如何分頁讀取集合數(shù)據(jù)實現(xiàn)步驟:1 . 了解要操作的表對應(yīng)的集合對象(比如文檔 對應(yīng)為document),見附錄1:附錄1: wcm常用的持久化對象及對應(yīng)的 表2 .構(gòu)造查詢語句并設(shè)置查詢用到的參數(shù)3 .通過對應(yīng)的集合對象發(fā)出查詢請求,獲取結(jié) 果對應(yīng)的集合4 .構(gòu)造分頁對象5 .遍歷集合,使用分頁對象決定邊界,逐個讀取元素的屬性示例代碼(讀取admin發(fā)布的id小于10的文檔,僅僅顯示第2頁的數(shù)據(jù),分頁大小為3),見 documentexamp

35、le.query2():/ 1構(gòu)造查詢諳句并設(shè)置where用到的參數(shù)wcmfilter filter = new wcmfilter(z cruser=? docld=?, ndoctitle zdocidzcruserh);filter , addsearchvalues (nadmin*); filter.addsearchvalues(10);/ 2通過對應(yīng)的集合對象發(fā)出查詢請求,獲取結(jié)果對應(yīng)的集合 documents documents = documents.openwcmobjs(null, filter);/ 3構(gòu)造分頁對象int npagesize = 15; / 分頁大小in

36、t ncurrpagelndex = 2; /當(dāng)前顯示第幾頁,從工開始 cpager pager = new cpager(npagesize);pager , setltemcount(documents , size(); pager , setcurrentpagelndex(ncurrpagelndex);/ 4遍歷集合,輸出每條記錄的數(shù)據(jù)for (int i = pager. getfirstltemlndex () ; i pager.getlastltemlndex(); i+) document document = (document) documents.getat(i - 1); if (document = null) continue;/元素的屬性也可通過getxxx獲取system.out.printin(ndoctitle: + document.gettitle(); / end for3.15.3 多表聯(lián)合查詢怎么辦3.15.4 不同的查詢條件和排序條件如何合并可利用wcmfilter的合并方法支持將sql語 句合并,例如有兩個查詢語句,一個是根據(jù)trs wcm二次開發(fā)文檔第39頁

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論