Hello everyone, I need some help on a strange issue. I have attached a screen shot and rules that are being used on my system. In the screen shot I have a custom modifiable field called "Entered By". (We don't use "Entered by Person" as it is not modifiable.)
In turn that information is written out to the diary as a time stamp with the present users name followed by "stuff" from the information or Solution windows.
Up till recently the rules ran fine then everthing just "Broke" to updates to "Entered By" or entries in the diary.
I have managed to re-build all the rules as no amount of playing with the old rules worked. I have managed to get everything working EXCEPT the update to the "Entered By" field. It always remains set to the origional call taker. Which in turn means the stamps to the Diary also have the origional owners name.
BTW when you look at the DB rules you will note that the second rule (DO NOT UN- BLOCK UPdate Entered by Person name) is closed is because if it is left on it does update the "Entered By" field but with user,system... not good.
What I meant is that before this problem (broke) the "Entered By" field would update with the new data enters name. Then when you save if there is data in information field it would append that to the diary. Further if status would change to closed data in the solution field would be appended . Time stamps are appeneded in all cases.
However when the "problem" occurred nothing worked as outlined above. REALLY BROKE :-)
I had to block the clear entered by field because with it operational we were back to the entered by field never getting any name in it (blank) or getting user,system. Plus the data from info and solution would not append to the label correctly causing in some cases truncation of the bulk of the data. I agree that there should be no relationship............but.....
not too sure why the rules are not working but rather than using the "Entered By" field set up you can instead use a concatenation in the DB rule (update Data) for the running diary to add a functon of "Current PersoN" which will do the same as your set up with less rules.
You would have to rebuild the rule to add in the addition concatenations to add the current person.
Thanks for the reply Mark. I have tried that (during the troubleshooting) and the results were pretty much the same. Current person would alway come up user,system in the diary time stamp. BTW I pretty much did the "rubic's cube" thing, trying to get variations of rules to work. The UI and DB rules you see now are the only ones that came "close" to total functionality.
This one is a real bear. Thanks for trying though.
BTW does anyone know if there is a way to edit the rules directly? Using the tools is an excersise in frustration at best. I forgot to mention I am using 4.5 sp 10.
If I am understanding you question correctly yes. Each consultant has a log-on ACCOUNT (Security) which is associated with that persons record through the Account field in the Person record (SD Person).
<< "where Entered By (*) is empty" means someone has to clear the Entered By field and save the ticket field for this rule to get triggered. >>
You must uncheck "When this field has changed" on the db rule.
UI rules and DB rules have a major difference concerning "When service call is modified" trigger. UI rules expect a *specific* field to be changed while DB rules don't.
Therefore actualy there are two triggers for a db rule when an item is changed. The first is to check if a *specific* field has changed ( this puts the (*) in db rule condition) and then act accordingly. The second is that you can update one or more fields when *ANY* field is changed on this item.
Go to Databases Rules\Service call and change the view to "Database Rule (System". There make sure that the rule named "SET ENTERED BY PERSON" is above the rule named "UPDATE DIARY FROM SOLUTION-FINAL SOLUTION". If it is not, there lies the problem and you have to rearange the rules by pressing the up/down arrow buttons, on the right of the view name.
If yes, then temporarily block all db/ui rules that update the "Entered By" field and create a debug rule like this:
When service call is created or modified where Entered By ABCDEFGHIJKLMN Entered By set to (Current person)
Create or modify a service call and change the "Entered by" value to ABCDEFGHIJKLMN. Wait a minute or two to make sure that the rule is fired and open the service call and check the value of "Entered by". Chances are that the "Entered by" will have the right value. If not the problem lies somewhere else and we have to investigate further.
Hi George What you stated (thanks for all the detail by the way) I tried during testing. If you look at my first request there is an attachment that shows the rules. But as they are now not when it first broke.
While testing and fixing I am almost 100% positive that I did what you suggest as far as order etc. and still got the same result(s) or worse.
I have rules turned on and off only to get SD somewhat working (minimal manual input/fixing on the users part). Logically I understand what your suggesting. But as stated before it didn't work "as advertised". :-)
Could you look at the rules in the attachement and make a recommendation as to what (except for the make empty rule which is blocked so we can limp along...I understand it is "hopefully" eventually needed. But when I tried unblocking it and the problem would come up again.
Hi George, In concept I understand what you want me to do and why you want me to do it. However I still don't know what you mean by the source ID. I see no such field available when trying to build the rule you suggested. (See attachment). Since the ID should be unique that would be the Service Desk Call Id?????? And if so that is an un-modifiable field. Should I create that test call first and use the assigned number for the DB rule you suggested.
Source id is a 80char text field that mainly is used for data exchange between service desk and another source. In service calls created by hand normaly should be empty. As I see from your screenshot probably you 've renamed source id to "source", but is the same thing.
You could alter the rule I 've send and instead of source id use any text field, built-in or custom.