Question Ben Spead · Aug 22, 2023 Best practice for automatically deploying and activating changes to CSP.ini? We're trying to get a little more discipline around Web Gateway change control, and deploy changes to our CSP.ini from source control. I was wondering if anyone cared to share their best practices in this area? There is a "RELOAD" parameter (https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...) which says you can put RELOAD=1 in your CSP.ini file in order to force it to automatically activate when noticed by the daemon. #Change Management #Web Gateway #InterSystems IRIS 0 6 2 188
Question Ben Spead · Apr 25, 2023 How to escape ')#' inside a CSP Runtime Expression? I have a csp page that is using embedded Runtime Expression (https://docs.intersystems.com/ens201817/csp/docbook/Doc.View.cls?KEY=RCS...) and within that expression I am using a $data() modulo 2 to look for root-level data elements (https://docs.intersystems.com/ens201817/csp/docbook/Doc.View.cls?KEY=RCO...). E.g: #CSP #ObjectScript #InterSystems IRIS 0 3 0 154
Question Ben Spead · Apr 12, 2023 Code to copy class definition from one Namespace to another? I have a situation where I have a handful of classes which I need to copy to another Namespace (which uses a different RoutineDB) on the same instance, load it and compile it. Can anyone help me come up with a command that will do this quickly and easily? Perhaps something with extended reference? This is somewhat time sensitive so thank you in advance for your ideas! #Key Question #ObjectScript #InterSystems IRIS 0 23 0 636
Question Ben Spead · Mar 17, 2023 How can you test access to IRIS running on 1972 from Linux? We're looking to create a quick and simple test to see if all firewalls are open on 1972 between a linux based web server VM and a VM running InterSystems IRIS. Does anyone have any ideas for a quick command that can be run from UNIX console that will provide confirmation that traffic is able to get to 1972 on an IRIS machine? BTW - I don't think it makes any difference but the IRIS machine is running Windows #Key Question #System Administration #InterSystems IRIS 0 17 0 416
Question Ben Spead · Dec 6, 2022 How does InterSystems IRIS determine it's hostname for $System / $System.INetInfo.LocalHostName()? We have a UNIX VM with an InterSystems IRIS instance which we cloned for testing purposes, and we have found that $System (which is used for self-identification in email notifications) is still showing the hostname of the original VM, rather than the hostname of the cloned VM. This is coming from $System.INetInfo.LocalHostHame(). Does anyone know what you need to change on a UNIX clone in order for it to display the appropriate new host name in $System? #System Administration #InterSystems IRIS 0 1 0 243
Question Ben Spead · Feb 3, 2022 How to determine the UNIX user/group that InterSystems IRIS is running as? (I wasn't able to find this in the docs or the Community, so feel free to point me to a reference that I missed) How can I determine the effective User and Group that will be used when an InterSystems IRIS process is doing file I/O on the file system for UNIX? Bonus points if you can tell me how to do it from within InterSystems IRIS as well as from the host OS. Thanks! #System Administration #InterSystems IRIS 0 11 0 420
Question Ben Spead · Oct 8, 2021 Best practice for CPF Merge and version control I have been reviewing the details on the CPF Merge functionality offered in IRIS: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls... I love the frequent mentions of versioning the CPF merge files in Source control. One thing that is not yet clear to me is how this would work for rolling back a change: #Change Management #Deployment #System Administration #InterSystems IRIS 0 3 0 368
Question Ben Spead · Sep 15, 2021 SQL Access to %Stream property on an object? I have an ObjectScript class with a Log property of type %Stream.GlobalCharacter. I need to search the end of each of the logs - is there a way to extract the last 10 lines of the Log stream for each object via SQL? Or is my only option to write an ObjectScript routine to walk the table and inspect each Log property one by one? Thanks! #ObjectScript #SQL #Caché #InterSystems IRIS 0 2 0 339
Question Ben Spead · Sep 8, 2021 How to set High Priority on a %Net.MailMessage object? Does anyone know how to set an email as High priority when it is sent using a %Net.MailMessage object? Somehow I can't seem to put my finger on it. Thanks! #ObjectScript #Caché #InterSystems IRIS 0 4 0 205
Question Ben Spead · Dec 21, 2019 API for looking up server name based on IP? Does anyone know of an API that will do a hostname look-up based on IP? We could of course use call-out but the format of the results vary based on OS and if there is already an ObjectScript tool which will parse this then we'd rather use what is already available. Thanks!Ben #ObjectScript #Caché 0 4 0 260
Question Ben Spead · Nov 14, 2018 How to get DB and global location information? I need to write a script to answer a couple of fairly simple questions:1) What is the current routine DB (name and location) for this namespace?2) What is the current data DB (name and location) for this namespace?3) Is global ^ABC mapped to a different location than the default data DB?Can anyone point me to some system APIs that would allow me to answer these questions?Thanks!Ben #Caché #ObjectScript #System Administration 0 2 0 443
Question Ben Spead · Jun 19, 2018 Refresh object in memory from data on disk? 1) I have an oref pointing to an object on disk2) I save the object which causes an UPDATE / AFTER Trigger to fire, and updates a value in an embedded object property3) I would like to see that new embedded property value in my in-memory object (for unit testing)Is there a way to do this via a method call? Or do I need to close the object and re-open it to see the updated value?Thanks!Ben #Object Data Model #Caché 0 1 0 260
Question Ben Spead · Jun 12, 2018 How to navigate to parent of Serial Object? I have a serial object:Class EmbedObj Extends %SerialObjectwhich is stored as a property of another objectClass ContainerObj Extends %PersistentProperty InnerObj As EmbedObj;Property Foobar As %String;Question:From within the context of an instance of EmbedObj, how can I navigate to the containing instance of "ContainterObj" and find that value of its Foobar property? #Object Data Model #ObjectScript #SQL #Caché 0 8 0 628
Question Ben Spead · Jun 5, 2018 How to Update Caché User Full Name field via SQL? Does anyone have any sample code for updating Caché users (and specifically Full Name and Comments) via SQL? Bonus points for knowing specifically what security resource needs to be assigned to allow someone to run the SQL.Thanks in Advance!Ben #Access control #SQL #Caché 1 9 0 423
Question Ben Spead · Mar 23, 2018 No error when referencing unset relationship object property I've been writing ObjectScript for a long time and was a little surprised by this behavior so I'd like to understand what is going on.I was doing a peer review on some source which had roughly the equivalent of the following line: #Object Data Model #ObjectScript #Caché 0 2 0 309
Question Ben Spead · Aug 29, 2017 Are there server-side Git Studio Hooks available out there? I want to demonstrate using Git via Server-side Source Control hooks (to allow both Studio and Atelier to access a Shared Dev namespace), and I was planning to use the popular Caché Git hooks:https://github.com/intersystems/cache-tort-git #Git #Development Environment #Studio 0 7 0 851
Question Ben Spead · Mar 7, 2017 Getting URL detector RegEx to work with Caché %Regex.Matcher I am trying to write some code that takes in a string and does a serverside transformation of it to find embedded URLs and replace it with clickable links. I found the following regex for Javascript which is rated highly on StackOverflow; #Caché #ObjectScript 0 3 0 535
Question Ben Spead · Aug 17, 2016 Zen Mojo - REST vs native transport? I am going to start playing with Zen Mojo (again) and as I understand it there are two ways to manage moving data to/from your Zen Mojo page: interacting with REST services using Mojo's built-in transport I would like to understand the pros and cons of each approach. Which is recommended in different situations and why? I would like to create a sample application that will hopefully be reusable and helpful to others and I would like to understand which approach to pick for my app. #Frontend #ZEN #Caché 0 4 0 500
Question Ben Spead · Nov 20, 2015 How do you to a lone ">" in an &html<> block? I am using &html<> to output some CSS to my page (which is a class-based and not a tag-based page), and the selectors contain the '>' character which the compiler chokes on. How can I escape the '>' so it still displays as such in the web page source but doesn't trip up the compiler?This is for 2012.2 btw. #Compiler #HTML #Frontend #Caché 0 8 0 455