import os

# Get environment variables
db_host = os.getenv('DB_HOST')
db_port = os.getenv('DB_PORT')
db_namespace = os.getenv('DB_NAMESPACE')
db_username = os.getenv('DB_USERNAME')
db_password = os.getenv('DB_PASSWORD')

# Create a database connection
conn = irisnative.createConnection(db_host, db_port, db_namespace, db_username, db_password)

# Create an IRIS instance from this connection
iris_native = irisnative.createIris(conn)

status = iris_native.classMethodValue('%SYSTEM.OBJ', 'Load', 'Production.cls', 'ck')

0 3
0 193

InterSystems FAQ rubric

If the system does not stop for 24 hours, old journal files will be deleted at 0:30 according to the "Journal file deletion settings".

A possible cause of journal files remaining that are older than the "Journal file deletion settings" is that there are transactions that remain open.

In that case, you will be able to delete the journal file by searching for processes executing transactions and finalizing the transactions.

5 3
2 329
Article
· Feb 7, 2024 2m read
Splitting access by WebServer port

Recently, I needed to run WebGateway on an additional port but with a twist - this port should publish only one web application.
At first, I thought about configuring Web Gateway to allow only specific web applications (~urls), but Web Gateway configuration is per Apache configuration:

4 3
1 288

As an IT and cloud team manager with 18 years of experience with InterSystems technologies, I recently led our team in the transformation of our traditional on-premises ERP system to a cloud-based solution. We embarked on deploying InterSystems IRIS within a Kubernetes environment on AWS EKS, aiming to achieve a scalable, performant, and secure system. Central to this endeavor was the utilization of the AWS Application Load Balancer (ALB) as our ingress controller.

20 3
9 613

(Originally posted on Intersystems CODE by @Eduard Lebedyuk, 10/12/15) The following code snippet outputs all filenames in the file path "dir" in the Cache/IRIS terminal. The class method "test" runs the code:


Class eduardlebedyuk.filenamesInDir Extends %RegisteredObject
{
	classmethod test() {
		// replace dir with file path you want
		set dir = "D:\directory" 
		set dir = ##class(%File).NormalizeDirectory(dir)
		set file=$ZSEARCH(dir_"*")
		while file'="" {
			write !,file
			set file=$ZSEARCH("")
		}
	}
}

1 3
2 2K

In this article, we will explore the development of an IRIS client for consuming RESTful API services that have been developed to the OData API standard.

We will be exploring a number of built-in IRIS libraries for making HTTP requests, reading and writing to JSON payloads, and seeing how we can use them in combination to build a generic client adaptor for OData. We will also explore the new JSON adapter for deserializing JSON into persistent objects.

4 3
3 1.2K

I am glad to say that VSCode-ObjectScript reached 4000 installs. Thanks to all of you who use it in their work.

VSCode-ObjectScript is an extension for VSCode which allows you to develop InterSystems based applications on ObjectScript using the modern code editor developed by Microsoft. Choice #1 editor amongst all developers worldwide by Stackoverflow survey 2019.

Some short notes about how to install and configure it you can find here.

If you need any help with a migration process of your development team to VSCode, please contact us by info@caretdev.com.

4 3
0 319

Hi,

In Atelier I can click File --> New --> Class File, and File --> New --> Custom File etc to launch various wizards and templates to help me quickly create DeepSee KPI classes, %Installer manifests, Web Services and the like. Of course, all these are available through Studio as well. Is there anything similar in VSCode? If so where? I've looked at several videos and the documentation, but I haven't seen anything.

Thanks!

David

2 3
0 791

Hello,

We are working with a vendor who only accepts JSON as payload. We are currently still on Cache/HealthShare, not IRIS. Since we have to send Continuity of Care Documents, this raises issues with Long Strings (some CCDs can be quite large and in addition to that, they have to be b64-encoded which increases their size even more).

My question is: if we were to go on IRIS and use %JSON.Adapter, storing the encoded Stream in an object's Stream property, would calling %JSONExport() on this object produce the desired JSON? Or would we have to call %JSONExportToStream()?

0 3
0 785

Hi Community,

Please welcome the new video on InterSystems Developers YouTube:

ObjectScript Package Manager ZPM: Installing, Building, Testing, Publishing IRIS

https://www.youtube.com/embed/UzrG91_swLM
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

4 3
0 300

Newbie

I am currently running a docker image with Iris 2021.1 and I would like to install node js on to it. I have had a look at the instructions on the intersystems online learning portal and I must say its very confusing. Some of the documentation says that you can only install it on 2019. Other parts say that it doesn't matter and you can install it if you have a dev directory. I checked my dev directory and there it isn't there. Sadly this is very inconsistent. Does anyone know if it is possible to install on the above mentioned version of Iris ?

0 3
0 569
Article
· Jan 2, 2022 3m read
DB Migration using SQLgateway

Thanks to @Yuri Marx we have seen a very nice example for DB migration from Postgres to IRIS.
My personal problem is the use of DBeaver as a migration tool.
Especially as one of the strengths of IRIS ( and also Caché) before is the availability of the
SQLgateways that allow access to any external Db as long as for them an access usinig
JDBC or ODBC is available. So I extended the package to demonstrate this.

11 3
2 769

Hello

I have trouble capturing the value from a stored procedures output variable from an MS SQL Database.

In the database querywindow of MS SQL manager, the procedure is called as:
declare @return As varchar (100)
Execute TheProcedure @return. @return then contains string of content.

From HC I call the procedure:

set RetValue = ""
set Inparm = "@return"
set Outparm = ## class (% ListOfDataTypes).% New ()

SET SQLQuery = "exec TheProcedure ?"
(have also tried
"{call TheProcedure (?)}"

0 3
0 438

Hi Community,

I DTL I am assigning value to %TimeStamp type praport named BirthDate.

18001225 converted to 1800-12-25T00:00:00 but giving below error

ERROR #7208: Datatype value '1800-12-25T00:00:00' is not a valid timestamp format
> ERROR #5802: Datatype validation failed on property 'xxx.xxx.xxxx.xxxxx:BirthDate', with value equal to "1800-12-25T00:00:00"

20000612 converted to 2000-06-12T00:00:00 is not giving any error

Please help me to resolve this.

2 3
0 389

Hi Community,

Let's meet together at the online meetup with the winners of the InterSystems Interoperability Contest – a great opportunity to have a discussion with the InterSystems Experts team as well as our contestants.

Winners' demo included!

Date & Time: Thursday, September 22, 09:00 AM EDT

>> Register here <<

1 3
1 218