go to post John Murray · Feb 26, 2018 This seems to be a simplified version of your earlier post. (Hint: you can edit a post at any time).Per my suggestion on that post, have you looked at the cconsole.log files at both ends of the network connection?Also, you tagged this post as "Compiler", but it's not clear how it relates to that.
go to post John Murray · Feb 26, 2018 First, using my moderator superpowers I have moved this out of the Developer Community Feedback group (intended only for feedback about the DC platform) and into the Cache group.The <NETWORK> error code hints that your Cache instance is involved in some ECP networking. Maybe that is having a problem. Check cconsole.log at both ends of the connection(s) for clues.In general though, I suspect your issue is too site-specific for DC members to be of much help. I recommend you open a support ticket with InterSystems WRC.
go to post John Murray · Feb 23, 2018 Also, a similar kind of check using a method of %SYSTEM.Security is not case-sensitive with respect to the username:USER>w $system.Security.CheckUserPermission("laura_test_DEV","%Development")USEUSER>w $system.Security.CheckUserPermission("laura_test_dev","%Development")USEUSER>w $system.Security.CheckUserPermission("laura_test_devX","%Development") USER>
go to post John Murray · Feb 23, 2018 The priv check is case-sensitive on the username:USER>w $system.SQL.CheckPriv("laura_test_dev","9,%Library.File_FileSet","e","USER")0USER>w $system.SQL.CheckPriv("laura_test_DEV","9,%Library.File_FileSet","e","USER")1USER>Anyway, I'm glad it's now working for you.BTW, to paste an image into a DC post I save it to a file, then use the following button in the DC editor to upload the file:And then I sometimes (as above) use the Image button on the toolbar to add a 2-pixel border to the image, then the Increase Indent to move it across.
go to post John Murray · Feb 23, 2018 Are you sure that you granted your test user the EXECUTE privilege on the procedure in the actual namespace where it will be executed?I created a new user "laura" who only has the %Developer role. From the USER namespace in Terminal she can't prepare the class query:USER>w $usernamelauraUSER>w $roles%DeveloperUSER> USER>s st=##class(%SQL.Statement).%New() USER>s ok=st.%PrepareClassQuery("%File","FileSet") USER>d $system.Status.DisplayError(ok) ERROR #5540: SQLCODE: -99 Message: User laura is not privileged for the operationUSER>Then in Portal I granted her EXECUTE on the procedure, per my previous screenshot, being careful to do this in the USER namespace. Now the test results are as follows:USER>k USER>s st=##class(%SQL.Statement).%New() USER>s ok=st.%PrepareClassQuery("%File","FileSet") USER>d $system.Status.DisplayError(ok) USER>And here are a couple of lines where I confirm that the user "laura" has the necessary privilege in the USER namespace but not in the %SYS namespace:USER>w $system.SQL.CheckPriv("laura","9,%Library.File_FileSet","e","USER")1USER>w $system.SQL.CheckPriv("laura","9,%Library.File_FileSet","e","%SYS")0USER>
go to post John Murray · Feb 23, 2018 A long shot: if auditing is turned on, and the %System/%Security/Protect event is enabled, does anything get logged when the user encounters the failure?Failing that, can you debug through the %PrepareClassQuery method of %SQL.Statement in the context where it's failing for you? Not so easy when the call works for your user when run in Terminal.
go to post John Murray · Feb 23, 2018 I think your user Laura_Test_DEV needs to be granted a SQL permission to perform an EXECUTE on the relevant SQL procedure in whatever namespace you need:
go to post John Murray · Feb 23, 2018 Based on your previous post I'm betting that your site has an INC file with content something like this:#define Fza $zaMaybe the INC file also uses #if conditions to substitute different text when it's being used to build routines targeting different implementations of the M language.
go to post John Murray · Feb 22, 2018 It didn't occur to me either! Interesting that the "Open Resource" dialog opted to use the term "camel case" instead.
go to post John Murray · Feb 20, 2018 Many terminals, including the one with Cache, will respond to specific escape-sequences to hide and show the cursor. For example:w ! w $c(27),"[?25l" w "Cursor hidden" h 5 w ! w $c(27),"[?25h" w "Cursor shown" h 5 w !
go to post John Murray · Feb 20, 2018 I'm not aware of a way to do this directly. But in the case of routines (and classes) shown in Atelier Explorer (AE) these are files on your local filesystem. When I switch to the Project Explorer (PE) view, a right-click on a project gives me an option to "Show in Local Terminal", with a sub-option "Terminal". Choosing this gives me a new Terminal tab in another Eclipse pane. I'm working on Windows, and this Terminal gives me a Windows command shell in the root local directory of my project. There I can issue a suitable DIR command, e.g.dir /s /o-dFor an equivalent on the server I suggest using Management Portal, which can be quickly launched from the context menu of a connection in the Server Explorer (SE) view. Once in Portal you can use System Explorer\Routines, and click on the Date header to sort the list by last modification date/time.
go to post John Murray · Feb 20, 2018 Thanks for the tip Roger. As shown in your example, that dialog also does some clever stuff with CamelCase filters.
go to post John Murray · Feb 19, 2018 I assume you're using 1.1.391 (the latest public release), and that the " - MGH" indicates you have defined an Eclipse working set with that name and selected it (e.g. in the dropdown menu from the down-arrow on that dialog).For the benefit of others who may not have found this dialog yet, it's on the standard "Navigate" menu and also the standard toolbar (white "C" in blue circle).It apparently searches the filenames within your projects (optionally limiting this to projects in your current working set), but I haven't yet found a way to make it take the package into account in its lookup, nor to display it.I am interested to know more about the "Workspace matches" part of your screenshot. So far I haven't managed to get this on mine.And can someone explain the rather cryptic "TZ = TimeZone" part of the dialog text?
go to post John Murray · Feb 15, 2018 Thanks for a useful webinar. I was particularly interested to hear that there's going to be a focus on making Atelier play better with the "shared development" way of working. IMO, good news for teams that already work that way and until now may have been thinking they'll have to abandon it and get each developer set up to work in their own personal environment in order to adopt Atelier.
go to post John Murray · Feb 15, 2018 Trevor, how does your source control mechanism deal with the way that Portal doesn't by default have any concept of "current project"?Perhaps the project-related classmethods implemented in %CSP.Portal.SourceControl.Util were implemented for your use-case?
go to post John Murray · Feb 15, 2018 For the record, the following two enhancement requests got raised in Jira last month after I followed up with WRC on this post:ATL-4848: Allow double-click for Next in Add-Ins and Templates. Let users double-click selections to proceed to the next Add-Ins screen, instead of having to use the Next/Finish buttons.ATL-4849: Automatically use selected Atelier project for Add-Ins. Two potential options to save a user clicks when they have a project selected in the Atelier Explorer: Use the selected project and jump straight to showing the second Add-Ins screen, "Select an Add-In". Then users can hit the Back button to pick a different project. Automatically highlight the project selected in the Atelier Explorer on the first Add-Ins screen, "Select a project".At this point neither has been slated for a particular Atelier release, so if you make use of add-ins or templates from Atelier and want to lobby for these improvements, you know which ATL-numbers to mention.
go to post John Murray · Feb 15, 2018 For the record, my original #2 is logged at ATL-3359 and currently slated for Atelier 1.5. My original #3 is logged as ATL-1934, also slated for Atelier 1.5.
go to post John Murray · Feb 13, 2018 Thanks, I found this technical explanation useful.Has ISC ever considered implementing switchable compile-time enforcement of this uniqueness?
go to post John Murray · Feb 13, 2018 I agree in relation to Method and Property members. But it seems less clear to me for other sorts of member. For instance, an Index on a Property. Or a Foreign Key declaration for one.
go to post John Murray · Feb 8, 2018 Any news on when we can expect this? It didn't seem to make 1.1.