




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目錄一. 前言2二. Reporting Manager安裝51.存儲過程和函數(shù)52.安裝過程6三. Reporting Manager配置9. Historian Reports部署管理92.數(shù)據(jù)庫存儲過程和函數(shù)21四.報表制作與發(fā)布28.報表開發(fā)28.報表發(fā)布51CitectHistorian報表制作一. 前言CitectHistorian具有二種數(shù)據(jù)存儲機制1. 逢變則存:當數(shù)據(jù)變化超過設(shè)定的死區(qū)時,將數(shù)據(jù)存入到Historian的數(shù)據(jù)庫中(默認)2. 定時上傳:按照用戶設(shè)定的時間,將數(shù)據(jù)存入到用戶自定義的數(shù)據(jù)庫中二種方式都有各自的優(yōu)缺點逢變則存方式可以節(jié)省用戶組態(tài)時間,數(shù)據(jù)結(jié)構(gòu)高效合理
2、,缺點就是沒有提供豐富的數(shù)據(jù)接口,方便用戶提取數(shù)據(jù)制作報表。如用戶想獲取一組變量,無論這些數(shù)據(jù)點是否發(fā)生了變化,或者變化了多少次,按照用戶設(shè)定的起始終止時間,時間間隔等輸入條件,返回指定的記錄集等。需要獨立安裝citect提供的報表工具,安裝和修改一些SQL函數(shù),才能完成定時上傳需要用戶根據(jù)報表的需求先預(yù)先定義好數(shù)據(jù)表的字段,設(shè)定定時時間,查詢簡單,方便報表的制作。缺點是報表需要的數(shù)據(jù)點多時,數(shù)據(jù)庫創(chuàng)建和組態(tài)配置,調(diào)試運行麻煩。數(shù)據(jù)變化緩慢時浪費硬盤空間。所以,這篇文檔最主要是側(cè)重于citectHistorian逢變則存方式下,按照設(shè)定的時間間隔在指定的時間范圍內(nèi)搜索數(shù)據(jù)。方便用戶制作最常見的
3、日,月,年等報表。以Citect安裝程序自帶的Example為例,將5個回路的SP,PV值共10個點為例,存入到Hisotiran的實時數(shù)據(jù)庫中,然后制作日報表。如圖1.1,將回路運行在自動模式下,手動修改SP值,則PV的值經(jīng)過一段時間后穩(wěn)定。圖1.1將5個回路的SP,PV變量值分別存入Historian的Loop_SP,loop_PV文件夾中,如圖1.2圖1.2通過Historian的屬性,可以獲知綁定的SQL數(shù)據(jù)庫,如下圖1.3定義的為ExamleHisDB,圖1.3在以后的報表示例,關(guān)聯(lián)的數(shù)據(jù)則需要通過SLQ語句直接從上圖的ExampleHisDB數(shù)據(jù)庫中查詢。在Historian數(shù)據(jù)庫
4、中,如ExampleHisDB,最重要的3張數(shù)據(jù)表,如下圖紅色框Tags:用于存儲用戶選擇的變量信息,并且為每一個變量分配一個ID.NumericSamples:所有模擬量變量的變量ID,實時值,時間戳,質(zhì)量戳全部存儲在該表中DigitalSamples: 所有開關(guān)量變量的變量ID,實時值,時間戳,質(zhì)量戳全部存儲在該表中所有報表數(shù)據(jù)的查詢分析最本質(zhì)還是基于這些關(guān)系表,如圖1.4&1.5圖1.4圖1.5二. Reporting Manager安裝1.存儲過程和函數(shù) 打開開始菜單->程序->Microsoft SQLserver2008 R2->SQLserver Man
5、agement Studio 連接后找到Historian所對應(yīng)的運行數(shù)據(jù)庫,如ExampleHisDB,Citect在創(chuàng)建該數(shù)據(jù)庫的同時,也創(chuàng)建了citect為客戶提供的方便查詢和分析的存儲過程和函數(shù),如圖2.1.1圖2.1.1 如上圖,最重要的函數(shù)為dbo.ToDate以及dbo.ToBigInt,由于Historian 存儲的時間戳是以納秒級為單位的時間值,用戶必須通過該函數(shù)的轉(zhuǎn)換才能獲取常規(guī)顯示的YYYY-MM-DD HH:SS:TT格式,但是這些函數(shù)對于報表的制作顯然還不夠簡潔和友好,需要大量的代碼編程,所以需要安裝工具-Report Manager2.安裝過程打開Historian
6、的安裝文件目錄,找到ExtrasReporting Manager,雙擊SetUp.exe,如圖2.2.1 圖2.2.1 點擊Accept,選擇接受協(xié)議許可 圖2.2.2等待安裝文件就緒,就緒后進行下圖2.2.3安裝 圖2.2.3點擊Next,默認選擇程序安裝,如圖2.2.4 圖2.2.4 點擊Next,繼續(xù)安裝,如圖2.2.5圖2.2.5 點擊Next,繼續(xù)安裝,如圖2.2.6圖2.2.6點擊Close,完成了Report Manager工具的全部安裝三. Reporting Manager配置. Historian Reports部署管理打開配置工具,如下圖3.1.1圖3.1.1進入His
7、torian Reports 部署管理工具,圖圖3.1.2選擇Historian Database,,右鍵選擇功能菜單Register,如下圖3.1.3圖3.1.3彈出數(shù)據(jù)庫連接設(shè)置,手動輸入需要部署的數(shù)據(jù)庫信息,如圖3.1.4 圖3.1.4圖3.1.5如上圖3.1.5:sqlserver:輸入ip地址實例名默認采用集成的windows驗證,也可以采用SQL的驗證,那么則需要手動輸入SQL里賬戶名和密碼Database:從下拉框中選擇需要部署的數(shù)據(jù)庫,一次只能部署一個,如果想要部署多個數(shù)據(jù)庫,則需要重復(fù)register的步驟然后點擊OK按鈕,則顯示需要部署的數(shù)據(jù)庫列表清單,如下圖3.1.6圖3
8、.1.6選擇部署的數(shù)據(jù)庫,然后點擊右鍵,選擇功能菜單Install Pakage,如圖3.1.7圖3.1.7彈出Value pack intalllation 設(shè)置,左鍵選擇Histoiran standard Report pack,如圖3.1.8 圖3.1.8點擊 Install 按鈕,進行value Pack的安裝,如圖3.1.9圖3.1.9安裝成功后,如上圖,會顯示 安裝成功的提示信息。點擊Close,關(guān)閉當前窗口,回到配置窗口選擇 Report Packs->Historian Standard Report Pack,右鍵選擇功能菜單 Deploy Reports,如下圖3.
9、1.10圖3.1.10彈出報表配置畫面,如下圖3.1.11圖3.1.11Report server:SQLserver報表服務(wù)配置里的機器名或者IP地址Reporting services URL:SQLserver報表服務(wù)配置里設(shè)置的web 服務(wù)器虛擬目錄Data Source:需要部署發(fā)布的Historian數(shù)據(jù)庫Reports Folder:該數(shù)據(jù)庫部署在web服務(wù)器虛擬目錄下的子目錄名稱(沒有則自動創(chuàng)建)填寫發(fā)布部署信息,先參考SQLserver 數(shù)據(jù)庫的報表服務(wù)配置,如下圖3.1.12圖3.1.12彈出reporting service配置連接,服務(wù)器名稱默認為本計算機名,點擊連接,
10、如圖3.1.13圖3.1.13連接成功后,彈出reporting service配置管理器,如圖3.1.14圖3.1.14選擇web服務(wù)器URL,配置虛擬目錄名稱為CitHisReport,默認虛擬目錄名稱為:reportserver_實例名如Reportserver_VijeoHistorian(名字太長,不利于用戶記憶),如圖3.1.15圖3.1.15修改后,如紅色部分,URL:http:/計算機名:端口號/web服務(wù)器虛擬目錄點擊應(yīng)用,成功后則自動在SQL報表服務(wù)器中生成web網(wǎng)址,如圖3.1.16圖3.1.16選擇數(shù)據(jù)庫,配置SQL報表服務(wù)器存儲的數(shù)據(jù)庫,如圖3.1.17圖3.1.17
11、點擊更改數(shù)據(jù),彈出報表服務(wù)器數(shù)據(jù)庫配置向?qū)?,如圖3.1.18圖3.1.18選擇創(chuàng)建新的報表服務(wù)器數(shù)據(jù)庫,點擊下一步,如圖3.1.19圖3.1.19點擊下一步,如圖3.1.20圖3.1.20點擊下一步,如圖3.1.21圖3.1.21點擊”下一步”,如圖3.1.22如圖3.1.22點擊”下一步”,如圖3.1.33如圖3.1.33點擊”完成”,然后退出SQLserver報表服務(wù)配置,回到Historian reports 部署工具3.1.34Data Source 下拉框中選擇New,彈出的對話框,如圖3.1.35圖3.1.35在Database Connection 下拉框中選擇需要部署的Hist
12、orian數(shù)據(jù)庫ExampleHisDB然后點擊Create,創(chuàng)建數(shù)據(jù)庫部署的名稱,回到Depoly report,點擊按鈕”Deploy”圖3.1.36如上圖3.1.36,信息提示部署成功,點擊Close按鈕,關(guān)閉部署工具然后關(guān)閉Reporting Manager,至此則完成了Reporting Manager的部署配置2.數(shù)據(jù)庫存儲過程和函數(shù)打開SQLserver 管理器,進入數(shù)據(jù)庫配置,如圖3.2.1圖3.2.1 進入數(shù)據(jù)庫后,打開Historian的數(shù)據(jù)庫,如例:ExampleHisDB,如圖3.2.2圖3.2.2依次查看數(shù)據(jù)庫->可編程性->存儲過程 或者 函數(shù),可以發(fā)現(xiàn)
13、相對于圖1.4&1.5安裝reporting manager工具之前,數(shù)據(jù)庫增加了很多存儲過程以及函數(shù),而這些都是通過reporting manager的安裝,在該數(shù)據(jù)中增加了易于用戶數(shù)據(jù)分析和查詢的函數(shù)和存儲過程,其中4個函數(shù)尤為重要。N1:函數(shù)->標量函數(shù)->ToDate將類型為bigint的時間戳值轉(zhuǎn)換為對應(yīng)的可讀時間Historian的NumericSamples表中SampleDateTime的值為bigint時間戳,如圖3.2.1圖3.2.1則執(zhí)行以下SQL語句,則可以獲得采樣值的采用時間SELECT TagID,dbo.ToDate(SampleDateTim
14、e)as SampleTime,SampleValue ,QualityID FROM NumericSamples返回的執(zhí)行結(jié)果如下圖3.2.2圖3.2.2N2:函數(shù)->標量函數(shù)-> ToBigInt將用戶指定的時間轉(zhuǎn)換為bigint類型的時間戳,如用于查詢某一段時間的值,需要將數(shù)據(jù)庫的數(shù)據(jù)與指定的時間區(qū)域值進行比較,由于用戶輸入的時間一般都是字符串值,如果將數(shù)據(jù)庫的時間戳轉(zhuǎn)換為時間的字符串比較,則效率非常低下。而應(yīng)該是將用戶輸入的時間字符串轉(zhuǎn)換為bigint類型后與數(shù)據(jù)庫的時間戳字段比較,則提升效率。例如用戶查詢2013月2月24日這天的所有變量的值,則執(zhí)行如下腳本declar
15、e StartTime bigintdeclare EndTime bigintset StartTime=dbo.ToBigInt('2013-02-24 00:00:00')set EndTime=dbo.ToBigInt('2013-02-24 23:59:59')SELECT TagID,dbo.ToDate(SampleDateTime)as SampleTime,SampleValue ,QualityIDFROM NumericSampleswhere SampleDateTime>StartTime and StartTime<End
16、Time執(zhí)行結(jié)果如圖3.2.3圖3.2.3N3:函數(shù)->標量函數(shù)-> ConvertTagnamesToTagIDs將指定的一組變量標簽名轉(zhuǎn)換為變量ID選擇該函數(shù),右鍵,選擇功能菜單”修改”,如圖3.2.4圖3.2.4打開后,將里面的逗號 , 全部轉(zhuǎn)換為分號 ;,如圖3.2.5圖3.2.5然后執(zhí)行SQL修改語句,點擊菜單上!執(zhí)行,如圖3.2.6紅色框部分圖3.2.6執(zhí)行成功后,關(guān)閉SQL編輯窗口,彈出的對話框中選擇不保存如圖3.2.6,函數(shù)包含了2個參數(shù):TagNames: 為用戶導(dǎo)入的變量標簽名稱,包含集群名,如圖1.2中的變量名,Cluster1.LOOP_1_SPDataSo
17、urceName:變量對應(yīng)的數(shù)據(jù)源名稱,如圖1.2中的datasource名稱為LocalExample則如果一次性查詢多個變量的ID,如LOOP_1_SP;LOOP_1_PV(分號分隔)則需要執(zhí)行以下SQL語句declare Tagids varchar(MAX )set Tagids= dbo.ConvertTagnamesToTagIDs('Cluster1.LOOP_1_SP;Cluster1.LOOP_1_PV','LocalExample')print Tagids執(zhí)行結(jié)果如圖3.2.7,返回了2個變量的ID值,以分號 ; 分隔圖3.2.7N4:函數(shù)
18、-表值函數(shù)-> ConvertTagnamesToTagIDs,如圖3.2.8圖3.2.8其包含5個參數(shù):Tagids:要查詢的一組變量ID(與ConvertTagnamesToTagIDs函數(shù)組合實現(xiàn)變量名稱查詢)Period_Start,查詢的起始時間(bigint類型的時間,組合ToBigint函數(shù)使用,實現(xiàn)用戶時間輸入)Period_End,查詢的結(jié)束時間(bigint類型的時間,組合ToBigint函數(shù)使用,實現(xiàn)用戶時間輸入)add_lagging_samples,標志位0或1(0:在每一個時間間隔中返回1條記錄 1:每個時間間隔返回2條記錄)interval,bigint,時
19、間間隔(組合標量函數(shù)IntervalToBigInt使用)其參數(shù)intervalASString允許以下格式:'s' seconds /'m' minutes /'h' hours /'d' - days如2小時,則為2h,7天為7d如用戶想查詢LOOP_1_SP;LOOP_1_PV在2013-02-22這天的日報表,查詢時間間隔為1小時則執(zhí)行一下SQL腳本use ExampleHisDBdeclare Tagids varchar(MAX )declare StartTime bigintDeclare EndTime bigi
20、ntDeclare TimeInterval bigintset Tagids= dbo.ConvertTagnamesToTagIDs('Cluster1.LOOP_1_SP;Cluster1.LOOP_1_PV','LocalExample')Set StartTime=dbo.ToBigInt('2013-02-22 00:00:00')Set EndTime=dbo.ToBigInt('2013-02-22 23:00:00')set TimeInterval=dbo.IntervalToBigInt('1h
21、9;)select TagID,dbo.ToDate(SampleDateTime)as SampleTime, SampleValue from dbo.fn_get_samples_matrix_byinterval(Tagids,StartTime,EndTime,0,TimeInterval)返回的執(zhí)行結(jié)果如圖3.2.9圖3.2.9四.報表制作與發(fā)布前面的步驟是說明怎樣在Hisotiran數(shù)據(jù)庫中增加函數(shù)和存儲過程后面的步驟是說明怎樣在SQL提供的報表服務(wù)中利用這些函數(shù)和存儲過程.報表開發(fā)SQLsever2008提供了商業(yè)智能項目開發(fā)平臺,可以借助該平臺開發(fā)用戶自己的報表, 如圖4.1
22、.1,打開SQL Serve Business Intelligence Development Studio圖4.1.1 進入開發(fā)平臺,如圖4.1.2圖4.1.2點擊紅色框中的創(chuàng)建項目,或者通過菜單“文件-新建->項目”,彈出對話框,如圖4.1.3圖4.1.3選擇已安裝的模版->報表服務(wù)器項目,如上圖,命名項目為citDemoReport,并選擇項目文件夾創(chuàng)建位置,然后點擊確定,進入項目開發(fā)平臺,如下圖4.1.4所示.如圖4.1.4如上圖紅色框,選擇”共享數(shù)據(jù)源”->右鍵菜單,選擇”添加新數(shù)據(jù)源”,彈出如圖4.1.5圖4.1.5如上圖紅色框,為共享數(shù)據(jù)源命名,如Exampl
23、eHisDB(可以為制作報表的數(shù)據(jù)庫名稱)然后點擊”編輯“,進入SQL數(shù)據(jù)庫連接設(shè)置,如圖4.1.6圖4.1.6如上圖紅色部分,服務(wù)器名輸入SQL服務(wù)器IP實例名選擇需要報表發(fā)布的數(shù)據(jù)庫,如ExampleHisDB,然后點擊“確定”,如圖4.1.7圖4.1.7如上圖,點擊”確定”按鈕,完成了共享數(shù)據(jù)庫的設(shè)置。如圖4.1.8 圖4.1.8則可以看到共享數(shù)據(jù)源中增加了一個對象ExampeHisDB.rds訪問該對象即本質(zhì)就是訪問了其關(guān)聯(lián)的真實數(shù)據(jù)庫ExampleHisDB從數(shù)據(jù)庫中查詢的返回結(jié)果為數(shù)據(jù)集,每個報表的數(shù)據(jù)必須要關(guān)聯(lián)數(shù)據(jù)集所以,每個報表可以擁有各自定義的數(shù)據(jù)集,該數(shù)據(jù)集是私有的,只能在
24、該報表中使用,不能被其它報表引用。如果該數(shù)據(jù)集需要能其它報表共有,必須將其定義為共享數(shù)據(jù)集如我們多個報表中需要列出所有變量供用戶選擇查詢,那么就可以新建一個共享數(shù)據(jù)集右鍵點擊“共享數(shù)據(jù)集”,選擇菜單->“添加新數(shù)據(jù)集”,彈出如圖4.1.9對話框圖4.1.9如上圖紫色框,輸入共享數(shù)據(jù)集的名稱,如TagsName_ID,選擇查詢的數(shù)據(jù)源,在紅色框中輸入SQL查詢腳本,點擊藍色框按鈕”查詢設(shè)計器”,可以看到輸入的SQL腳本返回的結(jié)果,并且可以檢查語法錯誤,如圖4.1.10圖4.1.10點擊紅色框的”!”,可以在查詢設(shè)計器下端看到數(shù)據(jù)集返回的結(jié)果,點擊“確定”關(guān)閉查詢設(shè)計界,再點擊圖4.1.9的
25、確定按鈕,關(guān)閉共享數(shù)據(jù)集,可以看到共享數(shù)據(jù)集中添加了一個對象圖4.1.11接下來,就是需要定義用戶報表,設(shè)計報表的查詢界面如圖4.1.12,設(shè)置如下生成LOOP_PV的日報表,則最基本的必須提供用戶時間選擇或者能夠手動輸入日期,然后自動計算查詢起始時間為該日期的零點,結(jié)束時間為開始時間加24小時,時間間隔可以設(shè)定為1小時,靈活的話也可以讓用戶選擇(10分鐘,30分鐘,60分鐘,120分鐘等等諸多選項或者用戶手動輸入),另查詢的LOOP_PV的變量可以是全部的,也可以讓用戶選擇其中一些Loop_PV變量,以日報表為例,年月報表可以類似圖4.1.12如圖4.1.11選擇報表,點擊右鍵,選擇功能菜單
26、->”添加新報表”,彈出”歡迎使用報表向?qū)А?,點擊”下一步”,如圖4.1.12圖4.1.12默認選擇共享數(shù)據(jù)源,點擊下一步,進入報表查詢設(shè)計器(進入SQL查詢語句編輯器,將查詢的結(jié)果返回的數(shù)據(jù)集做成報表),如圖4.1.13圖4.1.13如圖所示,我們在報表查詢時,需要用戶輸入3個條件:查詢?nèi)掌?查詢?nèi)掌?,選擇查詢的PV變量(PVNames)以及查詢的時間間隔(時間間隔),故我們需要在SQL查詢代碼中無需聲明(Declare)變量,直接引用,則在報表查詢時會自動生產(chǎn)這些變量讓用戶輸入或選擇。declare TagNames varchar(Max)declare TagIDs varch
27、ar(500)declare StartTime datetimedeclare EndTime datetimedeclare TimeStart bigintDeclare TimeEnd bigintdeclare TimeInterval bigintset TagNames=PVNames -等待可以選擇PV變量set TagIDs=dbo.ConvertTagnamesToTagIDs(TagNames,'LocalExample') -將變量名轉(zhuǎn)換為IDset StartTime=查詢?nèi)掌?-等待用戶選擇查詢?nèi)掌趕et EndTime =DATEADD(HOUR,
28、23,StartTime) -查詢的結(jié)束時間為查詢?nèi)掌?23小時set TimeStart=dbo.ToBigInt(StartTime) -將查詢起始時間轉(zhuǎn)換為bigintset TimeEnd=dbo.ToBigInt(EndTime) -將查詢結(jié)束時間轉(zhuǎn)換為bigintset TimeInterval=dbo.IntervalToBigInt(時間間隔) -等待用戶輸入查詢時間間隔并轉(zhuǎn)換為bigintSELECT Tags.TagName ,dbo.ToDate(SampleDateTime) as SampleTime,SampleValue FROM dbo.fn_get_sampl
29、es_matrix_byinterval(TagIDs,TimeStart,TimeEnd,0,TimeInterval) tinner join Tags on t.TagID=Tags.ID-將用戶輸入的條件從數(shù)據(jù)庫中查詢結(jié)果返回,并將相應(yīng)的字段轉(zhuǎn)換,如將TagID轉(zhuǎn)換為用戶能夠識別的TagName, bigint的時間轉(zhuǎn)換為能識別的日期時間然后點擊下一步,彈出定義查詢參數(shù)對話框,等待用戶輸入變量的值,如圖4.1.14 圖4.1.14用戶輸入特定的值,然后確定,如果沒有錯誤,則用戶的SQL語法檢測通過并返回數(shù)據(jù)集,反之則用戶的SQL語法有錯誤,根據(jù)錯誤提示重新修改語法。檢測通過后,點擊下一
30、步如圖4.1.15圖4.1.15由于制作的是日報表,不是直接按照字段將數(shù)據(jù)集的數(shù)據(jù)顯示出來,而是需要我們按照同時間排序和歸納,將同一時間的不同變量值為一行顯示,即縱向顯示時間日期,橫向選擇的變量,以時間*變量的矩陣。故如上圖選擇矩陣表,點擊”下一步”,如圖4.1.16圖4.1.16可用字段中顯示了查詢結(jié)果數(shù)據(jù)集中所有的字段,然后我們需要將字段進行分配SampleTime:時間字段,為報表的行字段TagName:變量標簽名,用于標識報表列SampleVlaue:變量標簽在不同時間段的值,故此為報表的詳細信息,如圖4.1.17圖4.1.17點擊下一步,選擇報表樣式,可以選擇不同的樣式,如圖4.1.
31、18選擇默認的石板樣式圖4.1.18點擊完成按鈕即可,完成報表向?qū)?,如圖4.1.19圖4.1.19如紅色框,輸入該報表的名稱,點擊完成,則完成了報表制作的基本框架,僅僅需要一些參數(shù)設(shè)置的微調(diào)。則報表開發(fā)后的界面如圖4.1.20圖4.1.20點擊紅色框部分”預(yù)覽”,則看到效果圖如4.1.21 圖4.1.21手動輸入?yún)?shù)PVNames,查詢?nèi)掌?,時間間隔,然后點擊”查看報表”按鈕,得到如上圖的結(jié)果則在該界面中,需要進行一些微調(diào),如可以讓用戶彈出日歷控件,進行日期選擇而無需手動輸入,同理,PV變量的能夠選擇,選擇項中只有PV值有關(guān)的變量,并且能夠多項選擇查詢的時間間隔可以讓用戶選擇5分鐘,10分鐘,
32、30分鐘等等多樣選擇項但是只能單選所以需要對這些參數(shù)的屬性進行修改和定義,點擊”設(shè)計,如圖4.1.22 圖4.1.22在報表左側(cè)參數(shù)中,可以看到數(shù)據(jù)集中定義的參數(shù),依次進行修改。雙擊參數(shù)->查詢?nèi)掌?,彈出參?shù)屬性對話框,如圖4.1.23圖4.1.23名稱為用戶定義的參數(shù)名稱,提示即在畫面上讓用戶輸入?yún)?shù)時,在文本框前面顯示的信息提示用戶輸入和選擇數(shù)據(jù)類型:日期/時間(該類型的變量預(yù)覽界面會自動彈出日期時間控件)同理,雙擊參數(shù)->時間間隔,如圖4.1.24圖4.1.24設(shè)置該參數(shù)為文本值,但是允許多個值,點擊”可用值”為該參數(shù)增加選擇項目,如允許用戶選擇5分鐘,10分鐘,30分鐘,1
33、小時,2小時,8小時,則該值為定值選擇,如圖4.1.25圖4.1.25點擊添加按鈕,為參數(shù)添加定值選擇,如圖4.1.26圖4.1.26標簽為用戶在下拉選擇框中看到的選擇項,值為用戶選擇該選擇項是自動將該參數(shù)賦值為選擇項對應(yīng)的值,如用戶選擇1小時,則時間間隔=1h點擊”默認值”,設(shè)定用戶在不下來選擇時,該變量的初始值,如圖4.1.27 圖4.1.27在上圖中,時間間隔的默認為1小時,點擊確定,設(shè)定參數(shù)時間間隔的屬性。最后,對PV變量標簽進行設(shè)定,由于變量標簽需要從數(shù)據(jù)庫中搜索,并且過濾含PV關(guān)鍵字的變量,并且能夠讓用戶進行多項選擇,更重要的事,需要將用戶選擇的多個變量要合并為以分號(;)為分隔符
34、的一個字符串,而多值變量返回的是數(shù)組,但是SQLserver查詢中不支持數(shù)組。第一:需要增加一個數(shù)據(jù)集,該數(shù)據(jù)集返回的結(jié)果可以供用戶選擇變量,則可以直接考慮原來定義的共享數(shù)據(jù)源,點擊數(shù)據(jù)集->右鍵->選擇添加數(shù)據(jù)集,如圖4.1.28圖4.1.28圖4.1.29彈出如圖4.1.29對話框中,設(shè)置數(shù)據(jù)寄名稱為TagNameID,選擇”使用共享數(shù)據(jù)集”,然后選擇預(yù)先定義的共享數(shù)據(jù)集”TagsNameID”(由于該數(shù)據(jù)集返回了所有定義的變量名稱和ID,還需要對其進行過濾),故需要設(shè)置”篩選器”,即過濾變量名稱中包含LOOP和PV,則在篩選器中添加如下條件 :“TagName”類似于 *Lo
35、op*PV(*在sql語法中的替代符),如圖4.1.29圖4.1.29點擊確定,增加新的數(shù)據(jù)集TagNameID第二:需要手動添加一個參數(shù),如PV變量,用于提供用戶選擇變量并存儲用戶選擇的多個PV變量點擊參數(shù),右鍵->“添加參數(shù)”,如圖4.1.30,彈出圖4.1.31對話框圖4.1.30圖4.1.31設(shè)置變量名稱為PV變量,類型為文本,允許選擇多值。點擊”可用值”,設(shè)置該變量值的來源于某個數(shù)據(jù)集,如圖4.1.32圖4.1.32如上圖,設(shè)定PV變量多項選擇值為TagNameID數(shù)據(jù)集中的TagName字段的所有值第三:雙擊參數(shù)PVNames,該參數(shù)將用戶從PV變量多選擇的多項值合并為一個字
36、符串,如用戶選擇了”Cluster.LOOP_1_PV“,”Cluster.LOOP_3_V“,”Cluster.LOOP_4_PV“則需合并為”Cluster.LOOP_1_PV;Cluster.LOOP_3_V;Cluster.LOOP_4_PV;“傳遞給SQL函數(shù)ConvertTagnamesToTagIDs(),如圖4.1.33圖4.1.33如圖,由于該參數(shù)的值PV變量多選項中返回,無需再報表頁面上讓用戶再次輸入,故設(shè)定其可見性為隱藏,其值也應(yīng)該為指定值,點擊“默認值,選擇指定值,如圖4.1.34圖4.1.34點擊添加,然后點擊”fx“按鈕,輸入表達式,如圖4.1.35圖4.1.35輸入表達式為:=Join(Parameters!PV變量.Value,"") (即將該參數(shù)的多項值合并,合并的分隔符為分號;)點擊“確定”,完成參數(shù)屬性設(shè)置。最后,調(diào)節(jié)參數(shù)的順序,由于PVNames的值取決于PV變量,故其參數(shù)順序在PV變量之后選擇PVNames,點擊菜單上的向下箭頭(),如圖4.1.36,調(diào)節(jié)后參數(shù)順序如4.1.37 圖4.1.36 圖4.1.37注:如果參數(shù)順序不對,則無法顯示報表,提示參數(shù)
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店資產(chǎn)投資與經(jīng)營管理合伙協(xié)議書二零二五
- 二零二五年度私人住宅裝修工人安全責任合同
- 2025年度海洋資源開發(fā)橫向課題執(zhí)行協(xié)議
- 二零二五年度小程序游戲運營合作協(xié)議
- 2025年度電子元器件采購合同主要內(nèi)容簡述
- 二零二五年度購房合同定金支付及變更協(xié)議書
- 2025年度酒店員工勞動權(quán)益保障合同
- 二零二五年度綠色建筑股權(quán)協(xié)議及合伙人合作開發(fā)協(xié)議
- 2025年度美發(fā)店員工工傷事故處理勞動合同
- 空調(diào)安裝工勞動合同
- 球墨鑄鐵管道施工的學(xué)習(xí)課件
- 學(xué)習(xí)2022《工業(yè)和信息化領(lǐng)域數(shù)據(jù)安全管理辦法(試行)》重點內(nèi)容PPT課件(帶內(nèi)容)
- 光伏發(fā)電場建設(shè)工程資料表格(239表格齊全)
- 古代漢語文選無標點(第一冊,第二冊)
- 《紙馬》教學(xué)設(shè)計公開課
- 西服裙縫制工藝課件(PPT 14頁)
- 城市道路綠化養(yǎng)護工作
- 國內(nèi)木材炭化技術(shù)專利現(xiàn)狀
- 施耐德公司品牌戰(zhàn)略
- 校企合作人才培養(yǎng)模式實踐研究開題報告定稿
- 塑膠原料檢驗規(guī)范
評論
0/150
提交評論