SELECT curReport browse thisform.cmdPrint.SetFocus()>It could be two reasons. First of all, you shouldn't do
>Select mycursor >Thisform.mybutton.setfocus >Report form >>because moving focus fires some events (grid.arcc, at least) and some code there can change active area. So you should at least Select mycursor right before Report Form.
>>thisform.cmdPrint.visible = .t. >>thisform.cmdPrint.SetFocus() >>SELECT cDescription as cSoftware, ; >>000000 as nRec1, iActive_Flag as iSoftware_active ; >>FROM crsSoftware ORDER BY 1 INTO CURSOR curSoftware readwrite >> >>replace ALL nRec1 WITH RECNO() IN curSoftware >> >>SELECT cDescription as cHardware, ; >>000000 as nRec2, iActive_Flag as iHardware_active ; >>FROM crsHardware ORDER BY 1 INTO CURSOR curHardware readwrite >> >>replace ALL nRec2 WITH RECNO() IN curHardware >> >>SELECT cDescription as cOther, ; >>000000 as nRec3, iActive_Flag as iOther_active ; >>FROM crsOther ORDER BY 1 INTO CURSOR curOther readwrite >> >>replace ALL nRec3 WITH RECNO() IN curOther >> >>SELECT * from curSoftware cs FULL JOIN curHardware ch ; >>ON cs.nRec1 = ch.nRec2 FULL JOIN curOther co ON cs.nRec1 = co.nRec3 INTO CURSOR curReport >>SET NULLDISPLAY TO "" >>USE IN curOther >>USE IN curSoftware >>USE IN curHardware >> >>SELECT curReport >>*!* browse >> >>REPORT FORM Software_Hardware_Other PREVIEW >> >>USE IN curReport >>thisform.cmdPrint.Visible = .f. >> >>