Thanks!
What's changed?
- Log in to post comments
Thanks!
What's changed?
I don't think osuwmc property exist in your Rule context.
&sql(SELECT Name, DOB, Gender INTO :Name, :DOB, :Gender FROM osuwmc_RQGPatient.DataTable WHERE MRN=:MRN)...
quit $classmethod(class, index _ "Exists", value)As you presumably want to return the value.
%JSON.Adaptor does not construct an intermediate dynamic object. You can use %ObjectToAET to convert normal object into dynamic object:
set dynObj = ##class(%ZEN.Auxiliary.altJSONProvider).%ObjectToAET(obj)There are two approaches:
1. Create a "result set" class to hold the results (interestingly, InterSystems provides %XML.DataSet and other tools for this specific use case with XML/SOAP. Docs):
Class Test.JSONRS Extends (%RegisteredObject, %JSON.Adaptor)
{
Property count As %Integer;
Property results As list Of Book;
}2. Simple approach:
Despite being hacky, the second approach is better:
That said, I generally recommend against supplying count in query results because of many reasons:
So %Dictionary.CacheClassname would be my table name then?
Well, class name. If you want you can convert table name to class name with:
set:table'["." table=$$$DefaultSchema_"."_table // support unqualified names
set class = $$$GetClassNameFromIQN(table)I don't have to use any :sql.... type code for it to do the lookup?
You can but you don't have to.
What about the existing EXISTS function that already exists that is used for Data Lookup Tables (lut)?
It's a separate function that works only with Data Lookup Table (which are actually not tables at all).
You'll need a Custom Function.
If the lookup field is indexed (Location in your case) you can use this function for all Lookup checks:
ClassMethod Exists(class As %Dictionary.CacheClassname, index As %String, value As %String) As %Boolean [ CodeMode = expression]
{
$classmethod(class, index _ "Exists", value)
}Interesting.
Can you please add source code for java classes, such as ParseXML.Parse?
This is my first post Eduard so I'm not sure what the etiquette is. Should I mark your post as correct as it lead me to realise where the problem was or this one as it contains the working code?
You can mark any number of comments as correct answers, so both I guess.
You need to write an Alert Processor. Monitoring Alerts.
Calling @Benjamin De Boe.
Awesome!
Config package is a wrapper over CPF file.
You edit the objects of these classes and CPF file is edited automatically by Caché.
You can check in the CPF file where data server is defined and get the corresponding Config object.
WRC may provide more info I think.
If you're interested in monitoring, try brand new System Alerting and Monitoring. There was also a Tech Talk about it recently.
Interesting article!
I encountered Business Process variation of this issue recently and would like to add that setting SKIPMESSAGEHISTORY parameter is not always a complete solution. It disables sent/received reference history, but pending messages are still stored in a collection (no way around it).
In cases where one BP instance waits on more than ~10 000 messages simultaneously same issue occurs (I got a journal file per minute on 50 000 pending messages).
The recommended approach would be to change architecture layout so that one process would wait on a more reasanable amount of messages.
Please ask a separate question. This is an extensive topic and the question would get more attention from Community.
Come on!
.png)
Can't say I have. But there are a lot of Arduino network modules - seems doable.
What are you doing?
Does ensemble can limit request speed at Business Service? too many requests slowdown my service.
InterSystems IRIS comes with InterSystems API Manager which is designed for these kind of tasks.
But at the message trace page. I can't found any source address .
You can use $$$TRACE to capture additional information. Also CSP Gateway has additional request tracing facilities. Here's how you can enable tracing there.
But most importantly as I said in your previous post it looks like you're running Ensemble service on a custom port. First thing you need to do is:
Values looks correct (I assume Ipaddress is in fact replaced by an ip address or a hostname).
I think the issue is the access to the driver library.
Check that the user you're running the app has access.
Maybe you need to specify the path with double slashes.
Also try copying the jar file into your app directory.
On the other hand InterSystems offers a very flexible and powerful full text search solution, as a part of InterSystems Cache - iFind (Also known as InterSystems SQL Search for InterSystems IRIS). Try it out to add full text search to your application.
Set tSC = ##class(Ens.Director).CreateBusinessService("Strata JSON Service",.tService)After that line add
If $$$ISERR(tSC) {
write $System.Status.GetErrorText(tSC), !
quit tSC
}Looks like CreateBusinessService call fails (so tService object doesn't get created).
Set tSC = ##class(Ens.Director).CreateBusinessService("Strata JSON Service",.tService)Check that tSC is not an error and that tService is an object.
Great!
How can we fix the documentation (or the class method name)?
If possible please report the issue to the WRC.
Also calling @Bob Kuszewski