I am currently attempting to use the Alteryx Salesforce Input tool (V4.1) and I am experiencing a multitude of errors/issues.
First off I would prefer to use Alteryx Designer 2019.4 - Where I haven't been able to get the tool to run at all (traceback errors) usually something like this:
Error: Salesforce Input (8): Traceback (most recent call last):
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\connector.py", line 822, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs)
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\asyncio\base_events.py", line 1050, in create_connection
transport, protocol = await self._create_connection_transport(
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\asyncio\base_events.py", line 1080, in _create_connection_transport
await waiter
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\asyncio\sslproto.py", line 529, in data_received
ssldata, appdata = self._sslpipe.feed_ssldata(data)
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\asyncio\sslproto.py", line 189, in feed_ssldata
self._sslobj.do_handshake()
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\ssl.py", line 944, in do_handshake
self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate signature failure (_ssl.c:1123)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "main.py", line 163, in pi_push_all_records
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\engine\sf_queries.py", line 76, in process_query
loop.run_until_complete(retrieve_query_json(self, query_endpoint, header))
File "C:\Users\username\AppData\Local\Alteryx\bin\Miniconda3\lib\asyncio\base_events.py", line 616, in run_until_complete
return future.result()
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\engine\sf_queries.py", line 59, in retrieve_query_json
response = await retrieve_query_json_chunk_parse_response(self, session, endpoint, header)
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\engine\sf_queries.py", line 14, in retrieve_query_json_chunk_parse_response
async with session.get(endpoint, headers = header) as response:
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\client.py", line 843, in __aenter__
self._resp = await self._coro
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\client.py", line 363, in _request
conn = await self._connector.connect(
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\connector.py", line 445, in connect
proto = await self._create_connection(req, traces, timeout)
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\connector.py", line 753, in _create_connection
_, proto = await self._create_proxy_connection(
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\connector.py", line 956, in _create_proxy_connection
transport, proto = await self._wrap_create_connection(
File "C:\Users\username\AppData\Roaming\Alteryx\Engine/../Tools\SalesforceInput_v4.1.0\Lib\site-packages\aiohttp\connector.py", line 824, in _wrap_create_connection
raise ClientConnectorCertificateError(
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host customlink.my.salesforce.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate signature failure (_ssl.c:1123)')]
Has anyone else had any issues running the SF input (V4.1) in 2019.4 (designer/server)? (It says it's compatible with 2019.2 and up in the Alteryx Gallery so it technically it should run- so I'm assuming I'm missing something somewhere to cause this to not work at all)
as an important note: When I run the workflow in Designer 2020.4 the SF input runs (about 80% of the time) - the traceback error I get is different: (however will eventually run after a few attempts - so I'm not sure why 2019 would return a cert error- unless there is something vastly different that I'm not aware of?)
Error: Salesforce Input (8): Traceback (most recent call last):
File "main.py", line 7, in <module>
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\engine\sf_authorization.py", line 3, in <module>
import engine.sf_proxy as sf_proxy
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\engine\sf_proxy.py", line 5, in <module>
from pypac import PACSession, get_pac
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\Lib\site-packages\pypac\__init__.py", line 20, in <module>
from pypac.api import get_pac, collect_pac_urls, download_pac, PACSession, pac_context_for_url
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\Lib\site-packages\pypac\api.py", line 10, in <module>
from pypac.parser import PACFile
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\Lib\site-packages\pypac\parser.py", line 6, in <module>
import dukpy
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\Lib\site-packages\dukpy\__init__.py", line 1, in <module>
from .evaljs import evaljs, JSInterpreter
File "C:\Users\username\AppData\Roaming\Alteryx\Engine\../Tools\SalesforceInput_v4.1.0\Lib\site-packages\dukpy\evaljs.py", line 7, in <module>
from . import _dukpy
ImportError: cannot import name '_dukpy'
The goal I am looking for here is the ability to save and run the workflow on a schedule on Alteryx Server 2019.4
willing to test anything at this point...
Hi,
I can't solve your issue w/running on Server v2019.4, I can tell you a couple of things tho since we've also had a lot of trouble with the SF Input tool but at this point we have a (customized) version of it in production on v2020.3.
a) Alteryx Python support has changed over time, it seemed like it improved from release to release (Python tools were less crashy/sensitive) and then v2020.2 took a step backwards that wasn't improved in v2020.3. I dunno about v2020.4. The SF Input tool installs a whole lot of Python so I'm not sure how much that ties with the rest of Alteryx.
b) The v4.1 tool has a known issue where it doesn't support downloading data from SF reports. We kept on an older version for awhile, then upgraded to the 4.2 tool once that became available.
c) Neither the v4.1 or v4.2 tools are designed to work both locally in Designer and on Server in the same workflow. The password & token are encrypted using a machine-generated key so the workflow we create in Designer will then fail to run on Server.
One workaround is to edit the workflow in Designer on a particular Server node and then make sure the workflow always runs on that node. We didn't want to have to live with that in our environment so we built a different workaround: A colleague of mine created a customized version of the v4.2 tool that does assorted obfuscation of the stored password info so we can build & edit workflows in our local Designer and save them to Server and run on any node. The obfuscation is "good enough" for our environment but not something we're comfortable publicly sharing because it's not truly secure.
Jonathan
Thanks @jdrummey
Luckily I'm not pulling any reports, I'm also using an API dev user login/security token on the SF input- would your comment about the machine generated key still apply?
Either way I am not able to test the current workflow (the workflow that works in 2020.4) on the server yet- as the server we are using is v 2019.
I guess right now I would be satisfied with running a workflow successfully with the Salesforce input tool in Designer 2019.4 to start.
Hi @Derangedvisions and @jdrummey ,
We apologize you have run into so many issues with the Salesforce tool and any inconveniences it has caused. We understand that is an important connector and want to help. The good news is that all of the issues you mentioned should be able to be resolved, most pretty easily.
*** On 2019.4 the 4.1 version of the Salesforce tool should just work. If you are receiving that 'SSL Certificate Verify failed' error that is the trickiest of what you mentioned because it is environmental. We can usually work around that by copying the active cert from your browser into the tool's Python code. Sometimes this can also occur in your are in a proxy server environment and network routing wasn't completed properly. Please feel free to contact Alteryx Support and we would be happy to troubleshoot this with you (you may reference his post)
*** For the Existing Report query functionality, you are correct that is known issue DE20556 and we can work around that very easily by editing the sf_reports.py file [Tool may be in your ProgramData path or User path depending on whether you installed when running elevated. On Server should be ProgramData path]
Edit line 38 to say 'report_data_endpoint' like so:
*** To be able to use any of the Python-based connectors on Server we can work with your team and Server Admin to make a small Windows configuration change on the machines. Please contact Alteryx Support and just let them know you would like to get set up to be able to Publish Salesforce tool to Server.
*** Lastly, in 20.4 we did make a change to the Designer embedded Python version. If you installed the Salesforce tool in 2019.4 then try to use it n 2020.4 you will receive an error. This can be resolved by re-installing the YXI from 20.4.More info can be found here:
https://help.alteryx.com/current/designer/upgrade-python
I hope this helps. Please do contact us if you have further questions or need assistance.
Wish you a Happy New Year!
Sabrina
Thanks @SabrinaCB,
Does it make a difference which version of Alteryx I have installed? (non admin vs. admin?)
Originally I had downloaded the Admin version (where I do not have permissions to edit the sf.reports.py file) so I have changed the code in the non admin version of the tool folder I do have access to- however the workflow still fails.
I will get the other version removed (for a sanity check) and reach out to support to assist making the change on the server side.
Thanks again- I will update this thread if that indeed fixes my issues.
Hi @Derangedvisions ,
Thanks for the response. For the existing report query issue, it shouldn't matter if it's Admin or Non-Admin, but it would matter if you had the tool installed in 2 places or multiple versions of the tool (or if there were other permissions restrictions from your end to edit certain paths)
Due to the other issues you mentioned I do think it would be a good idea to contact Support, especially the certificate/proxy issue. We'd be happy to help (you may reference this post and I can try to keep an eye out for it) We should be able to figure it out.
Thank you,
Sabrina
Thanks again @SabrinaCB for the quick replies! working on getting the admin version uninstalled as I do have the sf tool installed twice (have to wait for our local IT support team to handle the ticket)
I do have a ticket open with Alteryx Support (Case #00393286) where they were assisting me with other issues I had with the tool.
Just as an update we have narrowed down the issue to the use of a specific VPN (not sure if it's a settings change from one VPN to another or a Zscaler specific issue) luckily we currently have two systems to connect to the VPN- so using the other VPN connection the SF tool works fine with no errors. If anyone else is using Zscaler and has the same issue or has a fix please let me know!
Thanks
User | Count |
---|---|
19 | |
14 | |
13 | |
9 | |
8 |