John Murray · Sep 3, 2018 go to post

Gevorg, I'm only seeing a corrected title. The body of the post still makes two references to namespace:

John Murray · Aug 31, 2018 go to post

A couple more comments:

  1. I'm not clear why the title and the body of the post refer to a "namespace". Security credentials are system-wide, not per-namespace.
  2. The method switches to the %SYS namespace in order to be able to run the List query of Security.Users, but it never switches back.
John Murray · Aug 31, 2018 go to post

Be aware that this code sample changes the password of every user, including the CSPSystem account used by your CSP-enabled your web servers, including the private Apache instance that hosts the browser-based admin of your server. Changing that password may prevent you using Portal until you have made the corresponding change via the Web Gateway Management page.

John Murray · Aug 30, 2018 go to post

Here's a somewhat contrived case where that technique fails:

USER>s weirdlist=$lb("Very "_$lb($c(0))_" odd data",$c(0),2)
 
USER>s replaced=$replace(weirdlist,$lb($c(0)),$lb())
 
USER>zw weirdlist
weirdlist=$lb("Very "_$c(3,1,0)_" odd data",$c(0),2)
 
USER>zw replaced
replaced=$c(19,1)_"Very "_$c(1)_" odd data"_$c(1,3,4,2)
 
USER>
John Murray · Aug 28, 2018 go to post

The rules about indirection in ObjectScript can be a bit tricky to comprehend. Your last line is syntactically invalid.

Use this instead:

S @("C="_B)
John Murray · Aug 23, 2018 go to post

I second Jon's point about how the SET (v1,v2)=initialValue syntax makes clear to the reader that v1 and v2 begin with the same value.

John Murray · Aug 13, 2018 go to post

I haven't tested this myself, but did you try using the OnInit() callback method?

There's a bit of information here.

Maybe you're already doing this and finding $username="_Ensemble"

John Murray · Aug 10, 2018 go to post

I'm not clear what Tomcat has to do with your attempts to use Atelier. Atelier connects to Cache / Ensemble / HealthShare / IRIS servers, typically via the same webserver you use when managing those servers through InterSystems' Management Portal. This could be the private Apache instance that InterSystems installs by default, and which by default runs on port 57772.

John Murray · Aug 10, 2018 go to post

I can get that error message from Atelier's connection setup dialog if I intentionally point to a web server that doesn't offer the /api/atelier REST interface to a Cache/Ensemble 2016.2+ server

From your original posting it's not clear to me that you're connecting to a suitable web server.

John Murray · Jul 27, 2018 go to post

Did you consider creating a Studio Project containing everything you need? Then you can export the project to XML in a way that includes all the members of the project as well as the project definition.

It's also worth knowing that if you go to the Namespace tab of the Workspace pane, then expand Classes, you can right-click on a package and add the package to your current project. This may be better that adding individual classes to your project, because by adding the package you ensure that any classes added later to the package will be exported too.

John Murray · Jul 24, 2018 go to post

It looks like this class is intended to be created in the %SYS namespace so it can use the Security.System class.

Also, be aware that classes you create in %SYS typically don't survive a Cache / Ensemble / HealthShare upgrade.

John Murray · Jul 19, 2018 go to post

This section of the 2017.1.2 release notes looks relevant. I guess the problem occurs for all server-side source control classes, not just the Deltanji one


Category: DeepSee.User Interface

Platforms: All
DevKey: DTB633
Version: 2017.1.2
Summary: Ensure widgets can be edited when namespace uses source control
Description:
If source control is enabled in a namespace, privileged users could not edit dashboards. This change corrects this problem.
John Murray · Jul 18, 2018 go to post

What version(s) of Ensemble / HealthShare suffer from this bug? In what version did it get fixed?

John Murray · Jul 17, 2018 go to post
  1. Connect Studio to your namespace.
  2. File\New Project. Your Studio titlebar will refer to Project1.prj.
  3. Project\Add Item...
  4. File\Save Project As... and give your project a meaningful name.
John Murray · Jul 17, 2018 go to post

Your SetPersistentValue calls refer to LastModified, but your query refers to LastUpdated. Is this a typo in your post?

If you use Portal (Explorer, SQL) to run a query that reports LastUpdated values, what do they look like? More technically, what datatype are they?

John Murray · Jul 17, 2018 go to post

You can create a Studio project interactively from within Studio. There are a few hints in the Studio doc here.

Or if you want to create/amend Studio projects programmatically, use the %Studio.Project class.

John Murray · Jul 11, 2018 go to post

There's a table at http://georgejames.com/deltanjiEditions

The free Solo edition is intended for, well, solo situations, with one developer wanting straightforward checkout/checkin source versioning for their namespaces on their local Cache / Ensemble instance.

In your context the Team or Enterprise editions are more likely to be appropriate, particularly since the comparison table shows LUTs not being supported by Solo.

Deltanji is capable of a lot more than simple code versioning. Please contact me via the George James Software website if you'd like to evaluate Team or Enterprise editions, or if the capabilities of the Deploy edition are of interest to you.

John Murray · Jul 10, 2018 go to post

Since you're using Ensemble, you may also like to know that Deltanji integrates with the Portal-based editors and with Studio, as well as with Atelier. It is server-side source control, so has no problem with scenarios where multiple developers work as a team in a single namespace.

John Murray · Jul 10, 2018 go to post

Yes, Deltanji handles LUT and HL7 components natively. And yes, it's a paid product, though there is a free Solo edition.

John Murray · Jul 10, 2018 go to post

Manish, I highly recommend you use the normal support channel for this, i.e. contact WRC.

John Murray · Jul 10, 2018 go to post

IMO your best chance of getting this issue addressed by InterSystems is to engage with them through WRC (Worldwide Response Center).

John Murray · Jul 10, 2018 go to post

Are you "committed" to using GIT as your source control? If not, maybe take a look at Deltanji from George James Software (my employer).

John Murray · Jul 6, 2018 go to post

It worked for me (2017.2.2 on Windows):

C:\InterSystems\Ens172\bin>CSESSION ENS172 < c:\s\try.script

Node: TIN, Instance: ENS172

USER>zr

USER> ; Test routine created by try.script file

USER> w !,"This is written by INT routine ",$t(+0)

USER> w !," which is created from a script injected to csession."

USER>zs MyBootRoutine

USER>d ^MyBootRoutine

This is written by INT routine MyBootRoutine
 which is created from a script injected to csession.
USER>; Clean up

USER>zr  zs MyBootRoutine

USER>h

C:\InterSystems\Ens172\bin>

Maybe your indented script lines (the ones to insert into the routine) aren't starting with $C(9)