Lost ability to edit/modify my custom application, cannot switch to application scope, record on sys_app.do is read-only

rickrussell_acn
Mega Contributor

Hey folks -- I am really stuck and I hope someone can suggest something.

I'm building a simple ticketing application (extension of task) for a customer. I'm working on their dev instance where I am an admin and a security_admin.

I initially developed the app on a personal developer instance and synchronized it to GitLab (as we learned in App Dev Fundamentals). I used the customer dev instance to import the application from source control, and I resumed working on it.

Sometime during my work in the customer dev instance, I dropped out of my application scope and my scope-specific update list disappeared from the list, I was back in scope: Global and update set: Default [Global]. When I re-select the application scope, it just doesn't take. I still have no update set in scope. If I refresh my browser it still shows Global scope.

My application appears to be damaged as well. I tried publishing it, it failed with an error. There's an entry on sys_app_list.do but even as an admin and a security_admin, I cannot write or delete. The link to switch to application scope reloads the page but does nothing.

find_real_file.png

When I commit changes to source control, the studio appears upload 100% but the changed aren't committed; when I commit changes again the same changes are in the list.

I've barely made any updates; at this point I'd be happy enough to just blow away everything I've done and sync it back down from source control. And the documentation says that, as an admin, I should have write access to all this stuff. But I can't follow any of the instructions or documentation because everything is locked out/read-only.

Any ideas?

EDIT: To add, for reasons that are not clear, my application is now listed as an "External application" -- not sure what this means in the context of an app I created myself, but when I hover over the red warning it says, "Application scope is not from your company. This application cannot be published to your repository or store." -- this issue is "fatal" for me since I need the ability to publish to the company's test & production instances.

find_real_file.png

EDIT: When I attempt to publish to "My Repository" so I could load it in test or production:

find_real_file.png

I'm completely stuck.

1 ACCEPTED SOLUTION

Dan Ellis
Kilo Sage

So there are a few different things at play here.

 

"When I re-select the application scope, it just doesn't take. I still have no update set in scope. If I refresh my browser it still shows Global scope."

ServiceNow will not let you select an application scope if it does not have a default update set. These steps will let you create a new default update set in your application scope and therefore allow you to select the scope.

  1. Select your application from the application dropdown at the top of the page.
  2. Open the default global update set.
  3. Mark the global update set as complete and save the record.
  4. You should now have new default update set created in both the global application and in your custom application.

 

"My application appears to be damaged as well. I tried publishing it, it failed with an error." There's an entry on sys_app_list.do but even as an admin and a security_admin, I cannot write or delete. The link to switch to application scope reloads the page but does nothing.

This might resolve itself once you create a default update set using the steps before.

 

To add, for reasons that are not clear, my application is now listed as an "External application" -- not sure what this means in the context of an app I created myself, but when I hover over the red warning it says, "Application scope is not from your company. This application cannot be published to your repository or store." -- this issue is "fatal" for me since I need the ability to publish to the company's test & production instances.

This will be because the applications scope prefix does not belong to your customer. When you build an app in a personal dev instance the scope prefix will be something like "x_254103_" whereas an app created in your customers instance would be "x_[their company id]_".

EDIT: This explains some details around scope naming. https://docs.servicenow.com/bundle/newyork-application-development/page/build/applications/concept/c...

 

Thanks,
Dan

View solution in original post

2 REPLIES 2

Dan Ellis
Kilo Sage

So there are a few different things at play here.

 

"When I re-select the application scope, it just doesn't take. I still have no update set in scope. If I refresh my browser it still shows Global scope."

ServiceNow will not let you select an application scope if it does not have a default update set. These steps will let you create a new default update set in your application scope and therefore allow you to select the scope.

  1. Select your application from the application dropdown at the top of the page.
  2. Open the default global update set.
  3. Mark the global update set as complete and save the record.
  4. You should now have new default update set created in both the global application and in your custom application.

 

"My application appears to be damaged as well. I tried publishing it, it failed with an error." There's an entry on sys_app_list.do but even as an admin and a security_admin, I cannot write or delete. The link to switch to application scope reloads the page but does nothing.

This might resolve itself once you create a default update set using the steps before.

 

To add, for reasons that are not clear, my application is now listed as an "External application" -- not sure what this means in the context of an app I created myself, but when I hover over the red warning it says, "Application scope is not from your company. This application cannot be published to your repository or store." -- this issue is "fatal" for me since I need the ability to publish to the company's test & production instances.

This will be because the applications scope prefix does not belong to your customer. When you build an app in a personal dev instance the scope prefix will be something like "x_254103_" whereas an app created in your customers instance would be "x_[their company id]_".

EDIT: This explains some details around scope naming. https://docs.servicenow.com/bundle/newyork-application-development/page/build/applications/concept/c...

 

Thanks,
Dan

Dan -- thanks for the outstanding response -- 

Completing the old update set did not fix the problem, but ultimately it doesn't matter, as I need my app to have the correct namespace identifiers as you clearly and helpfully explained. 

As things stand, I'm going to call my prototype "water under the bridge" -- it was an essential learning experience in any case -- and start fresh in the customer's dev instance. There were a couple of fundamental design changes I wanted to make anyway that would have been challenging if I used my original code and assets. It puts me a day or two behind, but I'd rather be a day or two behind and do it right than to be a day or two ahead with an unpaid technical debt when I deliver this product.

Thank you again!

Rick R.