油氣儲(chǔ)運(yùn)網(wǎng)

 找回密碼
 立即注冊(cè)

QQ登錄

QQ快速登錄

一步迅速開(kāi)始

pdms培訓(xùn)&項(xiàng)目數(shù)字化360網(wǎng)
查看: 18742|回復(fù): 19
打印 上一主題 下一主題

[PDMS教程] Pdms Lexicon模塊教程-自定義UDETWLD UWLRD講解

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2016-9-25 13:31:24 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
PDMS Lexicon模塊用于自定義元件屬性、自定義元件類型等等。該模塊在項(xiàng)目中也要用到,屬于pdms重要模塊。Lexicon模塊提供了DBVWWL,DSTWLD,DSXWLD,REVCWL,STAWLD,UDETWLD,UWLRD共7種類型,本文只講解UDETWLD,UWLRD兩種。
1.        lexicon注意事項(xiàng):
進(jìn)入lexicon模塊需要以下兩個(gè)條件:  a)、以free用戶登錄PDMS,普通的general用戶是無(wú)法訪問(wèn)該模塊的; b)、必須有一個(gè)類型為DICT的DB來(lái)存儲(chǔ)自定義的數(shù)據(jù),且該DB需要在所選擇的MDB中。
2、UWLRD自定義屬性
UWLRD就是我們通常說(shuō)的UDA,User Defined Attribute的簡(jiǎn)稱, 自定義屬性是對(duì)PDMS基本屬性和隱藏屬性的一個(gè)重要補(bǔ)充。由于PDMS中所有元件類型的系統(tǒng)屬性是可以枚舉完的,當(dāng)發(fā)現(xiàn)系統(tǒng)屬性中并沒(méi)有適合我們使用的屬性類型時(shí),就可以利用UDA進(jìn)行自定義屬性。
2.1、數(shù)據(jù)層次
UDA有3級(jí)數(shù)據(jù)層次:
UWRL  -  UDA World
UGRO  -  UDA  Group  該層次可有可無(wú),但強(qiáng)烈建議使用。使用該層次,可以有效的管理UDA
UDA    -  UDA  實(shí)際元件層
2.2、建立管理層
既可以通過(guò)菜單欄來(lái)創(chuàng)建管理層,也可以通過(guò)命令行來(lái)創(chuàng)建。
2.2.1、界面創(chuàng)建UWRL

2.2.2、命令行創(chuàng)建UWRL
NEW UWRL
在比較老的PDMS版本下,可能沒(méi)有界面創(chuàng)建,只能使用命令行來(lái)創(chuàng)建!
2.2.3、創(chuàng)建UGRO
創(chuàng)建UGRO的方法與UWRL相同,此處不再贅述。
2.3、創(chuàng)建UDA
UDA的創(chuàng)建方法與創(chuàng)建其管理層的方法相同,此處我們創(chuàng)建一個(gè)UDA,用于存儲(chǔ)設(shè)備的類型。
2.4、UDA屬性
創(chuàng)建完UDA后,會(huì)發(fā)現(xiàn)UDA有大量的屬性需要填寫(xiě),列表如下:

2.5、屬性說(shuō)明
2.5.1、Description
該屬性在非Lexicon模塊中,實(shí)際上是看不到的,但寫(xiě)上以后,便于管理員后期維護(hù)。此處我們填寫(xiě)'設(shè)備類型'。
2.5.2、UDA Type
該屬性指定了數(shù)據(jù)類型,此處點(diǎn)擊右側(cè)的下拉菜單,可以看到有多個(gè)選項(xiàng)。比如整型、字符串型、布爾型、日期型、以及還有PDMS特有的direction型和position型等等。此處我們選擇'text',即字符串型。
2.5.3、UDA Length
該屬性指定了數(shù)據(jù)類型的長(zhǎng)度。此處我們?cè)O(shè)置為10
2.5.4、Element Types
該屬性用于定義UDA賦予給PDMS哪些類型的元素。即可以直接輸入,也可以點(diǎn)擊后,通過(guò)界面選取。

一個(gè)UDA可以賦給多個(gè)類型的元素,此處我們只將該UDA賦給了EQUI類型的元素,如果我們繼續(xù)將該屬性賦給ZONE類型的元素也是可以的。
2.5.5、UDA Default
指定UDA的默認(rèn)值。此處我們?cè)O(shè)置為PUMP。
2.5.6、User-Defined name
UDA的名稱,該屬性非常重要,是UDA展現(xiàn)在其他模塊中的名稱。此處我們命名為EquipType。
2.5.7、Valid Values
指定UDA的有效值區(qū)間,可以用來(lái)對(duì)UDA的值進(jìn)行約束。
此處的寫(xiě)法是有要求的,如果是實(shí)數(shù)的話,應(yīng)寫(xiě)為如 0-10,表示在0到10之間。如果是字符串的話,其值必須用單引號(hào)或|將值框在里面,如|PUMP|。如果是多個(gè)并列值得話,值之間用逗號(hào)分隔。此處我們寫(xiě)為|PUMP|,|TANK|。
2.6、UDA校驗(yàn)
此時(shí)我們打開(kāi)design模塊,選擇一個(gè)EQUI后,輸入Q ATT查詢屬性,會(huì)發(fā)現(xiàn)在系統(tǒng)屬性后面多了如下一行,
:EquipType PUMP
注意:剛才我們命名是并沒(méi)有加上':',此處是PDMS自動(dòng)加上的標(biāo)識(shí)符,用于區(qū)分UDA和系統(tǒng)自帶的屬性。
我們將該屬性的值改為TANK,修改成功,如果我們將其改為XXXX,會(huì)提示錯(cuò)誤,值不在有效值的范圍內(nèi)。
2.7、UDA結(jié)語(yǔ)
UDA和PDMS系統(tǒng)屬性在操作上完全相同,查詢,修改等用法均相同。同時(shí)在利用PML編程時(shí)候,也完全等價(jià)于系統(tǒng)屬性。

3、UDET自定義元件類型
相對(duì)于UDA的普遍使用,UDET的使用并不算常見(jiàn)。UDET是User Defined Element Types的簡(jiǎn)稱,即用戶自定義元件類型。可以通過(guò)定義UDET來(lái)實(shí)現(xiàn)一些特殊的需求。
3.1、數(shù)據(jù)層次
同UDA一樣,UDET也有3級(jí)數(shù)據(jù)層次:
UDETWL  -  UDET world
UDETGR  -  UDET group
UDET      -  UDET
細(xì)心的讀者可能會(huì)發(fā)現(xiàn),UDET的數(shù)據(jù)層次與UDA完全相同,實(shí)際上不但他們的數(shù)據(jù)層次相同,其創(chuàng)建方法也相同,都有界面和命令行兩種。大家可以參考UDA數(shù)據(jù)層次的創(chuàng)建方法,來(lái)創(chuàng)建UDET的數(shù)據(jù)層次。但UDET與UDA卻有完全不同的屬性。
3.2、UDET屬性

3.2.1、Description
該屬性也是一個(gè)說(shuō)明性的屬性,此處我們填寫(xiě)'設(shè)備'。
3.2.2、User-Defined name
UDET的名稱,該屬性非常重要,是UDET在其他模塊新建的層次類型名,此處我們命名為TANK。
3.2.3、Base type
基礎(chǔ)類型,此處要特別注意,自定義的元件類型必須是等價(jià)于PDMS已知的元件類型的一種,并不能創(chuàng)建一個(gè)PDMS中完全不存在的類型。筆者認(rèn)為這是導(dǎo)致UDET比較雞肋的一個(gè)重要原因。點(diǎn)擊右側(cè)的下拉選項(xiàng),選擇一個(gè)PDMS的已知類型。

3.2.3、Owner types 和Member Types
這兩個(gè)屬性是不需要用戶定義的,當(dāng)選擇完Base type后,程序?qū)⒆詣?dòng)獲取。
3.2.4、Hidden attributes
隱藏屬性,選擇完Base type后,該UDET將自動(dòng)繼承其等價(jià)類型的所有基礎(chǔ)屬性,但是否繼承其隱藏屬性,是可以通過(guò)面板來(lái)設(shè)置的。界面如下:

3.3、UDET校驗(yàn)
我們打開(kāi)design模塊,選擇某個(gè)zone后,在命令行里輸入new :TANK,將會(huì)在zone層下新建一個(gè)類型為:TANK的元件:

注意:此處必須寫(xiě)new :tank,:不能漏掉,否則會(huì)提示語(yǔ)法錯(cuò)誤。

3.4、UDET結(jié)語(yǔ)
UDET和PDMS本身的元件類型在各方面完全相同。同時(shí)在利用PML編程時(shí)候,也可以利用collect語(yǔ)句收集或var語(yǔ)句求值。

本帖被以下淘專輯推薦:


油氣儲(chǔ)運(yùn)網(wǎng) - 論壇版權(quán)1、本主題所有言論和圖片純屬會(huì)員個(gè)人意見(jiàn),與本論壇立場(chǎng)無(wú)關(guān)
2、本站所有主題由該帖子作者發(fā)表,該帖子作者與油氣儲(chǔ)運(yùn)網(wǎng)享有帖子相關(guān)版權(quán)
3、其他單位或個(gè)人使用、轉(zhuǎn)載或引用本文時(shí)必須同時(shí)征得該帖子作者和油氣儲(chǔ)運(yùn)網(wǎng)的同意
4、帖子作者須承擔(dān)一切因本文發(fā)表而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
5、本帖部分內(nèi)容轉(zhuǎn)載自其它媒體,但并不代表本站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)
6、如本帖侵犯到任何版權(quán)問(wèn)題,請(qǐng)立即告知本站,本站將及時(shí)予與刪除并致以最深的歉意
7、油氣儲(chǔ)運(yùn)網(wǎng)管理員和版主有權(quán)不事先通知發(fā)貼者而刪除本文

沙發(fā)
發(fā)表于 2016-10-10 21:44:32 | 只看該作者
很好的教程,學(xué)習(xí)了
板凳
發(fā)表于 2016-11-15 08:59:12 | 只看該作者
謝謝分享。學(xué)習(xí)了
地板
發(fā)表于 2016-11-15 08:59:31 | 只看該作者
謝謝分享。學(xué)習(xí)了
5#
發(fā)表于 2016-11-15 08:59:52 | 只看該作者
謝謝分享。學(xué)習(xí)了
6#
發(fā)表于 2016-12-14 21:53:38 | 只看該作者
非常感謝分享這么實(shí)用的
7#
發(fā)表于 2017-1-8 09:14:26 | 只看該作者
謝謝分享,學(xué)習(xí)了
8#
發(fā)表于 2017-3-3 11:23:29 | 只看該作者
學(xué)習(xí)了,謝謝
9#
發(fā)表于 2017-3-4 08:42:06 | 只看該作者
謝謝分享。學(xué)習(xí)了
平時(shí)都不會(huì)去這個(gè)模塊的!
10#
發(fā)表于 2017-5-25 09:38:49 | 只看該作者
好東西謝謝分享
您需要登錄后才可以回帖 登錄 | 立即注冊(cè)  

本版積分規(guī)則

掃碼訪問(wèn)手機(jī)版

QQ|關(guān)于我們|網(wǎng)站地圖|油氣儲(chǔ)運(yùn)網(wǎng) ( 魯ICP備11007657號(hào)-3 )

GMT+8, 2024-10-23 04:42 , Processed in 0.030715 second(s), 15 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

Copyright © 2001-2023, Tencent Cloud.

快速回復(fù) 返回列表