Question Eduard Lebedyuk · Jun 19, 2018

I have iKnow domain with 1 source, 1 data and 1 metadata fields. Source is a table.

Let's say individual rows are immutable, but new rows are added after the domain is built.

How do I add them to domain?

In  %SYSTEM.iKnow class IndexTable method is available:

classmethod IndexTable(pDomainName As %String, pTableName As %String, pIdField As %String, pGroupField As %String, pDataField As %String, pMetaFields As %List = "", pWhereClause As %String = "", pConfig As %String = "") as %Status

Assuming I have a table App.

1
0 446
Question dani torres · Jun 18, 2018

Hi, Community!

I am trying to create a business service that takes a csv through a FTP server and pass it to a business process.  So,  I have created a registration map for the CSV file and the business service which extends from the EnsLib.RecordMap.Service.FTPService .  When I try to configure the business service in the FilePath section I enter the FTP server path and it connects without problems,  the problem appears when I assign the ArchivePath path, which is also inside the server. When I do that, I get an error which says that the pathway doesn't exists.

2
0 283
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 David Crawford · Jun 14, 2018

As part of our security standards, we can't have our applications saving our credentials. For Atelier, this means our server connections. Is there a way to stop this by saving the connection parameters, but prompting for credentials on each run? Or is there another way?

Thank you

6
0 750
Announcement James Schultz · Jun 14, 2018

Hi Community!

Come join us on Developer Week in NYC on 18-20 of June!

InterSystems has signed on for a high-level sponsorship and exhibitor space at this year's DeveloperWeek, billed as "New York City’s Largest Developer Conference & Expo". This is the first time we have participated in the event that organizers expect will draw more than 3,000 developers  from 18th to 20th June.

2
0 436
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 349
Question Roger de Coninck · Jun 12, 2018

Hello,

I want to convert a json, which passed on in the a REST call, into a request message. 

I use method %ConvertJSONToObject of the %ZEN.Auxiliary.altJSONProvider class.

Set sc = ##class(%ZEN.Auxiliary.altJSONProvider).%ConvertJSONToObject(%request.Content, "TestRequest", .request)

Is there an alternative for this? I want to avoid to use the %ZEN library.

Best Regards

Roger de Coninck

8
0 773
Question Eduard Lebedyuk · Jun 18, 2018

I have iKnow domain of forum posts, their full text is an iKnow data, and each post also has a number of views as a metadata field.

I want to get a sum of views by concept. Let's say I have a concept called "TESTEST" and there are 10 sources that have this concept. Each source has some views. I want to get views total - impact of this concept so to say.

What's the best iKnow architecture for this use case?

So far I got this:

ClassMethod Views(id As %Integer) As %Integer
{
    #dim domainid As %Integer = .#DomainId
    #dim sourceid As %String = ##class(%iKnow.Queries.
1
0 453
Question Confused Developer · Aug 3, 2017

Hi,

While accessing Trakcare in IE 11 i am getting error:

The Trakcare Layout Editor is not functioning.Please check your browser security setting for scripts and ActiveX controls.You must have ensemble installed locally to use this application.

2
0 1507
Question Eduard Lebedyuk · Jun 13, 2018

I have an iKnow domain and a blacklist called Ads.

I want to get all sources that do not contain entities from Ads list.

Currently I'm doing it like this:

ClassMethod NoAds()
{
    #dim domainid As %Integer = 1
    
    set filterNot = ##class(%iKnow.Filters.GroupFilter).%New(domainid,, $$$YES)
    #dim blackListId As %Integer = ##class(%iKnow.Utils.MaintenanceAPI).GetBlackListId(domainid, "Ads")
    set sc = ##class(%iKnow.Utils.MaintenanceAPI).GetBlackListElements(.blackList,.#DomainId, blackListId)
    set filterAds = ##class(%iKnow.Filters.ContainsEntityFilter).
2
0 523
Question Eduard Lebedyuk · Jun 18, 2018

Let's say I have a user-generated document template with placeholders and I want to replace them with actual values.

Values could be:

  • scalars
  • tables
  • ...?

So far I wrote a simple find/replace tool that works with RTF format (because it's not a binary format), here's how it works:

set template = "D:\Cache\RTF\template.rtf"
set var("%title") = "Hello"
set var("%table") = $lb("Utils.RTF", "TestFunc")
set result = "D:\Cache\RTF\out.rtf"
set sc = ##class(Utils.RTF).
2
0 446
Question Pilar Guerrero · Jun 18, 2018

Hello,

I need to access the value of a setting I created (ex: name_BO) within the logic of my BP.

Property name_BO As %String(MAXLEN = "");

/// Additional Settings 
Parameter SETTINGS = "name_BO:Basic:selector?context={Ens.ContextSearch/ProductionItems?targets=1&productionName=@productionId}";

But the class is common and the production item names will change.

Example -> Class name: My.BP.Common

Items in the production:

Item 1:

  • name: My.BP.AA
  • use the class My.BP.Common
  • value of setting name_BO : My.BO.AA


Item 2:

  • name: My.BP.BB 
  • use the class My.BP.Common
  • value of setting name_BO : My.BO.BB

Where My.

1
1 597
Article Tani Frankel · Mar 29, 2016 2m read

Question:

How can I get a value of a setting of a Production item programmatically?

Answer:

You can use one of the API methods of the Ens.Director class, for example:

Ens.Director:GetItemSettingValue()

For example –

In the Production Demo.Workflow.Production the item (Business Operation) 'Demo-Development' has an 'Auto Create Role' setting:

Clicking on the Settings Defaults button you can see this is a 'Host' setting:

And you can access the value using this call for example:

ENSDEMO>write ##class(Ens.Director).GetItemSettingValue("Demo-Development","Host","AutoCreateRole",.
10
2 2538
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 764
Question Jason Parker · Jun 17, 2018

Hello,

If this question is in the wrong section, I apologise.

Has anyone ever used Cache Object Script to connect to any hardware such as a sensor?

What I mean is this :-

Lets assume that code has been written in Cache Object Script where it can detect breaks in electrical connections.

2
0 332
Question Lewis Greitzer · Jun 14, 2018

I've set up a Ens.Alert routing rule and would like to route alerts to different email groups based on business partner or alert group instead of relying on source config using Document.SourceConfigName. Is there a way to reference the business partner or alert group property in a routing rule?

5
0 667
Question Roberto Cahanap · Jun 14, 2018

We are updating from 2015.1.1 to  2017.2. I am testing the Hot JVM functionality to see if our current functionality is working in the new version of 2017.

I am having a problem trying to make it "fail".

Generally if I put in an invalid renderport then I usually get an error. Now if I put in an invalid renderport it generates the PDF anyway (FOP).

Was there a change where if it fails using the renderserver then it will create a new instance of Java to produce the PDF?

3
0 372
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.

3
0 1305
Article Daniel Kutac · Jun 14, 2018 1m read

I was approached recently by and end use who wanted to perform analysis of their databases and see how they could save some space by picking data good for deletion without harming the application. As part of investigation, they wanted to know sizes of globals within datasets. This can be achieved by various means but all of them provide data in text form only.

I thought I might be a good tool for database administrators in general - to see global sizes in a graphical way.

1
0 422
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 521
Question Ruslan K · Jun 14, 2018

Is there a way to add event listener for a zen control?

I have a custom text control and I want to add 'change' event listener for it.

Is it possible to do not using 'onchange' property? 

3
0 497
Article Mark Bolinsky · Mar 18, 2016 9m read

++ Update: August 1, 2018

The use of the InterSystems Virtual IP (VIP) address built-in to Caché database mirroring has certain limitations. In particular, it can only be used when mirror members reside the same network subnet. When multiple data centers are used, network subnets are not often “stretched” beyond the physical data center due to added network complexity (more detailed discussion here). For similar reasons, Virtual IP is often not usable when the database is hosted in the cloud.

Network traffic management appliances such as load balancers (physical or virtual) can be used to achieve the same level of transparency, presenting a single address to the client applications or devices. The network traffic manager automatically redirects clients to the current mirror primary’s real IP address. The automation is intended to meet the needs of both HA failover and DR promotion following a disaster. 

12
6 6987
Question Thiago Zenaro · Jun 12, 2018

Hi community!
Is there any way to create new method keywords?
For example:

ClassMethod TestOne() [ MyKeyword = MyValue ]
{
    // Implementation
}

Another doubt (maybe another topic)
How can I generate new methods at compilation time for the same class?
I tried method generators, but It only gets compiled when I compile for the second time.
I also read this comment but I could not find out how to generate the methods and get them compiled in the first compilation.

For example:

Class util.
13
0 660