List of all articles linked to a given layer id (version 2.0 or newer)
Dim layerid = 38082
Dim login As Common.ILogin = TeraDP.GN4.Editorial.EditorialLogin.GetLogin()
Dim loaddesc As Common.ObjLoadDesc = New Common.ObjLoadDesc(Common.ObjLoadMode.None, Common.ObjLoadExtra.Referencing)
Dim objs As IList(Of Common.GenericAccessObj) = login.GetAccessObjs(New Integer(0) {layerid}, loaddesc)
If Not objs Is Nothing Then
Dim extra As Common.ExtraReferencingValue = CType(objs(0).GetExtra(Common.ObjLoadExtra.Referencing), ExtraReferencingValue)
If Not extra Is Nothing Then
Dim reflist As IEnumerable(Of Integer) = extra.Get(TeraDP.GN4.Schema.Class.linkObjectObj.pageLayersEntry.EntryType(login.Schema).GetAttributeType("layerRef"))
Dim sc As Common.SearchConditions = New Common.SearchConditions(Schema.Class.articleObj.ObjectTypeName)
sc.List = New Common.Search.Node.Condition(New Common.Search.Node.Attribute(TeraDP.GN4.Schema.Class.articleObj.idAttrType(login.Schema)), Common.OpCode.In, New Common.Search.Node.LiteralList(reflist))
Dim articlelist As List(Of IdName) = login.ListObjs(New ExtSearchConditions(sc, login), False, SpikedHandling.Exclude)
End If
End If
List of all articles linked to a given layer id (version 1.6 or earlier)
Dim layerid = 38082
Dim login As Common.ILogin = TeraDP.GN4.Editorial.EditorialLogin.GetLogin()
Dim loaddesc As Common.ObjLoadDesc = New Common.ObjLoadDesc(Common.ObjLoadMode.None, Common.ObjLoadExtra.Referencing)
Dim objs As IList(Of Common.GenericAccessObj) = login.GetAccessObjs(New Integer(0) {layerid}, loaddesc)
If Not objs Is Nothing Then
Dim extra As Common.ExtraReferencingValue = objs(0).GetExtra(Common.ObjLoadExtra.Referencing)
If Not extra Is Nothing Then
Dim reflist As IEnumerable(Of Integer) = extra.Get(TeraDP.GN4.Schema.Class.linkObjectObj.pageLayersEntry.EntryType(login.Schema).GetAttributeType("layerRef"))
Dim sc As Common.SearchConditions = New Common.SearchConditions(Schema.Class.articleObj.ObjectTypeName)
sc.List = New Common.Search.Node.Condition(New Common.Search.Node.Attribute(TeraDP.GN4.Schema.Class.articleObj.idAttrType(login.Schema)), Common.OpCode.In, New Common.Search.Node.LiteralList(reflist))
Dim articlelist As List(Of Common.IdName) = login.ListObjs(sc, False)
End If
End If