go to post Robert Cemper · Mar 26, 2019 As you describe it I'd create a nice BAT file that you execute.It coud be static or created ad hoc just by writing it from CachéAnd then execute it using $ZF(-1...) ,$zf(-2....) or CPIPE Though Caché has powerful utilities around %File class you will be faster that way[based on ~40 yrs of M]
go to post Robert Cemper · Mar 21, 2019 to create your own Login Page you best start with Class %CSP.Login and adapt it to your specific needs.defaulting toand then you add the new Login Page to Security-> WebApplications
go to post Robert Cemper · Mar 16, 2019 Size of WIJ is in Relation to Global Buffers. With equal size of G.Buf. you should get similar size of WIJ
go to post Robert Cemper · Mar 11, 2019 that's wrong ! "will execute nothing, " if conditionSets the system variable $TEST. And this was and still is a widely used way of signaling between routines and functions.And millions lines of existing code rely on its proper use.I come back to an earlier comment: Really learning the language is definitely an advantage.
go to post Robert Cemper · Mar 11, 2019 returning to dotted subroutines would be really bad. Though they are still around in %SYS. on the other hand, the flexibility of the language allows a broad range of personal styles.knowing them enabled me in the past (amongst my customers ) to identify the author of a routinejust by his style with a hit rate of >75%.
go to post Robert Cemper · Mar 11, 2019 OK Vitaly !It happens under cover (from: ^%SYS.SECURITY1.int) Set $zt="SSLConfigError"i '($e($roles,1,$l("%All"))="%All") { n $ET,$roles s $ET="",$roles=$roles_","_"%All"} n $namespaceDo $zu(5,"%SYS")
go to post Robert Cemper · Mar 11, 2019 Alexej,if you don't care about maintenance effort the most exact pointer is preferable.As you may see from Ensemble the number of entries in the mapping table is of no importance.With modern hardware, saving memory is of no importance anymore.
go to post Robert Cemper · Mar 10, 2019 I remember times when new programmers learned from their masters to use no matter whatprogramming language in her full beauty and elegance with all its features.no matter if this was Assembler/360 or Macro32 or C, C++, C# or Bliss or PL/1 or Fortran, Algol, .... [list almost unlimitted]All of them had their tricks and open and hidden features that inspired the creativity of developersand allowed them to create artwork instead of stereotypic formulated phrases. By this approach,developers get degraded from architects to monotone brick assemblers."users unfamiliar with the language" I'd recommend they should learn it to understand it before touching it.If I want to read the Правда I have to learn Cyrillic characters and the Russian language to understand it.Nobody would accept any request for Latin letters.
go to post Robert Cemper · Mar 10, 2019 Hmmm,it seems to prefer "waste screen space" style over "have all on 1 screen with no scrolling" [my favorite ]
go to post Robert Cemper · Mar 8, 2019 In this case, you may create a Privileged Routine Application with the rights you need and the required codecalling it raises access rights just for this routine.
go to post Robert Cemper · Mar 8, 2019 Hi Timwrite $d(^|"%SYS"|SYS("Security","SSLConfigsD",<my config> ),settings)provided you have access rightsCheers, Robert
go to post Robert Cemper · Mar 6, 2019 I think RowVersion and Serial Counter Fields should do it as well.(with less typing)
go to post Robert Cemper · Mar 4, 2019 You have to set your DB to be in Primary MIRROR before the copy.Otherwise, you may miss some kind of "Mirror-Marker" / Timestamp. I hit this trap also on my first trials.
go to post Robert Cemper · Mar 2, 2019 I just realized that this method doesn't check the existence of the ID.therefore:write:##class(Abstract.Class).%ExistsId(id) $li(##class(Abstract.Class).%ComposeOid(id),2)or any equivalent construct.
go to post Robert Cemper · Mar 2, 2019 OID contains the class name. So this should do it.write $li(##class(Abstract.Class).%ComposeOid(id),2)
go to post Robert Cemper · Mar 2, 2019 You are totally right.With Parent-Child your data are not only logical but also physically tied to each other.One-to-many allows you more flexible handling of Relations.Just one out of many examples M:N Relationship