Hi All,
How can I customize the file path of my FTP outbound adapter.
I have a custom business operation that extends "EnsLib.FTP.InboundAdapter", in which I need to update the file path of my FTP server location.
InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.
Hi All,
How can I customize the file path of my FTP outbound adapter.
I have a custom business operation that extends "EnsLib.FTP.InboundAdapter", in which I need to update the file path of my FTP server location.
ISCLOGs are a useful debugging tool provided with IRIS that can help you troubleshoot many different issues. For more information about creating these logs, please see the following IRIS documentation: "Logging".
This log is written to the ^ISCLOG global stored in the %SYS namespace. Each global node is a separate event, with additional information sometimes logged to the subnode.
Each entry consists of a list containing the following fields: ID, Category, LogLevel, Message, Namespace, Process ID, Routine, SessionID, Tag, and, TimeAdded. For more details about the different fields, please refer
Hello everyone
For those interested, here is an implementation example I used in one of my projects to interoperate with MongoDB using the pymongo package.
Interoperates with MongoDB (via pymongo package) with InterSystems IRIS (including outbound adapter)
Remember to import pymongo package.
implementation example for testing here
NAMESPACE> do ##class(custom.python.pymongo.test).TestMongoDBCrud()
for interoperability, use the following adapter in your business operation:
Parameter ADAPTER = "custom.python.pymongo.outboundAdapter";
Parameter INVOCATION = "Queue";
Query example:
///Hi - Recently I have been investigating an annoying situation whilst editing ObjectScript classes or routines in VSCode.
What was happening to me was, as I was typing in lines of code into my class (for example, adding a new Method, or changing the Class signature, or a block of code), this would quickly get syntax checked, re-formatted, and compiled - inevitably, (since I would be mid-way through my typing), this would generate compilation errors.
.png)
Knowing that I was mid-way through adding code, I could simply dismiss this message, however, this soon got very annoying, and conditioned me to
I need read only access using a JDBC query to the tables that contain the rules data for a particular interface. I'm having difficulty locating the tables that house the rule data and I'm wondering if someone could help me with that information and any sample queries if possible.
Thanks in advance!
The question is straight forward. Is there a way to do that? I've searched docs but no result
I am building a web application that uses JWT for authentication. I would like to pass the token in cookies instead of the Authorization header.
Is there a way to intercept the request and check the token from the cookies instead of the header? I tried overriding the OnPreDispatch() method and adding it to my dispatch class, but it seems like it never gets executed, as the response returns "Unauthorized" before reaching it.
ClassMethod OnPreDispatch(pURL As%String, pMethod As%String, ByRef pContinue As%Boolean) As%Status
{
Set token = %request.Cookies.Get("JWT-TOKEN")In the world of APIs, REST is very extended. But what happens when you need more flexibility in your data-fetching strategies? For instance letting the client to choose what fields is going to receive. Enter GraphQL, a query language for your APIs that provides a flexible alternative to REST.
In this post, we will:
By extending %XML.Adaptor, we can use
Parameter XMLIGNORENULL
to handle empty tags in output xml file from %Persistent. But this parameter only applies to %String property. What if a class has other types of properties, like %Stream (for holding large chunk of data). What is the recommended handle if we cannot use XMLIGNORENULL here?
Context: In change control, exported .xml file is important to make diff between versions. To correctly handle edits on a previously null property (for example, the first edit to store value in "Data" field), we need XMLIGNORENULL to be "inputonly" so that our
Hello, I try to develop a REST interface where I need to interact with legacy MUMPS routines. How can I pass in input to a Read without modifying the legacy code?
I think in linux I can execute command < inputfile to read from file, but how does it work in ObjectScript?
Long shot but is there a way to see which user created an Operation (for example) in Iris?
Hi,
Just installed IRIS on the top of ensemble 2018 as conversion and I can access Studio & terminal with no issues but management portal is giving page not found error 404 ?
Thanks
Hi,
I can start IRIS terminal using iris Terminal <instancename>, but can I open up Studio & SMP in Linux?
Thanks
How would I go about getting the adapter state of this business operation? Ideally, I would like to provide the config item name to a method—in this case, 'T_SPM_SIU'—and have the method return the adapter's state, such as "Disconnected" or "Connected," along with its status.
.png)
The documentation at https://docs.intersystems.com/irisforhealthlatest/csp/docbook/DocBook.U…
Case-sensitive: variable names (other than the system variables) are case-sensitive. Names of classes and their members, names of routines and their entry points, names of include files and macros are all case sensitive.
Consider "fully qualified" class name: Package.subpackage.ClassName
What is the class name mentioned in the documentation? Package.subpackage.ClassName or ClassName ?
It's unclear to me if in InterSystems/ObjectScript parlance class name includes also the
Hello everyone!
I have set up an EnsLib.REST.GenericService with an EnsLib.HTTP.InboundAdapter which forwards the http requests received by a web app to my Business Process.
I would like to parse HTTP multipart/form messages I am receving and be able to iterate over the various fields within the request body, accessing its content type and the content itself.
As far as I understand I should use the %Net.MIMEReader class which should return a list of %Net.MIMEPart, one for each field within the request. However if I do :
Set mimeReader = ##class(%Net.MIMEReader).%New()
Set sc =Hi Community,
Watch this short exercise in writing basic code snippets in InterSystems ObjectScript using Copilot in VSCode and the GPT-4.0 engine. This screencast covers "Hello, World," global manipulation, class creation, and building a simple REST API application.
>> Coding InterSystems ObjectScript with Copilot <<
🗣 Presenter: @Evgeny Shvarov, Senior Manager of Developer and Startup Programs, InterSystems
📌 The related code can be found here: objectscript-copilot-demo.
The first developer previews of InterSystems IRIS® data platform, InterSystems IRIS® for Health, and HealthShare® Health Connect 2025.1 have been posted to the WRC developer preview site. Containers can be found on our container registry and are tagged latest-preview.
These developer previews include the feature to migrate to IBM "Open XL C/C++ for AIX" 17.x compiler ensuring compatibility with future AIX builds as older compilers approach end-of-support. This migration focuses on the aixopenssl30 target, supporting SSL3 on AIX 7.2 and 7.3.
Initial documentation can be found at these links
Hi Everyone!
The Certification Team of InterSystems Learning Services is currently developing an InterSystems ObjectScript Specialist certification exam. Earlier this month we reached out to our community for feedback that will help us evaluate and establish the contents of this exam. We are still currently accepting responses and would love to hear your feedback!
Please note that this is one of two exams being developed to replace our InterSystems IRIS Core Solutions Developer exam. You can find more details about the other exam, InterSystems IRIS Developer Professional exam, here.
How do I
Hi Community,
Enjoy the new video on InterSystems Developers YouTube:
Hi Dev Community
I thought i would share a little method I knocked together to traverse and compare 2 JSON objects for basic equivilance. I'm currently working on some data migration, and wanted a basic sanity check to validate that the JSON output is basically equivliant between the old and new, excluding a few things like timestamps.
It's a basic little recurvsive method, that will bubble up any differences over a nested structure. It's very low tech, as that's all I need it to do, but I thought it might be useful for others?
It can accept a source and target JSON object or array, and
Hi folks!
I'm building a very simple REST API.
But before testing it via a Web Server what I want to make sure that REST API methods work in principle.
Is it an easy way to "fake" the web-server request and get a result e.g. of the method with signature like that?
ClassMethod GetAllRecords(pRequest As %CSP.Request, pResponse As %CSP.Response) As %Status
e.g. calling it in Terminal?
The IKO will dynamically provision storage in the form of persistent volumes and pods will claim them via persistent volume claims.
But storage can come in different shapes and sizes. The blueprint to the details about the persistent volumes comes in the form of the storage class.
This raises the question: we've deployed the IrisCluster, and haven't specified a storage class yet. So what's going on?
You'll notice that with a simple
kubectl get storageclassyou'll find the storage classes that exist in your cluster.
Hello,
So i want to use the INSERT OR UPDATE command so i can update a COUNTER for a given name:
INSERT OR UPDATE myTable
SET name='Omer', counter = counter + 1;
as you can see with the above code - if the row is non-existent then we get an error because COUNTER is NULL!
I tried the following to fix this but all have failed:
INSERT OR UPDATE myTable
SET name = 'Omer',
counter = CASE
WHEN counter IS NULL THEN 1
ELSE counter + 1
END
INSERT OR UPDATE myTable SET name='Omer',counter = COALESCE(counter + 1, 1)
INSERT OR UPDATE myTable SET name='Omer',counter =
InterSystems worked closely with the Red Hat Insights team to implement a curated set of recommendations for system administrators to ensure the best experience running InterSystems IRIS on Red Hat Enterprise Linux (RHEL). Included with all RHEL subscriptions, the Insights service proactively identifies potential issues with monitored platforms and applications running on RHEL. Through our joint collaboration, Insights now watches for common scenarios that decrease the performance of IRIS in most cases and offers an InterSystems-approved recommendation for consideration.
Ten recommendations
It's been a while (and everyone is well-rested after Advent Of Code!) so let's run another round of Code Golf.
Your task is navigating in a grid-like labyrinth in a clockwise spiral pattern. As it traverses the matrix, it collects characters, revealing a secret message. Your challenge: find the shortest, most elegant code to decode this spiral cipher. Input:
Output: The decoded message as a single string
Constraints:
Hello!
This article is a small overview of a tool that helps to understand classes and their structure inside the InterSystems products: from IRIS to Caché, Ensemble, HealthShare.
In short, it visualizes a class or an entire package, shows the relations between classes and provides all the possible information to developers and team leads without making them go to Studio and examine the code there.
If you are learning InterSystems products, reviewing projects a lot or just interested in something new in InterSystems Technology solutions — you are more than welcome to read the overview of ObjectScript Class Explorer!
Hi Community,
This is a detailed, candid walkthrough of the IRIS AI Studio platform. I speak out loud on my thoughts while trying different examples, some of which fail to deliver expected results - which I believe is a need for such a platform to explore different models, configurations and limitations. This will be helpful if you're interested in how to build 'Chat with PDF' or data recommendation systems using IRIS DB and LLM models.
So the title says it all:
What causes a broker RESPONSE to have Transfer-Encoding:chunked?
sometimes the response seems to not have the "Transfer-Encoding:chunked" but sometimes it does, what may casue this behaviour?