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

 找回密碼
 立即注冊

QQ登錄

QQ快速登錄

一步迅速開始

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

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

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2016-9-25 13:31:24 | 只看該作者 |只看大圖 回帖獎勵 |倒序?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模塊需要以下兩個條件:  a)、以free用戶登錄PDMS,普通的general用戶是無法訪問該模塊的; b)、必須有一個類型為DICT的DB來存儲自定義的數(shù)據(jù),且該DB需要在所選擇的MDB中。
2、UWLRD自定義屬性
UWLRD就是我們通常說的UDA,User Defined Attribute的簡稱, 自定義屬性是對PDMS基本屬性和隱藏屬性的一個重要補(bǔ)充。由于PDMS中所有元件類型的系統(tǒng)屬性是可以枚舉完的,當(dāng)發(fā)現(xiàn)系統(tǒng)屬性中并沒有適合我們使用的屬性類型時,就可以利用UDA進(jìn)行自定義屬性。
2.1、數(shù)據(jù)層次
UDA有3級數(shù)據(jù)層次:
UWRL  -  UDA World
UGRO  -  UDA  Group  該層次可有可無,但強(qiáng)烈建議使用。使用該層次,可以有效的管理UDA
UDA    -  UDA  實(shí)際元件層
2.2、建立管理層
既可以通過菜單欄來創(chuàng)建管理層,也可以通過命令行來創(chuàng)建。
2.2.1、界面創(chuàng)建UWRL

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

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

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

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

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

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

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

注意:此處必須寫new :tank,:不能漏掉,否則會提示語法錯誤。

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

本帖被以下淘專輯推薦:


油氣儲運(yùn)網(wǎng) - 論壇版權(quán)1、本主題所有言論和圖片純屬會員個人意見,與本論壇立場無關(guān)
2、本站所有主題由該帖子作者發(fā)表,該帖子作者與油氣儲運(yùn)網(wǎng)享有帖子相關(guān)版權(quán)
3、其他單位或個人使用、轉(zhuǎn)載或引用本文時必須同時征得該帖子作者和油氣儲運(yùn)網(wǎng)的同意
4、帖子作者須承擔(dān)一切因本文發(fā)表而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
5、本帖部分內(nèi)容轉(zhuǎn)載自其它媒體,但并不代表本站贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé)
6、如本帖侵犯到任何版權(quán)問題,請立即告知本站,本站將及時予與刪除并致以最深的歉意
7、油氣儲運(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í)了
平時都不會去這個模塊的!
10#
發(fā)表于 2017-5-25 09:38:49 | 只看該作者
好東西謝謝分享
您需要登錄后才可以回帖 登錄 | 立即注冊  

本版積分規(guī)則

掃碼訪問手機(jī)版

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

GMT+8, 2024-11-15 09:09 , Processed in 0.038638 second(s), 19 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

Copyright © 2001-2023, Tencent Cloud.

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