go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 Pls. don't forget to mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept
go to post Robert Cemper · Aug 14, 2017 not a problem of version A subquery using ORDER requires a TOP clause Change the query to SELECT * FROM (SELECT TOP ALL sslog.userRowid, sslog.CreateDate, sslog.CreateTime, Sslog.SSUSR, sslog.Terminal, ssuser.Initials, ssuser.USName FROM SUser_Log sslog LEFT JOIN DHC_SSuser ssuser ON (Sslog.SSUSR = ssuser.userRowid OR sslog.ssusr = ssuser.Initials OR sslog.ssusr = ssuser.USName) WHERE ssuser.USName ['admin' ORDER BY sslog.CreateDate DESC) WHERE %VID> 5
go to post Robert Cemper · Aug 13, 2017 HI Dave,Great to meet you again on one of my favorite subjects.
go to post Robert Cemper · Aug 12, 2017 To mark your question as "answered" on Developer Community,please click the checkmark alongside the answer you (as author of the question) accept.
go to post Robert Cemper · Aug 12, 2017 You have 2 Options for LOCK1) LOCK lockargument either you succeed or you hang until you get success or forever2) LOCK lockargument:timeout timeout releases your attempt after the defined timeand signal by system variable $TEST if you were successful or notso your code may have this structureLOCK +(^a,^b,^c):0If $TEST { write "successful Locked",! } ELSE { write "attempt to Lock failed",! }more on LOCK: http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...if failing you may want to identify your competitor using ^$LOCKhttp://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...
go to post Robert Cemper · Aug 11, 2017 given the property you want to sort is unique and suitable as key for your array you may get the expected result.set key=obj.sortpropertyset tSC=myArray.SetAt(obj, key)
go to post Robert Cemper · Aug 11, 2017 To mark your question as "answered" on Developer Community, please click the checkmark alongside the answer you (as author of the question) accept.
go to post Robert Cemper · Aug 10, 2017 You are welcome.When I loaded the class first I was surprised too just to see 4 methods.
go to post Robert Cemper · Aug 10, 2017 Amir,I don't agree with you on %Listhttp://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?P...There's no annotation to be reserved or not to use it
go to post Robert Cemper · Aug 10, 2017 Mike,You are formally correct but data type %List just has no method LogicalToDisplay !but:- LogicalToOdbc- LogicalToXSDand reverseit seems the implementer expected us to use $ListToString(...) and $ListFromString()so far for consistency in object model support
go to post Robert Cemper · Aug 10, 2017 Alexey,- The final size after some design optimizations was175 GB DataGlobals + 216 GB IndexGlobals ; separated for backup considerations (on 1 single drive )- data analysis was all done with SQL + a bunch of "homemade" SQL Procedures / ClassMethods running specific subqueries.
go to post Robert Cemper · Aug 9, 2017 Documentation is the art to express facts in a way the non insiders could understand.Engineers are quite often "unverbose" and "limited in verbal communication skills". In any language exept programing languages BTW. your book made things clear to me that I assumed to know for many years.BTW. I appreciate if you accept my answer
go to post Robert Cemper · Aug 9, 2017 I'd try to have just 1 query with 3 parameters and switch them on/off as you needSELECT ID FROM Table WHERE (Field1 %STARTSWITH :par1 AND ((0=:sw2) OR (Field2 = :par2)) AND ((0=:sw3) OR (Field3 = :par3))Now using only par1 means (par1=whatever, sw2=0,sw3=0, par2="",par3="") so the 2nd + 3rd condition is switched off and par2,par3 ignored2nd case: (par1=whatever, par2=something, sw2=1,sw3=1, par3="") so only 3rd condition is switched off par 3 ignored3rd case: (par1=whatever, par2=something, par3=other, sw2=1,sw3=1) all conditions activeyou see this could be extended easily
go to post Robert Cemper · Aug 9, 2017 %Library.Char uses MAXLEN as size:it's applied in LogicalToOdbc and LogicalToDisplay appending Blank until MAXLEN is reachedanyting else is inherited from %String