• forceAMP
  • 43 Points
  • Member since 2004

  • Chatter
  • 1
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 31
  • 72

We have a linked SQL server to Salesforce via dbAmp (but could also be from excel connector or other external API load tools) and are uploading tasks for Salesforce users.  What we would like is a method to also to perform the function "Send Notification Email" as the UI allows you to do. There doesn't seem to be a method for having this functionality, and unfortunately you can't have a workflow pickup a task to send an email. 


Is there a means of having that functionality kick of an email the same way it does from the interactive UI, or perhaps a secondary load into the EmailMessage object to accomplish the same thing, or is an APEX trigger the only means of accomplishing this?

Prior to Spring 19, the DescribeSObjectResult for a text formula field would have a length value of 1300. For sandbox orgs upgraded to Spring 19,  the length value is now 0.

This chnage in the length value of text formlua fields is breaking integrations that rely on that value.

What worse is the change breaks backward compatibility.  Instead of being isolated to the 45.0 endpoint, ALL API endpoints will now have a length value of 0 for text formula fields.

We request that the length value of text formula fields be restored back to 1300 for Spring 19 orgs.
Beginning 24 hours ago, I started seeing query/querymore api calls that fail to return the total number of rows.

Is any one else experiencing  this issue ?
It appears a change was made by salesforce to the repsonse message to a bulkapi query request when the result is zero rows.

Previously, the response contained the headings row and nothing else.  After the change, the response is zero bytes long (i.e. there is no row of headings).

Is this a bug or a permamnent change in behavior?

The BulkAPI doc states "parent—Specifies the parent object when you’re enabling PK chunking for queries on sharing objects".

However when using the Parent for a custom object like Request__Share ( parent = Request__c)  the batch fails because the query tries to use Request__cId as the where clause field instead of ParentId.

Are custom object share tables not supported with PKChunking ?
We are seeing situations where web serivce login api calls are failing with INVALID_LOGIN and then succeeding moments later with no change to the credentails.  These are integrations that have been running with no issues for years.

Has there been a change in the salesforce in the last week that would dramactically increase the INVALID_LOGIN error responses ?
When I do a SOAP query call against the OAuthToken object, the ID field is always null.

The SOAP response contains <sf:Id xsi:nil="true"/>

Is this by design or is this an error ?
When I do a DescribeObject on the ApexPage object the following ChildRelationship shows up in the result:


Seems like a bug for a few reasons:

1. Is there really a relationship between ApexPage and OpportunitySplitType
2. There is no field named SplitField on the OpportunitySplitType object

The same issue occurs with Scontrol and  WebLink

forceAmp.com LLC

The SOAP API doc says:


"an 18-digit, case-safe version of the ID is returned by all API calls"


Yet for some queries against the Case object, a 15 char id is returned.  See SOAP trace below.


It seems to be related to pulling the Chatter Answer Photo fields of the Case object.  If I remove those from the query, the Id's are returned as 18 char.


2013-06-05T18:27:00Z: Request::<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sfdc="urn:enterprise.soap.sforce.com" xmlns:sf="urn:sobject.enterprise.soap.sforce.com"><soapenv:Header><sfdc:CallOptions><sfdc:client>forceAMP/DBAmp/</sfdc:client></sfdc:CallOptions><sfdc:QueryOptions><sfdc:batchSize>2000</sfdc:batchSize></sfdc:QueryOptions><sfdc:SessionHeader><sfdc:sessionId>.......</sfdc:sessionId></sfdc:SessionHeader></soapenv:Header><soapenv:Body><sfdc:query><sfdc:queryString>select CreatedById,CreatorFullPhotoUrl,Id from case </sfdc:queryString></sfdc:query></soapenv:Body></soapenv:Envelope>


2013-06-05T18:27:01Z: Response::<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:enterprise.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sf="urn:sobject.enterprise.soap.sforce.com"><soapenv:Body><queryResponse><result><done>true</done><queryLocator xsi:nil="true"/><records xsi:type="sf:Case"><sf:Id>50030000001VEgJAAW</sf:Id><sf:CreatedById>00530000000kQi6</sf:CreatedById><sf:CreatorFullPhotoUrl>https://c.na4.content.force.com/profilephoto/005/F</sf:CreatorFullPhotoUrl></records>

Is the 20,000 SOQL character limit pilot program available for production orgs ?

What is the delay time for records to show up in the getdelete call ?


We have a case where rows were deleted, a queryall call shows the rows with IsDeleted = true and yet 2 hours later, the GetDeleted call has not returned the ids.


Is the normal ?


We are getting a EXCEEDED_ID_LIMIT running a GetDeleted call on several __History tables.


I did not think records could be deleted from __History tables so how can there be over 600,000 deletes ?




Bill Emerson

forceAmp.com LLC

We have several customers who are now getting the following error:


"all SObjects in create or update must of same type"


I am trying to run down the instances affected but the common element is that these Update and Insert api calls were working fine on Friday but now do not work on Monday.


We are busy collecting the SOAP data to file a case but wondered if anyone else if experiencing these issues as well.




Bill Emerson

Is there a way using the describe attributes of a picklist field to tell whether ToLabel is valid for that field ?


For example, the BusinessProcess object has a picklist field called TableEnumOrId but you cannot use the ToLabel function on that field.


Basically I am building an automated SOQL transformation that applies the ToLabel function to the proper fields in the Select list and I need to be able to determine that from the describe data.




We are getting the error message ""Unable to find query cursor data for this QueryLocator" on a querymore api call of a table with around 150K rows.


Is this message related to the 5 open cursor limit ?  The querymore api calls are occurring within the 15 minute limit so I do not think that is the issue.



Some of my customers have an object called 'LocalizedValue'.


I don't see that object defined in the api document. What salesforce feature do I need to enable in order to have a 'LocalizedValue' object ?





The 10K character limit on SOQL statements is causing major headaches as we add custom fields to an objectAs soon as you have around 325 fields with 30 character field name you start to hit this issue because the Select SOQL statement blows the limit.


Even when you write code to split the select list and get two query resultsyou can't 'ORDER BY ID' in SOQL to make the join of the two query results easier. When you are dealing with millions of rows, the 10K limitation forces you into writing a complicated merge/join logic for million row data streams. Also, there is no guarantee that the two query results will have the same number of rows because there is no ability to 'lock' the table so the query results are the same (i.e a row could be deleted between the time of the two queries. Now, you are writing merge join logic where there could be a row in one stream but not in the other.


Is it possible to add 'Select *' to the SOQL language so that we can avoid this ?


How have others dealt with this limitation ?



When a task record is archived and the field IsArchived is set to true, does the SystemModstamp change to reflect the time the IsArchived field changed ?




Bill Emerson


Are there any restrictions on the endpoint for an API Only user logging in (like Partner but not Enterprise, or SSL endpoint only) ?
I have a test case where when I use the API only user with the Data Loader it logs in fine but when I try to login with my application I get the "Invalid userid..." message. I've checked the soap messages and there's nothing wrong with the outbound message. But with one application the userid works and with another on the same machine it doesn't.
Thanks in advance,
I've noticed that if I update a field in a record there seems to be a delay in when the formula field is updated. After the original field is updated, the sysmodstamp is set.  During that time an Query api call will pick up the record with the new sysmodstamp, the new value for the original field and the old (unchanged) formula field value.
When the formula field is finally changed, the sysmodstamp field does not change again. This makes it hard to detect formula fields changes by exaiming the sysmodstamp field.
Is this expected behavior ? Are the any 'worst case' analysis on how long the delay could be to update the formula field ? Would the GetChanges API call pick up the formula field change (assuming the window starts after the pickup of the original change) ?

I have an integration that pulls OpportunityHistory records. About once a week, I see an OpportunityHistory record with the same Id that changes its CreatedDate value.

In other words, at some point in time we retrieve a OpportunityHistory record using the API. 5 minutes later we pull the same record (same Id value) and the CreatedDate has changed.

How can the CreatedDate of a record change after it is already written ?


I've run into situations several times now where the getDeleted() API is returning an earliestDateAvailable that indicates it should have a record, but does not actually return the Id of a record that has been deleted.

I've observed this now at 3 different customers and on both Event objects as well as OpportunitySplit objects. These customers seem to have some kinds of automation set up on those objects which may be contributing to what I'm seeing?

The Reproducible
1) On 2020-01-03 11:00:20 UTC we issued a Salesforce SQL query for OpportunitySplit objects with LastModified >= 2020-01-02 10:00:00 UTC and we got back a record with the Id 0493b000003OI01AAG.

2) The OpportunitySplit had both CreatedDate and LastModifiedDate set to 2020-01-02T16:48:13.000+0000

3) If I query the API today specifically for 0493b000003OI01AAG it is no loner present in their Salesforce instance (also if I use a queryAll).

4) When I query the getDeleted API for OpportunitySplit objects between 2019-12-28 17:10:32 UTC and 2020-01-07 17:10:44 UTC I get back 42 records and the response shows earliestDateAvailable 2019-12-03T00:30:00.000+0000, but the response does not contain the Id of the OpportunitySplit in question (0493b000003OI01AAG)

Are there cases where an object is hard-deleted, but are not recorded in the delete log?

Is there a way for me to efficiently query for deleted objects that will include these hard deletes?

I tried going to the DBAMP website forceamp.com today and the domain is no longer registered.  Then I called the phone number listed for the company in the phone book (319) 354-3081 and it is dicsonnected.  The support phone number in the application's help menu (319) 383-0200 goes directly to voicemail for sales, support, and accounting.  

Has anyone had contact with this company recently?  

It appears a change was made by salesforce to the repsonse message to a bulkapi query request when the result is zero rows.

Previously, the response contained the headings row and nothing else.  After the change, the response is zero bytes long (i.e. there is no row of headings).

Is this a bug or a permamnent change in behavior?

Jitterbit is throwing this error message, and I was wondering if anyone had any insight as to what Salesforce doesn't like about the operation?

Fatal Error:
Transformation failed.

Call to webservice at https://na25.salesforce.com/services/Soap/u/33.0/00Di0000000HoUP failed. Reported error: The webservice call failed. Failed to check for a SoapFault in the response: D:/Temp/jitterbit/OpId_551186_b683752b-91c9-4c26-b945-54faedbc4f5b/_t636876_target_res.xml Failed to check for Soap Fault in the response: Fatal SAX error: Invalid document structure XML file: D:/Temp/jitterbit/OpId_551186_b683752b-91c9-4c26-b945-54faedbc4f5b/_t636876_target_res.xml The response was: [{"channel":"/meta/subscribe","clientId":"i21moplv8c3qqiiu7gbzivbr0eg","error":"400::Cannot send messages with different client ids in the same request","successful":false}] <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Header><LimitInfoHeader><limitInfo><current>54795</current><limit>3710000</limit><type>API REQUESTS</type></limitInfo></LimitInfoHeader></soapenv:Header><soapenv:Body><queryResponse><result xsi:type="QueryResult"><done>true</done><queryLocator xsi:nil="true"/><size>0</size></result></queryResponse></soapenv:Body></soapenv:Envelope> (The posted soap envelope was: 'D:/Temp/jitterbit/OpId_551186_b683752b-91c9-4c26-b945-54faedbc4f5b/_t636876_target_req.xml'.) [CODE:10721] file: WebServiceHandler.cpp, line 857 [CODE:10104] file: TreeMapperWebService.cpp, line 141

I am just starting to use the OLE db connector for DBAMP. I trying to create a simple package to get data from a Salesforce table and insert the data into a table in sql server. For some reason reason, My OLE db source only returns one row when i know for sure there is more than 1000 rows in the table in Salesforce. Any help is appreciated.






I'm considering moving from Talend to SSIS. Talend is obviously free to use, but the rest of the company uses SSIS, so it would be great to move across to that.


Has anyone got any experience of the various SSIS third party vendors out there?


I noted they can vary wildly in price, from cheap to very expensive solutions.


Essentially, all I would be doing is pulling from text file or SQL source, mapping (and in some instances, using the result of a map to do some further mapping) and then insert/upsert/update to salesforce. Plus maybe looking at going from Salesforce to SQL.


I found this:




but my limited knowledge of SSIS isn't telling me if this will cover my needs. So going to you, the experts, for a bit of advice!



Hi all,


I am using DBAmp to load my replicate some of my tables.  One of my tables OpportunityHistory, hasn't been updated in months and I need to update it.


But I got tje below error: INVALID_REPLICATION_DATE: startDate cannot be more than 30 days ago


And I cannot replicate data that has been modified past then into my OpportunityHistory table.  How do I go about fixing this?

Is it possible to create a Salesforce app which can upload external data (csv etc.), match some of the fields to internal data (customer list) and display the joined results?


I am a software developer with no prior knowledge or experience with Salesforce.  Outside of Salesforce, one way I could achieve this would be to just do a simple SQL join on two tables.  I have no idea if I could achieve the same result in Salesform using any of the available SDK stuff.


If this is possible, can someone point me in the right direction.  Maybe recommend some documentation I could look into fruther? Or even point out some code samples?



What do I need to set if I want a gzippped CSV result response for a bulkapi query ?  I can get the CSV but cannot seem to get it compressed.


I have tried setting the Content-Type of the GetResult GET to gzip but that has no effect.


I have also tried changing the ContentType of the JobInfo to ZIP_CSV but that does not work either.







Over the weekend I'm planning to carry out a large insert using DBAmp butt see that there is Salesforce Maintenance planned. Will the session get killed off or rolled back if the two overlap?


Is there anyone out there with any experience of this I would appreciate some advice.


Any help welcome.


Thanks in advance,




    Can SSRS be integrated with Salesforce . Do Salesforce allow to develop reports in SSRS.






i have installed SQL Server 2005  and visual web developer express 2005 .i want to get data from SQL say one table account-accountname and address  into salesforce.How we can connect sqL server to salesforce.Is it possible.Give me  a solution asap

  • January 28, 2011
  • Like
  • 2

Hello all,


I'm new to the forum, to the cloud concept and to SalesForce, all together, so bear with me if what I'm asking doesn't make too much sense.


I have a requirement to pull/read, 3 tables used by the Chatter feature, down to our data warehouse. However, I do understand these are new tables and there are some issues associated with reading from them.


The tables that I'm trying to read are:






Our current solution, DBAmp (From ForceAmp - http://www.forceamp.com/) cannot see these 3 tables.


Since we are a Microsoft shop, we also tried to leverage SSIS (SQL Server Integration Services, ETL Tool) to perform this task and again, SSIS is not able to see these 3 tables either. We tested SalesForce SSIS connectors from Pragmatic Works and CozyRoc, but none of them seems to allow us to see these tables.


I guess the only other solution will be writing a custom .NET code to perform this task, but we want to stay away from that.


Is anyone running through this same scenario? Have you guys been able to read these tables? Can anyone offer me some help on this? Any information would be greatly appreciated.


Best regards,

-Igor Santos

Our company is looking to utilize an ODBC driver, and I was wondering if anyone has/have used DBAmp and/or DataDirect OpenAccess SFDC ODBC. Which one will give us more bang for our buck?


I've done my fair amount of research..  I mean googling ;) on these two products and so far it seems that DBAmp has more documentation available than OpenAccess. I've tried the trial version of both, but due to the limited amount of time they allow to evaluate these software, I couldn't make out advantages and disadvantages of using one or the other.


Thanks to anyone in advance who might be able to provide us some insights on these two tools. Thank You


DataDirect OpenAccess ODBC for SalesForce.com





We have several customers who are now getting the following error:


"all SObjects in create or update must of same type"


I am trying to run down the instances affected but the common element is that these Update and Insert api calls were working fine on Friday but now do not work on Monday.


We are busy collecting the SOAP data to file a case but wondered if anyone else if experiencing these issues as well.




Bill Emerson