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

I use macros everyday, but its the first time I want to create a macro like this

I want to create a new macro whereby I can pass a variable amount of parameters

the macro (much simplified version) would be

#define myMacro(%params) $listBuild(any Number Of %params I pass in)

so I want to be able to call $$$myMacro(user,ID,vehicle) ie 3 parameters would generate

$lb(user,ID,vehicle)

but equally I might want to call that same macro $$$myMacro(companyID) ie 1 paramter and would generate

$lb(companyID)

0 4
0 420
Question
· Apr 6, 2018
sql insert from cache

I am tasked with using CACHE to insert data retrieved from a CACHE data base and insert it into an sql database. The columns in the sql table that I am trying to insert data into have names that contain underscores such as "ACCESSION_DATE" I found a utility in CACHE to connect to the sql data base and perform inserts. I have the data I need to insert. I need to pass the data into the sql utility referencing the column names.

I tried using indirection to set the data into underscored variables, but that isn't allowed in cache object script.

0 8
0 1.4K

I am rather new to ObjectScript and I have a query about assigning values to the context.

In BPL I have a context variable (A08Msg) which is set to type Enslib.HL7.Message, I want to put my inbound HL7 message into this variable so I tried:

  • an Assign to set context.A08Msg to request

This seemed to load the message into the variable because I could read values, e.g. using context.A08Msg.{PD1:3(1).1} , but I was unable to write to context.A08Msg.

0 7
0 799

Hi All,

I have a line of mumps code that creates a folder on a network shared drive.

Example:

d ##class($Library.File).CreateDirectory("\\share\folder\newfolder")

If I run this line of code from a cache terminal window it works fine and creates the folder without problems.

However If I create a very simple business operation in a production in the same namespace that simply runs this one line of code then the code fails.

0 4
0 1.6K

Hello,

I am running a transformDTL through COS that transforms an EDI document to JSON and would like to validate the document and throw an error if it does not validate or build a map.

I am looking at available methods and haven't been able to find one that sort of does: Set tSC = ##class(*).Validate(tDoc,"HIPAA_5100").

Any help here would be appreciated, it seems like I am missing something simple.

0 1
0 394
Question
· Apr 5, 2018
Drawing boxes

Hello, Community!

Here's an interesting task I found on the Internet.

Problem description

Write a method that would draw a box of a specified size.

The goal is to write the shortest method.

Here's a method signature (it can't be modified):

ClassMethod main(s As %Integer = 10)

And call sample:

>do ##class(ITPlanet.Task4).main(5)
#####
## ##
# # #
## ##
#####

>do ##class(ITPlanet.Task4).main(10)
##########
##      ##
# #    # #
#  #  #  #
#   ##   #
#   ##   #
#  #  #  #
# #    # #
##      ##
##########
 
>do ##class(ITPlanet.Task4).main(20)
####################
##                ##
# #              # #
#  #            #  #
#   #          #   #
#    #        #    #
#     #      #     #
#      #    #      #
#       #  #       #
#        ##        #
#        ##        #
#       #  #       #
#      #    #      #
#     #      #     #
#    #        #    #
#   #          #   #
#  #            #  #
# #              # #
##                ##
####################

2 15
0 608
Question
· Apr 6, 2018
Delegated Sign On Bypass

Is there a way to make the system users like _SYSTEM and ensadm bypass the Delegated sign-on and not cause it to fill up the Audit trail with "Programmer mode login failure"?? I figured I still had to leave password login enabled for the background users to run. How would I script if username = "_SYSTEM" then don't do the Delegated sign on?

Here is my ZAUTHENTICATE

0 3
0 360
Question
· Dec 27, 2017
Studio Templates and Add Ons

We do not use the out of the box web server (57772) for HealthConnect, we run a stand alone instance of Apache with https enabled. Now when I go to Tools > Templates > Web Form Wizard, I get an error Navigation Cancelled. I get a similar error when I try Tools > Add Ons > Add On.

Any ideas?

0 7
0 686

Hi,

i have today

- update from Ensemble 2016.1.0.656.0 to 2017.2.1.801.0
- Java JDK 8 (U161) [latest Version]
- Eclipse (JavaScript & WebDev) Release 4.7.3
- Atelier 1.1 plugin (from Marketplace)
- Migrate a small testing Project

Trying "Debug":

- Debug Configurations ...
- "Atelier Application Attach" -> "New"
- Select Server, Choosing the process i want, "Apply", "Debug"

Error:

0 2
0 414
Question
· Apr 6, 2018
EnableConfigItem() scripting

We have scripted a process where we can run EnableConfigItem from the cron in AIX so we can run multiple scripts at a time vs the scheduler in Ensemble that is single threaded. For the most part this works fine, until that service/operation has an error on it then it seems that everything else that is called after that instance halts.

Is there something that is stopping EnsConfigItem() from running once something has error'd?

Can something be forced like it does if we try to enable/disable in the gui and it times out?

this is the single command line we are calling

0 3
0 498

Configuring an Ensemble production can be a challenging task involving a thorough understanding of the system and production functionality and a detailed understanding towards each configuration item. After successfully configured an Ensemble production, you might need to set up an identical production on the mirror environment, or deploy the production on a development system to a live system, or send a copy for diagnostic/debug purposes. Other times you might have spent some time designing a BPL/DTL and some other productions can use the same logic.

5 0
0 4.7K

In this series of articles, I'd like to present and discuss several possible approaches toward software development with InterSystems technologies and GitLab. I will cover such topics as:

  • Git 101
  • Git flow (development process)
  • GitLab installation
  • GitLab Workflow
  • Continuous Delivery
  • GitLab installation and configuration
  • GitLab CI/CD
  • Why containers?
  • Containers infrastructure
  • GitLab CI/CD using containers

In the first article, we covered Git basics, why a high-level understanding of Git concepts is important for modern software development, and how Git can be used to develop software.

In the second article, we covered GitLab Workflow - a complete software life cycle process and Continuous Delivery.

In the third article, we covered GitLab installation and configuration and connecting your environments to GitLab

In the fourth article, we wrote a CD configuration.

In the fifth article, we talked about containers and how (and why) they can be used.

In this article let's discuss main components you'll need to run a continuous delivery pipeline with containers and how they all work together.

4 0
2 3.6K