CheckOut(), CheckIn(), UndoCheckOut()

Discussion created by ChewCheeLim on Jan 18, 2013
Latest reply on Jul 28, 2019 by jstarnes

Hi There, I want to make sure my following assumption is correct.


At AFDatabase level, you can not do a db checkout. U only can checkout at AF element.


AFElelement.CheckOut() --> only applies for the AFElement only. if the AFElement has child elements. none of them are 'CheckOut' unless checkout is called explicitly. Correct?


Even without a checkout() being invoked, If I changed multiple AFElements (could be child, or could be other branch)  I still can apply AFDatabase.checkIn() method to commit all changes to DB.  Am I right on this one?


If I decided to roll back, once I call AFDatabase.UndoCheckOut() .. all changes (mutiple afelements, including child, or other elements not at the same branch)  that I made for the DB will be rollback.




Should I explicitly invoke CheckOut() as a good practice? (even though AF SDK help indicated that without a .CheckOut() being invoked, I still can call CheckIn() method at the end of my processing..)




Many Thanks!