Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

QlikView Salesforce connector - problems running from server (Publisher)

Using QlikView 10SR2 and the most current SalesForce connector.  Running Publisher on a x64 server.

I have a simple extract file that selects records from a couple of Salesforce tables and creates QVDs.  The file works fine from my desktop, and also runs fine when run from the QlikView desktop on the server where publisher is installed.  However, when run as a publisher job, although it does not error or abend, it simply pulls 0 records.  So it seems to connect fine and the SELECT statements are fine, but nothing is retrieved. 

I've re-installed the connector, played with proxy settings, restarted services, restarted the server, all without success.  Oddly, I tried to re-create the connection string along the way, and it actually ran ONCE from Publisher, but only that one time.  All other attempts have failed.

When run from my workstation or from the Publisher/Server but using QlikView desktop, the log output is as follows:

0020  CUSTOM CONNECT*Provider*SalesForceDLL.dll*XUserId*XPassword*

0023  Portfolio:

0024  SQL SELECT *

0025  FROM Portfolio__c

       237 fields found: Id, IsDeleted, Name, RecordTypeId, [etc... omitted to simplify post], 603 lines fetched

0027  STORE * FROM Portfolio INTO ..\Datasources\QVD\Salesforce\Portfolio.qvd (qvd)

0029  DROP TABLE Portfolio

0031  Account:

0032  SQL SELECT *

0033  FROM Account

       334 fields found: Id, IsDeleted, MasterRecordId, Name, [etc... omitted to simplify post], 1,774 lines fetched

0035  STORE * FROM Account INTO ..\Datasources\QVD\Salesforce\Account.qvd (qvd)

0037  DROP TABLE Account

0039  exit script

     Execution finished.

However, when run from Publisher, this same file generates a lot like the following, and retrieves no records:

0020  CUSTOM CONNECT*Provider*SalesForceDLL.dll*XUserId*XPassword*

0023  Portfolio:

0024  SQL SELECT *

0025  FROM Portfolio__c

       1 fields found: *, 0 lines fetched

0027  STORE * FROM Portfolio INTO ..\Datasources\QVD\Salesforce\Portfolio.qvd (qvd)

0029  DROP TABLE Portfolio

0031  Account:

0032  SQL SELECT *

0033  FROM Account

       1 fields found: *, 0 lines fetched

0035  STORE * FROM Account INTO ..\Datasources\QVD\Salesforce\Account.qvd (qvd)

0037  DROP TABLE Account

0039  exit script

     Execution finished.

I've also tried using specific columns in the SELECT rather than the * wildcard, but no joy.

Any ideas from folks using Salesforce in a Server/Publisher environment?  Thanks so much for any inputs or suggestions.

1 Solution

Accepted Solutions
Not applicable
Author

Thanks so much to all, resovled this, but wanted to update the information here for the potential benefit of others.

In my case, it was an organizational firewall issue that was preventing the SalesForce connector from reaching their datacenter.  I found helpful information by searching the Salesforce site for "Mirrorforce" (which is the technology they use for the API Server).  In that document, I found the ports that I needed to request open.

Here are the IP address blocks for the Salesforce relevant datacenters.  Once I had our security folks open these, the connector worked as it should:

  1. 204.14.232.0/23   East Coast Data Center (set one)
    204.14.237.0/24   East Coast Data Center (set two)
    96.43.144.0/22    MidWest Data Centers
    96.43.148.0/22    MidWest Data Centers
    204.14.234.0/23   West Coast Data Center (set one)
    204.14.238.0/23   West Coast Data Center (set two)
    182.50.76.0/22    Japan Data Center

Ports:  80, 443

View solution in original post

24 Replies
fosuzuki
Partner - Specialist III
Partner - Specialist III

Hi,

I've never pulled data from SalesForce so no experience on that. But first thing I'd check is to see if the user configured to run the QV service has the same privileges as the user you logged in your workstation.

Hope this helps you

Fernando

erichshiino
Partner - Master
Partner - Master

Hi,

Did you try to use QlikTech's template for sales force?

http://us.demo.qlik.com/detail.aspx?appName=Salesforce.qvw

There, the connections string is similar but has an additional paramenter in the middle. I'm not sure if this may be thedifference.

Did you include the 26-char token in the password?

CUSTOMCONNECT TO "Provider=SalesForceDLL.dll;F21;UserId=$(SF_Username);Password=$(SF_Password);";

Regards,

Erich

Not applicable
Author

Thank you Fernando, but the credentials for Salesforce are included in the connect string.  And again, this same file works fine when run using Qlikview desktop on that same machine.

Not applicable
Author

Thank you Erich.  Although I've not tried to re-load the demo app, I have verified my connection string, and yes it appears much the same.  The F21 you see there is the API level.  And yes, the token is in the password.  Again, it all runs fine from desktop (on both my development workstation and from the very same machine where Publisher is running.

erichshiino
Partner - Master
Partner - Master

When you use QV Desktop on the server is it x64 as well?

Which SalesForce connector did you install? x64 or x86 or both?

Does the Force32 checkbox make any difference in your case?

Regards,

Erich

Not applicable
Author

It's a x64 machine, with x64 Server/Publisher, x64 Salesforce connector, and x64 QlikView desktop as well -- so 64 bit across the board.

When you connect using the Salesforce custom connector (with 64 bit anyway), the "Force32" checkbox is not available (it's disabled).  I think the same is true when using Salesforce.com x32 connector.

sarahallen1
Creator II
Creator II

Hi,

I know this might be too late, but I just had the same problem and have worked out the solution!

My original file SalesForceDLL.dll was saved in C:/Program Files on the server machine for the QVW.  I think this may have been a legacy file from a previous installation of QVW (I am now running v10 SR4).  I moved the file to here: C:\Program Files\QlikView\Distribution Service and it worked fine. 

I worked out where to move it to by looking in the log from the QVW file - it said "Error: Invalid custom connector SalesForceDLL.dll" (I'm guessing you had this too?), and then it said something like "used file C:\Program Files\QlikView\Distribution Service\qvconnect64.exe".  So I figured it was trying to look for files in that folder.

Worked fine for me, hope it does for you too!

Sarah

Anonymous
Not applicable
Author

HI,

Did you leased a license to the Service Account?

Assign a license to Service account and lease it by logging into the Service account. if you have a cluster you have to lease in the machines running QDS. Hope this helps

Not applicable
Author

Thanks so much to all, resovled this, but wanted to update the information here for the potential benefit of others.

In my case, it was an organizational firewall issue that was preventing the SalesForce connector from reaching their datacenter.  I found helpful information by searching the Salesforce site for "Mirrorforce" (which is the technology they use for the API Server).  In that document, I found the ports that I needed to request open.

Here are the IP address blocks for the Salesforce relevant datacenters.  Once I had our security folks open these, the connector worked as it should:

  1. 204.14.232.0/23   East Coast Data Center (set one)
    204.14.237.0/24   East Coast Data Center (set two)
    96.43.144.0/22    MidWest Data Centers
    96.43.148.0/22    MidWest Data Centers
    204.14.234.0/23   West Coast Data Center (set one)
    204.14.238.0/23   West Coast Data Center (set two)
    182.50.76.0/22    Japan Data Center

Ports:  80, 443