In subform producten zichbaar maken op selectie datum interval

Status
Niet open voor verdere reacties.

LodewijkG

Gebruiker
Lid geworden
6 dec 2012
Berichten
98
Beste Helpmij leden,

Ik gebruik nu de volgende code voor het zichtbaar maken van producten met een geldige prijs.
Code:
Private Sub Form_Current()   
If Me.NewRecord Then
        Me.cboProduct.RowSource = "SELECT [ProductId], [**Code], [Description], [IMO], [tblPrice.CompanyId], [SupplierCode], [MinQ], [PriceId], [Price], [ValidFrom], [ValidUntill], [Name], [PrefLabel], [PrefPackaging] FROM [qryProductPrice] WHERE [ValidUntill] > CDate(" & CDbl(Date) & ") ORDER BY [**Code] ASC"
    Else
        Me.cboProduct.RowSource = "SELECT [ProductId], [**Code], [Description], [IMO], [tblPrice.CompanyId], [SupplierCode], [MinQ], [PriceId], [Price], [ValidFrom], [ValidUntill], [Name], [PrefLabel], [PrefPackaging] FROM [qryProductPrice]"
    End If
    Me.cboProduct.Requery
End Sub

Met deze code wordt bij het (voor het eerst) selecteren van de combobox, alleen de prijs met een geldige datum zichtbaar. Als er dan een keuze is gemaakt en hier opnieuw op wordt geklikt worden alle prijzen, dus ook de verlopen prijzen zichtbaar. dit wel met een functie, namelijk dat als er naar een oudere order gezocht wordt dat de prijzen daar ook zichtbaar zijn.

Nu vroeg ik mij af of het mogelijk is om bovenstaande code aan te passen zodat oude prijzen wel in het subform zichtbaar blijven alleen dat wanneer er op de combobox geklikt wordt er ten alle tijde alleen geldige prijzen voor selectie zichtbaar blijven?
 
Ik zou de rowsource van de keuzelijst aanpassen bij het kiezen.

Code:
Const strProduct As String = "SELECT [ProductId], [**Code], [Description], [IMO], [tblPrice.CompanyId], [SupplierCode], [MinQ], " _
        & "[PriceId], [Price], [ValidFrom], [ValidUntill], [Name], [PrefLabel], [PrefPackaging] FROM [qryProductPrice] "

Code:
Private Sub Form_Current()
    
    If Me.NewRecord Then
        Me.cboProduct.RowSource = strProduct & "WHERE [ValidUntill] > CDate(" & CDbl(Date) & ") ORDER BY [**Code] ASC"
    Else
        Me.cboProduct.RowSource = strProduct
    End If
    Me.cboProduct.Requery

End Sub

Code:
Private Sub cboProduct_Enter()
    With Me.cboProduct
        .RowSource = strProduct & "WHERE [ValidUntill] > CDate(" & CDbl(Date) & ") ORDER BY [**Code] ASC"
        .Requery
    End With
End Sub

Code:
Private Sub cboProduct_Exit(Cancel As Integer)
    With Me.cboProduct
        .RowSource = strProduct
        .Requery
    End With
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan