我正在使用Devart DotConnect访问Salesforce数据库。访问字段有一个问题,那就是一个选择列表。下面是我的Enterprise.wdsl的一部分:
<element name="RecordType" nillable="true" minOccurs="0" type="ens:RecordType"/>
<element name="RecordTypeId" nillable="true" minOccurs="0" type="tns:ID"/>我能做到
SELECT RecordTypeId ...得到18位数字的身份证,但如果我知道
SELECT RecordType ...我得到“未知列”错误
在Apex我能做到
RecordType.Name但在DotConnect,它不起作用。是否有一种方法来构建一个查询来提取RecordType文本值?我知道一个解决办法是创建一个公式字段并选择它。但我不希望更改现有的Salesforce模式。
谢谢!
发布于 2017-12-26 12:21:04
请指定搜索RecordType列的Salesforce对象(表)的名称。
JIC:您可以使用conn.GetSchema(“列”,新的string[]{“TableName”})通过我们的提供程序接口获得所有可用列的列表;
发布于 2018-01-08 18:44:16
看来我需要加入RecordType表
SELECT f.Boo, rt.Name as RecordType
FROM Foo f
JOIN RecordType rt on f.RecordTypeId=rt.Id有趣的是,RecordType对象上的Salesforce文档没有显示Id列,但此联接工作并返回预期值
https://stackoverflow.com/questions/47834128
复制相似问题