The CreatorCon Call for Content is officially open! Get started here.

Are you still developing in the global scope?

Chuck Tomasi
Tera Patron

I'm hearing more and more that a lot of people are still developing their solutions in the global scope despite all the great development advancements we've built in to the platform (e.g. Git integration, Studio, delegated development, publish/install, etc.). Our platform business unit has the vision that we should all be building using scoped apps. This includes new apps as well as extensions to existing applications (even in the global scope.) I'd like to know what's keeping you from realizing that vision. Examples may include:

  • There is a scripting API that is not available to scoped apps
  • Our requirements force us to use synchronous Ajax
  • We are still on Eureka
  • I love update sets!
  • I just don't know enough about creating scoped apps (and that's OK.)

Specifics are always appreciated. Thanks!

52 REPLIES 52

After 3+ years of ServiceNow development I understand the challenges in developing such a tool are so significant that it likely will never happen or, if delivered, will go through many enhancements/patches before it's ready for use by anyone other than the pioneers who are willing to see wagons burning.

Honestly, the blame for some of this lies at the feet of the current sales force. I say current because only with the Istanbul release were scoped apps feasible for the general user base IMHO. But, the sales teams still portray ServiceNow as a code-less solution and customers take them at their word. Yes, it's a true statement if you're willing to undergo the process changes needed to use the tool as-is, another point that is not communicated by any sales team in or out of ServiceNow.

Once a new install gets a fairly useful environment going using a compromise of ServiceNow compliant processes and the things they decided they couldn't do without, if those changes in the global scope it is extremely hard to un-ring that bell.

Domenic Horner
Tera Expert

Hi,

I've developed apps both inside and outside of scope, and the biggest frustration I have with scoped development is the lack of supported API's. (And the differing ways to call these API's!)

For example, you create a query using the search builder, copy it into a scoped, encoded query, and you get these errors:

gs.beginningOfToday is not allowed in scope
gs.endOfToday is not allowed in scope
gs.nowNoTZ is not allowed in scope

There are also other API's that are unavailable in scope, namely the $sp and other script includes/etc that are used in OOB widgets, this means we're unable to reproduce the functionality of specific OOB widgets within a custom SP scoped app, instead having to re-write queries for these functions that are inaccessible.

Speaking to the product team at knowledge, it seems most of these restrictions are done for security or something, but I can;t see why this would be the case for these specific API calls? (they all relate to date, etc)

I've had the same frustration. Depending on the situation I've either made my own version of the code or edited the scope to make the script include available to all scopes. Of course, if you take the latter you 'own' the code and won't get updates unless you revert back to OOB.

The fact that $sp is unavailable in a scoped app is very annoying. I am using a custom version of the form widget and cloned it to my scoped app. I faced many issues related to unsupported API functions such as $sp. As an alternative I kept the custom form widget in the Global scope which did the trick. Still not desired solution.

@Chuck, is $sp going to be available for scoped apps? thanks in advance.

Further the license implications of scoped applications are per customer, per contract/year different which lead to confusing of costs. Hopefully this will be standardized soon.

regards, Peter

  

Peter, I was unaware that $sp is not available in scoped apps. I wrote a widget in a scoped app a couple years ago with the line

	data.otd_page = $sp.getParameter('otd_page');

and had no issues since Helsinki. Is this similar to what you are experiencing?