Creating Global Apps

Most of the FujiForty series so far has been focused on the benefits and challenges of scoped applications and the related API changes. By far, the biggest reason to understand and work with scoped applications is so you can publish them in the ServiceNow Store. If you're not interested in publishing a particular application or utility in the store building a scoped app can be overkill and possibly add unnecessary extra development time. These are the times when you should just build a global application.

At first you might thing this is impossible. Attempts to override the system generated scope name will fail unless it matches your assigned vendor scope. 

 

To allow for global application creation, you must first set a property. While in the global scope, create a system property (sys_properties) named "glide.app.creator.global" and set the value to true.

Now you'll see a new "start from global" option when creating a new application.

 

The rest of the application development process is pretty much the same from here, with a few exceptions.

 

When you start building tables you'll notice that naming conventions are as they were in pre-Fuji releases, prefixed with "u_".

If you have a vendor code, I recommend manually adding it to the table name. This provides a better chance of it being unique if you are going to share this outside of your organization.

You'll still have access to the application file protect policies but don't bother setting them. Protection policies only apply when applications are installed from the store.

 

Since global applications cannot be published to the store, you won't see the related publishing links on the application form. If you are interested in distributing your global app to others use the "publish to update set" option and export