go to post Chris Stewart · Apr 18 So, there's 2 ways to read this, either we want an "exists" check, or following the SQL, we want a count of all instances. This snippet can be set to do either case based on the existscheck boolean. Ideally though, you would have an index defined, and this could be read much more efficiently than having to scan an entire global set count=0 set existscheck=0 //Set to 1 if we only want to find first instance set targetValue=1329 set key = "" for { set key = $ORDER(^DataTest(key)) quit:key="" if targetvalue = +$LG(^DataTest(key),2) do $INCREMENT(count) quit:existscheck&&count } w !,"Count value is "_count
go to post Chris Stewart · Mar 26 You absolutely can do this. Each namespace is set with a Globals DB and a Routines DB. The Globals are your default data storage, and the Routines are where your code lives Further to this, there are an array of mapping features allowing your data and code to be spread over multiple databases. You can read more about this here: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...
go to post Chris Stewart · Dec 14, 2023 Having just done the same thing today, following Marc's comment (which is the same code in the documentation for MIMEParts) should get you what you need. As it stands, I'm pretty sure you are just passing a handle to a stream to the FormData, rather than referencing the content of the stream. This section of the example will correctly populate the HTTP Request body: // Write out Root MIME Element (containing sub-MIME parts) to HTTP Request Body. Set writer = ##class(%Net.MIMEWriter).%New() Set sc = writer.OutputToStream(tHttpRequest.EntityBody) if $$$ISERR(sc) {do $SYSTEM.Status.DisplayError(sc) Quit} Set sc = writer.WriteMIMEBody(rootMIME) if $$$ISERR(sc) {do $SYSTEM.Status.DisplayError(sc) Quit}
go to post Chris Stewart · Nov 8, 2022 A handy way to find the process is to check your lock table. These processes will typically take out a lock based on the Task ID. This can be used to find the process, examine it and kill it if required. It's also possible in some cases for the process to die and not update the task, and this can account for no processes matching this criteria
go to post Chris Stewart · Sep 16, 2022 Based on this error: SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure , you probably want to enable SSLv3 on your SSLConfig. It's showing as disabled in your screenshot
go to post Chris Stewart · Jul 22, 2022 This type of request is handled via your contract arrangements, so the best route is to engage your support service who will be happy to get you the assistance you require
go to post Chris Stewart · Sep 8, 2021 HI Ben, I believe this is implemented specifically on each mail server and client, so there is no standard for it: See https://www.chilkatsoft.com/p/p_471.asp for details You can set these headers, but there's no guarantee the client or receiving server will take note of them HTH Chris
go to post Chris Stewart · Sep 24, 2018 HI DennyTrakcare publishes it's CSPs as Deployed, so a standard install will not contain a user friendly way to view themHTHChris
go to post Chris Stewart · Feb 7, 2018 HI FabioI've built it into my Authentication routine on my REST services, as all of my functionality goes through REST. I created a simple Audit class, and had each call to the Authentication include information specific to which service called it.HTHChris
go to post Chris Stewart · Jan 15, 2018 Reposting as an answer to get this removed from the "Unanswered questions" listHI RuiUnicode 0x3 is the ETX character, which can be used as newline in certain text editors. Any control chars are disallowed in XML processing, so these should be stripped from whatever query you are using to drive this reportHTHChris
go to post Chris Stewart · Nov 10, 2017 Yes, but using a relationship to do this would automate a lot of cross referencing. For the example above, a 1-1 relationship would keep each side correct, when an update is made on either sideSee http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=... for more details
go to post Chris Stewart · Oct 27, 2017 Hi SofianeI'm assuming you want to read this from a JSON payload. You can follow the instructions in https://community.intersystems.com/post/lets-write-angular-1x-app-cach%C... to implement a fromJSON method, after reading the payload from the HTTPRequestHTHChris
go to post Chris Stewart · Aug 4, 2017 Hi ManojThere's example code of reading a JSON string from a POST request, and then transforming it to an object inhttps://community.intersystems.com/post/lets-write-angular-1x-app-cach%C3%A9-rest-backend-part-9Hope that helpsChris
go to post Chris Stewart · Aug 3, 2017 Hi ConfusedIf you're a Trak customer, your best option is to raise a TRC to have the appropriate Support team assist. However, IE11 isn't a fully supported platform for Layout Editor, though it will work. You will need the Microsoft DHTML Editing Component at a minimum, this can be obtained fromhttps://www.microsoft.com/en-gb/download/details.aspx?id=8956Hope this helpsChris
go to post Chris Stewart · Jul 3, 2017 Hi SimchaI've written a multi part guide to doing just this (it's not complete yet, but I've been struggling to get enough time to finish it). You can find it here - https://community.intersystems.com/post/lets-write-angular-1x-app-cach%C3%A9-rest-backend-start-hereHope that helpsChris
go to post Chris Stewart · Jun 12, 2017 There can be more to "speed" that just execution time of your code. If you need to add an index to help performance, then a Caché SQL query will be able to utilise it without any code changes. If you are using $Order, then you need to spend some time writing and testing your new code.I typically use SQL to identify objects, then Object methods to interact with them, but for simple updates of large numbers of objects, I'll usually use a simple SQL Update. The beauty of Caché is the flexibility to use the best tool for the task at hand
go to post Chris Stewart · Jun 1, 2017 Hi JavierI did this by implementing a fromJSON method on each class, which allows me to do what you describe. By moving this to the persistent class, I don't have to worry about instantiating or accessing the object, but can just apply a JSON update to an objectThe details are in https://community.intersystems.com/post/lets-write-angular-1x-app-cach%C3%A9-rest-backend-part-9Hope this helpsChris
go to post Chris Stewart · May 30, 2017 Just to add a word of warning. The syntax for %Object is only available in 2016.1, and is deprecated in favour of similar but incompatible objects and syntax in later versions. If you have the choice of versions, it would be wisest to adopt 2016.2+ and use the DynamicObject class and methods, as this will be more futureproofedDetails are at https://community.intersystems.com/post/json-changes-cach%C3%A9-20162
go to post Chris Stewart · Apr 20, 2017 Thanks EvgenyIt's specifically this post that seems to be worst affected https://community.intersystems.com/post/lets-write-angular-1x-app-cach%C...