what version are you running this test on?
- Log in to post comments
what version are you running this test on?
Matthew,
See https://community.intersystems.com/post/writing-forward-compatible-json… to allow you to write code that will work on both 2016.1 and 2016.2. This is the approach we're using internally to write code that is valid in both versions which has already minimizes our pain. I hope it is helpful to you.
I have "On Updates" and "On Comments" checkboxes on that page for all of my subscriptions. Perhaps because I am signed up for individual emails (which may have more subscription options) and you are signed up for a Digest? (or perhaps maybe not - I tried changing to Digest and still see the "On Updates" checkboxes.
I think a Community Admin needs to weigh in because I don't know why your settings are different.
John - I edited the article which caused the notification for anyone subscribed to content changes. If you are not subscribed to changes in content then that should be considered a bug that notification was sent for an edit to an article.
Hope that helps.
Thanks Jochen - I appreciate your thoughts on this!
For more details on the JSON changes, see https://community.intersystems.com/post/json-changes-cach%C3%A9-20162 and https://community.intersystems.com/post/writing-forward-compatible-json…
Make sure to read https://community.intersystems.com/post/json-changes-cach%C3%A9-20162 and https://community.intersystems.com/post/writing-forward-compatible-json… for information pertaining to making this code forward compatible.
Thank you for the update Evgeny!
I have feedback on the emails - it seems that the new comments are shown as threaded instead of reverse posting order in the email, which means you have to do a lot more scrolling and check timestamps in order to tell where the new content is. It would be great if it could go back to the reverse threading in the old emails which made it much faster to see what the new content was.
Also, there seems to be some CSS impacting the layout of the emails for mobile devices. The content doesn't flow nicely but goes off of the right side of the screen, requiring horizontal and vertical scrolling or zooming out to the point it's hard to read on the phone. If someone could look into fixing that it would be most appreciated.
I apologize - I thought it was possible to add Tags to Answers, but I guess not. The Code Sample tag would need to be added by Marc to the original question.
Bravo! Make sure to tag this as "Code Sample" so people can find it easily in the future
Tom,
It's been a while since I took it but if I recall correctly you would want "Building Business Productions" which is basically the "Building Healthcare Productions" course with a day of HL7 content removed.
HTH,
Ben
If you look at the %Library.File:FileSet() query and the %Library.File:Delete() method I think you could probably convert this to an OS-independent solution in about 10 min or less :) Just sort the FileSet() query results by DateCreated and then stop processing the files once you get to the cutoff date for what you want to keep :)
Thanks Rob - all very interesting stuff :) I'll leave it to Product Management to weigh in on the server-side JS.
Thanks Stefan. All interesting points.
Can you build bitmap indices against a specific property in a document container? Do we have any data on the performance of large document datasets (using indices) as compared to large persistent tables of Caché objects?
In terms of storing complex values in a property - in actuality would there be any additional support for handing that same complex property as a piece of a document? It seems to me that you need to do all of your own handling code in all cases if you use documents. I guess an advantage would be the ability to subindex pieces of a document (I assune that is supported or soon will be?)
Thanks for the details on the documenting of the schema's. I was guessing it was something along those lines - again sort of a throw-back to keeping separate global structure documents in legacy Caché. Not a deal breaker but it takes a higher level of discipline in order to keep the code maintainable as it evolves over time.
I learned a lot from this thread - thanks!
Stefan,
Thanks for your thoughtful response. A few comments and questions on your clarifications:
From my perspective, while there is certainly increased flexibility to be gained with documents, that comes at the pricing of having to write more validation and processing code. In addition, Caché Persistent Objects make it very easy to have your schema and structure be self-documenting (and the class definition can be the 'source of truth'). With Document, which in many respects is a move back in the direction of 'roll your own global structures' the developer would be on the hook for creating external documentation on the structure and field uses of the documents that are stored in the container. Certainly picking good property names is a good step in the right direction, but that doesn't get you are far as you can get with class and property comments in a persistent class definition. How do you envision people documenting their document schema?
Stefan,
This is a great article and an excellent resource to help people come up to speed quickly on this new feature - thank you.
I do have one question / comment however. You listed 4 benefits to using the Document approach, and I certainly see all of these as benefits over Relational DBs, but it appears to me that Caché Objects have the exact same benefits for points 2, 3 and 4, and it is so trivial to update Caché object schema's that I don't really see 1 as being very convincing to a Caché Object developer.
I am assuming these benefits are more targeted to people looking to switch from relational DBs? Or do you see a 'killer app' type possibilities for Caché-based shops that already make extensive use of Caché Objects (and so therefore already have easy schema updates, sparse storage, etc).
Thanks!
Ben
Brian,
For years this was the official InterSystems-sponsored site for this type of thing:
http://skills.intersystems.com/
However, it looks rather empty at the moment (I think things expire after 6 months or something like that). It wouldn't hurt to post your position there - perhaps with increased advertising on the Developer Community this will pick up in its usage again.
HTH,
Ben
I don't have a complete answer for you, but presumably you could grab the binary stream via SQL and then save the stream do disk via the %Stream.FileBinary class interface. We manage JPG files through that interface, but I haven't done the fetch via SQL before (so hopefully someone who has fetched a jpg via SQL could comment on that piece)
Thanks for pointing that out John! That hasn't crossed my radar yet and I am especially glad to see it as well!
Mike - thanks for posting this for everyone's benefit! One minor point though - is this a Question (as you created it) or an Article? Is there anything you are asking specifically? (I don't know that there is a way for you to change it to an article at this point but you should note the difference for next time).
I do want to let everyone know that they can rely on the link https://download.InterSystems.com always pointing to our evaluation kit download application (even if the rest of the website is rearranged). That is an application managed by my team and it intended to always be accessible through that entry point.
Take a look at the $system.OBJ.Load() and $system.OBJ.LoadDir() methods. This is the most common way to take source from your source control system and load them into your namespace.
Scott,
xDBC clients connect with Caché over the SuperServer port. This is 1972 on your working system. On the one that isn't working, to find the port do the following navigation in the System Management Portal:
Menu -> Configure Memory
Look at the SuperServer port number and see what that is if it is not 1972
Sankar,
For a version of Caché this old (circa 2002) I strongly suggest that you contact the WRC directly for assistance (http://www.intersystems.com/services-support/product-support/). That will be your best bet to getting your system back online as quickly as possible.
Please feel free to report back here as to the root cause and resolution for what you're seeing.
Ben
you are most welcome!!
Mike,
I am not sure about the "access denied" message you are seeing - perhaps Paul could comment on that. However, to manage all of your subscriptions:
1) Log in
2) Click on My Account (top icon bar)
3) Click on the Subscriptions tab
Then I strongly recommend that you click "Settings" and Uncheck "Digest Mode". The Digest emails are really not very usable (IMHO) and work has been done to make the individual emails more useful - you may find those to be better and closer to what you are used to in the Google Groups (assuming you didn't use Digest in Google Groups).
Under the "Page / Threads" tab you can unsubscribe to the threads you are no longer interested in.
I hope that helps. The email update mechanism has come a long way but it still has quite a ways to go. There is work that will be commencing shortly to enable HTML based email which should be an improvement as well.
Yes - if you New $namespace, then once the context pops off the stack it will revert automatically to the original namespace before setting the newed version of $namespace
I want to bump this post up because it is really useful (thanks Evgeny) and people definitely need to be aware of this great resource for getting the example source!
Timur - THANK YOU! It hadn't gotten annoying enough to google a solution yet, and you just saved me the effort :)
Tim- I saw the same thing and then I realized it was an outlook thing:

It saws right the top that Outlook removed extra line breaks. If you click that message you can reverse it and the line breaks will then get corrected.
HTH,
Ben