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

In the previous 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. Still, our focus was on the implementation part of software development, but this part presents:

  • GitLab Workflow - a complete software life cycle process - from idea to user feedback
  • Continuous Delivery - software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently.

7 1
3 3.3K
InterSystems Developer Community is a community of 22,437 amazing developers
We're a place where InterSystems IRIS programmers learn and share, stay up-to-date, grow together and have fun!

Hi,

I have a custom classes that that I use with EnsLib.SQL.OutboundAdapter to convert HL7v2 messages to SQL INSERT statements to write results to an SQL database.

Weirdly the management portal is not drawing the the lines between my process and operation when viewing my production on the ' Ensemble > Production Configuration' screen. Clicking the green dot flashes the 'computing connections' message, and highlights my operation, but no lines get rendered:

0 7
0 466
Question
· Feb 20, 2019
HL7 ORU^R40 Schema Structure

We are currently on 2015.2.2 and in schema structures for vs 2.6 HL7 I do not have a ORU^R40. Its for a GE Device alarm. Has anyone hear of this structure, have a way to export it, and can send it to me so I don't have to build from scratch?

Thanks

Scott

0 3
0 1.2K

I like to know if COS has a PGP library for encryption and decryption messages received from an SFTP connection. We have interfaces that we used BouncyCastle in C# but would like a native library for COS.

0 6
0 1.2K

I'm connecting to a remote device using TCP. It has a binary protocol.

set host = ""
set port = ""
set io = $io
set device = "|TCP|7000"

set timeout = 2
open device:(host:port:"M")
use device:(/IOT="RAW")
read string:timeout

use io
zzdump string

The problem is when reading from it, I get a 0A (also known as 10 or \n or linefeed) byte, which terminates the read.

Expected output:

0000: 42 00 7B 0A 11

But I get this output:

0000: 42 00 7B

How can I fix that?

0 1
0 271

Good afternoon,

We have a very old version of Ensemble with one of our clients and they have no desire to upgrade anytime soon. We have gotten the all-clear to purge really old messages from the database, changing the days kept from 60 to 30. The option to Compact/Truncate is displayed in this version of Ensemble, but does not execute as it mentions not being actually present in this version.

There is an option in ^d DATABASE that restores unused space, however this does not return nearly as much free space as the refined Compact/Truncate procedure.

0 2
0 440

I have an existing table, and I've added an array property to it that I need to populate.
The issue is that I can only use SQL to insert into the table due to access reasons.

For example:

Class Package.Tables.Person Extends %Persistent
{
Property Name As %String(MAXLEN = "");

Property Address As Array of Package.Datatypes.Address;
}

0 1
0 487

Hi Community!

Please welcome a new video on InterSystems Developers YouTube Channel:

Developing with FHIR - REST APIs

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

0 0
0 628
InterSystems Official
· Jan 11, 2019
Support for Windows Server 2019

InterSystems is currently verifying InterSystems IRIS 2019.1 with Windows Server 2019. This work is scheduled to complete by the end of January 2019. In the second half of this month InterSystems will add Caché/Ensemble 2018.1.2 to be verified on this platform.

As we get closer to the completion of those tasks, I will update this post with information on release dates, and which products and version will support Windows Server 2019.

7 5
1 1.3K

I try to create a column with computeonchange.

Its works with CREATE TABLE sql command, but if i use ALTER TABLE ADD COLUMN sql command this computeonchange doesn't works.

any reason why?

example:

CREATE TABLE MyStudents ( Name VARCHAR(16) NOT NULL, surname VARCHAR(16))

alter table MyStudents add column fullname Varchar(50) COMPUTECODE { SET {fullname}={Name}_ "?" _{surname}} COMPUTEONCHANGE (Name,surname)

insert into SQLUser.MyStudents (Name, surname) values ('name1',null)

update MyStudents set name = 'name' where name = 'name1'

0 1
0 238

Hi,

I know of the existance of (ELEMENTS) to create an index from a list, but I actually would like to index the content of an element of a list. Is it possible?

My scenario:

Class:
Property Test As list of TestList;

Test.List:
Property Name As %String;
Property Surname As %String;

I would like to have an index based on the TestList.Name. If I try using

Index NewIndex On Test(ELEMENTS)

it will create an index with Name and Surname in it, but I just want to have an index with the name. Is it possible?

0 3
1 331

Hi,

When Creating a custom security role, what privileges do I need to add to it, in order for the users that I grant him the role, to be able to use

dynamic SQL to perform read only queries on all tables in a namespace?

I have a security role, that contains the %Service_SQL privilege,

And yet when I connect to a terminal and try to run an SQL query using dynamic SQL , I get a "user is not privileged for the operation" error.

0 7
0 1.5K
Question
· Nov 19, 2018
Copy csv data into a global object

Hi, I have a CSV file with a list of 5000 records in the following format

Name, Acc, division

Eric, 1234, 567

John, 1235, 987

Peter, 3214, 879

I just want to copy the Acc, division to a global so eventually the global would be like the following:

^People("Customers", "Acc.division")

Can you advice on how I can perform this from the terminal? This is a one time task. I want to read all the values from the csv file and insert them into the global

Regards,

Eric

0 7
0 1K

InterSystems has corrected a defect that can result in data integrity problems in environments that use InterSystems mirroring in conjunction with parallel dejournaling. This problem exists for currently released Caché and Ensemble versions beginning with 2017.2 and for InterSystems IRIS Data Platform version 2018.1.

0 0
0 304

Hi,

I am having a problem in REST service when de-serializing JSON using a nested Property.

I am new to Intersystems and my first time creating REST Service. I setup Atelier dev environment. The worst IDE I have ever worked in. I was able to attach to a process in the debug perspective and step through the code, but one cannot see contents of variables nor print anything to the console, so it is useless as a debugging tool. When looking at a variable all it displays is its type of the variable and if I try to "watch" I get:

0 5
0 713

I'm trying to test SOAP integration by using one Ensemble production to send a SOAP message to another production, but I'm seeing the following error when I try to pass a message between the two:

ERROR #6248: SOAP response is a SOAP fault: faultcode=Server
faultstring=Internal Server Error
faultactor=
detail=
<error xmlns="http://tempuri.org">
<text>ERROR #7900: Service 'SOAP' not enabled for application '/csp/healthshare/hspc/'</text>
</error>

0 4
0 1.7K

I am reviewing some code where the % sign has been used liberally to name arrays that are worked on by different methods within the same class. Apparently it is not good practice to name variables with a "%" sign as the first character because this could overwrite other similarly named variables from other developers, including ISC! Is there another way to make a variable public ?

0 8
0 708

I'm getting this compilation error:

Kompilieren der Klasse digi.packet
FEHLER #5002: Caché-Fehler: <FUNCTION>zLockUse+5^%ExtentMgr.GlobalRegistry.1
> FEHLER #5030: Während der Kompilierung von Klasse 'digi.packet' ist ein Fehler aufgetreten

when importing one of my classes on the production server into one particular namespace:

0 8
0 754

In my routine when I call set filestream.FileName = filename, I get an error

"cn_iptcp://localhost:56773/USER/%Stream.FileBinary.1.INT" does not exist on the Server

I successfully instantiate the %Stream.FileCharacter object. 'filestream' value is '1@%Stream.FileCharacter'. But when I debug the code, the step where I try to set the file name fails.

The port number for local host looks good for my current instance. I have tried a few variations, such as using the method FileNameSet(). But this did not work either.

0 10
0 664

I have an imported WSDL from SalesForce and I am trying to send a login-request to the SalesForce-servers via InterSystems. The login requires a username and a password in the body, and an organizationId in the header. I am having trouble filling the organizationId in the header.

Via SoapUI I can send a successfull message to the SalesForce-servers. The message should look like this:

0 4
0 3.1K

Hi -

I'm trying to follow the documentation, but I seem to end up in a circular reference, where the docs say "Login to TrakCare" to get access to the Layout Editor, with a link to "Logging Into TrakCare", and then that whole sections assumes that the account being used has been created, but doesn't seem to point to any means of actually creating the account in the first place.

Where is it described in the HealthShare Documentation, how to create a TrakCare login account?

0 1
0 1.7K