Carlos,
>Do you use addobject() to put the container into your form?
No, I drop it onto the report form because the form may have other controls on it. I guess they could be put into the app cntReportControl subclass just as well though but at the app level it's not a reuseable container, it's the final node of the class tree.
>Do you turns enabled or visible properties to .f. in all your other objects
in the form when running a report ?
The report form is it's own stand alone form.
>How do the 'run report' command removes itself from the form?
I have started setting the Enabled = .f. so they can't accidently reclick it on reports that may take a while to generate the cursor.
cmdDoReport.Click()
cCommandButton::Click()
this.Enabled = .f.
this.parent.Execute( "REPORT", this.parent.opgReportDestination.Value, this.parent.chkSummaryLines.Value )
this.Enabled = .t.
>When you launch a modeless child form, how must i do if i want process stop untill user finish work in the child form ?
If the child form has no child forms you could make it modal if you require them to finish the child form work before going back to the parent form.
In the apps I'm working on now when the child form launches it disables the control that launched it, which just prevents them from getting multiple instances of the child form running. But they can launch one of each of the child forms, there are 10 of them in one app, and switch back and forth between the child forms and the parent because they are all modeless.