- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-06-2023 10:39 AM - edited 07-10-2023 02:37 PM
I need to automate the retrieval of data from my Cisco UCCX server to ServiceNow. Currently we are having the Cisco UCCX Server email reports to me, which we then manually manipulate and then import into ServiceNow via .xlsx and .csv file formats. We then transform this to the proper tables.
I need to setup the same without the manual intervention portion. I have successfully installed the Informix ODBC Driver and configured it to talk to the Cisco UCCX server. Has anyone been able to have ServiceNow use an ODBC connection via the Midserver to access a database? I've tried to use the JDBC method, and all 3 of the database types, but get an error like this when attempting to load 20 test records: "the driver received an unexpected pre-login response. Verify the connection properties and check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. This driver can be used only with SQL Server 2005 or later."
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-10-2023 02:33 PM - edited 07-10-2023 02:40 PM
I was able to figure this out. I will outline the steps i took for others to use if needed:
- Download the JDBC Drivers (.jar) from: https://dbschema.com/jdbc-driver/Informix.html
- note the Java Driver Class from page: com.informix.jdbc.IfxDriver
- note the URL from page: jdbc:informix-sqli://HOST:PORT/DB:informixserver=PARAM
- All - System Import Sets - Data Sources.
- Click New.
- Right Click on Format -> Show Choice List. (say no if prompted to save record)
- Click on New
- on new form:
- give label as desired, i entered "Informix"
- for Value, enter the Java Driver Class from step 4 above: com.informix.jdbc.lfxDriver
- Dependant Value: JDBC
- Press Update to save the record
- in the SNOW instance, goto Mid Servers - JAR Files
- create 2 new entries here:
- Name: Informix JDBC
- Version: 4.50.4.1 (from file name of jdbc-4.50.4.1.jar)
- Attach jdbc-4.50.4.1.jar to the record
- Save/Update (mid servers may restart to populate the driver across all the MidServers)
- New JAR File (again)
- Name: Informix BSON
- Version: 4.2.0 (from filename)
- attach bson-4.2.0.jar to record
- save/update (Mid Servers may restart to load this jar file)
- create 2 new entries here:
- All - System Import Sets - Data Sources.
- Click New (this time for real)
- Right Click on header - Configure - Form Layout
- Ensure "Connection URL" is added on the right.
- Save once added or cancel if already there
- Name: Give name of type of Import set you are creating.
- Import set table label - give name of table for the temporary data to be housed in.
- type: JDBC
- Use Mid Server (if you have one and need one, select one from the reference field)
- Format: Informix
- Database Name: db_cra
- Database Port: 1504
- Username: uccxhruser
- password: <<PASSWORD FROM UCCX SERVER>>
- Server: server name (i used the same as the url i use to access the reports)
- Query (specific SQL)
- SQL Statement: from the Cisco report server, i ran the report that contained the data i wanted to show, this was so much easier than building the Informix language to select the fields and tables. a full list of the available reports can be found at: https://community.cisco.com/t5/collaboration-knowledge-base/cuic-uccx-stored-procedure-list-pulled-f... I ran the report on the Cisco Unified Intelligence Center, and went to the tools icon, and selected SQL to get the SQL statement that it used to generate the report i wanted to bring over.
- Connection URL: adjust the information gathered in 1)b) above to match your Cisco Instance:
jdbc:informix-sqli://<<insert host name here>>:<<insert port here typically 1504>>/db_cra:INFORMIXSERVER=<<insert Servername here>>
(servername is typically the same as the hostname with all dashes converted to underscores and _uccx appended to the end, and if your host starts with a number, add an i to the beginning) - save and test load 20 records.
- Setup transform map. and you should be all done!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-10-2023 02:33 PM - edited 07-10-2023 02:40 PM
I was able to figure this out. I will outline the steps i took for others to use if needed:
- Download the JDBC Drivers (.jar) from: https://dbschema.com/jdbc-driver/Informix.html
- note the Java Driver Class from page: com.informix.jdbc.IfxDriver
- note the URL from page: jdbc:informix-sqli://HOST:PORT/DB:informixserver=PARAM
- All - System Import Sets - Data Sources.
- Click New.
- Right Click on Format -> Show Choice List. (say no if prompted to save record)
- Click on New
- on new form:
- give label as desired, i entered "Informix"
- for Value, enter the Java Driver Class from step 4 above: com.informix.jdbc.lfxDriver
- Dependant Value: JDBC
- Press Update to save the record
- in the SNOW instance, goto Mid Servers - JAR Files
- create 2 new entries here:
- Name: Informix JDBC
- Version: 4.50.4.1 (from file name of jdbc-4.50.4.1.jar)
- Attach jdbc-4.50.4.1.jar to the record
- Save/Update (mid servers may restart to populate the driver across all the MidServers)
- New JAR File (again)
- Name: Informix BSON
- Version: 4.2.0 (from filename)
- attach bson-4.2.0.jar to record
- save/update (Mid Servers may restart to load this jar file)
- create 2 new entries here:
- All - System Import Sets - Data Sources.
- Click New (this time for real)
- Right Click on header - Configure - Form Layout
- Ensure "Connection URL" is added on the right.
- Save once added or cancel if already there
- Name: Give name of type of Import set you are creating.
- Import set table label - give name of table for the temporary data to be housed in.
- type: JDBC
- Use Mid Server (if you have one and need one, select one from the reference field)
- Format: Informix
- Database Name: db_cra
- Database Port: 1504
- Username: uccxhruser
- password: <<PASSWORD FROM UCCX SERVER>>
- Server: server name (i used the same as the url i use to access the reports)
- Query (specific SQL)
- SQL Statement: from the Cisco report server, i ran the report that contained the data i wanted to show, this was so much easier than building the Informix language to select the fields and tables. a full list of the available reports can be found at: https://community.cisco.com/t5/collaboration-knowledge-base/cuic-uccx-stored-procedure-list-pulled-f... I ran the report on the Cisco Unified Intelligence Center, and went to the tools icon, and selected SQL to get the SQL statement that it used to generate the report i wanted to bring over.
- Connection URL: adjust the information gathered in 1)b) above to match your Cisco Instance:
jdbc:informix-sqli://<<insert host name here>>:<<insert port here typically 1504>>/db_cra:INFORMIXSERVER=<<insert Servername here>>
(servername is typically the same as the hostname with all dashes converted to underscores and _uccx appended to the end, and if your host starts with a number, add an i to the beginning) - save and test load 20 records.
- Setup transform map. and you should be all done!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-05-2024 01:31 PM
Hi @Jeffrey Siegel , I followed the same steps but i am getting this error Cannot invoke "java.util.Map.keySet()" because "this.fImportSourceFields" is null
Do you ever had this issue?
Thanks,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-05-2024 01:33 PM
Not that i can recall.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-14-2025 02:27 PM
Hi @SirishM and @Jeffrey Siegel ,
Was hoping to get this working as well, and ran into that same issue. Did either of you find a solution to the above error message?