Evgeny Shvarov · Apr 6, 2025 go to post

I managed to get it work.

What was confusing is that REST methods return %Status in a declaration but in fact are expected to return JSON objects

Evgeny Shvarov · Apr 5, 2025 go to post

HI @Lorenzo Scalese !

Do you have any examples of implementation classes with your suite?

I managed to generate classes vs openapi v 3.0 but cannot receive any data from implementation methods: either errors or empty results. Not sure what am I doing wrong.

Evgeny Shvarov · Mar 12, 2025 go to post

Hi @Bukhtiar Ahmad ! Both IRIS for Health and Health Connect are equally suitable for high-performance transaction volume use cases. It depends, of course, on the implementation and tasks, but this is not what differentiates these two products from each other.

Evgeny Shvarov · Mar 10, 2025 go to post

Thank you, @Enrico Parisi! 

The only thing I have a concern about here is "what is Ensemble,"? and why not Include IRIS? :)

But it is not a question to you of course.

Evgeny Shvarov · Mar 7, 2025 go to post

Hi @Rob Tweed! Which bonus do you think we missed? It can happen. We'll fix it. I'm glad you contributed, and I'm even more glad you have happy users who benefit from the product you created.

Evgeny Shvarov · Mar 5, 2025 go to post

Ah, it is more readable indeed!

There is another popular one which I sometimes hate to use: 

$$$ThrowOnError(something())

Evgeny Shvarov · Mar 5, 2025 go to post

Ok, I upgraded errors, so they verbose on demand. now:

USER>s sc=##class(shvarov.objectscript.errors).DIVIDE()

USER>zw sc

sc="0 "_$lb($lb(5002,"<DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1",,,,,,,,$lb(,"USER",$lb("^DIVIDE+3^shvarov.objectscript.errors.1^1","e^^^0"))))/* ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1 */

USER>s status.sc=##class(shvarov.objectscript.errors).DIVIDE()

ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1

USER>

So, every time I need to printout an error I do:

USER>set status.sc=##class(bla.bla).method()

and it prints out an error if it is an error. and if not it is silent?

I like it!

Evgeny Shvarov · Mar 5, 2025 go to post

Well done, @David Hockenbroch !

USER>zpm "install watchedstatus"

[USER|watchedstatus] Reload START (/usr/irissys/mgr/.modules/USER/watchedstatus/1.0.3/)

[USER|watchedstatus] Reload SUCCESS

[watchedstatus] Module object refreshed.

[USER|watchedstatus] Validate START

[USER|watchedstatus] Validate SUCCESS

[USER|watchedstatus] Compile START

[USER|watchedstatus] Compile SUCCESS

[USER|watchedstatus] Activate START

[USER|watchedstatus] Configure START

[USER|watchedstatus] Configure SUCCESS

[USER|watchedstatus] Activate SUCCESS

Installed perfectly!

Not sure about functionality though. I was wondering of a class that gives me an error, and remember another ipm module - objectcript-errors.

Installed:

USER>zpm "install objectscript-errors"

[USER|objectscript-errors] Reload START (/usr/irissys/mgr/.modules/USER/objectscript-errors/1.0.2/)

[USER|objectscript-errors] Reload SUCCESS

[objectscript-errors] Module object refreshed.

[USER|objectscript-errors] Validate START

[USER|objectscript-errors] Validate SUCCESS

[USER|objectscript-errors] Compile START

[USER|objectscript-errors] Compile SUCCESS

[USER|objectscript-errors] Activate START

[USER|objectscript-errors] Configure START

[USER|objectscript-errors] Configure SUCCESS

[USER|objectscript-errors] Activate SUCCESS

it can generate errors in simple objectscript calls, e.g. null division etc:

USER>s sc=##class(shvarov.objectscript.errors).DIVIDE()         

ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1

USER>zw sc

sc="0 "_$lb($lb(5002,"<DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1",,,,,,,,$lb(,"USER",$lb("^DIVIDE+3^shvarov.objectscript.errors.1^1","e^^^0"))))/* ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1 */

So this is what I did:

USER>set status=##class(DH.WatchedStatus).New("RW")

USER>set status.sc=##class(shvarov.objectscript.errors).DIVIDE()

ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1ERROR #5002: ObjectScript error: <DIVIDE>DIVIDE+3^shvarov.objectscript.errors.1

if I do w status.sc:

USER>w status.sc

1

If I do everything right?

Evgeny Shvarov · Jan 10, 2025 go to post

Isn't it more safe to have a clear namesepace/database for the code base with every CI/CD phase? 

Evgeny Shvarov · Jan 8, 2025 go to post

What about the data (globals) left related to deleted classes? SHould it be deleted as well?