2012-10-17 145 views
2

我在一个类的下面一行代码:如何通过属性名称在%DIctionary.ClassDefinition中查找属性?

Set objDClass = ##class(%Dictionary.ClassDefinition).%OpenId("Dict.ProcCde") 

此创建的对象引用另一个类的类定义。 Dict.ProcCde类定义了173个属性。我想能够通过它的属性名称(我相信它是Id)检索对特定属性的对象引用,但我不知道如何做到这一点,创建一个循环来通过objDClass.Properies之一一段时间,并寻找正确的属性名称。当我输入objDClass.Properties。在缓存工作室中,我看到许多方法,看起来像他们可能工作,但我无法找到任何文档或让他们工作。具体来说,objDClass.Properties.FindObjectId(PropertyName)看起来像它会做的伎俩,但没有。其他方法可能是:FindExistingObjectId,FindObject但没有任何工作。有没有人知道通过它的属性名称从%Dictionary.ClassDefinition对象中检索%Dictionary.PropertyDefinition对象的方法?任何人都可以指向我上面提到的.Properties方法的文档?

由于

回答

1

小号丙= ##类(%Dictionary.PropertyDefinition)%的OpenID( “Dict.ProcCde || SomeProperty”)

小号丙= ##类(%PropertyDefinition)。 %OpenId(“Dict.ProcCde:SomeProperty”)

+0

[documentation](http://docs.intersystems.com/cache20121/csp/docbook/DocBook.UI.Page.cls?KEY=GOBJ_classdef#GOBJ_C220) – DAiMor

+0

谢谢,我应该自己想想这个! –

相关问题