StrataFrame Forum

Using a ChildFormDialog with same BO

http://forum.strataframe.net/Topic15942.aspx

By Edhy Rijo - 4/28/2008

Hi,

I am trying to do the following:

I have a form with some fields I would like to modify using a ChildFormDialog.  I have setup all properties and it is working just fine when adding, editing this record, the information is translated back to the parent form, but when I try to Undo it will perform an Undo in the whole record including data in the parent form. 

Is there a way to control what fields to Undo in the translated BO in the ChildFormDialog?

So far, I have not find a way to just undo specifics fields in the BO.  Since this ChildFormDialog will only modify 5 fields of this BO, I may need to create these properties in the form so I can have control of Undoing any changes in the ChildFormDialog.

By Trent L. Taylor - 4/28/2008

I have never actually had this need...nor have I heard of this need.  You can undo 3 different ways:

MyBo.Undo(AllRows)
MyBo.Undo(CurrentRowOnly)

In the 1.6.6 beta there is a new option to undo by a filter:

MyBo.UndoByFilter("FilterExpression ")

If you want to "Undo" certain fields, then you will need to cycle through the current row and replace the Current value with the OriginalValue:

MyBo.CurrentRow.Item("MyFieldname") = MyBo.CurrentRow.Item("MyFieldName",DataRowVersion.Original)
By Edhy Rijo - 4/28/2008

Trent L. Taylor (04/28/2008)
MyBo.CurrentRow.Item("MyFieldname") = MyBo.CurrentRow.Item("MyFieldName",DataRowVersion.Original)

Hi trent, using the DataRowVersion.Original give me what I wanted, also I found that the TextBoxBase control has an Undo() method which will also provide this need.

Even though you have not have this need, in VFP I have make a lot of use of the functions CURVAL() & OLVAL() for this type of scenarios and I think it would be a good idea to have a more direct access to the DataRowVersion.Original and maybe it could be an enhancement to add a property to the BO which will return this value for easy use by the developer.   Again, this is just a though Tongue

Thanks for the recommendations!

By Trent L. Taylor - 4/28/2008

The row level stuff that I menteioned is the OLDVAL and CURVAL route in ADO.NET. Smile