新しい投稿

查找

お知らせ
· 2025年4月1日

¡El jueves tenemos webinar! "Conectando sensores con InterSystems IRIS"

Hola a todos... ¡Aún con la resaca del Meetup? 

Os esperamos en el webinar gratuito que tenemos el jueves a las 16.00 CEST. Jairo nos hará una demostración práctica de algo que conecta InterSystems con deporte y con datos en tiempo real... ¡Preparaos para flipar!

 

Webinar dirigido a Desarrolladores, analistas de integración y todos aquellos interesados en las posibilidades de la tecnología InterSystems :)

¡Os esperamos!

🗣 Ponente: , Jairo Ruiz Sales Engineer en InterSystems Colombia

➡️ Registro >>

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
ダイジェスト
· 2025年4月1日

Résumé de la communauté des développeurs d'InterSystems, Mars 2025

Bonjour, voici la newsletter de la communauté des développeurs de Mars 2025.
Statistiques générales
✓ Nouvelles publications 20 publiées le Mars :
 9 nouveaux articles
 9 nouvelles annonces
 2 nouvelles questions
✓ Nouveaux membres 2 ayant rejoint le Mars
✓ Publications 1,133 publiées depuis le début
✓ Membres 166 ayant rejoint depuis le début
Meilleures publications
Les meilleurs auteurs du mois
Articles
Annonces
#InterSystems IRIS
#Communauté des développeurs officielle
Questions
Mars, 2025Month at a GlanceInterSystems Developer Community
記事
· 2025年4月1日 1m read

Cómo obtener información del servidor/instancia

Hola a todos,

Como parte del desarrollo de una API para saber a qué instancia de IRIS está conectada, he encontrado algunos métodos para obtener información sobre el servidor que pueden ser útiles.

Obtener el nombre del servidor: $SYSTEM.INetInfo.LocalHostName()

Obtener la IP del servidor: $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())

Obtener el nombre de la instancia: $PIECE($SYSTEM,":",2)

Entonces, he creado el siguiente código como clase BS:

Class St.Common.Api Extends (%CSP.REST, Ens.BusinessService)
{
{

XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
	<Route Url="/check" Method="GET" Call="Check"/>
</Routes>
}

ClassMethod Check() As %Status
{
	set serverInfo = {}
	set serverInfo.ServerName = $SYSTEM.INetInfo.LocalHostName()
	set serverInfo.ServerIP = $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())
	set serverInfo.Instance = $PIECE($SYSTEM,":",2)
	
	write serverInfo.%ToJSON()
	quit $$$OK
}
}

Llamando al método:

localhost:52773/common/api/check

{
  "ServerName": "LAPTOP-KURRO-3",
  "ServerIP": "11.52.197.99",
  "Instance": "HEALTHCONNECT"
}

Espero que te sea tan útil como a mí.

Saludos cordiales.

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
記事
· 2025年4月1日 1m read

How to get server/instance info

Hi all,

As part of the development an API to know what is the instance of IRIS is connected, I've found some methods to know information about the server that can help you.

Get the server name: $SYSTEM.INetInfo.LocalHostName()

Get the server IP: $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())

Get the instance name: $PIECE($SYSTEM,":",2)

So, I have created the following code as BS class:

Class St.Common.Api Extends (%CSP.REST, Ens.BusinessService)
{
{

XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
{
<Routes>
	<Route Url="/check" Method="GET" Call="Check"/>
</Routes>
}

ClassMethod Check() As %Status
{
	set serverInfo = {}
	set serverInfo.ServerName = $SYSTEM.INetInfo.LocalHostName()
	set serverInfo.ServerIP = $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())
	set serverInfo.Instance = $PIECE($SYSTEM,":",2)
	
	write serverInfo.%ToJSON()
	quit $$$OK
}
}

Calling the method:

localhost:52773/common/api/check

{
  "ServerName": "LAPTOP-KURRO-3",
  "ServerIP": "11.52.197.99",
  "Instance": "HEALTHCONNECT"
}

I hope it is as useful to you as it has been to me.

Best regards

2 Comments
ディスカッション (2)3
続けるにはログインするか新規登録を行ってください
記事
· 2025年4月1日 2m read

Hey chat, what's up with my Interoperability

What if you could speak in a chat to check what happens in Interoperability, is there any errors, and even solve some types of issues.

With MCP server, you can connect any of your MCP Client, for instance Claude, to IRIS, and ask to check on Interoperability

What you need is a simple configuration of Claude.

Claude settings in Developer section, can help to find a config file

With simple setting, like here, it only requires access to IRIS, nothing needs to be installed in IRIS.

{
  "mcpServers": {
    "iris": {
      "command": "uvx",
      "args": [
        "mcp-server-iris"
      ],
      "env": {
        "IRIS_HOSTNAME": "localhost",
        "IRIS_PORT": "1972",
        "IRIS_NAMESPACE": "USER",
        "IRIS_USERNAME": "_SYSTEM",
        "IRIS_PASSWORD": "SYS"
      }
    }
  }
}

After Claude restart, it should display that some MCP tools are available now, click there will display all the tools available

Claude knowing about the tools available, and by prompt you provide, can select which tool best suite to be used to help with the query.

Guess, it works fine, let's check for errors.

We are able to see the actual response from the tool. And Claude analyzed the output and extracted errors it found. Suggesting why the errors may happen. And even offers a ways to solve them.

Currently the implementation of this MCP Server does not offer any code editing capabilities, we are not going to ask to fix the code. But we can try to recover production.

Restart should help

Here we are, all good now.

Well, since our production is working fine now. Let's have a look at the data we may already collected.

To help with it, Claude will use tool which can execute SQL Query.

Even though, I put class name instead of table name, and it discovered that there is no such table, but it did not give up, and in one session, managed to find out the real name for the table, and fetch some data.

When it tries to get some more understanding in the data it collected, and tried to even guess the column names.

Found the real columns, but struggled with reserved keywords, and did not try to use "FOUND"

And with a final attempt

It decided to keep it simple, but using knowledge about column names, it got it right and gave some summary

 

At this stage, the MCP seems to be in the very beginning of its journey, but still we have quite a good tool.

If you like this tool, please vote on the current OpenExchange Contest

1 Comment
ディスカッション (1)1
続けるにはログインするか新規登録を行ってください