Something completely different and off-topic…

General No Comments »
by:

This blog-post is completely off-topic, but I thought it would be fun to create this post anyway 🙂

Just a few days ago a had a conversation with my colleague while he was packing his bag to leave office.
When I saw him wrap his Mac laptop power-cord around the 2 clips on the edges of his powerplug I (nicely?) pointed out to him that he shouldn’t do that and that the clips were not meant for the purpose he was using them for.

I must admit that I didn’t really have a clue on how to properly use the clips in the Mac powerplug, but I was kind of convinced that what he was doing was wrong.
And I never took the time to look it up either……stupid, since most of this stuff is readily available on Youtube or some other Wiki webpage.

The next day I received an email from my colleague where he (nicely?) pointed out to me that the 2 clips on the edges of the Mac powerplug were meant to be used the way he used them….
Well, almost, because there was a special touch to it….one he was also not aware of…..

But he was clever enough to use Internet…..

Wanna know how to properly use the clips on the edges of your Mac powerplug?
Then see all about it here:

Just as often the case with ServiceNow, go and search for (ServiceNow) answers on Wiki, community and blogs and you’re likely to find useful info out there….

You can reach me on .img[at].img.

Merge Duplicates

General No Comments »
by:

Sometime ago I migrated data from one ServiceNow instance to another. Both instances had company and user data, which were not in sync with each other and the new instance ended up with a number of duplicate companies. Manually copying fields and references from one company to another is not very efficient. There has to be an easier way.
This is an example of how you can merge two company records with a UI action together with a GlideDialogWindow and a Script Include. I have made the setup as generic as I possibly could, so that it can be used on other tables without any/much customizations.

Example merge 2 companies

The UI Action calls a UI page and the UI page calls a script include, which is doing most of the work.The following data is copied from the record on which you trigger the UI Action (source) to the record, which you select in the GlideDialogWindow (target):

  • Fields (excluding system fields and empty fields)
  • References to the source record
  • Attachments
  • Field attachments

You can set a parameter to copy source fields to the corresponding target field when the target field is not empty. Default target fields, which are not empty, are not overwritten.
The UI action also does not delete the duplicate record (source), but sets the record to inactive if possible.
Continue reading…»

Worknote added indicator

General 2 Comments »
by:

In our support Portal, we make use of the worknotes in incident tickets. Worknotes make it possible for us to discuss an incident (inside the incident) without bothering the customer with an overload of updates. Or, without the customer knowing we are discussing….

What we needed was a method to quickly detect an update in the worknote of an incident. The easiest way to detect the update would be if it were visible in the incident list.

How did we do that?
We created a new field in the incident table, a Boolean (only two values, true or false). The field was named “u_new_worknote” , default value is False.

A simple business rule was added to the incident table. This business rule always runs, at least on update of the incident table. If the worknote fields is changed, we set the field to true. In any other case, the field is set to false.

[cc lang=”javascript”]
if (current.work_notes.changes()) {
current.u_new_worknotes = true;
} else {
current.u_new_worknotes = false;
}
[/cc]
We added a new style to the incident number, so we could notice the new worknote… This style makes use of the content of the field u_new_worknotes to decide to change the color on the list… The list is only changed if the user has a role. So, customers, who have no role at all, do not see this

Name: incident
Field: number
Value: javascript:current.u_new_worknotes == true && gs.getUser().hasRoles()

Style:
background-color: #FFFFB0;
background-image: url(‘images/icons/alert.gif’);
background-repeat: no-repeat;
background-position: 98% 5px;
padding-right: 20px;

In the image below, you see the results in the incident list:

You see, with a simple adjustment you can make ServiceNow do exactly what you want!

If you need to reach me you can send me an email on .img[at].img

Sample Custom Incident SOAP Interface

General No Comments »
by:

This article describes a sample setup of an Incident interface using the SOAP protocol between ServiceNow and an external system. It aims to deliver an interface that can easily be monitored by any user with access to the Incident Management module and it will also hand you some important considerations to take into account while designing the interface.

Functional Setup

We are looking at a situation where two systems interface Incidents. Both systems will play a role in the Incident Management process, which means that inserts and updates can be created on either side. Goals of an interface should be:

  • The Incident Process on both sides must be supported
  • Minimum manual work
  • The Incident Process on both sides should be respected. This means that expecting once side to change its process to support the process on the other side should be prevented. This also goes for Codings such as Status and Categorization
  • Data consistency must be preserved: at each moment the data in both systems must match
  • It must be possible to monitor the interface

Questions

The first step in creating an interface is to look at the process on both sides and to find a logical flow across both systems. Main questions will be:
Continue reading…»