RForcecom 访问未知字段名称

标签 r salesforce soql

我的最终目标是从 Salesforce 帐户中提取数据以在 R 中通用。我发现了 RForcecom 包( https://hiratake55.wordpress.com/2013/03/28/rforcecom/ ),它看起来确实非常有用,感谢 @hiratake55 编写它!不幸的是,我遇到了一个小问题。

我可以登录我的帐户,然后访问其中的对象并将其存储为 data.frame正如介绍说明所说。

问题是我想访问 SOQL 对象中的某些字段,但我不知道这些字段的名称。

这是我到目前为止所拥有的:

    library(RForcecom)

    username <- "" # my email address
    password <- "" # my website password + security token
    instanceURL <- "https://eu5.salesforce.com/"
    apiVersion <- "34.0"
    session <- rforcecom.login(username, password, instanceURL, apiVersion)

    # R Query
    objectName <- "Contact"
    fields <- c("Id", "Name", "Phone")
    rforcecom.retrieve(session, objectName, fields)

这工作正常并返回 data.frame正如 RForcecom 在锡上所说的那样。现在我还想提取例如字段“联系人所有者别名”(该字段在 SalesForce 的 Web 界面上具有此名称)。我尝试了以下方法:
    fields <- c("Id", "Name", "Phone", "Contact Owner Alias")
    rforcecom.retrieve(session, objectName, fields)

这给出了一个错误:
    Error in rforcecom.query(session, soqlQuery) : 
      MALFORMED_QUERY: Id, Name, Phone, Contact Owner Alias FROM Contact
                                  ^
    ERROR at Row:1:Column:38
    unexpected token: Alias

问题

有没有办法检索 R 中的所有文件名?
或者有没有办法在不知道名称的情况下从所有字段返回数据。

警告

我知道问题的一部分是我对 SOQL 不熟悉,但它认为我会四处询问是否在 R 中解决了这个问题。如果答案是“去学习 SOQL”,那没关系,我只是想我会先问。

谢谢你的帮助!

最佳答案

抱歉耽搁了,谢谢 Daniel B.
更新我用你的建议解决了它如下

# grab SForce Data
library(RForcecom)

# session login etc 
username <- "Nope"
password <- "Nope"
instanceURL <- "https://eu5.salesforce.com/"
apiVersion <- "34.0"
session <- rforcecom.login(username, password, instanceURL, apiVersion)

# query
objects <- rforcecom.getObjectList(session)

# pull all fields of an object
getAllFields <- function(objectName) {
  description <- rforcecom.getObjectDescription(session, objectName)
  fields <- as.character(description$name)
  rforcecom.retrieve(session, objectName, fields)
}

# grab the data 
accounts <- getAllFields("Account")

关于RForcecom 访问未知字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32758745/

相关文章:

python - 网状不会实时打印到控制台

太阳位置的 R 函数给出了意想不到的结果

Salesforce (VisualForce) : How to test for no records returned in 'apex:repeat' statement?

javascript - 用于编辑视觉强制页面文本框的 Google Chrome 扩展

javascript - SOQL 查询中的 LIKE 或 CONTAINS

r - 从数据框中提取一系列观察结果以获得完整的数据集

regex - R:查找字符串中唯一字符的数量

javascript - 如何在 Salesforce 上使用 JSZip 从 Google Drive 下载多个文件作为 .zip

mysql - 查询右侧 4 列时结果为空

Salesforce 最小化数据存储大小的最佳实践