go to post Brett Saviano · Aug 2 @Marykutty George There are two ways you could do this: Create a multi-root VS Code workspace with a folder for each namespace and use the search UI to search all folders. Write a method that calls the %SYS.Namespace List query to list all namespaces, then enter each one and call ##class(%Studio.Project).FindInFiles().
go to post Brett Saviano · Jul 31 @David Marinkovic VS Code uses REST to connect to IRIS. If you're using a version without the private web server, you need to configure an external web server. This is needed for the management portal as well. Since you're on Windows, your installer probably configured IIS to serve web applications for IRIS. Documentation can be found here.
go to post Brett Saviano · Jul 18 @Stefan Cronje You can open the classes in VS Code and and it will notify you when you use deprecated classes or methods. There isn't a programmatic way to get that information (for example, by calling a ClassMethod) but it would be possible to write one using %SyntaxColor.
go to post Brett Saviano · Jul 15 @Jason Jones Our main VS Code extension provides a UI for debugging a REST service. It will prompt for data to create a REST request, makes the request, and attaches the debugger to the IRIS process that handles the request so you can step through the code like any other method.
go to post Brett Saviano · Jun 27 @Kwabena Ayim-Aboagye No, there hasn't. Even if we had formatting for your specific example, the extra newlines would be erased when the document gets saved on the server. The only code in class definitions that's preserved as-is is implementation code enclosed in curly braces. The rest is stored in a global and regenerated from the global after a save.
go to post Brett Saviano · Jun 25 @Yone Moreno Jimenez Did you try $ZSTRIP with the following arguments? Set string = $ZSTRIP(string,"<>",$CHAR(13,10)) $ZSTRIP without a mask code in the second argument and with specific characters as the third argument will strip just those specific characters.
go to post Brett Saviano · Jun 24 @David Cui I can confirm that IRIS versions 2023.1.5, 2024.1.1 and 2024.2 will support this feature. It has not been released in the 2024.2 preview stream yet though, which is why the GitHub Pull Request that implements the VS Code-side work hasn't been merged.
go to post Brett Saviano · Jun 24 @Mario Sanchez Macias Please see this page in our documentation for how to use a self-signed certificate.
go to post Brett Saviano · Jun 24 @Alin Soare You can't prevent that. The actual text of the class isn't stored in the database. During a save, it gets converted to a global that gets stored in the database, and then converted back into text. The class's text is always regenerated in "canonical" form, with excess spaces removed, capitalization normalized etc. This process doesn't affect method/query implementation code though, it's purely cosmetic.
go to post Brett Saviano · Jun 20 I'm not familiar with all of the Zen specific methods in that class. For working with JSON outside the Zen framework though (for example, in REST APIs), new code should use Dynamic Objects.
go to post Brett Saviano · Jun 20 @Alin Soare What "auto-formatting" are you referring to? Can you provide before and after screenshots showing what gets changed on save?
go to post Brett Saviano · Jun 20 @Evgeniy Potapov You can use Dynamic Objects for working with JSON data
go to post Brett Saviano · May 15 @Lukas Dolezal VS Code's View Other command supports jumping to the same line in the INT routine, but that support requires an InterSystems server with Atelier API version 4 or above (Cache 2018.1.6+, IRIS 2019.1.2+, 2020.1.1+, 2021.1+). If you're not using one of those versions then the location mapping won't work.
go to post Brett Saviano · May 9 An important detail about the independent Studio is that it is installed in its own directory, so it won't be uninstalled when you upgrade/add/remove IRIS instances on your system. Also, since the 2024.1 Studio is forward-compatible, you won't need to update it every time a new IRIS version is released.
go to post Brett Saviano · Apr 18 There is an open feature request for automatic indentation support, but that doesn't include adding newlines: https://github.com/intersystems/language-server/issues/293
go to post Brett Saviano · Apr 9 You can use your second example above, then copy the content into a new %Stream.GlobalBinary: Do strm.Rewind() Set o = {}, o.strm = strm, strm2 = o.%Get("strm",,"stream>base64") Set strm3 = ##class(%Stream.GlobalBinary).%New() Do strm3.CopyFrom(strm2)
go to post Brett Saviano · Apr 5 @Marcel den Ouden I've opened a pull request that fixes your issue. You can download and install the vsix found here to test fix if you'd like.
go to post Brett Saviano · Mar 27 @Daniel Bertozzi You can do the following: Do ..%SetStatusCode(##class(%CSP.REST).#HTTP401UNAUTHORIZED)
go to post Brett Saviano · Mar 22 @Richard Rayburn There isn't an equivalent to the Inspector's Storage editor in VS Code yet. That's on our roadmap but we don't have an ETA for it yet due to design challenges. You will have to edit the Storage block directly in the class's text. There is hover documentation and code completion support for Storage blocks in VS Code, which Studio did not have: I hope you find this helpful.
go to post Brett Saviano · Mar 1 @Kevin Kindschuh If you're using client-side editing (files on your local file system controlled by GIT directly), you can export HL7 schemas from the InterSystems Explorer view. They will be in the "Other" section: