我正在浏览SOQL文档,但找不到查询来获取实体的所有字段数据,比如说Account
select * from Account [ SQL syntax ]
Run Code Online (Sandbox Code Playgroud)
在SOQL中是否有类似上面的语法来获取帐户的所有数据,或者唯一的方法是列出所有字段(尽管有很多字段需要查询)
我正在使用python 的simpleSalesforce库来查询 SalesForce。
我正在查看 SalesForce 中的两个不同对象:帐户和机会(父子)。机会对象中有一个 accountId。
我正在尝试在两者之间执行内部联接并选择结果(两个对象的字段)。正常的 SQL 语句如下所示:
SELECT acc.Name, opp.StageName
FROM Account AS acc
JOIN Opportunity AS opp ON acc.Id = opp.AccountId
Run Code Online (Sandbox Code Playgroud)
我不知道如何将这种查询转换为 SOQL。
有没有办法获取Salesforce中表中所有字段的列表?DESCRIBE myTable
不起作用,SELECT * FROM myTable
也不起作用.
我无法从Salesforce/Apex/SOQL查询中获得我想要的结果.
我想:联系人对象列表,其中只包含一组广告系列的CampaignMembers的联系人; 他们应该可以轻松访问该Campaign成员的数据.(我的最终目标是与连接到这些活动与表示每个广告系列的状态网格的所有联系人列表的VF页.)
这些工作:
Campaign[] cams = [SELECT id, name
FROM Campaign
WHERE parentid = '70170000000LRIe'];
System.debug(cams);
// returns ~4 Campaign objects
CampaignMember[] cmembers = [SELECT id, status, contactid, campaignid
FROM CampaignMember
WHERE campaignid in :cams];
System.debug(cmembers);
// returns about 40 CampaignMember objects.
Run Code Online (Sandbox Code Playgroud)
Contact[] members = [SELECT id, firstname, lastname,
(SELECT id, status, comment__c, campaignid
FROM Contact.CampaignMembers
WHERE campaignid in :cams)
FROM Contact];
System.debug(members);
// contains ALL Contacts in the DB, but I wanted filtered results.
System.debug(members[x].CampaignMembers);
// …
Run Code Online (Sandbox Code Playgroud) 问题是我需要在SOQL查询中比较两个不同类型的字段.
TextField是一个Picklist(实际上是文本),IntField是一个Number(2,0).无法更改这些字段的类型.
我想写SOQL之类的;
SELECT Id FROM SomeObject__c
WHERE Cast(TextField as Integer) > IntField
Run Code Online (Sandbox Code Playgroud)
显然Cast(TextField as Integer)
不起作用.
有关SOQL中类型转换的任何建议.正常的APEX函数(例如integer.valueof)似乎没有任何帮助.
谢谢
是否可以在SOQL中添加注释?
Force.com资源管理器不支持撤消/重做等基本操作,我找不到任何方式输入注释,因此尝试查询很痛苦.
我已经尝试了所有常见的嫌疑人 - ,#,/*,//
我们使用Jitterbit来查询Salesforce中的记录,但是我们遇到了一个问题.在查询条件语句中,我正在比较Salesforce表中的两个字段.当我去测试查询时,它给出了错误"仅在Apex代码[MALFORMED QUERY]中允许绑定变量".
以下是查询示例:
SELECT Id FROM Price_Agreement_Item__c WHERE Approved_Date__c > Last_Upload_Date__c
Run Code Online (Sandbox Code Playgroud)
字段Approved_Date__c
和Last_Upload_Date__c
都包含在Salesforce表Price_Agreement_Item__c
.如何创建一个SOQL语句来调整select语句比较表中的两个字段?
任何帮助表示赞赏.
先感谢您.
如何制作这样的SOQL查询?
SELECT id FROM Account WHERE LastActivityDate = 30_DAYS_AGO
Run Code Online (Sandbox Code Playgroud)
这会产生错误:
MALFORMED_QUERY:
Account WHERE LastActivityDate = 30_DAYS_AGO
^
Run Code Online (Sandbox Code Playgroud) 下面的触发器用于OriginalActorId
从批准过程列表中提取最近的"分配给"用户(或),该Approval_started__c
字段被检查为来自特定批准过程的初始提交操作.
我遇到的问题是下面的system.debug语句没有显示最近一次挂起的审批请求中分配给用户的最新信息,但显示了在用户点击提交审批之前分配给用户的最新请求,因此它跳过了"审批请求提交步骤"用户点击提交以进行审批时所执行的步骤以及初始提交操作挂起步骤(用户选择审批者)正在等待审批/拒绝并返回之前的旧请求2.
我的目标是将最新的待处理请求"分配给"用户或OriginalActorId
值.
有什么想法吗 ?谢谢.
以下是审批流程列表的屏幕截图,黑色表示我在调试日志行中使用此触发器获取的值,蓝色表示预期值.
trigger Assigned2testTrigger on LLC_BI__Product_Package__c(after update) {
list < LLC_BI__Product_Package__c > listpp = new list < LLC_BI__Product_Package__c > ();
for (LLC_BI__Product_Package__c pp: trigger.new) {
If(!checkRecursive.SetOfIDs.contains(pp.Id)) {
if (pp.Approval_started__c == true) {
system.debug('---------> My ProcessInstance ' + string.valueof([Select Id, (Select TargetObjectId, SystemModstamp, StepStatus, RemindersSent, ProcessInstanceId, OriginalActorId, IsPending, IsDeleted, Id, CreatedDate, CreatedById, Comments, ActorId From ProcessSteps order by SystemModstamp desc) from LLC_BI__Product_Package__c where Id =: pp.id].ProcessSteps[0].OriginalActorId));
}
checkRecursive.SetOfIDs.add(pp.Id);
}
}
}
Run Code Online (Sandbox Code Playgroud)