excellent article - thank you!!
- Log in to post comments
excellent article - thank you!!
Congratulations to the winners!!
@José Pereira , thank you for sharing!! Please note that you have a small typo in your title - pratical > practical (no worries, if I wrote a D.C. article in Spanish you would lose count of all of the typo's ;) ).
Quick note that the Announcement has been updated to include links to the specific course PDFs as well as links to the online version of those courses where one is available.
We are still looking for some more people from our larger implementation community to take part in this Beta Test - please sign up today if you haven't already done so! (and THANK YOU in advance :) )
nice job @Timothy Leavitt - definitely a Best Practice :)
@Yuri Marx - thank you for all of your contributions :)
Nice work everyone!!
Nice job everyone - congratulations and thank you for your contributions!!
Thank you @Adam Coppola !!
You should still be able to get into the instance while it has an expired key ... you just can't make multiple simultaneous connections to it. You can also grab the iris.dat files from the file system (which actually stores the globals) and then mount them to another instance. Or you can just upgrade that instance to a new version of the Community Edition (which is likely the easiest approach)
Rob ... this is incredibly rich - thank you for taking the time to write all of this up!!
Wow - that is so cool!! Thank you for sharing @Joel Solon :)
It should be safe to edit manually as long as you are not changing the piece numbers or changing the order around. Simply changing the property name within <Value>...</Value> of the storage definition should be fine if it is no longer used at all. In our case, we have had instances in the past where we needed to change a property name and rather than creating a new property and migrating the data it proved to be safe and much more efficient to change the property name in both the property definition and the storage definition (as well as all of the places in the source code which refer to it). The nice thing about this approach is that we've been able to simply do a Find/Replace in all of the source code and carefully review the diffs before submitting.
If others are aware of gotcha's when changing the storage definition Value, I would be interested in hearing them.
BRAVIO G.M. TEAM!!!
Great analogy @Vivian Lee!! Thank you for writing this up :)
as Vivian explained, you can delete the property definition and then change the name in the storage definition to make it clear that that slot should be ignored. This of course should be done while keeping versions of everything in source control so that the reason for the change is documented and discoverable in the future should someone need to understand why the property was removed.
Thanks for quick fix @Evgeny Shvarov!! Also, thanks for the details that some types are not supported, that is good to know. At this point I think I am good with letting it take it's best guess and then editing the class afterwards if needed. With SQL LOAD coming hopefully there will be less need to one-off utilities that do this but I am thankful that it was available for what I needed this week!!
Wow - this looks like it is going to be an incredibly helpful feature!! Thank you for pointing out the new docs on it :)
Partially answered my own question ... if I edit the auto-generated class' When property and set it to %Library.DateTime, I can then call the generated Import() classmethod of the auto-generated class and import will succeed. So I am able to push forward ... is this the intended path to do this?
Should I create an issue for the DateTime column to be property set as a DateTime object and not a Date object?
There appears to be an issue on Windows as it doesn't strip out the ":" from the filename when auto-generating the class( https://github.com/evshvarov/csvgen/issues/13).
But beyond that I am stuck because is autodetecting my data/time column as Date and it is failing validation:
This is that the file looks like:
So it is blowing up when it tries to read "12/06/2021 03:46AM" into the When field, which it auto-generated as:
I could obviously hand-correct the auto-generated class but that wouldn't help if it just re-generates it the wrong way again when I try to do the import.
Any suggestions on a way around this? Is there a way to force it to %Library.DateTime?
Thanks!
Ben
Brilliant!! Thank you @Sergey Mikhailenko and @Sergei Shutov :)
nice summary :)
Congrats to the Winners!!!
Congratulations @Timothy Leavitt - your article on Git for Shared Development Environments was the most viewed article on technical content!!
Well done to the winners! Thank you for participating in the contest and contributing to our community as a result!!
Absolutely! You will need to write a method that contains the SQL and then execute the method from a Task. As the linked docs suggest, write your own task by creating a class that extends %SYS.Task.Definition: https://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls…
Wow - @Robert Cemper, thank you for this contribution back to the Community!!
In case this is helpful for any other AOC noobs, the '130669-ab1f69bf' code doesn't go in the sponsor code field that you will be shown when you first create an account. You need to click on the 'Private leaderboard' link in red to the right of that field, and that will bring you to a new page where you can enter the above code.
You should use $ZSTRIP with the "W" for whitespace: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl…
Don't worry about it - I have been writing ObjectScript code for 18 years and I had no idea about this method - I have always done it the way you did in your example :) Thanks for asking the question so I could learn something new as well!