1

语境:

  • 用 .NET 编码的 Web 界面(非营利组织申请拨款的受让人门户)正在从 Salesforce 页面布局中提取信息。
  • 我们用于通过 API 将 Web 界面与 Salesforce 连接的 Salesforce 用户具有“查看全部和编辑全部”权限

问题:

就像现在一样,如果在 Salesforce 的页面布局上将字段定义为只读,它仍然可以在网页上进行编辑(我们使用的 Salesforce 用户必须具有“查看全部和编辑所有”权限)

我们正在努力实现的目标:

  • 如果字段在 Salesforce 页面布局上定义为只读
  • 那么 Web 界面页面上的相同字段应该是只读的

问题:

为了实现上述目的,我想我需要通过 API 获取页面布局的字段属性。关于如何做到这一点的任何想法?

谢谢!泉。

4

1 回答 1

2

您将需要元数据 API(允许您添加新对象、字段、选项列表值甚至创建类和运行单元测试的 Web 服务集)。

这是 API 指南: http: //www.salesforce.com/us/developer/docs/api_meta/index.htm

根据您修改布局的频率,您可能会决定“搞砸,我将只使用 Eclipse IDE”。在这种情况下,您将下载所有页面布局(它们是 XML 文件),将您的 C# 应用程序指向它们并让魔法发生。

更高级的是使用迁移工具(基于 Ant / Java 的应用程序,可以编写脚本以定期下载相同的东西)。

超级高级是使用这个 API 指南用 C# 编写它。这不是火箭科学(这里是页面布局对象的规范,这里是检索元数据的操作的 Java 示例代码......抱歉,不是 C#)。实际上你可能最好看看这个例子:http: //www.salesforce.com/us/developer/docs/api/Content/sforce_api_calls_describelayout.htm

看到您可能无论如何都想在某处缓存此信息(我无法想象您的用户来到您的页面,不得不等待 web 服务调用完成,然后呈现他的 UI) - 选择您的毒药。

或在团队中共享工作(1 人开始使用 Eclipse 下载文件,其他人尝试找出 C# 代码以按需检索它们)。

于 2013-01-30T20:49:38.500 回答