0

我正在开发一个项目,该项目需要为特定记录动态获取相关子项 - 我只需要当前记录在页面布局中具有相关列表或当前用户配置文件可以访问的相关子对象。

4

1 回答 1

0

您可以使用类似此函数的功能来获取相关对象,并在使用动态 SOSL 查询之后

 public static map<string,string> getRelatedObjects(string masterObjectName){
        map<string,string> relatedObjectsMap = new map<string,string>();
        list<Schema.Childrelationship> relatedObjectsList = Schema.getGlobalDescribe().get(masterObjectName).getdescribe().getChildRelationships();
        for (Schema.Childrelationship  relatedObject : relatedObjectsList) {
             if(relatedObject.getChildSObject().getDescribe().isUpdateable()
                    && 
                    relatedObject.getChildSObject().getDescribe().getKeyPrefix()!=null
                    && 
                    !relatedObject.getChildSObject().getDescribe().isCustomSetting()
                    &&
                    relatedObject.getChildSObject().getDescribe().isCreateable()
                )
                relatedObjectsMap.put(relatedObject.getChildSObject().getDescribe().getName(),relatedObject.getChildSObject().getDescribe().getLabel());
       }
        return relatedObjectsMap;
    }
于 2013-08-20T06:25:55.383 回答