What is queryAll()?
In a SalesForce.com to CRM migration you might notice that you are not getting all of your Tasks and Event records, because they are archived. Using queryAll() allows you to access these records. See the following SalesForce.com excerpt (emphasis added):
Usage
Use queryAll
to identify the records that have been deleted because of a merge or delete. queryAll
has read-only access to the field isDeleted
; otherwise it is the same as query()
.
To find records that have been deleted (in preparation for undeleting them with the undelete()
call), specify isDeleted = true
in the query string, and for merged records, request the masterRecord.
You can use queryAll()
to query on all Task and Event records, archived or not. You can also filter on the isArchived
field to find only the archived objects. You cannot use query()
as it automatically filters out all records where isArchived
is set to true
. You can update or delete archived records, though you cannot update the isArchived field. If you use the API to insert activities that meet the criteria listed below, the activities will be archived during the next run of the archival background process.
How to Set queryAll() in Scribe Insight
To set queryAll() in Scribe Insight use the following SQL on the SCRIBEINTERNAL database, KSYNC table (Scribe Forum Referece):
If exists (Select Top 1 * From [SCRIBEINTERNAL].[SCRIBE].[KSYNC] Where Section = 'ADAPTERS' And KeyName = 'SFDCADAPTER.UseQueryAll')
Update [SCRIBEINTERNAL].[SCRIBE].[KSYNC] Set KeyValue = 'True' Where Section = 'ADAPTERS' And KeyName = 'SFDCADAPTER.UseQueryAll'
Else
Insert Into [SCRIBEINTERNAL].[SCRIBE].[KSYNC] Values('ADAPTERS','SFDCADAPTER.UseQueryAll', 'True');
Be aware that now you have access to the isDeleted
and isArchived
attribute that you can use to filter your source queries.