go to post Dmitry Maslennikov · May 16, 2017 I've relocated this two images from google drive storage to another one (to the same as for others pictures in this article), hope it helps.
go to post Dmitry Maslennikov · May 4, 2017 When you define UrlMap, you should remember, that Caché uses Regular expressions. So, you can just put (?i) before Url, to make regular expression case insensitive XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ] { <Routes> <Route Url="(?i)/user" Method="POST" Call="User"/> <Route Url="(?i)/emailactivation" Method="POST" Call="EmailActivation" /> <Route Url="(?i)/login" Method="POST" Call="Login"/> </Routes> }
go to post Dmitry Maslennikov · Apr 29, 2017 It is possible to get some errors depends on how long query in your URL. It is not a good idea to have such long values in a query. And such value should be escaped to be valid to place in URL. Instead much better to send data as a form in POST.
go to post Dmitry Maslennikov · Apr 26, 2017 Could you please edit your question and put correct source code.
go to post Dmitry Maslennikov · Apr 26, 2017 I would also recommend using ^GBLOCKCOPY tool, for interactive coping globals from one database to another.
go to post Dmitry Maslennikov · Apr 25, 2017 In my previous company, administrator used Veeam to backup Caché databases as well. And as I know it works well. It uses some scripts to call ExternalFreeze Caché before, and ExternalThaw after, just backup, without any checks. All Caché instances work on Windows.
go to post Dmitry Maslennikov · Apr 25, 2017 command WRITE, outputs $listbuild in binary format, if you would use ZWRITE, it would show you $lb I've just made variable from your output USER>zzdump val 0000: 02 01 04 01 61 61 04 01 4A 4A ....aa..JJ USER>zwrite val val=$lb("","aa","JJ") Just read the documentation and you will get everything needed to work with $listbuild
go to post Dmitry Maslennikov · Apr 24, 2017 Caché stores data from tables in globals in $listbuild format. So you can use $listget, to get value from the particluar column, but you should know number for your column.
go to post Dmitry Maslennikov · Apr 16, 2017 With Studio, you will have only one option, is to store sources from server's side. Any Studio plugin works in Caché, and this code could decide where to store code. But developers should also have access to the same folder. If you have authorization on your Caché server, it will be quite easy to split settings and storing sources on disk for every developer.But If you would choose Atelier, you should not care about it. Atelier all changes store on client's side. And no matter how many developers works on one server.
go to post Dmitry Maslennikov · Apr 15, 2017 How about to add basic authorization to WRC. Now it is not possible to download some distributive from WRC in one command in Linux. In first, you should send login and password as a form, save cookies after some redirects. And then it will be possible to download with this cookies. And this command looks so big. wget -qO /dev/null --keep-session-cookies --save-cookies /dev/stdout --post-data="UserName=$WRC_USERNAME&Password=$WRC_PASSWORD" 'https://login.intersystems.com/login/SSO.UI.Login.cls?referrer=https%253A//wrc.intersystems.com/wrc/login.csp' \ | wget -O - --load-cookies /dev/stdin "https://wrc.intersystems.com/wrc/WRC.StreamServer.cls?FILE=/wrc/distrib/$cache-lnxrhx64.tar.gz" \ | tar xvfzC - . I would expect to see a much easiest way. curl -u $WRC_USERNAME:$WRC_PASSWORD https://wrc.intersystems.com/wrc/WRC.StreamServer.cls\?FILE\=/wrc/distrib/$cache-lnxrhx64.tar.gz | tar xvfzC - . Is it possible to do it, or maybe you can recommend some other way? And also, will be good to get some API, where I could ask for link to latest version, or for some particular major version, e.g. 2017.1, and for particular platform. So, I could use it to download latest version.
go to post Dmitry Maslennikov · Apr 14, 2017 Looks like, do you use integration in Studio? It is a Java application, and as you class is so big, maybe it working so long, and you did not wait for the result.
go to post Dmitry Maslennikov · Apr 13, 2017 Have you looked at this project - COS-guidlines? How about to share your style guide? Your github looks so empty, yet, in public repositories.
go to post Dmitry Maslennikov · Apr 13, 2017 I would suggest also to use such a great tool as source code analyzer for COS, and it is the first ever for COS. You can look at the demo. This project is still in a progress, but anyway, can already help to prevent some bugs. And remember, that you can suggest adding some new rules, which you sure will be useful.
go to post Dmitry Maslennikov · Apr 11, 2017 Some of such configuration classes contains methods Modify and Get, it may help to easy modify configuration, in a few lines set props("DeepSeeEnabled")=1 set sc=##class(Security.Applications).Modify("/csp/myapp", .props)
go to post Dmitry Maslennikov · Apr 7, 2017 Look at the documentation Menu, Edit-> Find or Find in files
go to post Dmitry Maslennikov · Apr 3, 2017 Would be much better, if InterSystems will add OpenSearch to their documentation. And I think it will be enough only for the public version. And in this case, it will be supported in all modern browsers, without installation anything external. Something like this. <?xml version="1.0"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <ShortName>InterSystems docs latest</ShortName> <Description>InterSystems Ensemble Documentation latest Version</Description> <Url type="text/html" method="get" template="https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.SearchPageZen.cls?KEY=&KeyWord={searchTerms}"/> </OpenSearchDescription>