InterSystems Developer Community is a community of 23,441 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

Hi Community!

New Badges're already on Global Masters Advocacy Hub!

We're happy to announce that this year we again introduced three annual badges on Global Masters Advocacy Hub to let you remember how much you contributed to Developer Community in 2018. Here they are:

DC Best-Selling Author 2018
DC Expert 2018
DC Opinion Leader 2018

Let's take a closer look at the DC Wall of Fame 2018 and greet everyone with big applause!

8 5
0 377

This code snippet sends an XML request to a server and saves the response to a file. The class method "test" runs the code:


Class objectscript.postXML
{
    classmethod test() {
        Set HTTPRequest = ##class(%Net.HttpRequest).%New()
        Set HTTPRequest.ContentType = "text/xml"
        Set HTTPRequest.NoDefaultContentCharset = 1
        Set HTTPRequest.Location = "ITOMCZ"
        Set HTTPRequest.Server = "wph.foactive.com"
        Do HTTPRequest.RemoveHeader("User-Agent")  
        Do HTTPRequest.RemoveHeader("Accept-Encoding") 
        Do HTTPRequest.RemoveHeader("Connection")
        Do HTTPRequest.SetHeader("Expect","100-continue")
     
        Set RequestXML = ##class(%Library.File).%New("c:\test.xml")
        Do RequestXML.Open("RS")
        Do HTTPRequest.EntityBody.CopyFrom(RequestXML)
        Do RequestXML.%Close()
     
        Do HTTPRequest.Post(HTTPRequest.Location)
     
        Do $System.OBJ.Dump(HTTPRequest)
        Do $System.OBJ.Dump(HTTPRequest.HttpResponse)
     
        Write HTTPRequest.HttpResponse.Data.Size
        Write HTTPRequest.ContentLength
     
        Set ResponseStream = ##class(%Stream.FileBinary).%New()
        // Second part is typically the file extension, i.e.: application/pdf -> pdf
        Set FileType = $Piece(HTTPRequest.HttpResponse.GetHeader("CONTENT-TYPE"),"/",2)
        Set ResponseStream.Filename = "C:\test."_FileType
     
        Write ResponseStream.CopyFrom(HTTPRequest.HttpResponse.Data)
     
        Write ResponseStream.%Save()
        Do ResponseStream.%Close()
    }
}

Here's a link to the code on GitHub

1 0
0 926
Article
· Jun 6, 2016 7m read
Language Extensions

This is a posting about a particular feature of Caché which I find useful but is probably not well known or used. I am referring to the feature of Language Extensions.

This feature allows you to extend the commands, special variables and functions available in Caché Object Script with commands, special variables and functions of your own. This functionality also applies to other languages the Caché supports at the server, including Caché Basic and Multivalue Basic.


Why would I need or want to add new commands ?

14 5
4 1.5K

Hi guys,

I have a customer trying to extract data from Hive. I've tried to use Data migration to migrate a table into IRIS with JDBC driver. But the migration task always fails as below

Then I tried to create a link table, the task fails too with the following error:

0 4
0 412

Hi Community!

New video is already on InterSystems Developers YouTube:

API Design for REST

https://www.youtube.com/embed/r42coiZN7G4
[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]

1 0
0 492

There are situations where we want to provide immediate feed back to inbound Web Service that a particular business operation is not running (status <> "running"). We don't even want to queue up the message. We just want the webservice to respond with an error stating the business operation is down.

0 4
0 541

I am just curious if someone has used this service to send Alert emails through AWS / Ensemble

I have verified 2 email ids - One to send. One to receive

Have also configured an access key for the email smtp server and added the credential to ensemble

but I get this error

ERROR #6033: Error response to SMTP MAIL FROM: 530 Authentication required.

email-smtp.us-east-1.amazonaws.com

25

So my first opinion is the authentication is not happening via the credentials settings. It needs to be passed in a different way

0 4
0 1.1K

Hi Community!

New Badges're already on Global Masters Advocacy Hub!

We're happy to announce that this year we again introduced three annual badges on Global Masters Advocacy Hub to let you remember how much you contributed to Developer Community in 2018. Here they are:

DC Best-Selling Author 2018
DC Expert 2018
DC Opinion Leader 2018

Let's take a closer look at the DC Wall of Fame 2018 and greet everyone with big applause!

0 0
0 325

Hi everybody,

I am looking for a way to detimerine if a certain namespace is ensemble enabled. I´ve seen such a solution somewhere in the past but can´t find it anymore. Is there a simplistic api around for that?

My second question is in context of log some information to the console log file with a certain error level. Also, I´ve seen this in the past and can´t find it agian. I guess there was some kind of simple api to use for this.

Thank you for your help.

best regards,

sebastian

0 2
0 338

Is there any good documentation/tutorials on creating gateways in both directions between FHIR and Hl7v2 (for Health Connect)?

the scenarios I'm most interested in

1. Client application sends a FHIR demographic query to Health Connect - and the interface has to convert this to Hl7v2 QBP^Q11 message to the PAS.

2. Health connect sends a PDF document (from a file or HL7v2 interface) to an EPR over FHIR.

Thanks

Stephen

UPDATE

0 5
1 1.2K

Hi Community!

It's time to announce the best articles on InterSystems Data Platforms you published in 2018!

And here are three best articles for the year (criteria is the number of views):

First place: K-Means clustering of the Iris Dataset, by Niyaz Khafizov 1564

Second place: Continuous Delivery of your InterSystems solution using GitLab - Part I: Git, by Eduard Lebedyuk 1206

Third place: Replacing ZEN - Part 1 - Introduction, by Peter Cooper 933

Congrats to authors!

And what are the best articles by InterSystems Data Platforms?

See below

3 0
0 380
Question
· Jan 3, 2019
n00b questions

Hello,

I have some beginner questions as I am working through the InterSystems Cache learning path:

- Where I work, we us Cache, but we often learning about and train on MUMPS. No one really talks about or mentions MUMPS here, but my understanding is that ObjectScript is basically MUMPS plus whatever new things InterSystems put on top of it. Is that a fair assessment?

0 16
0 829

Has anyone called any outside Javascript code from inside their class files? I asked a long time ago if there was a way to manipulate an image within Cache Object Script, and since Cache doesn't have any image libraries its not really possible. However I have found Javascript to resize an image and wonder how hard it would be to mesh the two together.

Can anyone share any examples?

Thanks

Scott

2 9
1 1.6K

Hi -

I'm wondering if anyone has coded up a means to create an extension for a %Persistent class from a base class to a sub-class without making a ton of assumptions about the Global structure. I'm trying to create a new "extension" record that would have the same ID as the Base Class

Class BaseRecord Extends %Persistent

and

Class SubRecord Extends BaseRecord

where I would have an instance of a "BaseRecord" and I want to turn it into a "SubRecord" instance and have all of the existing references to the BaseRecord survive.

0 7
0 512

The following post outlines an architectural design of intermediate complexity for DeepSee. As in the previous example, this implementation includes separate databases for storing the DeepSee cache, DeepSee implementation and settings. This post introduces two new databases: the first to store the globals needed for synchronization, the second to store fact tables and indices.

5 5
0 800

One of the many benefits of using Atelier for your ObjectScript development is its integration with a wide range of source control systems. This integration enables you to use modern development workflows which increase collaboration while minimizing the risk inherent to volatile code bases.

Veteran ObjectScript developers can tell you about the workarounds that were needed before they could use source control systems with products like Caché and Ensemble. One of these was to treat the data store itself effectively as a code repository. And so shared development environments became essential for many of our customers to be productive and successful.

For code shops that rely on shared development environments, adopting Atelier might seem too complicated. This article aims to provide a practical example to guide your team towards success with Atelier.

You can find an overview of the problems and solutions in this article here, which is a good place to start. This article assumes that you are familiar with the concepts introduced there.

8 1
0 958

There's a new and exciting enhancement to QEWD that has just been released - it's an additional layer of abstraction known as QEWD-Up. QEWD-Up hides away all the mechanics of QEWD itself, allowing you to focus on just your REST APIs and the code that implements them.

Additionally, and importantly, QEWD-Up simplifies the maintenance of your REST APIs, allowing you (and others) to quickly and easily understand their life-cycle and implementation.

3 3
4 881