I have been battling a problem with the CCX Editor and UCCX for several days. I have even entered a case and the TAC team told me they could not help me and referred me here. I am hoping someone here might be able to help me fix Cisco's software.
The problem began when I was allowed to accidently created a duplicate datasource through UCCX Configuration. That should have never happened, but it did. As a programmer, I knew this would cause problems, so I created a new datasource with a unique name. I thought this would be ok, but it is not. In the editor, when I tried to create multiple DB Read steps using the new datasource name, I get the error seen below, which states that the Resource name was duplicated and to please enter a different query resource name.
Ok, so Cisco admitted that this was something they would have to fix (but not that it was a bug with their software, of course). In a WebEx session, they walked me through deleting the duplicated datasource that was accidently created in the beginning. GREAT, or so I thought.
After doing the delete, I attempted to make a minor change to the script and then perform a validate. When I did, it told me that all of my DB Read and DB Get steps were using an invalid datasource. WHAT?!?!?!
Cisco support now wants nothing more to do with it, and so in an effort to get this thing working I tried deleting all the datasources off the server and starting over. I created a brand new datasource with a totally unique name named portaldb, as you can see below:
Just one datasource, right? NOT according to the terribly fragile and insecure CCX Editor, who still displays this when I do a Refresh Database Schema:
There are 3 datasources (even after closing and re-opening the CCX Editor). What mad caching is going on here people??????
UPDATE: In yet another attempt to resolve this issue, I uninstalled the CCX Editor and rebooted my machine. I then did a fresh install of the CCX Editor and now, when I go to open the script, I get the following error:
Message was edited by: Sara Morgan
If you have installed CET tool 9used by TAC and Development people only), please see if it has entires for the old Datasources in the below flag
You try deleting the old entries from this list and check once (Note: Please make sure to take necessary screenshots before changing anything just in case if you need to revert back to the previous stage).
Yes, when I look in the CET tool, I see only one datasource (see image below)
Now, luckily for me, I had CCX still installed on another laptop, so even though the re-install has ruined my ability to look at the script on one of my machines, I can still open it on the second. When I do and I try to create a DB Read step, I STILL get the message below that a duplicate resource name exists. (see below)
I AM BEYOND MAD ABOUT ALL THIS!!!!!
If this is a 8.0 version, can you let me know what is the exact SU associated.
Also can you check under RMCM pages under the default teams if the resource names are duplicated?
-Like for example check if the same resource shows up under default team and also under the correct team and resource group
-If so please run the following and send the output
select * from profileidmapping
-A quick question during the reinstall did you also do a switch version?
-Did it complete and was it restarted on its own?
Ok, so first off - BIG THANKS to Pete DePalma for doing a WebEx session with me this afternoon and finally getting a resolution to this.
Now, for anyone that might be working with datasources and Contact Center Express, you have my greatest symathies and I can only hope that this posting helps you to avoid some of the issues that I had to face.
As for the development team that wrote the CCX Editor and the Unified CCX Administration Web app, you have some bugs regarding datasources that really need to be fixed at some point.
Ok, so to recap all that I have learned in this fiasco:
1.) The original problem was caused by the fact that I was able to create a duplicate datasource using the CCX Admin app (that should have never happened). If this happens to you, contact the TAC team so they can walk you through deleting the duplicate (because you cannot do so using the web application).
2.) The secondary problem I chased for days regarded the resource name, which I mistakenly thought related to the datasource name (which it does not). To avoid this problem, I would strongly suggest you avoid using the copy method to build your scripts (especially concerning datasources). By using the copy method, I was able to create several DB Read steps that used the same database resource name. NOT GOOD!!!. The reason it is not good is becasue the CCX Editor wants the Resource Name to be unique and it does a check for this, but not if you copy the DB Read from another part of the script (ah, I sense a "bug"). So, what was causing my Duplicate Resource Name error was not the fact that I had a duplicate datasource (which I do not any more), but the fact that I was finally creating the DB Read step from scratch and it was the second one in the script attempting to use the same resource name (or the same name as the datasource). I know this is confusing, but trust me, this is the way it works.
OK, so if you want to have multiple DB Reads in your script, I advise you create them all from scratch and use a different Resource name for each one (see image below for an example where the datasource is named portaldb and the resource name for the first DB Read was portaldb, but the second one was portaldb1)
I still cannot beleive I had to waste so much time on this. I really hope this post keeps someone from having to go through all this.
Still getting the problem I was having which started this whole mess. So, it obviously has nothing to do with duplicate datasources or duplicate resource names. But, it is definitley a BUG (as acknowledged by not only myself, but Pete DePalma from Cisco as well).
I cannot show you this in a screenshot, but randomly (or at least that is how it appears - I am very sure there is a definite reason behind all this, but since I have no access to the code I cannot tell you why), the CCX Editor will just blank out all the values in the DB Get when you go to do a Validate. No error message about why it did that, just that it will do it.
Now, you can get around this, but only if you stand in a corner, holding up one leg, blinfolded, and chanting some indistinqishable chant. Just kidding! Actually, I am not really sure how you get around it, but I think that if you add one field at a time to the DB Get, save and validate the script, exit CCX, go back in and add another, it will eventually let you add them all without the horrid blank out. I don't know, it works sometimes, but not all the time (go figure).
Now, if a developer ever wants to explain this irrational behaviour on the part of the CCX Editor, I would be so, so, so happy to hear it....
OK, I think I **MAY** have figured out what is causing the DB Get blanking out issue. I think that it will do this whenever the order of the fields you add to the DB Get does not match the order of the fields in the prior DB Read query. At least, that is how I got it work this time (I think).
Neverthless, note to the development team - exception handling that actually handles things and displays messages to the users is priceless - really priceless.
Hi, Sara, I don't if you're still paying attention almost a year later. I just want to thank you for confirming some of the brain-dead behavior I've seen in the CCX editor with regards to database access. I'm glad I'm not alone...
No problem David. I am glad to know my post helped someone (if only just to let them know they were not alone).
Hey, wow, thanks so much for the reply! I'm a newbie (all alone in the forest, blah, blah, blah)...
If you can spare a few moments, I'm going to (try to) start a new thread called "Using variables to create SQL strings." (I'm not holding my breath about being able to do that.) Need a few minutes...
Sounds like you've been having fun! Some things you should be aware of, if you're not already: