Jenny Ames · Jul 21, 2022 go to post

Hi @Aasir Waseer, great question! There are a lot of great resources that cover these topics more generally, but I'll focus on resources that specifically cover the tools available in InterSystems IRIS:

  1. Video: Introduction to Analytics with InterSystems IRIS
  2. Path: Predicting Outcomes with IntegratedML in InterSystems IRIS
  3. Path: Build Data Models with Adaptive Analytics
  4. Path: Building with the InterSystems IRIS BI Analyzer
  5. Path: Delivering Data Visually with InterSystems Reports 

Good luck!

Jenny Ames · Feb 14, 2022 go to post

@A.R.N. H Hafeel , Following @Ben Spead 's question and assuming you want the latest and greatest w/ InterSystems IRIS (where you'll learn quite a bit that relates to Cache, but learn all the awesome new features of InterSystems IRIS too!), here's what I recommend:

Get an introduction

Note: You can also learn about all InterSystems products and how they compare, or learn about developing for healthcare applications with InterSystems IRIS for Health.
 

Learn the tools

Develop an Application

Optionally... expand your expertise!

Also, I'll mention that if you'd like a learning instance to play with, you can try out Learning Labs. Many courses include their own labs with starter files so you can focus on the task at hand (which I highly recommend using those labs when it's included).

​​​​​​​I hope that helps! 

Jenny Ames · Feb 10, 2022 go to post

Hi @Nagarjuna Podapati 
We're building out several learning programs based on roles that will better help in the future here. But the paths exist today! What are you trying to accomplish with IRIS for Health? Based on what you're trying to accomplish, we can recommend a personalized set of learning paths.

That said, if you're going to need to do most things or you're not sure yet, I recommend Getting Started with InterSystems (Health)

Jenny Ames · Jan 13, 2022 go to post

If you're looking to get started, you can also personalize which paths you take based on what you're trying to do:

Alternately, we have a several larger paths for implementation partners (or others who will be doing everything, paths are open to all) here:  InterSystems Implementation Partners Learning Paths

Hope this helps!

Jenny Ames · Mar 1, 2021 go to post

I've been playing with 1.5 and I've been very happy to see some UI updates that make it easier to set up services and routes such as being able to supply a REST endpoint in IRIS to quickly define a service. It may sound simple, but it has helped me to keep things straight (I used to confuse service and route - anyone else??) as well as streamlines this process. Glad to have these updates!

Jenny Ames · Jun 1, 2018 go to post

Hi Rodolfo, great! Both of these (adding to the clinical viewer and health insight) will eventually be included in this new course. I can currently share with you a video about the Clinical Viewer to close this gap in the meantime. I'll watch for a request from you!

Jenny Ames · May 18, 2018 go to post

Hi all, yes, Extending SDA in HealthShare Applications is well underway but has been delayed due to other high priority projects. If you'd like to be a beta learner, we'd be happy to share what we have.  You can use the Feedback link on the right of learning.intersystems.com and mention me and we'll get you links to videos.

Some things you'll want to think about when using extended SDA in HealthShare apps:

  1. Are you trying to make the SDA extensions visible in the Clinical Viewer? If so, you'll need to use the Layout Editor.
  2. Do you need custom matching or validation logic when storing the streamlet? If so, you'll need a streamlet class that extends the existing streamlet class (or a new streamlet class if its custom SDA container) and in that you can customize the OnValidate() method or the MATCHINGS parameter.

I assume when you say you need to make them visible in Information Exchange, you are referring to showing extensions created using the extension classes in the Clinical Viewer?

Jenny Ames · Sep 15, 2017 go to post

Hi Conor,

The Clinical Viewer is only available if you have Information Exchange (Information Exchange includes Health Connect but if you have Health Connect, you don't necessary have Information Exchange). You can, however, still use the HealthShare FHIR respository to store FHIR resources, and then use REST calls to retrieve each resource. What exactly are you trying to do?

If you would like Information Exchange and the Clinical Viewer, I recommend reaching out to your Sales Engineer or Sales Rep.

Jenny Ames · Aug 28, 2017 go to post

I'm not exactly clear on which you intend to hold the new ID (context.newID maybe by the name?)

Regardless, you can also use the built-in pad method:

set context.NewID = ##class(Ens.Rule.FunctionSet).Pad(context.PatientID,-10,0)

where context.PatientID holds your original Patient ID. -10 means you want to prepend to be 10 characters, and "0" is the character you want prepended.

Jenny Ames · Aug 24, 2017 go to post

Great summary Tom. The only thing I would add is that FHIR actually supports several paradigms:

  • REST - As mentioned by Tom, allows you to retrieve or interact with one or multiple "FHIR resources". This allows you to work with smaller amounts of data (just what you need) instead of only allowing you to retrieve a large amount of data (for example, a CDA document). This is the most common and one of the greatest benefits of FHIR in our world where mobile devices may not want to get ALL data, but just what it needs at that time.
  • Document - You can still retrieve or interact with a large document of data such as a Patient Summary, similar to CDA.
  • Messages - This allows you to retrieve or interact with a message of data - FHIR resources bundled and includes an event that triggered it.
  • Services - This one is a bit more "vague" but it allows you to interact with FHIR data using a service-oriented model using custom code.

All are supported in HealthShare (both Health Connect and Information Exchange). In Health Connect, you will likely either consume FHIR and transform it to some other type, or consume some other type of data (CDA, HL7v2, etc.) and transform it to FHIR. In Information Exchange, an Edge Gateway can consume FHIR data as well to be used like any other data in the exchange.

Jenny Ames · May 10, 2017 go to post

Hey Anthony, is that a dot after Appointments? Usually a repeating field is in the syntax Appointments(1) (no dot in between). Perhaps its a syntax issue?

Jenny Ames · May 1, 2017 go to post

Great mention Tani - this is actually a pre-req for what Julian is talking about as the existing course covers the basics. In this next course, we want to cover more best practices and common hiccups that can be either avoided or worked with - directed at more advanced users who have the basics down.

Jenny Ames · Mar 29, 2017 go to post

From documentation: " Although Ensemble defines a class EnsLib.REST.Service , that is a subclass of %CSP.REST , we recommend that you not use this class because it provides an incomplete implementation of %CSP.REST ."

Instead, it's recommended that you create a REST class that extends %CSP.REST, and send data to a business service from the methods in this class.

Jenny Ames · Mar 20, 2017 go to post

Make sure to log in using either your WRC Direct credentials or register using your work email. As long as you are a Health Connect customer, you should have access to that page. If you do not but believe you should, log a ticket by using the tab on the right and someone should get back to you pretty quick. Hope that helps!

Jenny Ames · Jan 30, 2017 go to post

This is great! Thanks Stuart. Is pRequest.AlertText commented out to convey that this information could be included in the text message if you'd like?

Jenny Ames · Jan 3, 2017 go to post

We're really excited about this learning path as its something many of you have asked for! Have you taken the Building and Managing HL7 Productions classroom course but now need to create custom components? This is a great next step! As always, please let us know if you have other suggestions for courses, learning paths, or best practices that we can incorporate in future learning content.

Jenny Ames · Dec 8, 2016 go to post

For those interested, this information will be included in a new online course Building Custom Business Services - coming soon!

Jenny Ames · Nov 29, 2016 go to post

Since Ens.DataType.ConfigName only allows you to select one component, you could also simply this by omitting the loop:

set tSC = ..SendRequestAsync(..TargetConfigNames, pRequest)

If you do this, you should include a note for the setting to only specify one component as you can still specify multiple by hand.

Jenny Ames · Oct 11, 2016 go to post

We have a few online learning resources that may also be of interest to you:

Jenny Ames · Sep 22, 2016 go to post

Great example! Thanks for sharing! I love how simple and elegant your solution looks.

Jenny Ames · Sep 21, 2016 go to post

Here's one: One best practice we often recommend is to build backwards.. Build business operations first, then business processes, then business services. That way you can test your business operation using the test utility and then when you go to test your business process, you know any new issues must be in the business process. And finally when you create your business service, you can pass a message in like normal and know that the interface works as a whole.

Jenny Ames · Sep 21, 2016 go to post

Very interesting Mike! Thanks for sharing. There are always multiple ways to solve a problem but I think you're on to something here...

So thinking through a bit more about when this approach might make more sense than using a built in loop (like a foreach): Because the stream was one item, it sounds like a foreach would probably have been more difficult in that situation? Were there other ways you considered doing this? And if so, what went into the decision to use the code action here? I'm assuming this was called from a business process built using the Business Process Designer?

That's a cool idea of setting variables in debug/testing mode!

Jenny Ames · Sep 19, 2016 go to post

Great post Ben. Thanks for the best practices. For those who start on a newer build that uses the new JSON syntax, is there any benefit to using these macros? Or is this only for those who will upgrade from an older version?