(Possibly?) little-known fact: It's possible to use $ListBuild on the left hand side of the equals sign in a set command to extract multiple list values at once:
set $ListBuild(several,individual,variables) = list
I'm posting this for the benefit of others. Not often one changes certificates in Cache, at least in my case. I run a system, that uses certificates to encrypt SOAP messages, and since the last time I ran it, my certificates expired.
So I renewed them using our PKI tool, so far so good. I gave all (3) certificates the same names (and filenames too) as to those expired, thinking that everything would just work fine next time I call the SOAP service.
I've been using iFind indices in one of my applications but this morning discovered that the index is missing data. I confirmed the issue also exists in our test environment and rebuilt the indices there. That seems to have fixed the immediate problem. However I'd like to understand how this came about to avoid it happening in the future.
Has anyone encountered this before and know the cause?
I installed Atelier on Windows in order to take a look at how the BPL and DTL graphical editors accessible via the "Open diagram editor" action work. The diagram editor is opened but I get the following error:
Message from webpage --------------------------- Unable to load SVG diagram. Please ensure your browser is supported for portal access.
It looks like Atelier uses IE in order to display the editor even though my Windows default browser is Chrome.
I followed the Documentation instructions to install Caché on my Linux box and it seems to be running fine except when I try to modify the configuration. I keep getting errors that a previous cache.cpf file (e.g., cache.cpf_8503) cannot be opened. Is my Linux "user who owns instance" account deficient in Linux permissions?
There is a question for Ensemble on Stackoverflow:
I have the below dtl. In the foreach loop, I am just copying the same code in another part under anif condition. How can I avoid this redundancy? Can I reuse using sub transformation?
Good afternoon, I have image files stored on disk. I would like to display those images in an <image> control as the end user clicks on rows in a tablepane. I already do this with image data stored in a cache database:
s imageComp = %page.%GetComponentById("ImgTab"_tLdCnt) s imageComp.disabled=0 s tId=rsId.Get("ID") s tPageObj=##class(My.PageObj).%OpenId(tId) s oid=tPageObj.ImageBLOB.%Oid() s encryptedOid=..Encrypt(oid) s imageComp.src="%25CSP.StreamServer.cls?STREAMOID="_encryptedOid
Hi this is my first post, so a little about my background. I've been programming in PHP/JavaScript for about 10 years. I've got quite a bit of knowledge surrounding object orientated programming and know the basics.
Last year I looked into the Mirth integration engine and did some work around that.
I've now moved jobs and I'm doing some work (surprise, surprise) with Ensemble.
Is is possible in Atelier to open a macro declaration? Using the context menu results in a "Current text selection does not resolve to a Script element" error in the status area at bottom of window.
Also the arguments for the macro are not shown on hover.
Doesn't seem to matter if the associated include file is added to the project.
It looks like the normal usage of calling an Ensemble based Web Service via Ensemble is to create an Ensemble Business service that inherits from EnsLib.SOAP.Service which is then used to call a business operation which inherits from EnsLib.SOAP.Operation and the SOAP Outbound Adapter which can be generated via the SOAP wizard.
I tried logging into https://beta.learning.intersystems.com to view a video. My browser auto filled the login form. The username, the same one I use here and on many other ISC sites, is "sbeeson_MHCX". Now I have a message that says "Only lowercase letters allowed" and any time I visit the login form it just shows the same message. I cannot get back to the form.
I could obviously use an incognito window or clear my cache, but this needs to be fixed.
The following situation always catches out new Ensemble users, and is likely to continue doing this until it is addressed..
A business operation, service or other host that is configured with a dedicated # of actors, (ie, not using the actor pool) runs with the version of compiled code that existed when the host was started. This code is loaded in memory.
In my project, I am calling a store proc on third party database. I am using SQL Gateway and ODBC. Everything is working fine until the store proc changed. In store proc they have changed the return alias name for a column. In Ensemble Snapshot I am not seeing the modified alias name until I restarted the whole Healthshare instance.
Here is my question, is there any other way? We do not want to take the instance down if it happens after we go live.
Heretofore is announced a new project which aims at providing a usable library for both running unit tests and collecting code coverage information at the same time:
I have a Cache classes with %TimeStamp (e.g. 2016-04-18 12:29:11) and %Date (eg. 64027) properties. And I have a javascript client app, which needs full CRUD over this properties.
But in javascript date/time are defined by ISO8601 (e.g. timestamp 2016-04-18T12:29:11Z, date 2016-04-18).
We are trying to create a simple class extending %RegisteredObject that could be used as a singleton. However we are not able to store it in a global to later be retrieved (by the same process but elsewhere in the code).
MessagePack is a binary-based efficient object serialization library. It enables to exchange structured objects between many languages like JSON. But unlike JSON, it is very fast and small.
For CachéQuality I'd love to be able to create issues when the programmer uses classes which are deprecated for this or that version of Caché... But short of reading all the changelogs of all versions, I can't really tell when a command appeared (for instance RETURN; I know now that it appeared in 2014.x, but it took me some time to realize that), or when a (set of) class(es) became deprecated (for instance %GlobalCharacterStream to be replaced with %Stream.GlobalCharacter -- I don't even know since which version this is true :/).