Article Alexander Koblov · Jul 1, 2019 2m read Transaction suspencion It’s often useful to make changes inside the current transaction, that would not be rolled-back if transaction is rolled-back. For example to do some logging. This can be achieved by using global that is mapped to temporary database -- IRISTEMP. All globals that start with ^IRIS.Temp* are mapped to IRISTEMP by default. Problem with such approach is that IRISTEMP is cleaned on InterSystems IRIS restart, so this log is lost. What else you can do is -- suspend transaction temporarily, do the logging, and then resume the same transaction. #Database Transaction Processing #ObjectScript #InterSystems IRIS 2 8 1 509
Article Alexander Koblov · Nov 19, 2018 3m read Syntax highlighting for ObjectScript Did you know that Caché (and now InterSystems IRIS) has available parser for ObjectScript ? Well, technically, lexer. It hides under the name of %SyntaxColor class. This class provides API to the DLL used by Studio to do syntax highlighting. As a result if works only under Windows. #InterSystems IRIS #ObjectScript #Open Exchange #Caché 3 3 1 1K
Question Alexander Koblov · Jul 20, 2018 Comments tab for user does not show any comments For example for Evgeny Shvarov, Comments tab shows 838, but there are no comments shown: https://community.intersystems.com/user/11016/comments Dmitry Maslennikov, Comments tab shows 375, but no comments are shown: https://community.intersystems.com/user/11906/comments #DC Feedback 1 1 0 316
Article Alexander Koblov · Oct 12, 2016 1m read Manual editing of applicationHost.config in IIS to enable access to CSP Gateway Configuration page Interesting anecdote I want to share. Not 100% Caché related, but I hope it would be useful. When CSP Gateway is configured on IIS, opening CSP Gateway Configuration page is prohibited by default -- as IIS blocks URLs with '/bin' in it. In our documentation we advise to add <remove segment="bin" /> to applicationHost.config file. That is correct. #CSP #Caché 4 0 0 956
Article Alexander Koblov · Jul 29, 2016 10m read On $Sequence function In this article we are going to compare $Increment and $Sequence functions. #Best Practices #ObjectScript #Caché 21 11 4 1.8K
Article Alexander Koblov · Jun 24, 2016 1m read [bugreport] Preview for comment shows old comment a) Choose Add comment b) Write some text in comment (e.g. 'test') c) Click preview d) Edit comment content (e.g. 'test 2') d) Click preview again e) Notice that preview shows comment content before editing (e.g. 'test') #DC Feedback 0 0 0 226
Article Alexander Koblov · Jun 14, 2016 1m read "Related conversations" shows only comments number "Related conversations" section shows only comments number. In fact, these topics might also have answers.For example, on next screenshot there are three topics in Related conversations section (on the right).All three of them have answers, but they are shown as having 0 comments, thus seem as unanswered. #DC Feedback 0 0 0 176
Article Alexander Koblov · Jun 7, 2016 1m read Add possibility to sort by update field Please add possibility to sort posts on 'updated' field.As I understand by default posts are shown not in order of last update. #DC Feedback 0 3 0 319
Article Alexander Koblov · May 31, 2016 1m read Member content to be available on user page, separate lists for member posts and comments, ability to follow members Ability to view content by particular member is a great feature. I'd like to propose some enhancements to this: #DC Feedback 1 1 0 258
Article Alexander Koblov · May 30, 2016 1m read Please add possibility to change vote Currently if I accidentally rate article as 4 I cannot change my vote. Personally I'd prefer just +/- under the article. There is thin line between 3 and 4 for the article or 2 and 1. Like/dislike is better in my opinion. #DC Feedback 0 2 0 219
Article Alexander Koblov · May 20, 2016 12m read Collations in Caché Order is a necessity for everyone, but not everyone understands it in the same way (Fausto Cercignani) Disclaimer: This article uses Russian language and Cyrillic alphabet as examples, but is relevant for anyone who uses Caché in a non-English locale. Please note that this article refers mostly to NLS collations, which are different than SQL collations. SQL collations (such as SQLUPPER, SQLSTRING, EXACT which means no collation, TRUNCATE, etc.) are actual functions that are explicitly applied to some values, and whose results are sometimes explicitly stored in the global subscripts. When stored in subscripts, these values would naturally follow the NLS collation in effect (“SQL and NLS Collations”). #Best Practices #Caché #Globals #ObjectScript #SQL 9 7 1 2.9K
Article Alexander Koblov · Apr 25, 2016 1m read My Content and My Collaborations show internal id for answers Please see attached screenshot In "My Content" and "My Collaborations" headers for answers are shown with some internal Ids. I think it should be just name of the corresponding question. #DC Feedback 0 1 0 233
Question Alexander Koblov · Mar 4, 2016 Save file on disk not on server Currently when class is saved in Atelier it is automatically saved on disk and on server (if there is an active connection). Is there any way to save file with class or routine just on disk, but not on server? #Beginner #Development Environment 2 4 0 364
Question Alexander Koblov · Feb 8, 2016 Kerberos authentication support for Atelier Hi! Are there any plans to support Kerberos authentication in Atelier to Caché connection? Thank you. #Caché #Development Environment 0 2 0 343
Question Alexander Koblov · Feb 5, 2016 How to convert JSON to %ListOfDataTypes? Hi. It is easy to receive JSON representation or dynamic Array from %ListOfDataTypes: set l=##class(%ListOfDataTypes).%New() do l.Insert("a") do l.Insert("b") do l.Insert("c") set arrStr=l.$toJSON() zwrite arrStr set arr=l.$compose([]) zwrite arr How to make backward conversion? How to receive %ListOfDataTypes from dynamic Array an JSON string? I've tried #Code Snippet #Interoperability #JSON #Caché 2 3 0 1.4K
Question Alexander Koblov · Feb 4, 2016 Atelier translation Are there any plans to translate Atelier to other languages (e.g. Russian) ? #Development Environment 2 4 0 329
Article Alexander Koblov · Jan 29, 2016 9m read Creating a Custom Index Type in Caché The object and relational data models of the Caché database support three types of indexes, which are standard, bitmap, and bitslice. In addition to these three native types, developers can declare their own custom types of indexes and use them in any classes since version 2013.1. For example, iFind text indexes use that mechanism. #Best Practices #Databases #Indexing #Object Data Model #SQL #Caché 12 1 1 2.1K