go to post John Murray · Jan 27, 2021 AFAIK the InterSystems ObjectScript extension for VS Code doesn't yet implement a convenient way of overriding an inherited method or property. I suggest you use VS Code's 'Report Issue' option from the Help menu to file a Feature Request on the extension. That dialog is a convenient way to route your request to the correct repo.
go to post John Murray · May 21, 2020 Sounds like your team all work in shared namespace(s) on a Caché server. Server-side source control is the way to go. We just gave a webinar about our Deltanji tool doing exactly this. Watch out for the recording appearing on the Developer Community YouTube channel soon.
go to post John Murray · Aug 27, 2019 To use the debug features of Serenji you will need a keyfile issued by us at George James Software. Free evaluation keyfiles are available on request, normally lasting 30 days. On the Extensions section of VSCode, select the Serenji extension and follow the link in the "Installation" section to get full instructions.I'm guessing you opened a CLS file that implements your API, which I assume is a REST one. For debugging we use InterSystems' native debug support, which operates on the INT code that your class compiles into. Depending on how you compile your class, that INT code might not have been retained. After all, it is "intermediate" code from which the runtime OBJ code gets generated. The documentation I pointed you to above explains how to keep INT code.With Serenji VSCode's F9 key (Toggle Breakpoint) currently only operates when you are in an INT file. It's on our roadmap to add support for the setting of breakpoints in CLS source.Also on our roadmap is the addition of a mechanism to let you debug the web gateway's server-side process that services your Postman request. Meanwhile you may be able to use Serenji's 'Existing Process' debug configuration to attach to the right server-side process, but it's challenging to pick the right one. Alternatively, use the 'ClassMethod' debug configuration and call directly the server-side classmethod that implements the method in your REST API.
go to post John Murray · Jul 12, 2019 The ComplexDelete classmethod uses the FileSet query: ClassMethod ComplexDelete(filename As %String, Output return As %Integer) As %Integer { Set resultset=##class(%ResultSet).%New("%File:FileSet"),return=0 Do resultset.Execute(..GetDirectory(filename),..GetFilename(filename)) Set exit=1 For { Quit:'resultset.Next() Set file=resultset.Data("Name") Set r=$$$FileDeleteRet(file) If r,exit Set exit=0,return=r } Quit exit } The problem is, that query treats ";" as a delimiter separating multiple search patterns. You could replicate the method but specify another delimiter (e.g. comma) when you Execute the query to get the resultset (untested code): Do resultset.Execute(..GetDirectory(filename),..GetFilename(filename),,,",") Maybe someday ISC will enhance ComplexDelete to take an optional delimiter argument.
go to post John Murray · Jun 6, 2019 Maybe this is what the OP is means by 'gitflow'https://nvie.com/posts/a-successful-git-branching-model/@Fred Gustafsson is this what you guys use?
go to post John Murray · May 29, 2019 If you want your Ensemble development team to work collaboratively in shared namespaces on a common server Git probably isn't a good choice for source control. Are you committed to using Git? Have you looked at our Deltanji product? It's integrated with Studio, and with Atelier, and also with our Serenji extension for Visual Studio Code. It's able to handle code deployment as well as versioning. It also supports scenarios where developers work in their own namespaces (whether on a shared server or on their local machines).
go to post John Murray · Feb 21, 2019 Take a look at methods in the %SYSTEM.Encryption class.Like many of the classes in the %SYSTEM package, you can easily access its methods via $SYSTEM, e.g. USER>d $system.Encryption.Help() 'Do $system.Encryption.Help(method)' will display a full description of an individual method. Methods of the class: %SYSTEM.Encryption AESCBCDecrypt(ciphertext,key,IV) This method performs AES decryption in Cipher Block Chained (CBC) mode. ...
go to post John Murray · Jan 31, 2019 Perhaps there's a faulty cached query.The 2012.1 docs here describe how to use Portal to see what's in the cache, and how to purge items from it.
go to post John Murray · Jan 15, 2019 My guess is you're not testing the SQLCODE variable's result before you try and access the KeyID host variable.Docs here.
go to post John Murray · Dec 14, 2018 Maybe cause by some kind of fault in query caching? Please post your $ZVERSION info in case it's relevant.
go to post John Murray · Nov 29, 2018 If I go to http://localhost:57772/testwebapp, I get "Not found".Yes, this is expected. The private instance of Apache which HealthShare runs on your port 57772 isn't set up to serve 'default' page(s).As for your relative path problem, please show us what your index.html file looks like. Simplify it if you wish, but make sure you don't fix the problem as you do so!
go to post John Murray · Oct 18, 2018 I don't believe it's possible for the CACHESYS database (the one that sits behind the %SYS namespace) to be added to the mirror, because each member of the mirror needs to store instance-specific data there.I've seen sites write their own scripts to export users, roles etc periodically from the master instance into files and import them into the other(s). For example, the Export method of Security.UsersBut it's long puzzled me that InterSystems doesn't seem to have done this job for us all. Or perhaps they have, and I haven't yet heard about it.
go to post John Murray · Oct 17, 2018 Daniel, if your team benefits from working in a shared namespace but you'd still like source control, please consider using Deltanji from George James Software. This is a powerful and mature tool which runs natively within Caché / Ensemble / IRIS environments and integrates with Atelier, Studio and Portal editors. It is extensively used around the world, including at NHS sites.
go to post John Murray · Oct 2, 2018 Answering my own question. It looks like /multicompile=0 does the trick.
go to post John Murray · Oct 2, 2018 I'm guessing you're doing this on Windows, and using the "Terminal" option from the popup menu from a Cache "cube" in your system tray.Is the cube blue? Or grey? Blue represents a locally-running instance of Cache, which is commonly how Windows folk have things, particularly when evaluating.When you launch Terminal from your cube, what does the titlebar of the window say? It might mention Telnet, in which case you've somehow configured your cube to be connecting over telnet. When running on Windows, it's the Cache server that's responsible for operating the telnet service. Though if this isn't running you wouldn't get "Access denied", but instead a connection failure.Please give us more information about your situation and I'm confident we'll be able to help you.
go to post John Murray · Sep 29, 2018 Building off the comment by @Thomas.Granger about this perhaps being a permissions issue, I suggest you check out this previous DC article by me:https://community.intersystems.com/post/who-does-windows-think-i-am
go to post John Murray · Sep 14, 2018 @sansa stark - seeing that you have posted 3 DC questions about LDAP in the past ten days I strongly recommend that you contact WRC (i.e. InterSystems Support) so that they can work with you interactively on your problem(s).
go to post John Murray · Sep 11, 2018 Disappointing, but in the light of this announcement I can't say I'm surprised.