[AccessD] Open Report from MainForm based on SubForm

Max Wanadoo max.wanadoo at gmail.com
Wed Oct 14 09:00:16 CDT 2009


>>I checked the names & the control sources and they all show VehicleInspID;

What is this field called in the data source of the report you are
opening?  It needs to match that.  It might be FKxyzID in the Form but
be called xyzID in the Report.  They need to match.

What is the error that is coming up.?

max



On 14/10/2009, Hollis, Virginia <hollisvj at pgdp.usec.com> wrote:
> You have it all named correctly. I changed "MyRpt" is all I had to
> change.
>
> **********
>
> you have to put in YOUR OWN names/values. I do not know what you call
>
> it.  I was showing the syntax and format.
>
>
>
> max
>
>
>
> Subject: [AccessD] Open Report from MainForm based on SubForm
>
>
>
> I checked and the subform is named correctly (frm_VehicleInspectionSub).
> The first part of the code sets the focus to the subform & this works.
>
>
>
> With your example I get - "Can't find field VehicleInspID referred to in
> your expression". I checked the names & the control sources and they all
> show VehicleInspID;
>
> ********
>
> The syntax you want is:-
>
> DoCmd.OpenReport "MyRpt", acViewPreview, , "VehicleInspID=" &
> "Forms![frm_VehicleInspection]![frm_VehicleInspectionSub].Form![VehicleI
> nspID]="
> & me![VehicleInspID]
>
> Virginia, make SURE that your have the correct NAME of the sub form.
> Often people think they know what it is called but it isnt called that
> at all.  Check the data AND "Other" Tab in the properties.
>
> I have a sub form where the DataSource = "MCM_PeoplePopNAD" But I call
> the form (Under the Other Tab in the properties) "PeoplePopSub2"
>
> Max
>
> *********
> I have a command button on the main form that I want to open a report
>  filtered to one record based on a value on the SubForm.
>
>  frm_VehicleInspection (mainform)
>  frm_VehicleInspectionSub (subform)
>  rpt_VehicleInspection (report to open)
>  VehicleInspID is the key to open the report.
>
>
>
>  ****************
>
>  On Error GoTo Err_cmdPrint_Click
>      Dim stDocName As String
>      Dim stLinkCriteria As String
>  'If
> IsNull(Forms!frm_VehicleInspection.frm_VehicleInspectionSub!VehicleID)
>  Then
>   '       MsgBox "You must must enter a record before printing.",
>  vbExclamation + vbOKOnly, "Entry Required"
>
>    '    Exit Sub
>  'End If
>   '   vbresponse = acDataErrContinue
>  '    DoCmd.RunCommand acCmdSaveRecord
>
>      stDocName = "rpt_VehicleInspection"
>
>      Forms![frm_VehicleInspection]![frm_VehicleInspectionSub].SetFocus
>
>  This didn't work (it opens the report, but shows all the records on the
>  report): 'DoCmd.OpenReport stDocName, acPreview, ,
>
> "Forms![frm_VehicleInspection]![frm_VehicleInspectionSub].Form![VehicleI
>  nspID]=" &
>
>
> Forms![frm_VehicleInspection]![frm_VehicleInspectionSub]![VehicleInspID]
>
>   This didn't work:   'DoCmd.OpenReport stDocName, acPreview, ,
>
> "Forms![frm_VehicleInspection]![frm_VehicleInspectionSub].Form![VehicleI
>  nspID]=" & Me![VehicleInspID]
>
>  This didn't work either:    DoCmd.OpenReport stDocName, acPreview, ,
>
> "Forms![frm_VehicleInspection]![frm_VehicleInspectionSub].Form![VehicleI
>  nspID]=" & strDocName!VehicleInspID.[VehicleInspID]
>
>
>  Exit_cmdPrint_Click:
>      Exit Sub
>
>  Err_cmdPrint_Click:
>
>      MsgBox Err.Description
>
>      Resume Exit_cmdPrint_Click
>
>  End Sub
>
>  Virginia
>
>
>
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>



More information about the AccessD mailing list