Job Neerav Verma · Aug 31, 2024

I am available to engage on projects as an Iris Healthcare Consultant, leveraging over 20 years of extensive experience in IT architecture with a special focus on Intersystems IRIS and Health Share solutions.

My expertise includes leading critical NHS projects in the UK as well as  building SaaS solution designed to enhance revenue cycle management and facilitate integration between hospitals and doctors in the US.

Certifications:

  • TOGAF 9 (The Open Group)
  • Certified Scrum Master (Scrum Alliance)
  • Azure Solutions Architect Expert (Microsoft)
  • Microsoft Azure Architect Technologies (AZ-300)
0
0 0
Question Neerav Verma · Aug 10, 2024

What is wrong in this snippet??

Its an iris lab so nothing so personal that someone can't use it

{

    "workbench.colorTheme": "InterSystems Default Dark Modern",

    "intersystems.servers": {        

        "irislab": {

            "webServer": {

                "scheme": "https",

                "host": "35.188.112.210",

                "port": 29363

            },

            "username": "tech",

            "password": "demo"

        }

    },

    "objectscript.conn": {

        "server": "irislab",

        "ns": "USER", // Add your namespace here (e.g., USER)

        "active": true

    }

}

0
0 0
Job Neerav Verma · Jul 16, 2021

Hello fellow community members,

I would like to offer my services as an Intersystems Professional and am available to work on projects. 

I have more than a decade experience into  Intersystems stack of technologies including IRIS, Ensemble, Healthshare, Healthconnect, Cache Objectscript, Mumps, Zen, Analytics etc. with companies spread over US and UK  involved in multiple domains.

0
0 263
Job Neerav Verma · Jan 27, 2021

Hello fellow community members,

I would like to offer my services as an Intersystems Professional and am available to work on projects. 

I have more than a decade experience into  Intersystems stack of technologies including IRIS, Ensemble, Healthshare, Healthconnect, Cache Objectscript, Mumps, Zen, Analytics etc. with companies spread over US and UK  involved in multiple domains.

0
0 474
Article Neerav Verma · Dec 24, 2020 1m read

There are couple of options to do this.

1. You can extend your class &JSON.Adaptor, it will do it for you with inbuilt logicaldtodisplay methods

2. Create another request class and do your transformations

3. Before calling the json convert to stream methods, transform the object's field with a ZDT.

---------------------------------------------------------------------------------------------------------------------------------------

I have an extremely simple example where there is a class with 3 properties

1
0 393
Discussion Neerav Verma · Jul 29, 2020

Hello All,

I have been using IRIS / Ensemble for over a decade and appreciate lot of it's functionalities and features, however besides having a UI of 80's era (which doesn't bother me), what I believe where IRIS is lacking is lack of out of the box connectors (services/operations).
If we look at IRIS's competitors for eg Mulesoft, Talend, Boomi they all have hundreds of pre-built connectors for major applications like Salesforce, SAP etc and cloud services like Azure, AWS etc to store and retrieve information and data.

Just to give an idea here is a link of Dell Boomi connectors

1
0 595
Announcement Neerav Verma · Feb 13, 2020

Class Queries in InterSystems IRIS (and Cache, Ensemble, HealthShare) is a useful tool that separates SQL queries from Object Script code. Basically, it works like this: suppose that you want to use the same SQL query with different arguments in several different places.In this case you can avoid code duplication by declaring the query body as a class query and then calling this query by name. 

They are declared as Query items in class definitions (similar to Method or Property) in the following way:

6
0 738
Question Neerav Verma · Jan 17, 2020

Hi All,

We have been using DeepSee which has been the integrated Analytic Dashboard built over Cache Cubes. It works fine but it's visual capabilities are limited and most probably is getting phased out.

If I am not wrong, Tableau is the suggested alternative to DeepSee . It is expensive and a big and considerable shift from existing technology

I wanted to get an opinion of the community as to these few key points
- What other BI tools others have been using with IRIS and what have been their experience
- For which tools are the best inbuilt support / api's avaialble in IRIS
-

10
0 652
Discussion Neerav Verma · Jan 16, 2020

Hi All,

We have few queries which are simple selects . For simplicity let's say there is a query that joins two tables and gets few columns and both tables have no indexes.

Select Tab1.Field1, Tab2.Field2
From Table1 Tab1
Join Table2 Tab2
On Tab2.FK = Tab1.PK
When we do query plan for this it shows approx 6 million,  however if we make a simple adjustment to the query

Select Tab1.Field1, Tab2.Field2
From Table1 Tab1
Join Table2 Tab2
On Tab2.FK = Tab1.PK
WHERE Tab1.Id > 0 (Which will always be the case)

5
0 345
Discussion Neerav Verma · Dec 19, 2019

HI,

I am planning to build a WebApp that will have tons of data to display in tables, ability to add comments on that table rows and may be some few more small features as we move on.

1. It has to be Secure

2. It has to be fast

3. It has to be Non CSP / Non Zen

4. Will have Cache DB to pull records from but should be flexible to do that from any odbc resource

5. Version 2018 Ensemble

My first step would have been to investigate different options for technologies that would make it work and best suited with Ensemble 2018

18
1 555
Question Neerav Verma · Dec 12, 2019

Hello All,

We need to develop a small csp application which shows data in simple paginated / searchable table for business users. 

It is to be built on an old version of Cache and is not a big full fledged application but something temporary.  We can't use Zen and using  a combination of csp & Bootstrap as bootstrap makes the pages look beautiful with little effort.

I have built the table in boostrap and it works fine with pagination and search working perfectly 

6
0 806
Question Neerav Verma · Nov 28, 2019

HI,

I have made a query with class definitions and all their properties and put them in a view.

All is good besides Parameters is showing junk characters. Is there a way to do it cleanly besides getting into the code??

SELECT 
CC.ID As CompiledClass, 
CC.SqlSchemaName,
CC.SqlTableName,
CP.Name As PropertyName, 
CP.SqlFieldName, 
CP.Type,
PD.Parameters

FROM %Dictionary.CompiledProperty CP
JOIN %Dictionary.CompiledClass CC
ON CP.Parent = CC.ID

JOIN %Dictionary.PropertyDefinition PD
ON PD.ID = CP.ID1

11
0 460
Article Neerav Verma · Sep 27, 2019 2m read

At least three different ways to process errors (status codes, exceptions, SQLCODE etc is given in ObjectScript. Most systems have status, but for a range of reasons exceptions are more convenient to manage. You spend some time translating between the various techniques dealing with legacy code. For reference, I use several of these excerpts. It is hoped that they will also support others.

2
5 2525
Announcement Neerav Verma · Jun 1, 2019

This Utility creates an xlsx file with the file name provided.
There are mutliple ways to write data to it, I am retrieving it via Sql queries in this example.

Include %occFileClass Utils.XLSX
{
ClassMethod DateTime() As %String [ CodeMode = expression ]
{
$TR($ZDateTime($H,3),"- :")
}

5
1 630
Question Neerav Verma · May 10, 2019

In our table, we have a column cities,  which has a filter which displays the cities of a state depending on the state

For simplicity let's assume we have a page

Property State As %String =  "CA"

Our filter should run this query to show all cities of state ca

"SELECT Name FROM City WHERE State= "_%page.State

<tablePane>

<column colName="City"
filterQuery="SELECT Name FROM City WHERE State= <This is where I am stuck>"
filterType="query"
header="City" 
width="10%">
</column>

I am not able to pass any parameter to filterQuery. 

9
0 528
Question Neerav Verma · Apr 12, 2019

Hello All,

There are few tools for SQL optimization available and even query builder has Show Plan to give us an estimation of the resources needed to execute.

For Methods - Is there anything similar ??

I would like to see a similar approach as to the time taken for method to execute.

Is Studio Debugger only option ??

2
0 414
Question Neerav Verma · Mar 26, 2019

Let's say we have a class 

AbcRequest extends Ens.Request, PropertiesBaseAbstractClass(has all my properties common to all request)

Prop1

Prop2 and so on

Now in my Business Operation 

I want to make a json dynamically from this request.

Yes obviously I can do is

Set requestDefinition = ##class(%Library.CompiledClass).%OpenId("MyCreateRequest")
Set JsonObject    = ##class(%DynamicObject).%New()        

3
0 417
Announcement Neerav Verma · Mar 15, 2019

Hello All,

I have been associated with Intersystems technologies for over a decade working on Cache, Zen, Ensemble etc.

This is a very niche field and a lovely community. I wanted to extend my hands to connect with people who are of same field or related to it.

Here is my linkedin profile. Pls feel free to send me an invite or drop me a message

https://www.linkedin.com/in/vneerav/

3
0 280
Question Neerav Verma · Mar 5, 2019

Just wondering an Insight in the difference between these two indexes

IdKey / PrimaryKey
================= 

Property Identifier As %Integer

Index Index1 on Identifier [Idkey]

Index Index2 on Identifier [PrimaryKey]

What's the difference?

1. If I don't have Index1 and only have Index2,  then cache does still make its own id.
So how and why  do I ever use the PrimaryKey.  In Joins ??

Table1.Identifier = Table2.Identifier instead of Table1.Id = Table2.id ??
But I can still use Table1.Id = Table2.Id as cache still made one ID field

So where is PrimaryKey useful in cache?

4
0 1191
Question Neerav Verma · Mar 2, 2019

Hi

Just curious to know about the pros and cons of Parent/Child Vs One/Many.

We do use a bit of both. 
One big reason we use Parent child is we feel if we delete one global, it gets rid of all child data too and all parent child data is stored in one global. Much easier to manage.

4
0 896
Announcement Neerav Verma · Feb 21, 2019

1. Define Persistent ClassCall utility class to fetch json via query.Class Test.JSONFromSQL Extends (%Persistent, %Populate){Property FirstName As %String(POPSPEC = "FirstName()");Property LastName As %String(POPSPEC = "LastName()");Property CountOfThings As %Integer(POPSPEC = "Integer()");ClassMethod OutputJSON() As %Status{If '..%ExistsId(1) Do ..Populate(100)Set sql="select FirstName, LastName, CountOfThings from Atmus_Web_Test.JSONFromSQL"Quit ##class(JSON.FromSQL).OutputJsonFromSQL(sql)}2. Utility ClassClass JSON.FromSQL Extends JSON.Base{ClassMethod OutputJsonFromSQL(sql,%parm...) As 

1
0 389
Question Neerav Verma · Feb 1, 2019

HI

-- We have our Pivot ready for some data for all accounts. And we want to now filter it by Account

[Account].[H1].Account.&[1]

It works fine at the pivot level and it filters the records. We save the pivot with no filter values as we want users to decide the Account they want to filter for

-Now If i save this pivot without a value of a filter , then obviously it has all records and I want to filter it at the Dashboard level on my page.

URL I am passing

......dashboard&amp;SETTINGS=FILTER:[Account].[H1].[Account].&amp;[1]&amp;NOTITLE=1

2
0 288
Question Neerav Verma · Jan 4, 2019

I am just curious if someone has used this service to send Alert emails through AWS / Ensemble

I have verified 2 email ids - One to send. One to receive

Have also configured an access key for the email smtp server and added the credential to ensemble

but I get this error

ERROR #6033: Error response to SMTP MAIL FROM: 530 Authentication required.

email-smtp.us-east-1.amazonaws.com

25

So my first opinion is the authentication is not happening via the credentials settings. It needs to be passed in a different way

If anyone has done it before. Do let me know

It's Ok I figured it out.

4
0 1107