go to post John Murray · May 16, 2018 Might be wise to amend your code so you check the status code returned by each of the methods you're calling.
go to post John Murray · May 15, 2018 The TROLLBACK command doesn't automatically release LOCKs that were acquired within the transaction. The TROLLBACK documentation is a bit confusing in this regard. At one point it says this:Then later on the same page this text seems to say that both TROLLBACK and TCOMMIT do release locks.Jordi, in your example:TSTARTDo ##class(MyTable).%OpenId(<TableID>, 4) (This internally is creating a Lock +^User.MyTable(<TableID>)TROLLBACK (This action removes the previous lock)I don't think it's the TROLLBACK that's releasing the lock, but rather the destruction of the oref that the %OpenId method created. Indeed, if tested exactly as you wrote it that oref doesn't even get stored in a local variable, so ceases to exist as soon as the method call completes.
go to post John Murray · May 14, 2018 @Ponnumani Gurusamy - when your Atelier problem is solved and you are able to save and run the sample routine you showed us in your screenshot, what do you predict the output will be?
go to post John Murray · May 14, 2018 I also recommend that you look at this YouTube playlist of useful videos about Atelier.
go to post John Murray · May 14, 2018 First you need to create an Atelier Project, which is a type of Eclipse project suitable for containing MACs, classes and other InterSystems code entities.From the File menu, select New, then Atelier Project.The RemoteSystemsTempFiles project isn't an Atelier Project. You can learn more about RemoteSystemsTempFiles here.
go to post John Murray · May 11, 2018 The old Google group isn't owned or managed by InterSystems, and previous attempts to get whoever does manage it to do anything to tackle the potential confusion etc have been unsuccessful. There are several other posts here on DC about this. For example:https://community.intersystems.com/post/automatic-crossposting-developer-community-google-group-user-intersystemsdcFor others, search DC for the term "Google".
go to post John Murray · May 9, 2018 That's the doc for the %SYS.Task package. One row above it in the Documatic explorer panel you'll find the link to the %SYS.Task class. Here's a link to the online copy for 2017.1http://docs.intersystems.com/cache20171/csp/documatic/%25CSP.Documatic.cls?PAGE=CLASS&LIBRARY=%25SYS&CLASSNAME=%25SYS.TaskI'm seeing ExportTasks and ImportTasks methods, both inherited from %SYS.TaskSuper
go to post John Murray · May 9, 2018 Did you find the ExportTasks and ImportTasks classmethods of %SYS.TaskSuper, which AFAIK is the superclass of all tasks?http://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?PAGE=CLASS&LIBRARY=%25SYS&CLASSNAME=%25SYS.TaskSuper#METHOD_ExportTasksI haven't tried them myself, but at first sight they look promising.
go to post John Murray · May 3, 2018 I disagree with your assertion that you can't call at a tag in a way that you can call from the top:USER>zpYJM w !,"Runs in ",$namespace,! q ;SUB ; A subroutine tag w !,"SUB^YJM runs in ",$namespace,! q USER>zn "samples" SAMPLES>d SUB^|"USER"|YJM SUB^YJM runs in SAMPLES SAMPLES>I find it confusing that you talk about calling a routine in a namespace. As I see it you're fetching it from another namespace (i.e. the one the routine lives it), but you're running it in your current namespace.You also need to be aware of what happens if the code you fetch from the other namespace makes its own calls to other code. Here's an illustration:USER>zpYJM w !,"Runs in ",$namespace,! q ;SUB ; A subroutine tag w !,"SUB^YJM runs in ",$namespace,! q ;Test1 ; w !,"About to call local line label YJM",! d YJM q ;Test2 ; w !,"About to call a line label in a specific routine",! d SUB^YJM q USER>d Test1^YJM About to call local line label YJM Runs in USER USER>d Test2^YJM About to call a line label in a specific routine SUB^YJM runs in USER USER>zn "SAMPLES" SAMPLES>d Test1^|"USER"|YJM About to call local line label YJM Runs in SAMPLES SAMPLES>d Test2^|"USER"|YJM About to call a line label in a specific routine d SUB^YJM ^<NOROUTINE>Test2+2^YJM *YJMSAMPLES 2d0> SAMPLES 2d0>q SAMPLES>
go to post John Murray · May 3, 2018 I didn't expect D ["SAMPLES"]YJM^YJM to work, but that's the syntax you used in your earlier comment. Probably a typo.I agree, it's interesting that the older-style square-bracket extended reference syntax doesn't work in this context. You have to use the newer-style vertical-bar syntax.
go to post John Murray · May 3, 2018 Kenneth, I don't think you are correct here. Apart from invalid syntax you gave, even with the correct syntax the routine is fetched from the specified namespace and executed in the current namespace. See the following example using a simple test routine (YJM) that I created in my USER namespace and then executed from my SAMPLES namespace:USER>zl YJM zpYJM w !,"Runs in ",$namespace,! q USER>d ^YJMRuns in USERUSER>zn "SAMPLES"SAMPLES>d ^YJMD ^YJM^<NOROUTINE>^YJM *YJMSAMPLES>d ^|"USER"|YJMRuns in SAMPLESSAMPLES>w $zvCache for Windows (x86-64) 2017.2.1 (Build 801U) Wed Dec 6 2017 09:07:51 ESTSAMPLES>d ["USER"]YJM^YJMD ["USER"]YJM^YJM^<SYNTAX>^YJMSAMPLES>
go to post John Murray · Apr 26, 2018 Like you, I get this error and find that simply stopping and restarting Eclipse resolves it.I'm using Eclipse Oxygen (fully up-to-date) on 64-bit Windows 10, with the most recent publicly available version of Atelier 1.1 (IIRC, build 391).
go to post John Murray · Apr 24, 2018 My hunch is that your server namespace is set to use a source control class, and maybe that class is issuing a WRITE command at a point where the current device is the TCP socket that should be receiving a JSON response for forwarding to Atelier.
go to post John Murray · Apr 23, 2018 I don't know why this isn't working. Perhaps because you are running Studio in English but on a Windows instance with a different default locale?But that is only a wild guess.I wonder if any other DC readers have noticed templates not getting added to the MRU list.Anyway, I suggest you ask InterSystems WRC for help.
go to post John Murray · Apr 20, 2018 Bob, your question doesn't belong in the "Developer Community Feedback" group, since that's for -- well -- feedback about Developer Community. Nor is the "Developer Community" tag appropriate for it, since that also is intended for posts about DC. Please edit your post, moving it to another group, perhaps "Ensemble", and removing the "Developer Community" tag.UPDATE - it looks like someone (one of my fellow mods?) has moved it to the Ensemble group already. You can still remove the tag, and maybe remember not to post to "Developer Community Feedback" in future unless that's the nature of your post. Thanks!
go to post John Murray · Apr 20, 2018 My, how the years pass by. Latest update via WRC is this isn't going to get fixed in 2018.2, and no idea when/if it ever will be.
go to post John Murray · Apr 20, 2018 Sounds like you already have server-side source control (CCR) similar to the Deltanji product from my employer George James Software. In that case, your simplest option is to get your Atelier users to connect to the server instances in the same way as they currently do with Studio. There's no need to change your code management paradigm (and thus your source control system) as well as your editor.I recommend you go through that Global Summit session Ben Spead referenced in his earlier comment.
go to post John Murray · Apr 20, 2018 What do you currently do with Studio? For example, does each developer install Studio on their local machine, then connect to whichever Cache /Ensemble server instance contains the namespace(s) they need to edit code in?
go to post John Murray · Apr 20, 2018 So, the "Templates..." option brings up a dialog that shows all the templates available to you? And that you can run one of them from that dialog? But after running that template, when you go back to the menu it doesn't show that template in the menu's MRU list?
go to post John Murray · Apr 20, 2018 To answer your request for info about the registry entries, here's what one of mine looks like: