go to post Stefan Wittmann · May 9, 2016 I would like to add that $zf(-3) and $zf(-4,1) calls can only be used to load what we call a callout library. This is a specific DLL that properly exports functions during linking and exposes them in a ZFENTRY table. You can find more material about the callout gateway in this part of the documentation:http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...If you want to work with a specific DLL that is not a callout library, you have to wrap the library, e.g. in a Java jar library or a callout DLL and then call out from Caché Object Script.The project Evgeny mentioned may be of help as well.
go to post Stefan Wittmann · May 4, 2016 The navbar is not correctly initialized if it is the only content on the page as it is sized based on parent containers and siblings.Just wrap it in a div, or a grid system and it will render correctly. You have to do that anyway if you want to add more elements to the page.
go to post Stefan Wittmann · May 3, 2016 Thanks, I did not recognize the changes. Probably because my eyes are trained to spot code that should not be there in the first place.
go to post Stefan Wittmann · Apr 19, 2016 Hm, interesting. So what this basically means is that the 404 page gets cached when a URL is requested and it is not available. Re-enabling the REST application does not clear that cache and that is the reason why the REST application does not work for the URLs that have the 404 cached when it's enabled again.Automatically clearing the cache for a REST application is not trivial, as it does not translate to a single URL. I will check back with the developers and see what we can do about this.
go to post Stefan Wittmann · Apr 19, 2016 Not in the near-term. We are using a highly optimized in-memory and on-disk structure for our JSON support and the document data model. Providing more features and adding more optimizations to this structure stays a priority.Our model allows us to support other serialization formats as well and we have some hooks in place we plan to leverage in the future. MessagePack and other serializations are on the tentative list for this, but nothing is carved in stone at the moment.Do you have a specific use case where MessagePack is a requirement?
go to post Stefan Wittmann · Apr 15, 2016 As the others, I am trying to guess what you mean when you say organizing code. I can think if source control, project organization and auto code formatting.If you get more specific we can provide a better answer. If you are not aware of Atelier, our new Eclipse-based IDE, take a look at the session recording from Global Summit 2016:https://beta.learning.intersystems.com/mod/page/view.php?id=212
go to post Stefan Wittmann · Apr 7, 2016 I am not sure if this helps, but I want to mention that Ensemble comes with an option to export all classes and routines that are required to run an Ensemble production. At least, all dependencies Ensemble can resolve.You can find the related documentation here:http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...Maybe you can take a look at the code behind the scenes, or analyze the output of such an export.
go to post Stefan Wittmann · Mar 18, 2016 The error means that the version of your Java runtime is too old. For more information on this error, please see a related stackoverflow thread:http://stackoverflow.com/questions/10382929/how-to-fix-unsupported-major...Recent versions of Caché and Ensemble only support Java 7 and 8, as Java 6 has reached end-of-life and has multiple security flaws.Upgrade your Java runtime to 7 or 8 and the error will go away.
go to post Stefan Wittmann · Mar 8, 2016 Hi Benjamin,regarding your questions:1) String concatenation is possible with the underscore "_" character. For example:set myquery = "SELECT * FROM " _ tableNameDon't use the plus "+" character as this is the addition operator. It will evaluate your string and convert it into a number. Unless your string starts with a number, it will be evaluated to 0. 2) Multiline statements are not supported in Caché Object Script, so you have to concatenate your string if you want to spread the query on multiple lines.HTH,Stefan
go to post Stefan Wittmann · Feb 17, 2016 Thanks Eduard for posting the working solution. The reason why this works is that you actually create an object of your registered class and assign the values. The jsonProvider API can now walk the object and project the types properly.In the non-working example, you created a zenProxyObject and assigned the values on your own. The zenProxyObject just deals with auto-types and guesses the best possible type fit. As you see, this guess can't be correct all the time as in this case.If you want to create a JSON structure with specific types, either use a) the new JSON support in 2016.1 (recommended if 2016.1 is available) or b) create a subclass from %RegisteredObject and use the jsonProvider API.