Jumat, 31 Mei 2013

Re: [MS_AccessPros] How am I to tell the report to use the form�s record source?

 



Thanks Duane. It works perfectly.

I tried another version of displaying records on the (Continuous) form. However I can't figure out why it keeps displaying the same record while it should move to the next. I suspected the MoveNext statement wasn't placed correctly. was it? Phucon.

RANCH Rancho grande Sergio Gutiérrez Sales Representative Buenos Aires 1010 Argentina
RANCH Rancho grande Sergio Gutiérrez Sales Representative Buenos Aires 1010 Argentina
RANCH Rancho grande Sergio Gutiérrez Sales Representative Buenos Aires 1010 Argentina

Private Sub cboCountry_AfterUpdate()

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim strSQL As String

strSQL = "SELECT distinct pkeyCustomerID, strCompanyName, strContactName, strContactTitle, strCity, strRegion, " & _
"strPostalCode, strCountry " & _
"FROM qryCustomers WHERE strCountry= " & Chr$(34) & Me.cboCountry & Chr$(34) & ""

Set db = CurrentDb
Set rs = db.OpenRecordset(strSQL, dbOpenDynaset)

Me.RecordSource = strSQL

If Not rs.EOF Then
Do
With Me
.pkeyCustomerID = rs!pkeyCustomerID
.strCompanyName = rs!strCompanyName
.strContactName = rs!strContactName
.strContactTitle = rs!strContactTitle
.strCity = rs!strCity
.strRegion = rs!strRegion
.strPostalCode = rs!strPostalCode
.strCountry = rs!strCountry
End With
rs.MoveNext
Loop Until rs.EOF
End If

rs.Close
Set rs = Nothing
Set db = Nothing

End Sub

--- In MS_Access_Professionals@yahoogroups.com, Duane Hookom <duanehookom@...> wrote:
>
> Try,
>
> Private Sub cmdOpenRpt_Click()
>  
>    Dim strWhere as String
>    strWhere = Me.Filter
>    DoCmd.OpenReport "RptCustomers", acViewPreview, ,strWhere , acWindowNormal
>
> End Sub
>
> Duane Hookom MVP
> MS Access
>
> ----------------------------------------
> > From: saigonf7q5@...
> >
> > Hello Duane
> >
> > Here's the 2 procedures that in the form.
> >
> > combo box rowsource:
> > SELECT DISTINCT qryCustomers.strCountry FROM qryCustomers;
> >
> > criteria which user enters:
> > Private Sub cboCountry_AfterUpdate()
> >
> > Me.Filter = "strCountry = " & Chr$(34) & Me.cboCountry & Chr$(34) & ""
> > Me.FilterOn = True
> >
> > 'Debug.Print Me.Filter
> >
> >
> > End Sub
> >
> >
> > Private Sub cmdOpenRpt_Click()
> >
> > Dim strCntryName As String
> > strCntryName = Me.cboCountry
> >
> > DoCmd.OpenReport "RptCustomers", acViewPreview, , , acWindowNormal, strCntryName
> >
> > End Sub
> >
> >
> >
> > --- In MS_Access_Professionals@yahoogroups.com, Duane Hookom <duanehookom@> wrote:
> >>
> >> Phucon,
> >>
> >> Tell us how you are using the combo box to filter the form records. I expect you could use a similar expression as a WHERE CONDITION in the DoCmd.OpenReport method.
> >>
> >> Duane Hookom MVP
> >> MS Access
> >>
> >> ----------------------------------------
> >>> From: saigonf7q5@
> >>>
> >>> My form has a combo box for filtering records, and a Cmdbutton to open a report.
> >>>
> >>> I have been trying to pass the form's OpenArgs to the Report_Open procedue, so the report's Recordsource can base on the criteria that the user selected from the form. How am I to tell the report to use the form's record source?
> >>>
> >>> Below's what I have been trying to do.
> >>>
> >>> Private Sub cmdOpenRpt_Click()
> >>>
> >>> Dim strCntryName As String
> >>>
> >>> strCntryName = Me.cboCountry
> >>>
> >>> DoCmd.OpenReport "RptCustomers", acViewPreview, , , acWindowNormal, strCntryName
> >>>
> >>> End Sub
> >>>
> >>> Private Sub Report_Open(Cancel As Integer)
> >>> Me.OpenArgs
> >>> End Sub
> >>>
> >>> Thanks
> >>> Phucon
> >>
> >
> >
> >
> >
> > ------------------------------------
> >
> > Yahoo! Groups Links
> >
> >
> >
>

__._,_.___
Reply via web post Reply to sender Reply to group Start a New Topic Messages in this topic (5)
.

__,_._,___

Tidak ada komentar:

Posting Komentar