go to post Vitaliy Serdtsev · Jan 10, 2017 You could do the same thing by creating a View with a function in the WHERE clause that called the method to figure out if you should see the row or not.responsibility lies on developer don't to forget add additional conditions: WHERE, %IGNOREINDEX, etc.the query becomes more complicatedI think this is a cleaner solution as you do not need to worry about the %RLI becoming available again. What prevents force disable %RLI in ^%ZSTART or $SYSTEM.SQL.SetServerInitCode() ?
go to post Vitaliy Serdtsev · Jan 10, 2017 Important: pre-need string to convert to UTF-8 USER>w ##class(%xsd.hexBinary).LogicalToXSD($system.Encryption.SHAHash(512,$zcvt("тестtest","O","UTF8"))) 83B481B1A58FA416F34BFF575F2DCA866C6AB790CF0941BC0F1E7E91D916D22866CB9575C666021B2F8A796B20A484ABB29403853EDEA6173B9A61758060117E USER>w ##class(%xsd.hexBinary).LogicalToXSD($system.Encryption.SHAHash(512,$zcvt("test","O","UTF8"))) EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF
go to post Vitaliy Serdtsev · Feb 10, 2016 In my opinion better will be so: Property SystemTime As %TimeStamp [ InitialExpression = {$ZDATETIME($NOW(),3,1,0)}, ReadOnly ]; This variant will work and for SQL and for Objects. In addition the developer will not be able to explicitly set a different value.
go to post Vitaliy Serdtsev · Jan 26, 2016 For clarity in code you can write: #include %systemInclude set varName = $$$NO ; 0 set varName = $$$YES ; 1 See ObjectScript Macros and the Macro Preprocessor