#Object Data Model

4 Followers · 498 Posts

An object data model is that data or code is composed of modules that combine data and procedures that work on the data.

Learn more.

Question Minsu Kim · Jul 4, 2018

Hello Global masters,

I have some question about How can I connect C# to Cache Object without VisM?

I am always using VisM when I want to connect C# to Cache Object becouse I learn it from my co-worker .

but When I asked something in here about Cache Object and someone worte "don't use VisM because it is old thing" like that.

So I want to know about that

Thank you

Minsu.

1
0 418
Question Thembelani Mlalazi · Jun 22, 2018

I have a service that takes a file and pass it through to the production .While I am passing the file through I get the file stream and set it to a variable within my message and the variable is of type %Ens.StreamContainer. But after all processing and I need to write out my file to a pdf format The file gets written but is a corrupt file since I can not read it I have tried this with asimple pass through everything is fine .But here I do not know what I am doing wrong here is the operation code

11
0 994
Question Virginia Rogers · Jun 26, 2018

Hello,

I need to add a new property ("Injection") to an existing database.  The existing database contains, in part:

An "ImageStudy" which contains one or more "ImageFiles"  defined as follows:

Class PET.ImageStudy Extends (%Persistent) 
{
Relationship ImageFiles as PET.ImageFile [cardinality=children,inverse=Study]
...
}
Class PET.ImageFile Extends (%Persistent)
Relationship Study as PET.ImageStudy [cardinality=parent,inverse=ImagFiles]
...
}
7
0 592
Question Mike Dawson · Jun 26, 2018

I have a class thus:-

Class RMH.ClinDoc.Response.GetEPRDisplayResponse Extends Ens.Response [ProcedureBlock]

{

Property GetEPRDisplayResult As %XML.String;

}

The property GetEPRDisplayResult  contains  html content.

When I write out the property in a terminal,  all the html special character content is encoded e.g. '<' is &lt;  '>' is &gt ; etc....

I want to display this html in a browser and have it render as normal.

So my question is how to I store html content in a cache object such that it renders correctly in a browser?

3
0 826
Question David Sterngast · Jun 20, 2018

When I down load a file using a csp page, the application  shows  the percentage as  37 %, 74 %, and 100 %.    I am trying to make changes to the application that it shows one percentage after each read.  The first time it reads, it would display 37%.   The next run would replace

37 %  with 74 % and so on until it completes its download.   I have tried adding javascript code to the application  however it doesn't work.   For example when I enter &js('alert');, the application displays it value on the screen.  Also, I tryed putting it between two scripts tags and it doesn't work.

4
0 1410
Question Nicky Zhu · Jun 22, 2018

Hi folks,

One of my clients want to project a null property of a cache object to an empty XML element. Say, if we have a class:

Class Diabetes.BS.Message.LabReportMessage Extends Ens.Request
{

Property Report As %String;

Property IsRisky As %Boolean;

Property RiskValue As %String ;

}

If the instance of this class has a null RiskValue, after projection, they want the XML as following:

<LabReportMessage>
                <Report>Somestring</Report>
                <IsRisky>1</IsRisky>
                <RiskValue/>
 </LabReportMessage>

Is there any way we can do it? Thanks.

1
0 978
Question Stephen Wilson · Jun 19, 2018

In Studio, you can open the inspector and view the SQL Storage Map on %Persistent classes. Can you do this in Atelier or do you have to read the XML text? If it doesn't currently exist, are there plans to include it? The inability to perform certain functions in Atelier that can be done in Studio can be a 'point of conflict' when asking/forcing/encouraging developers to move to Atelier.

2
0 421
Question Ben Spead · Jun 19, 2018

1) I have an oref pointing to an object on disk

2) I save the object which causes an UPDATE / AFTER Trigger to fire, and updates a value in an embedded object property

3)  I would like to see that new embedded property value in my in-memory object (for unit testing)

Is there a way to do this via a method call?  Or do I need to close the object and re-open it to see the updated value?

Thanks!

Ben

1
0 344
Question Ben Spead · Jun 12, 2018

I have a serial object:

Class EmbedObj Extends %SerialObject

which is stored as a  property of another object

Class ContainerObj Extends %Persistent

Property InnerObj As EmbedObj;

Property Foobar As %String;

Question:

From within the context of an instance of EmbedObj, how can I navigate to the containing instance of "ContainterObj" and find that value of its Foobar property?

Harder Question:  Is there a way I can do this as part of SQLComputeCode? (my EmbedObj has a Calculated property which now needs to depend on the value of property Foobar of the containing object).

8
0 759
Question Alex Kogan · Jun 14, 2018

Hello All,

I hope it's not a silly question. 

Here is my issue:
I have 3 simple classes:

Parent class, let's say:

Class ParentClass Extends %RegisteredObject
{
 Property a As %String;
}
 
and two children classes
Class A.Child Extends ParentClass
{
Property b As %String;
}

Class B.Child Extends ParentClass
{
Property c As %String;
}

So no issues - all compiles and seem to work.

But, when I add %XML.Adaptor to my parent class, so:

Class ParentClass Extends (%RegisteredObject, %XML.Adaptor)
{
 Property a As %String;

3
0 1291
Question Scott Roth · Jun 14, 2018

I have several stored procedures that when I execute them they will only return a single snapshot. In my BP I have been setting this to a Snapshot variable then looping using a WHILE through the snapshot variable just to get that single value.

Since it is only a single row, is there an easier way where I don't have to do a WHILE loop to pull the values out of that row? Can I call First Row or something like that to get me just the row into the Snapshot variable?

1
0 513
Question p rd · May 29, 2018

I want to generate one of the following xml data, but after I generate only de="", after I need to generate is de="DEX71.41.009.01"

//// result:
<OPTREGISTER>
      <THBZ de="DEX71.41.007.01" display=""></THBZ>
      <GHFS de="DEX71.41.008.01" display=""></GHFS>
      <GHF de="DEX71.41.009.01"></GHF>
      <ZLF de="DEX71.41.009.01"></ZLF>
      <QTF de="DEX71.41.009.01"></QTF>
      <WDBZ de="DEX71.41.010.01" display=""></WDBZ>
      <GHKSDM de="DE08.10.025.00" display=""></GHKSDM>
</OPTREGISTER>

The classes I use are as follows:

2
0 406
Question Scott Roth · May 29, 2018

I have a vendor that is sending me an Abbreviation in FT1:16.4.2 that I need to look up against a table to find the correct ID for.

FT1|1|||20180523161501|20180523161503|CG|1906551^Lipid Profile|||1||||||^^^ LAB&06CL|||Z00.00||00410^Knerr^Joel||721410||30100001^Lipid Profile|

But in my Business Process when I refer to request.GetValueAt("FT1:16.4.2") its not recognizing that this field contains information. Is my syntax wrong?

5
0 947
Question Thembelani Mlalazi · May 18, 2018

I have a csv record mapper that reads in a batch and my batch has a header and trailer that changes all the time but it is of fixed length so I override the Get Batch Header method from the simplebatch class to something like below but my problem is when the batch is read in It still tries to bring in another empty batch like the picture below any reason why that is here is my code.The red code is the changes made. After several  trace logs it is being called twice first time with the batch [1] and[5]is the second call how can I stop that from happening

5
1 538
Question Eduard Lebedyuk · May 22, 2018

The code I'm researching loosely follows this flow:

  1. My first callback
  2. Black box
  3. My second callback

I can modify 1 and 3 no problem but modifying 2 is difficult.

However I think that step 2 has some optimization problems, namely:

  • instantiates lots of objects
  • throws/catches lots of exceptions (not logged)

Is there a way to count these two metrics?

3
0 318
Question Bharathsimha Reddy Jakka · May 21, 2018

Routing Rule Usage -

Can we use Functions and Methods with multiple parameters and refer objects by reference as parameters inside Routing rule ?

How do we handle DB related workflows in Business Rules ?
How can we perform Response object based handling in Business Rules ?
Can we try by extending methods with Ens.Util.FunctionSet and pass in the Context object from the rule as a parameter for certain functions ? 
Can we split the Business Operations into methods that can be used from the routing rules and create the message route request flow ?

1
0 581
Question Scott Roth · May 10, 2018

Is it possible to produce a .json format using Ensemble 2015.2.2? Not sure what the trigger will be as of yet, but we have our local Department of Health trying to develop a reporting piece using .json. 

Not sure how this will work with our Ensemble instance not being in the DMZ to send outside our network, but I thought I would ask anyway to see if it is possible.

Thanks

Scott Roth

2
0 409
Question Alexey Maslov · May 7, 2018

During programmatic classes compilation performed by the code like this:

set status=$system.OBJ.Load(updaterFile,"cruk-d",,.resList)

strange messages appear in console log, e.g.

05/06/18-15:54:12:424 (308512) 0 oops: was expecting crc 0x21e96e85,5a4c8b2c for rtn (Update.Import.1) rbufnum-15523
...
05/06/18-16:17:45:305 (4224) 0 oops: was expecting crc 0x21e96e85,5a4c8b2c for rtn (Update.Import.1) rbufnum-15523
05/06/18-16:22:30:485 (4224) 0 oops: was expecting crc 0x21e96e85,5a4c8b2c for rtn (Update.Import.1) rbufnum-15523...(repeated 3 times)
12
0 741
Question Thiago Zenaro · May 3, 2018

Hi community.

I want to create a custom list inheriting %ListOfDatatypes in order to implement some methods like Map, Filter, ForEach, but I have some questions.
Just to mention, I have already read the topic about DeclarativeCOS.

When I define a property like following, caché uses %Collection.ListOfDT or %Collection.ListOfObj, as it's shown in the documentation

Property TestListString As list Of %String;

http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GOBJ_propcoll#GOBJ_propcoll_def.

1
0 771
Question Bob Felbol · Apr 20, 2018

Hi

Made a request for API REST.

Using HTTP Request adapter.

Adapter As EnsLib.HTTP.OutboundAdapter

Outside the Ensemble an API response is JSON (CORRECT)

Answer in Ensemble: =?Á
Â0 
?_eä,cÒ
'=
*^<YÙF¡í$í¼ÈÞÝt 
oÉ÷ý$?|
¤1¡{Dâhà°Ý?Öù)2ós??R?¸¼?ºd?$,ñD+»??

ÔºQZéýNÕ V{C?óò?b¢?éÍ )$ 
²5Å?wEë? ??©tÖã1z×2FëÊnôeË æ??]Zßq ܺ?á

Help me.

Thank you

8
0 588
Question Stephen Wilson · Apr 19, 2018

Does developing a RESTful API in Caché remove the requirement to use the InterSystems.Data.CacheClient.dll and generate proxy classes using the Caché Object Binding Wizard for .NET web development? If anyone has links to sample applications using .NET with Caché and REST Services, I would be grateful if you could share them.

4
0 622
Question Bharathsimha Reddy Jakka · Apr 18, 2018

How to convert SQL persistent classes to JSON output - I have tried 1 option but appears to be very lengthy process.

I have many other SQL storage's defined and have to expose them as well to JSON. Can anyone please suggest a better approach.

My column names usually match with my Json properties.

My User.TestClass is the class with GetJsonList() as my method to return /output JSON formatted data.

The Code tried and SQL storage structure are as follows -

3
0 1175