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 469
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.5K
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 646
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 395
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 575

I'm converting a DTM system to Caché and trying to use the Caché Terminal as the UI. I've come across and removed some DTM formatting for printed text that does not do anything in Caché (actually, it caused errors). The printed output to the default Windows printer ("|PRN|") has been working and the printed documents in text-only format look fine. I am testing on a low-end HP laser printer and a Brother laser. The client has done a print test to his own older HP laser from his Caché instance and the text renders fine.

0 5
0 941
Question
· Apr 3, 2018
Comparing Cache-Objects

Hi guys,

is there an easy way to compare two objects in os?

Example:

I have a registered order-object at runtime. Now I want to call a specific export-service just in the case that sth in this order has changed since the last export. So I have to compare the persisted order-object (last export) with the current order-object.

Ist there an easy way to compare these two objects or do I have to check each object-value separately?

Thanks for your help!

Regards, Thomas

0 1
0 919
Question
· Mar 21, 2018
Problems encountered with Java Gateway

Problems encountered with Java Gateway

I am writing a framework for use on the Java Gateway. The role of the framework is:

1. Import the framework jar file into ensemble studio (test completed);
2. In the framework jar, handle the related functions of the remaining jar files (the rest of the jar files are written by colleagues).

The general idea is as follows:

Send: Ensemble Java Gateway -> Framework Jar -> Plugin Jar (colleagues write, processing data).
Returns: Plugin Jar (processed return data) ->Framework Jar->Ensemble Java Gateway.

0 1
0 770

Sounds odd - but I encountered it - twice now. Cache was restarted. in that period the primary journal directory was full and it was writing to the secondary journal directory. So upon start-up, it was quite obvious that it was not going to write to the primary. Cache reported this but was able to continue with the start-up but writing to the secondary. All of a sudden it doesn't recognize the 'primary' config any more and started saying 'Alternate and primary journal directories are the same'.

0 3
0 1K
Question
· Feb 26, 2018
Monitoring with Zabbix

Hi community,

I need to monitor Caché Intersystems with some custom indicators.


I started customizing the SNMP Mib. But I've been in a Zabbix event, all speakers use ODBC to monitor their database, Oracle, MySQL, PostgreSQL ...

What is the best way? Use ODBC or SNMP Custom Mib?
What are you guys using?

0 2
0 1.1K

Hi,

There have been similar questions asked before, but a few years ago now. My problem is that when I create an application in plain CSP, a typical link to a page will look like this in the browser..

https://omnidata.com.au/csp/lcda/StudentList.csp?CSPCHD=001000010000EYnm...

One user sent back a comment.. 'I'm not using your application as it is un-secure' .. based on the fact that the elements are spelled out in the URL.

0 6
0 485
Question
· Mar 26, 2018
error compilation studio

Good morning, employees

I'm having trouble compiling in studio, I already reported it to intersystems support, but it did not solve the problem.

when calling a method of a class by putting $, follows an example:

0 4
0 299

I need to offer new users on our system a temporary password that is valid for only 48 hours. This is different than a 60-day password expiration window for existing users' passwords (where a password needs to be changed every 60 days), and is different than a "user expiration date", where you can set a date where the user's account expires and is disabled on that date, and different than the inactivity expiration date where a user becomes active if his account is not used within, say, 30 days.

0 2
0 473