go to post Chris Stewart · Jul 27, 2017 Hi RubensFabian wrote a great article about RegExp matching in the Routes here:https://community.intersystems.com/post/advanced-url-mapping-restHowever, I don't believe that you can do conditional expressions inside the Route. I think you would instead have to do this in your Method code (happy to be corrected by someone more clever than I am)
go to post Chris Stewart · Jul 24, 2017 HI Sebastian You may want to look at the Caché FileServer linked from the comments on this posthttps://community.intersystems.com/post/url-security-over-2-applicationsThis may be a helpful starting point for you?
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 28, 2017 This tip has saved me a ton of hassle in a number of occasions. One thing to note is that you will inherit the OS user that Caché is running under, so always remember to select your operating user carefully when installing Caché, so as to not give terminal users network access that they may not otherwise have
go to post Chris Stewart · Jun 28, 2017 I don't think this is a great idea, to mix the technologies, as both will try to manipulate the DOM, and you would likely see strange behaviourIf you are migrating the application in a modular fashion, I've found it's best to keep the functionality seperate, and tune the navigation to switch between the appropriate technologies and migrate the existing pages as you go. The only thing to be careful about is your %session state if you do this (I've barely used %session on my Angular code, and instead try to write everything to work in a stateless fashion)
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 3, 2017 Hi EdIf you download the code from the linked GitHub repo, then I've provided some sample population methods for the persistent classes
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 · May 5, 2017 HI JenniferI started building my application quite some time ago (over a year ago), so Angular 1.x was the best choice at the time with the support of the Material UI platform, and I didn't want to have to start again since the new version of Angular isn't compatible with the old syntax, or easy to migrate to. However, one of the nice things about structuring the application with REST is that it is pretty straightforward to bolt a new front end, or even run a new one side by side with the old one.
go to post Chris Stewart · May 3, 2017 HI ChengI was hoping no one noticed that :) I made a mistake in the original version, when I was taking screenshots, but I had to retake one screenshot, and this is from the corrrected version. The code on github is consistent, and uses the same Cursor throughout the example
go to post Chris Stewart · Apr 28, 2017 I will annotate the screenshots above to make it clear which files are being displayed
go to post Chris Stewart · Apr 25, 2017 Hi Joe, Are you using Chrome to debug? You should be able to click through to the error on the Network tab from the Deubgger. Anything that returns an error code should be highlighted in red, and if you click that red text, then it should give you the specific error coming from Caché. If you get this error, I should be able to find my mistake in the exported code.There's example of this debug process at the end of part 7. I've also added an example logo to the github repoThanksChris
go to post Chris Stewart · Apr 25, 2017 P.S. It's probably Security, I've developed this example in Minimal Security, so you may need to assign Read/Write permissions to the Role attached to your web applications
go to post Chris Stewart · Apr 25, 2017 Hi JoeI didn't include one as the one in the demos is under a license. Any small svg file will work in it's place for demo purposesThanskChris
go to post Chris Stewart · Apr 21, 2017 Hi Evgeny, I'll contact you offline about pt1. I've added the relevant ISC topics to the repo on Github now for point 2
go to post Chris Stewart · Apr 21, 2017 I have included a class to populate a small amount of sample data in the Data package (available on Github). The data used in the articles is just an example, and any content will suffice, if you wish to create your own
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...