附录:门户示例详解
内容 :增加产品 操作窗口 写入门户消息 联查其他功能
第一步:增加产品
在UFsystem 中执行下列sql --增加门户菜单
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])
VALUES('LZ','测试产品',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], [iImgIndex], [Paramters], [Depends], [Flag])
VALUES('LZ01','测试产品单据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])
VALUES('LZ02','测试产品单据1列表',null,'LZ',1,'LZ',1,NULL,0,0,NULL,NULL,NULL) --增加idt对应记录
select * from ua_idt
INSERT INTO [UFSystem].[dbo].[ua_idt]([id], [assembly], [catalogtype], [type], [class], [entrypoint],
[parameter], [reserved])
VALUES('LZ01','TestVBActiveXDll.Person',0,0,null,null,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)
效果如下
第二步:编译
编译TestVBActiveXDll.vbp 到 u8soft\%ufcomsql 目录下
第三步:打开产品
登录 u8打开测试产品单据1 效果如下
第四步:打开单据
界面包含四个部分 1、有关工具条的操作 2、有关窗口操作 3、有关消息中心 4、有关联查单据
1,2 对照代码参考即可
第五步:消息中心
要往门户发自己的消息分两个步骤
1:增加一个消息类型(如果是发现有类型的消息,则忽略该步骤) --预置一条消息类型,指定类型为notice 通知
If Not Exists (Select 1 From UFSystem..UA_MessageType where MsgTypeId = 313555) Insert Into UFSystem..UA_MessageType(MsgTypeId,MsgTypeName,HandlerName,SourceId,NeedProcess,OnlySupportBS) values(313555,'新增通知类型-test','Notice','04',1,0)
go
--在消息导航中增加一条记录
if not exists(select 1 from UA_NavigationNode where Name=N'313555') insert into Ufsystem..UA_NavigationNode(Name,Text,Visible,MsgTypeID,ParentNodeName) values(N'313555',N'313555',0,N'313555',N'Alarmed') GO
2:往门户发送消息,门户消息存于UA_message表中, 可以直接写表,但是不推荐 推荐调用组件写入 '向门户消息中心表中写入数据 '方式1:直接写表
'方式2:调用u8现有组件写入
Private Sub cmdSendMessageToMTC_Click() Dim objMsg As SendMsg.CSendMsg
Set objMsg = CreateObject(\ '设置登录对象
Dim oLoginTmp As Object
Set oLoginTmp = g_business.GetVBclsLogin()
If Not objMsg.SetLogin(oLoginTmp) Then MsgBox \设置登录对象失败\ End If
'调用方法
'用于联查的消息
Dim cn As New ADODB.Connection
cn.ConnectionString = oLoginTmp.ufsystemdb.Name cn.Open
Call objMsg.AddNotifyInfo(cn, \联查单据测试\ cn.Close
Set cn = Nothing ' objMsg.Notify
'InsertMsg ' End Sub
写完消息后,门户消息中心 刷新一次 会看到刚才增加的消息
第六步:消息中心联查单据
关闭 测试单据页签,到消息中心双击刚才增加的记录 “联查单据测试” 可以看到双击后门户自动打开了测试单据001
第七步:调用其他功能,如联查其他单据
Private Sub cmdViewSaleOrder_Click() 代码如下
Call g_business.ResetCallFunctionFlag Dim strNewCommandline As String strNewCommandline = \
销售订单
&&&SubSysID:SA&&&AuthID:SA03010104&&&CmdLine:\
Call g_business.RunCommand(strNewCommandline) End Sub
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库U8门户开发手册(5)在线全文阅读。
相关推荐: