版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1. 功能概述如何使伙伴二次開發(fā)的程序很好地和U8產(chǎn)品集成在一起?需要滿足什么條件的程序才能和門戶集成?如何開發(fā)一個滿足這個條件的程序?本文將為您解答這些問題。2. 名詞解釋功能:調(diào)整菜單位置;新增、修改、刪除菜單(除U8系統(tǒng)菜單外)。菜單調(diào)整工具在UAP中,通過菜單“工具>菜單調(diào)整工具”進入。位置:在U8安裝目錄的Portal目錄里。該文件其實是一個xml文件,可以用任何文本編輯器打開。其內(nèi)容描述了雙擊每個末級菜單項目時需要調(diào)用的物理程序。在872版本里,idt.dll并不在安裝盤里,而是U8門戶第一次運行時通過UFSystem.UA_IDT表里的內(nèi)容動態(tài)生成的。當UFSystem.U
2、A_IDT有變化時,U8門戶會重新生成idt.dll文件。有了這種機制后,菜單調(diào)整工具就可以通過維護UFSystem.UA_IDT里的內(nèi)容,從而達到維護idt.dll的目的。3. 如何開發(fā)可與門戶集成的VB dll引用工程UFPortalProxyInterface文件位置:U8安裝路徑相關(guān)代碼修改clsProductFacade文件為門戶的入口文件,即在idt.dll文件后assembly項所對應的類名。如下所描述的:<idt id=Test01 type=0 assembly=TestU8Prj.clsProductFacade/>assembly屬性描述的對應類要實現(xiàn)接口IL
3、oginalbe。比如idt.dll中描述了如下信息:<idt id=Test01 type=0 assembly=TestU8Prj.clsProductFacade/>則要在clsProductFacade中實現(xiàn)ILoginable接口。即用代碼:然后在該接口的實現(xiàn)函數(shù)中轉(zhuǎn)發(fā)調(diào)用原先工程中的Login,CallFunction,Logoff三個方法,具體參見后附的例子。在左樹啟動一項命令時依次調(diào)用Login和CallFunction。在門戶退出或在權(quán)限管理中結(jié)束該產(chǎn)品時調(diào)用LogOff。子系統(tǒng)必須自己維護是否已經(jīng)進行了子系統(tǒng)登錄過程,業(yè)務系統(tǒng)須維護子系統(tǒng)是否已經(jīng)登錄。Login
4、對象從g_business中通過調(diào)用GetVBclsLogin方法獲得。各接口含義如下:1、Login接口( Private Function ILoginable_Login() As Boolean ),不管彈出的是模式窗體還是非模式窗體,此接口在成功登錄后須返回True,而且要保證登錄成功后,第二次調(diào)用此接口時也要返回True。只有在登錄失敗后方可返回False。也就是說此接口返回值的含義是是否已經(jīng)成功登錄子系統(tǒng)。2、LogOff接口( Private Function ILoginable_LogOff() As Boolean ),此接口的含義是執(zhí)行LogOff過程,如查成功使該子系
5、統(tǒng)牌LogOff狀態(tài)返回True,否則返回False。也就是說,如果該子統(tǒng)還未登錄,則真接返回False就可以了。如果系統(tǒng)處于已經(jīng)登錄的過程,則執(zhí)行業(yè)務組原有所需的LogOff過程,如果執(zhí)行功能,正確LogOff了子系統(tǒng),則返回True,否則返回False。如果在實際程序中沒有此過程,則直接返回True即可。3、CallFunction接口(Private Function ILoginable_CallFunction() As Boolean)。如果861產(chǎn)品沒有子系統(tǒng)登錄過程的產(chǎn)品,此值須返回True.4、對于顯示模式窗體的產(chǎn)品,如果已經(jīng)申請了任務,請在模式窗體退出時自已清除任務。實現(xiàn)這
6、三個方法的例子如下:Private Function ILoginable_Login() As BooleanIf g_bLogined = True ThenILoginable_Login = TrueExit FunctionEnd IfIf (Not g_business Is Nothing) And g_bLogined = False) ThenDim oLoginTmp As ObjectSet oLoginTmp = g_business.GetVBclsLogin()Set g_oLogin = oLoginTmpILoginable_Login = Login(oLog
7、inTmp)If (ILoginable_Login = True) Theng_bLogined = TrueEnd IfElseILoginable_Login = Not g_business Is NothingEnd IfEnd FunctionPrivate Function ILoginable_LogOff() As BooleanIf (g_bLogined = True) ThenILoginable_LogOff = LogOff()If (ILoginable_LogOff = True) Theng_bLogined = FalseEnd IfElseILoginab
8、le_LogOff = TrueEnd IfEnd Function.1增加Business屬性可讀可寫,且對大小寫敏感。此屬性維護一個對于此業(yè)務工程全局變量,以實現(xiàn)和VB程序和870Portal的交互。參考實現(xiàn)如下:Public Property Get Business() As ObjectSet Business = g_businessEnd PropertyPublic Property Set Business(busVal As Object)Set g_business = busValEnd Property.2增加全局變量新建一module文件,并加入如下全局變量:Pub
9、lic g_business As ObjectPublic g_bLogined As Boolean三種窗體.1修改嵌入Portal的窗體文件原來有MdiExtender控件的窗體要嵌入Portal的窗體修改方法:調(diào)用CreateFormEnv方法調(diào)用ShowForm方法每個窗體都要有方法ExitForm.2修改第一次彈出就是模態(tài)的窗體可以直接使用通過采用VB窗體的Form.Show (vbModal)的方式,也調(diào)用ShowForm方法來顯示此窗體。.3由嵌入Portal的窗體彈出的窗體,不作修改,如果是模式窗體,請在此窗體上加入UFFormPartner控件 UFToolbar的修改.1
10、在Settoolbar之前將g_business傳入.2在Settoolbar之前設(shè)置Tag信息設(shè)置微軟Toolbar每個Button的Tag信息調(diào)用CreatePortalToolbarTag方法設(shè)置示例button.Tag = CreatePortalToolbarTag(“ICON_NEW”,”ICOMMON”,”PortalToolbar”) 注意: 嚴禁創(chuàng)建多次人機工程部給出完整的圖標,并制定相應文件的命名規(guī)格放在%U8SOFT%的icons目錄下直接使用圖標的文件名(不需擴展名)常用(ICOMMON):如打開、保存等編輯(IEDIT):如增行、拷貝單元格等處理(IDEAL):如審核
11、、分單等查詢(ISEARCH):如過濾、聯(lián)查等PortalToolbar,目前填入此值即可。.3在窗體的Unload事件中加入Set UFToolbar1.Business = Nothing中間過程.1判斷窗體是否打開FormIsOpened.2設(shè)置并激活某個已經(jīng)存在的窗體SetFormActive.3在顯示過程中(窗體已經(jīng)顯示)關(guān)閉自身窗體CloseForm程序已經(jīng)修改,雙擊門戶節(jié)點時沒有反應,調(diào)用狀態(tài)進不了VB程序;未正確修改clsProductFacade文件;窗體已經(jīng)嵌入到Portal中,但Toolbar的相關(guān)信息未轉(zhuǎn)移到門戶的工具欄上;是否正確設(shè)置了每個Button的Tag信息;
12、ShowForm顯示嵌入Portal的窗體Public Function ShowForm(ByVal obj As Object, ByVal SubID As String, ByVal sKey As String, Optional modalable As Boolean = False, Optional DockToProtal As Boolean = True, Optional ByVal vfd As Object) As Stringobj: Form對象;SubID: 子產(chǎn)品號;sKey: Key,注意不能是form的Hwnd,在窗體的生命周期中,此值必須唯一;mod
13、alable: 該窗體是否為Model窗口;DockToProtal : 是否要嵌入到Portal中;vfd: 由CreateFormEnv對象的返回對象; CreateFormEnv初始化嵌入Portal的環(huán)境Public Function CreateFormEnv(ByVal sKey As String, ByRef formObj As Object) As VBFormDescriptorsKey: Key,注意不能是form的Hwnd,在窗體的生命周期中,此值必須唯一;formObj: Form對象 CloseForm關(guān)閉一個已經(jīng)打開的窗體Public Function Clos
14、eForm(ByVal sKey As String, ByVal obj As Object)sKey: Key,注意不能是form的Hwnd,在窗體的生命周期中,此值必須唯一obj: Form對象。FormIsOpened判斷某個Key值的窗體是否已經(jīng)打開Public Function FormIsOpened(ByVal sKey As String)sKey: Key,注意不能是form的Hwnd,在窗體的生命周期中,此值必須唯一;CreatePortalToolbarTag創(chuàng)建Toolbar的Tag信息Public Function CreatePortalToolbarTag(Im
15、age As String, actionSet As String, toolbarType As String) As StringImage按鈕的圖片actionSet分組toolbarType分組Toolbar的類型SetFormActive使某個窗口成為當前窗口Public Function SetFormActive(ByVal sKey As String, ByVal obj As Object)sKey: Key,注意不能是form的Hwnd,在窗體的生命周期中,此值必須唯一obj: Form對象菜單的多語名稱,將在U8左樹菜單里顯示如果是文件夾這里選否這里選擇VB DLLV
16、B DLL時,此項無效。輸入VB DLL 的完整類名稱。自動生成。4. 如何開發(fā)可與門戶集成的.NET User C user control與門戶集成需要建立實現(xiàn)INetUserControl接口的組件此處項目名稱為繼承門戶中類NetLoginable在該項目中添加以下DLL的引用U8安裝路徑Framework.dllU8安裝路徑Interop.dll U8安裝路徑Interop.dll U8安裝路徑PortalU8安裝路徑PortalU8安裝路徑Portal在項目中新建一個類,該類需要繼承類NetLoginable,并重寫其中的兩個方法,示例如下:publicoverr
17、ideobject CallFunction(string cMenuId, string cMenuName, string cAuthId, string cCmdLine)INetUserControl mycontrol = newMyNetUserControl(); mycontrol.Title = "SSSS"base.ShowEmbedControl(mycontrol, cMenuId, true);returnnull;publicoverridebool SubSysLogin()Return true;4.3 實現(xiàn)接口INetUserControl
18、在項目中再新建一個類,該類實現(xiàn)接口INetUserControl,INetUserControl接口有三個屬性(EditorPart、EditorInput、Title)和三個方法(CreatControl、CreatToolbar、CloseEvent),詳細說明:EditorPart屬性原型聲明:NetEditorEditorPart get;set;對于二次開發(fā)人員 ,這個是只讀屬性,嚴禁為該屬性賦值。通過這個屬性,二次開發(fā)人員可以訪問UAP表單在門戶中顯示的頁簽對象,可以執(zhí)行頁簽關(guān)閉等操作。4.3.2EditorInput屬性原型聲明:NetFormInputEditorInput g
19、et;set;對于二次開發(fā)人員 ,這個是只讀屬性,嚴禁為該屬性賦值。通過這個屬性,二次開發(fā)人員可以訪問門戶工具欄上的按鈕。 Title屬性原型聲明:stringTitle get;set;對于二次開發(fā)人員,可以設(shè)置這個屬性,設(shè)置該屬性后,屬性值即打開單據(jù)后相應的頁簽標題。CreateControl 方法原型:/<summary>/創(chuàng)建UserControl對象/</summary>/<param name="login">u8Login對象</param>/<param name="MenuID"&g
20、t;菜單ID</param>/<param name="Paramters">菜單自定義參數(shù)</param>/<returns>顯示的usercontrol</returns> System.Windows.Forms.Control CreateControl(U8Login.clsLogin login, string MenuID, string Paramters); 功能描述: 該方法創(chuàng)建要顯示的usercontrol 參數(shù)描述: login u8登陸對象,該對象不能轉(zhuǎn)換成u8Login.clsLogin
21、Class.MenuID: 打開的菜單IDParamters 菜單的參數(shù)描述,它是一個XML字符串 其定義格式如下: <property type="IUserControl" id=” dllpath=”二次開發(fā)的DLL路徑” classname=”二次開發(fā)的命名空間加類名” ><parameters/></ property>dllpath:dll的路徑,要用u8soft的相對路徑,最好放在uap目錄下;id:UserContrl唯一標識,其值自定;type:屬性值必須為"IUserControl",區(qū)分大小寫;p
22、arameters:需要給程序(UserControl)傳送的數(shù)據(jù),格式自定。返回值 要顯示的usercontrol 用法: 要在門戶中顯示自定義的窗體,必須在此函數(shù)內(nèi)實例化一個從control繼承過來的對象 ,并且返回該對象CreateToolbar方法原型:/<summary>/創(chuàng)建toolbar對象/</summary>/<returns>返回對象</returns>VoucherAction CreateToolbar(U8Login.clsLogin login);功能描述:在u8門戶上創(chuàng)建Toolbar對象參數(shù)描述: login 當前
23、的u8登陸對象 返回值 toolbar對象數(shù)組VoucherAction對象是一個toolbar button的描述其用法如下其參數(shù)描述如下:public VoucherAction(string text, string toolTip, bool isSystemButton, bool isHavePopedom, string id, IActionDelegate dele, VoucherActionType typeName, int sortNo, string parentKey, string authID);Text:button的名稱toolTip:提示名稱isSyst
24、emButton:是否系統(tǒng)按鈕isHavePopedom:是否需要權(quán)限控制id:toobar button的ID,該ID不允許重復,如果重復則后添加的對象無效dele:action的代理對象,在該代理內(nèi)實現(xiàn)toolbar的具體操作typeName: toolbar button共分四種類型,類型相同的toolbar button顯示在同一組中sortNo:排序號parentKey:父鍵,如果沒有則為nullauthID:權(quán)限ID用法:/定義toolbar返回對象UFIDA.U8.Portal.UAPFacade.VoucherAction actions = new VoucherAction
25、2;/定義toolbar的處理事件 UserActionDelegate actionDelegate = new UserActionDelegate(); /實例化toolbar button對象 actions0 = new VoucherAction("確定", "", false, false, "btnOK", actionDelegate, VoucherActionType.Normal, 1, null, null); actions0 = new VoucherAction("取消", &quo
26、t;", false, false, "btnCancel", actionDelegate, VoucherActionType.Normal, 1, null, null);/返回要顯示的toolbar return actions;4.3.6CloseEvent方法原型:/<summary>/關(guān)閉事件/</summary>/<returns></returns>bool CloseEvent();功能描述:usercontrol的關(guān)閉事件參數(shù)描述: 返回值 是否關(guān)閉當前窗體,如果是true則關(guān)閉 否則保持當前狀
27、態(tài)4.4 編譯該控件輸出DLL 編譯出的DLL推薦拷貝到u8softuapruntime目錄下示例源程序:。4.6 掛接菜單為二次開發(fā)編譯后的dll存放路徑,是一個相對于U8安裝目錄的相對路徑繼承了NetLoginable類的類名稱(包含命名空間)參數(shù)不填即可。菜單的多語名稱,將在U8左樹菜單里顯示這里選擇.NET Usercontrol如果是文件夾這里選否在掛接菜單后,還需要在UFSystem庫中的ua_idt表中添加一條記錄,(uap已經(jīng)自動添加)insertinto ua_idt (id,assembly,catalogtype,type,class)values('test
28、39;,'.uapruntimeUFIDA.U8.Portal.NetProductSample.dll',0,2,'UFIDA.U8.Portal.NetProductSample.MyLoginable')其中:'test'為掛架菜單的菜單編號;'.uapruntimeUFIDA.U8.Portal.NetProductSample.dll'為二次開發(fā)編譯后的dll存放路徑。'UFIDA.U8.Portal.NetProductSample.MyLoginable'為二次開發(fā)中繼承了NetLoginable類的
29、類名稱(包含命名空間)。5. 可執(zhí)行文件(EXE)如何掛接到門戶1、打開菜單調(diào)整工具;2、鼠標選中需要掛接的文件夾(如果沒有可以用菜單調(diào)整工具新建文件夾),點新增按鈕;3、自動生成菜單的多語名稱,將在U8左樹菜單里顯示如果是文件夾這里選否這里選擇EXEEXE時,參數(shù)無效這里輸入EXE文件的路徑,是一個相對于U8安裝路徑的相對路徑,舉例,U8安裝在E:U8Soft,這里設(shè)置為,表示E:U8Soft。4、保存后,自動生成一個菜單編號,這里是UA8;6、UAP表單和UAP列表如何掛接到門戶1、掛接UAP表單輸入,只能由字母和數(shù)字組成。菜單的多語名稱,將在U8左樹菜單里顯示如果是文件夾這里選否這里選擇
30、UAP表單UAP表單時,此項無效。形如<property cardnum="UAPTrain_0009" type="voucher"/>的字符串,這里UAPTrain_0009為表單編號;2、掛接UAP列表UAP列表時,此項無效。形如<property type="List" cardnum="UAPTrain_0009"><UFGeneralList id="eea90b20-4a2b-4149-8d00-820818dcd38f"/></prope
31、rty>的字符串,這里UAPTrain_0009為表單編號;eea90b20-4a2b-4149-8d00-820818dcd38f為表單列表ID這里選擇UAP列表菜單的多語名稱,將在U8左樹菜單里顯示如果是文件夾這里選否輸入,只能由字母和數(shù)字組成。7. 如何不使用菜單調(diào)整工具增加和修改菜單7.1 相關(guān)表結(jié)構(gòu)UA_Menu表結(jié)構(gòu)字段名數(shù)據(jù)類型含義AutoIDuid自動編號cMenu_IdString菜單編號cMenu_NameString菜單名稱,輸入cMenu_EngString程序類型cSub_IdString模塊標識,程序處理IGradeInt16級次,根據(jù)當前選中菜單程序自動處理
32、cSupMenu_IdString上級菜單編號,根據(jù)當前選中菜單程序自動處理bEndGradeBoolean是否末級,輸入,cAuth_IdString功能權(quán)限編號,程序內(nèi)部處理,控制權(quán)限時有效(cAuth_Id= cMenu_Id)。iOrderInt32顯示順序號,程序處理iImgIndexInt32圖標索引號,暫不用ParamtersString參數(shù),輸入,只有末級菜單才允許錄入?yún)?shù)DependsString依賴,暫不用FlagInt標志,暫不用UFMenu_Business_Lang表結(jié)構(gòu)(菜單的多語表)字段名數(shù)據(jù)類型含義MenuId菜單標識,對應UA_Menu表的cMenu_Id值C
33、aption菜單顯示名稱(簡體中文名稱顯示的是UA_Menu表的cMenu_Name值)LocaleId語言區(qū)域ZH-CN簡體中文ZH-TW繁體中文EN-US英文注:U8的系統(tǒng)菜單在UFSystem庫里,UAP新增或者菜單調(diào)整工具新增的菜單在UFData庫里,二次開發(fā)增加的菜單也要求在UFData庫里。 UA_IDT表結(jié)構(gòu)字段名數(shù)據(jù)類型含義idstring標識,一般等于ua_menu表里面的cMenu_Idassemblystring菜單對應的具體程序catalogtypeint分類,目前都設(shè)置為0typeint菜單對應的程序類型0-VB DLL1-EXE2-.NET UserControl程
34、序類型決定了assembly和class的內(nèi)容classstringtype=2時有效,.NET UserControl中繼承了NetLoginable的類entrypointstring目前沒有作用,設(shè)置為nullparameterstring目前沒有作用,設(shè)置為nullreservedstring目前沒有作用,設(shè)置為nullufts時間戳標志是否有變化VB DLL:UA_Menu:ua_menu.cmenu_id=“UA”+順序號ua_menu.csub_id=nullua_menu.Paramters=nullUA_Menu. cMenu_Eng=0需要ufsystem.ua_idt中增
35、加記錄:id= ua_menu.cmenu_idtype = 0assembly = dll類名EXEUA_Menu:ua_menu.cmenu_id=“UA”+順序號ua_menu.csub_id=nullua_menu.Paramters=nullUA_Menu. cMenu_Eng=1需要ufsystem.ua_idt中增加記錄:id= ua_menu.cmenu_idtype = 1assembly = EXE文件路徑(相對于U8安裝的相對路徑)UAP表單處理UAP增加的菜單無意識被刪除需要手工添加,或者,需要UAP菜單掛接不同位置。UA_Menu:ua_menu.cmenu_id=“
36、UA”+順序號ua_menu.csub_id=UAua_menu.Paramters=形如<property cardnum=”UAPTrain_0009” type=”voucher”/>的字符串,這里UAPTrain_0009為表單編號;UA_Menu. cMenu_Eng=2不需要在ufsystem.ua_idt中增加記錄。UAP列表處理UAP增加的菜單無意識被刪除需要手工添加,或者,需要UAP菜單掛接不同位置。UA_Menu:ua_menu.cmenu_id=“UA”+順序號ua_menu.csub_id=UAua_menu.Paramters=形如<property
37、 type=”List” cardnum=”UAPTrain_0009”><UFGeneralList id=”eea90b20-4a2b-4149-8d00-820818dcd38f”/></property>的字符串,這里UAPTrain_0009為表單編號;eea90b20-4a2b-4149-8d00-820818dcd38f為表單列表ID;UA_Menu. cMenu_Eng=3不需要在ufsystem.ua_idt中增加記錄。.Net UserControl系統(tǒng)定義一個接口IUserControl,只有兩個屬性:U8Login對象和菜單對象(對應的菜單
38、行數(shù)據(jù))。如果.Net UserControl需要U8Login對象必須實現(xiàn)這個接口,否則可以不實現(xiàn)這個接口。UA_Menu:ua_menu.cmenu_id=“UA”+順序號ua_menu.csub_id=UAua_menu.Paramters=<property type="IUserControl" id=” dllpath=”二次開發(fā)的DLL路徑” classname=”二次開發(fā)的命名空間加類名” ><parameters/></ property>dllpath:dll的路徑,要用u8soft的相對路徑,最好放在uap目錄下;i
39、d:UserContrl唯一標識,其值自定;type:屬性值必須為"IUserControl",區(qū)分大小寫;parameters:需要給程序(UserControl)傳送的數(shù)據(jù),格式自定。 UA_Menu. cMenu_Eng=4不需要在ufsystem.ua_idt中增加記錄。附錄:門戶示例詳解內(nèi)容 :增加產(chǎn)品 操作窗口 寫入門戶消息 聯(lián)查其他功能第一步:增加產(chǎn)品在UFsystem 中執(zhí)行下列sql-增加門戶菜單INSERT INTO UFSystem.dbo.UA_Menu(cMenu_Id, cMenu_Name, cMenu_Eng, cSub_Id, IGrade
40、, cSupMenu_Id, bEndGrade, cAuth_Id, iOrder, iImgIndex, Paramters, Depends, Flag)VALUES('LZ','測試產(chǎn)品',null,'LZ',0,'SCMG',0,NULL,0,0,NULL,NULL,NULL)INSERT INTO UFSystem.dbo.UA_Menu(cMenu_Id, cMenu_Name, cMenu_Eng, cSub_Id, IGrade, cSupMenu_Id, bEndGrade, cAuth_Id, iOrder,
41、 iImgIndex, Paramters, Depends, Flag)VALUES('LZ01','測試產(chǎn)品單據(jù)1',null,'LZ',1,'LZ',1,NULL,0,0,NULL,NULL,NULL)INSERT INTO UFSystem.dbo.UA_Menu(cMenu_Id, cMenu_Name, cMenu_Eng, cSub_Id, IGrade, cSupMenu_Id, bEndGrade, cAuth_Id, iOrder, iImgIndex, Paramters, Depends, Flag)VAL
42、UES('LZ02','測試產(chǎn)品單據(jù)1列表',null,'LZ',1,'LZ',1,NULL,0,0,NULL,NULL,NULL)-增加idt對應記錄select * from ua_idtINSERT INTO UFSystem.dbo.ua_idt(id, assembly, catalogtype, type, class, entrypoint, parameter, reserved)VALUES('LZ01','TestVBActiveXDll.Person',0,0,null,nul
43、l,null,null)INSERT INTO UFSystem.dbo.ua_idt(id, assembly, catalogtype, type, class, entrypoint, parameter, reserved)VALUES('LZ02','TestVBActiveXDll.Person',0,0,null,null,null,null)效果如下第二步:編譯編譯 到 u8softufcomsql 目錄下第三步:打開產(chǎn)品登錄 u8打開測試產(chǎn)品單據(jù)1效果如下第四步:打開單據(jù)界面包含四個部分1、有關(guān)工具條的操作2、有關(guān)窗口操作3、有關(guān)消息中心4、有關(guān)聯(lián)查單據(jù)1,2 對照代碼參考即可第五步:消息中心要往門戶發(fā)自己的消息分兩個步驟1:增加一個消息類型(如果是發(fā)現(xiàn)有類型的消息,則忽略該步驟)-預置一條消息類型,指定類型為notice 通知If Not Exists (Select 1 From UFSystem.UA_MessageType where MsgTy
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 打架保證書告別沖動珍愛生命
- 下滑成績的悔過保證書
- 苗木采購合同范本格式格式
- 短期借款合同
- 防火重于泰山生命高于一切
- 生鮮雞蛋買賣協(xié)議
- 城市更新拆遷補償
- 飼料購銷半年合同
- 電信服務合同法律適用規(guī)定
- 惠州二手房買賣合同簽訂步驟
- 電網(wǎng)工程勞務分包投標方案(技術(shù)方案)
- 過敏性休克完整版本
- 計算機類面試專業(yè)問題
- 山東省濟寧市魚臺縣2023-2024學年二年級上學期期末數(shù)學試題
- 稅務管理專項測試題附答案
- 人工智能營銷(第2版)課件全套 陽翼 第1-8章 邁入人工智能領(lǐng)域-人工智能營銷的倫理與法律問題
- 2024-2025一年級上冊科學教科版2.4《氣味告訴我們》課件
- 語文大單元視域下的任務群教學實踐
- 浙江省建筑防水工程技術(shù)規(guī)程
- 融入TGFU教學法的TPSR教學模式在小學籃球課程中的德育效果研究
- 醫(yī)院感染管理委員會模板
評論
0/150
提交評論