Syndicate content 0  

Cache 2016.2.1.603 for windows)

I created a few classes and one class called jitPod.Api.toServer.additionalConsignments and realised even before I did any work,, that the word "Api" (note capital A) needed to be "api" (all lowercase)

it would not allow copying the class to the lowercase name because the directory already exists (i understand that)

so I exported the class to an XML, edited the xml to become lowercase "api" , deleted all the classes (and directory name) and re-imported the class.

0 19
0 871
Article
· Jan 2, 2022 3m read
DB Migration using SQLgateway

Thanks to @Yuri Marx we have seen a very nice example for DB migration from Postgres to IRIS.
My personal problem is the use of DBeaver as a migration tool.
Especially as one of the strengths of IRIS ( and also Caché) before is the availability of the
SQLgateways that allow access to any external Db as long as for them an access usinig
JDBC or ODBC is available. So I extended the package to demonstrate this.

11 3
2 828

Introduction

Say you have a receiving system that accepts HL7 and provides error messages in field ERR:3.9 in the ACK it returns. You require a different reply code action depending on the error message, however the Reply Code Actions settings for the operation do not provide this level of granularity. One option could be to create a process that takes the ACK and then completes the action you were expecting, however things can get a bit messy if the action is to retry the message, especially when trying to view a message trace.

9 2
1 847

Hello fellow comrades.

I have a little issue concerning the creation of an embedded PDF sent by hl7. When I Extract it, the pdf is not completed (Seen by opening it with notepad++) compared to the one I created with a Base 64 converter.

0 3
0 884

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 880

I have a service that that I would like to use to poll the database table in MySQL server 2012 and get an id to use if the condition is met but have trouble achieving this here is what I have so far any suggestions please.

Method OnProcessInput(pInput As EnsLib.SQL.Snapshot, Output pOutput As %RegisteredObject) As %Status
{
 
  set pRequest=##class(SamsReq).%New()
      set pRequest.pID=pInput.Get("pID")
     
     
 

< set sc=..SendRequestSync("DQTT",pRequest,.pOutput)

 quit sc
}
 
 

the error that I am getting

>}

0 4
0 882

Hello community,

I have productions running in several different namespaces. They all use a common credentials ID for sending email, which is set up in only one of the namespaces. The documentation says that credentials are entered by namespace. When I ran a production in a second namespace, the error log said that credentials were not found (expected), but later attempts to send a file thorugh the production did successfully send an email. I'm wondering if Ensemble is able to look in other namespaces for the same credentials ID?

0 2
0 884

Hi there have been various posts around how to clean up globals without parent data but none have gone into how you solve these issues.

Our database is approaching 600gb in size so i am looking into how to reduce this.

We use standard purge tasks.

Our cache stream class has a global size of 2463243 from running global size so it is what i would like to tackle first.

1) is there any way i can find based on my oldest message session for where most of these globals

0 3
1 882

Hi developers!

As you probably noticed in IRIS 2021 the names of globals are random.

And if you create IRIS classes with DDL and want to be sure what global was created you probably would want to provide a name.

And indeed you can do it.

Use WITH %CLASSPARAMETER DEFAULTGLOBAL='^GLobalName' in CREATE Table to make it work. Documentation. See the example below:

3 11
0 665

I am fairly new to Cache and ObjectScript. I have a new task I have created with a corresponding method that I am trying to debug in Studio (2013).

My ClassMethod looks like this

ClassMethod DoMyWork(Output pWorkCount as %Integer,  pInput1 As %Integer = 30)

{

/* Does some work here and increments pWorkCount */

}

When I try to debug this using studio, I browse to my method but I am not certain what to put in here for the input parameter 'pWorkCount'.

0 3
0 882

Hi all,

I am trying to delete an item from a production through a routine that installs and disables items.

To add any item, I have no problems, even to enable and disable some particular items.

The problem arises when I try to eliminate the production item, because when it does, the production become unstable and only works again when this item is added again in the collection (or the item is deleted manually in the production.cls)

This is my code attempt:

1 11
0 874

Good day, every process in my software is about to update 3 specific globals in row when the process is called to do some job. I need to guarantee that during updating of those globals with multiple processes there is only one process that is actually working with those globals. Moreover I need my globals unreadable if other process is in critical area.


Example:

1 8
0 876

Hi Everyone,

New Coding Talk, recorded by @Evgeny Shvarov, is already on InterSystems Developers YouTube:

GitHub Repository Template To Develop and Debug ObjectScript in InterSystems IRIS

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

9 13
3 623

I have an in-memory list of items and I want to check which items match my pattern string.

Pattern string is a comma-separated list of items and special symbols like '*' and maybe '?'.

There's something similar in $system.OBJ.Compile, it accepts patterns: "*.data.*,Sample.*" - and it would compile 'Sample' package and all 'data' packages.

For example:

set list=$lb("abc", "c", "aaa", "bbb")
set result = ..match(list, "a*,*b")
zw result
result=$lb("abc","aaa","bbb")
0 7
0 875