John Murray · Nov 3, 2024 go to post

Any clues in the IRIS audit log? Make sure relevant system events are enabled first. 

John Murray · Nov 8, 2024 go to post

When you HALT from a Lite terminal it closes. The PS terminal you are seeing will have been already open when you originally launched the Lite one.

I think there's a VS Code setting that would enable you to make Lite terminal the default type that the + button on Terminal toolbar creates. 

John Murray · Dec 15, 2024 go to post

I'm trying to enter, but it's been more than 3 hours since I submitted my app for approval on OEx and there's been no response, so I'm in limbo. I don't really want to have to stay up all night in the hope it'll get approved in time for me to enter it into the contest before the deadline, which is at 5am in my timezone.

John Murray · Dec 18, 2024 go to post

With these updates it would be useful to know how many experts have voted, and how many experts in total are eligible. Or express it as a percentage if you don't want to reveal how big/small the expert pool is.

John Murray · Dec 18, 2024 go to post

Congratulations to the IPM team for achieving this hugely significant milestone.

To show my appreciation I installed 0.9.0 into a fresh namespace called IPM and told Doxygenerate to build documentation (HTML and PDF). Then I published the output on the George James Software website.

To see the results as a set of static web pages, go to https://georgejames.com/files/doxygenerate/IPM/index.html

To view the documentation as a PDF it's https://georgejames.com/files/doxygenerate/IPM/refman.pdf (586 pages).

And for a variant of the PDF with simplified inheritance diagrams it's https://georgejames.com/files/doxygenerate/IPM/refman-brief.pdf (364 pages).

The difference between the two PDFs can be seen by comparing page 63 (numbered 37 because of the extensive Table of Contents).

Also of interest is this inheritance diagram from page 59 (aka 33):

If you like the results please consider voting for Doxygenerate before the current contest ends on Sunday night.

John Murray · Dec 19, 2024 go to post

Please accept the in-article links to examples of Doxygenerate's output as fulfilling the "Online Demo" item. Running the app itself isn't at all exciting - it's the output people surely want to explore online.

Links (all to documents hosted on georgejames.com) are in these posts:

Today we released a new version of this extension. The connection mechanism is now simpler. Details are in the README, but here's a recording of it in action:

As other have noted, it's the IRISLIB database, not the IRISSYS one, that you need to re-mount writable.

Please clarify. Are you talking about MS Visual Studio? Or VS Code (aka Visual Studio Code)? And are you wanting to connect to access data from the database, or to edit classes/routines within the Cache database?

What does the "Web Sessions" report on the "System Operation" section of IRIS Portal show?

Your screenshot shows the ObjectScript Explorer view, which was originally created for the client-side development paradigm in which you export to a folder on your workstation the routines/classes/etc you want to change, then manage them locally in Git. You then import your changes to the server that your `objectscript.conn` setting points to (the same place you may have exported them from).

In this case you can expand the Routines node of the tree shown in your screenshot, then with focus on that tree press Ctrl+Alt+F to invoke VS Code's tree search/filter widget. Here's a screenshot of me using this to narrow down the large number of INT routines in a VistA namespace:

The other development paradigm (server-side) may suit you better if you are migrating from InterSystems Studio.

In that paradigm, use the Servers view (at the bottom of your screenshot) to expand the Namespaces node of your server. Then use the pencil or the eye button to add to your VS Code workspace a folders that gives you direct access to the namespace (pencil if editing, eye if only viewing as read-only).

Also follow the instructions in the README of the InterSystems ObjectScript extension to enable proposed APIs.

Then type Ctrl+P and start entering the name of the routine you want:

You can also use the Ctrl+Alt+F tree widget on the VS Code Explorer view of your workspace.

Also worth noting that developments in VS Code itself since the original article have added new Git features, so the GitLens and/or Git Graph extensions are arguably less relevant/needed.

Today I was pleased to find a new preview version available, 2025.1.0.204.0, but when I tried to use it to upgrade the one I had previously installed (2025.1.0L.198.0 on Windows 11) the installer stopped with the message "A newer version of IRIS is already installed."

This is disappointing, and I don't recall seeing any warning with the earlier 2015.1 previews that at some point we wouldn't be able to upgrade them. Please remedy this by making the next 2015.1 preview version capable of upgrading existing 2015.1.0L instances.

A useful article, but I have a couple of comments:

1. I think "fallback" is a better choice for the "http.proxySupport" setting than "off", and it should still have the desired effect.

2. I'd like to understand exactly why you find it necessary to make the web gateway connect to IRIS as SuperUser rather than as CSPSystem (the default). On my test environments this isn't necessary, but I'm not using SSL/TLS as the Connection Security Level.

IIRC, you'd use `Go to Definition` to get to the method code. According to the Language Server README `Go to Declaration` is relevant for variables that are declared as method arguments, or listed in the PublicList of the method, or are declared with #Dim

database2

When you add the entries to the table of global mappings they are automatically listed in priority order. The mapping algorithm begins at the top of the table and searches downward, stopping as soon as it finds a row that applies. 

FYI the most recent beta VSIXes of Server Manager and the ObjectScript extensions now do their best to end web sessions when they're exiting or restarting.

The relevant versions are v3.10.1-beta.2 and  v3.0.2-beta.9 respectively.

A similar change in the Language Server extension is being prepared.

One way would be to add a check for the existence of a process-private global (PPG) node. Something like this:

lock +^TEMP("FOO"):0//don't waitquit:'$testquit:$get(^||CRITSECT("FOO"))
set ^||CRITSECT("FOO")=1//critical section//...kill ^||CRITSECT("FOO")
lock -^TEMP("FOO")

Did you experiment with setting the default qualifiers for the namespace, or for the instance as a whole?

I don't think there are built-in features that would meet your need. I strongly recommend adopting a source control solution such a Deltanji from George James Software (my employer). The material at https://georgejames.com/Deltanji focuses on IRIS but Cache is also a fully supported platform.