Find

Question
· Oct 18, 2024

How to get the native sql error in SQL outbound adapter?

Hi all,

We have an restriction in a SQL database with a unique index.

We want to catch that exception when it tries to insert or update a value that violates the unique index condition.

// run the query
Set tSC = ..Adapter.ExecuteUpdateParmArray(.nrows,SQL,.param)

// Check if there is any error
If $$$ISERR(tSC)
{
	Set msgError = $System.Status.GetErrorText(tSC) 
	// Check here if the native error code is 2601 (Cannot insert duplicate key row into object 'MYPATIENTS' with unique index 'UQ_UNIQUE_INDEX')
	??????
}

I've tried to get the ..Adapter.%SQLCODE, but it is empty

Is this code hidden into the tSC variable? I mean, the same way I can get the Error Text using the $System.Status class, is there any method to get the native error?

Best regards

3 Comments
Discussion (3)1
Log in or sign up to continue
Question
· Oct 18, 2024

Help Needed: How to Ensure BPL ????? for All Asynchronous Calls Before Proceeding?͓̽

Hello,

First of all: thanks for your help, and thank you for your time.

Thanks for your time.

We have the following situation:

We are in a BPL, and we have defined 4 <call> asynchronous as follows:

First one name: "Enviar a Proceso NEGRIN"

The second one, named as: "Enviar a Proceso HUNSC"

The third one, titled: "Enviar a Proceso CHUIMI 02"

 

And the fourth and last one names as: "Enviar a Proceso Fuertev"

Inmediately after the 4 calls, we have a <sync> instruction which should wait for all of them to finish.

It has in the calls text area the name of the four ones which it should wait for: "Enviar a Proceso NEGRIN,Enviar a Proceso HUNSC,Enviar a Proceso CHUIMI 02,Enviar a Proceso Fuertev"

If we zoom out the BPL, we see it spots in green the 4 previous calls:

 

However, when we test it, we see in the Visual Trace the following behaviour:

 

We would like that the Process would wait for [12], [15], [17] and [19]... but it does not wait... it just get the first <call> response as seen in [12] and it executes the following <code> block which obviously fails...

 

Finally, we have the following doubt:

How could we say to the BPL to wait always for the 4 <call> response before executing the next <code> block?

 

We have read the following documentation to solve it by ourselves:

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...

https://es.community.intersystems.com/post/call-as%C3%ADncronicas-din%C3...

9 Comments
Discussion (9)2
Log in or sign up to continue
Article
· Oct 17, 2024 2m read

第五十章 安全元素的详细信息

第五十章 安全元素的详细信息

本主题讨论 SOAP 消息中较常见的安全元素,特别是 IRIS Web 服务和客户端可以发送的变体。此信息旨在帮助那些不经常使用 SOAP 的人重温记忆。此处的详细信息也可能有助于故障排除。

<BinarySecurityToken>

<BinarySecurityToken> 的目的是携带消息中其他元素使用的安全凭证,供消息接收者使用。安全凭证以序列化、编码的形式携带。以下显示了部分示例:

Discussion (0)1
Log in or sign up to continue
Question
· Oct 17, 2024

setting up ALB and Proxy container

We have a requirement to use ALB/Reverse proxy like traefik. Is there any similar solution produce by webgateway or webgateway-ingenix container image?

Reference:
webgateway-nginx:2024.1

1 Comment
Discussion (1)2
Log in or sign up to continue
Article
· Oct 17, 2024 2m read

ORU to MDM with large HL7 v2 messages.

I was working on a DTL but kept getting ERROR #5002... MAXSTRING errors. The problem was that most of the DTL GUI action steps only support the string data type when working with the segments. A %String has a limit of 3,641,144 characters and my OBX5.1 was 5,242,952 characters long as the example provided. Of course PACS admin stated ultra high quality up to and including 4K resolution files were needed, so we could not get the vendor to compress or reformat these files to compressed jpg or something similar.

7 Comments
Discussion (7)2
Log in or sign up to continue