Hi Everyone!

New video, recorded by @Benjamin De Boe, is already on InterSystems Developers YouTube:

Scaling Fluidly with InterSystems IRIS

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

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

Hi Developers!

InterSystems Developers Community today unites more than 7,000 developers from all over the world. Since 2016, our community has been growing and improving for you, our dear developers!

Together we've done a lot over these years, and much more is planned for the future!

So, who makes our community better every day? Who tries for all of us and improves the space for developers?

Let's warmly greet our team:

10 7
1 663

Hi Community!

Sometimes I meet a method which accepts 10+ parameters.

And often I need only the 8th parameter to pass. And I call the method something like:

do ##class(Some.Feature).Method(,,,,,,,"flag")

And I don't like this method when I call it like this cause, you know, often I just miss the number of commas and raise some other flag I wanted.

How do you avoid this situations?

If you meet such a code, how do you call it and sure that you didn't miss the number of ","?

What is a good number of parameters in a method and f you need to pass more parameters in a method what do you do?

3 27
1 1.5K
Question
· Aug 27, 2019
Tools to find a class

Good morning,
I'm working with a persistent data class and need to know which classes are evoquing it.
Is there a tool in the system to do it, similar to use the F12 key to follow a class?

0 2
0 202

I am trying out Atelier. I have installed it and managed to get it to connect to a cache instance to test it. I have created a local project and I am trying to copy the server files to it using the "Copy to Project" item on the popup menus. I can copy both classes and routines to the project without issue, but when I try to copy the CSP files, I get the following message:

com.intersystems.atelier.utils.CheckedExceptionWrapper: Input length = 1

0 3
0 229
Announcement
· Aug 26, 2019
Learning News: August 2019

Now available from InterSystems Learning Services: the August 2019 newsletter!

See what's going on with Learning Services at the Global Summit, including:

  • Achieve certification in one or more subjects

  • Dive into InterSystems IRIS™ on your own machine

  • Attend a Personal Training session to get your questions answers

  • Optimize your training plan for yourself or members of your team

  • Get steep discounts on classroom courses

0 0
0 183
Question
· Feb 28, 2016
Mocking tools for Unit Testing

Hello everyone!

Does anyone know of a library that can be used to create Mock objects for Objectscript classes?

Right now, my team has been building mock objects by hand to help circumvent dependencies when writing and executing unit tests, but I always wondered if someone had ever created a Mock library like Mockito to help quicken the process.

Thanks!

3 4
0 919
Question
· Oct 2, 2018
Terminal Access Denied

HI,

I have been using evaluation version of Cache 2017.2, it was working fine and I was using Cache studio, SMP & Cache Terminal/console till yesterday.

Today, cache was in shutdown status, then I restarted. But, Cache terminal is not working and showing as Access Denied while otherthings like studio and SMP is working as expected. I checked all security level services on SMP, all are fine and enabled.

Can anyone help me to diagnose the problem and make it working.

Thanks.

0 9
0 1.7K
Question
· Aug 13, 2019
Dashboard - Line Graph

Hello,

I want to create a dashboard with a line graph that shows system availability over time. I used this code to create a Dashboard:

            Set tItem = ##class(%DeepSee.UserLibrary.Link).%New()
                Set tItem.fullName = "Availability"
                Set tPage = "Availability.UI.CSVImport.zen"
                Set tItem.href = $system.CSP.GetPortalApp($namespace,tPage)_tPage
                Set tItem.title = "Availability"
                Set tSC = tItem.%Save()
0 7
0 291

EDIT: This article has been updated with up-to-date information about the Port project, which now includes a tutorial for basic usage.

The Port project is something that I've introduced more than two years ago but I hadn't enough room to elaborate a tutorial on how to use it till now.


First, the motivation:

5 5
2 650

The .NET Core Identity model has an IPasswordHasher<> interface for for

  • Hashing a password so that it can be stored in a database
  • Verifying a provided plain-text password matches a previously stored hash.

I am getting invalid password errors during the login process when the .NET Core Identity model computes a hash from a plain text input and compares it to a password hash value I've returned from Caché. The default hashing algorithm is PBKDF2 with HMAC-SHA256, 128-bit salt, 256-bit subkey, and 10,000 iterations (detailed article on .NET Core Identity PasswordHasher). The algorithm Caché uses is probably different which may be why I am getting errors.

0 6
1 2.2K

Our team is reworking an application to use REST services that use the same database as our current ZEN application. One of the new REST endpoints uses a query that ran very slowly when first implemented. After some analysis, we found that an index on one of the fields in the table greatly improved performance (a query that took 35 seconds was now taking a fraction of a second).

3 4
0 423

(Originally posted by @Ben Spead on June 25, 2014)

This code snippet generates a list of Ensemble Lookup Tables and Schema documents in the user's current namespace. Run the code by running the class method "test":


Class benspead.EnsTablesSchema
{
    classmethod test() {
        If ##class(%Dictionary.CompiledClass).%ExistsId("Ens.Util.LookupTableDocument") {
            // only supported in Ensemble 2012.1+
            Write !,!,"Exporting Ensemble Lookup Tables..."
            Set sc = $$$OK
            Set rs = ##class(%ResultSet).%New("Ens.Util.LookupTableDocument:List")
            Do rs.Execute()
            While rs.Next() {
                Set item=rs.Data("name")
                Write "document found: "_ item,!
            }
            Do rs.Close()
            Set rs=""
        }
        If ##class(%Dictionary.CompiledClass).%ExistsId("EnsLib.HL7.SchemaDocument") {
            Write !,!,"Exporting Ensemble HL7 Schemas..."
            Set sc = $$$OK
            Set rs = ##class(%ResultSet).%New("EnsLib.HL7.SchemaDocument:List")
            Do rs.Execute()
            While rs.Next() {
                Set item=rs.Data("name")
                Continue:$listfind($lb("2.1.HL7","2.2.HL7","2.3.HL7","2.4.HL7","2.5.HL7","2.6.HL7","2.7.HL7","2.3.1.HL7","2.5.1.HL7","2.7.1.HL7","ITK.HL7")
                                    ,item)
                Write "document found: "_ item,!
            }
            Do rs.Close()
            Set rs=""
        }
    }
}

Here's a link to the code on GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/...

1 3
0 786
Announcement
· Aug 23, 2019
New Video: Globals Quickstart

Hi Community!

Enjoy watching the new video on InterSystems Developers YouTube, recorded by @Joel Solon, InterSystems Senior Technical Trainer:

Globals Quickstart

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

2 0
0 483