Query vraag

Status
Niet open voor verdere reacties.

old Hippy

Gebruiker
Lid geworden
24 mei 2008
Berichten
911
Hallo allemaal

Even wat de bedoeling is

mijn programma heeft twee datatafels.
Onbetaalde facturen en facturenvoldaan deze zijn voor een fysiotherapeut.
de verzekering betaald 9 behandelingen en ik wil dus bij de 8 behandeling een waarschuwing zo dat we de klant kunnen inlichten dat de volgen de behandeling de laatste is die de verzekering vergoed.
Dit werkt allemaal.

ik tel het aantal onbetaalde facturen op en ook de betaalde facturen op met een query van het klant nummer.
die tel ik op en bij 8 komt de waarschuwing.

Het probleem is dat als er nog facturen open staan van het voorgaande jaar hij deze ook mee telt. en als hij betaald word dus ook. de verzekering echter vergoed 9 behandelingen per jaar.
dus alles van 2009 mag niet meer meegeteld worden .

Ik wil dus graag dat alleen de facturen zowel de openstaande als de betaalde facturen
van het jaar 2010 worden opgeteld.
iemand een idee hoe dit te doen????
ik heb wel een jaar tabel in de tafels staan waar het jaartal van de factuur in staat van 2009 of 2010 is.

optel query voor klant openstaant
Code:
SELECT        COUNT(*) AS number
FROM            Facturen
WHERE        (Klantnummer = @klantnummer)

en voor voldaan
Code:
SELECT        COUNT(*) AS number
FROM            Overzicht
WHERE        (Klantnummer = @klantnummer)
 
Hi,
ik heb geprbeerd de vraag te begrijpen en mijn antwoord is dat je aan de WHERE clause een voorwaarde kan toevoegen. bijv: .. AND jaar ='2010'

Maar eh, wat bedoel je met datatafel of tafel in dit verband?
 
Hallo city guy
Bedankt voor je reactie.
ik bedoel

Gewwoon een database met openstaandefacturenTable en een betaaldeFactuurTable.
bijgaand afbeelding

Maar moet ik als ik het op jou manier doe dan volgend jaar mijn query aan passen.????:)
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    43,2 KB · Weergaven: 36
Ik weet niet precies hoe het zit met DataBase's maar als je ook gewoon de Datum opslaat kun je nagaan of het een ander jaar is?!
 
OK SuperABC en city guy

Bedankt voor de hulp zover
het werkt met de onderstaande query
maar dan moet ik elk jaar hem aanpassen.

DEmanier waarop ik de query oproep is deze
Code:
Me.TextBox4.Text = Me.FacturenTableAdapter.klantaantal1Query(KlantnummerTextBox1.Text)
OptelQuery
Code:
SELECT        COUNT(*) AS number
FROM            Overzicht
WHERE        (Klantnummer = @klantnummer) AND (Jaar = '2010')
 
Hallo city guy
Bedankt voor je reactie.
ik bedoel

Gewwoon een database met openstaandefacturenTable en een betaaldeFactuurTable.
bijgaand afbeelding

Maar moet ik als ik het op jou manier doe dan volgend jaar mijn query aan passen.????:)

Hi,
ja, volgend jaar aanpassen.
Maar daarvoor heb ik misschien ook een oplossing:

de query-string bouw je eerst op in een variabele. In de WHERE zorg je dat het jaar uit de systeemdatum komt. Daarna voer je query uit met de variabele.

Als je buiten het boekjaar werkt kun je ook een listbox maken met daarin

systeemjaar-1
systeemjaar
systeemjaar+1

Klik er 1 aan en verwerk die in de query. Het +1/-1 zet je er bij om eventueel te testen voor als je nog in het boekjaar zit

EDIT: Zelfs kun je als dat makkelijk is gewoon systeemjaar-1 in de query plaatsen. De variabele datummogelijkheid moet er zijn om eventueel correctie-selecties te doen!
 
Laatst bewerkt:
Je kunt het huidige jaar gewoon hier ergens vandaan halen hoor:

Code:
Date.Today.Year
 
Je kunt het huidige jaar gewoon hier ergens vandaan halen hoor:

Code:
Date.Today.Year

Hoi Superabc
uit nieuwsgierigheid, maar ik ken deze weergave niet. Waar komt die vandaan?
 
Laatst bewerkt:
Hi SuperABC en city guy
Heelveel dank voor jullie hulp ben er zeer blij mee.
het probleem opgelost

ik heb de query aan gepast als volgt
Code:
SELECT        COUNT(*) AS number
FROM            Facturen
WHERE        (Klantnummer = @klantnummer) AND ([COLOR="Red"]Jaar = @Jaar[/COLOR])

de aanroep van de query als volgt
Code:
  Me.TextBox4.Text = Me.FacturenTableAdapter.klantaantal1Query(KlantnummerTextBox1.Text, [COLOR="red"]TextBox10.Text[/COLOR])

heb de systeem data en de zittings datum van elkaar afgetrokken.
de textbox waar dit inkomt geeft een 1 of 0 als hij is nul voerd hij de query uit.

dus dit is het resultaat.
Code:
 Try
            [COLOR="red"]TextBox10.Text = Year(Zitting1TextBox.Text).ToString 'maak zitting jaar[/COLOR]  
          TextBox11.Text = Jaartext.Text - TextBox10.Text 'geef verschil 1 of 0
            If TextBox11.Text = 0 Then 'voer Query uit
                Me.TextBox4.Text = Me.FacturenTableAdapter.klantaantal1Query(KlantnummerTextBox1.Text, [COLOR="red"]TextBox10.Text[/COLOR])
                Me.TextBox5.Text = Me.OverzichtTableAdapter.AantalklantenQuery(KlantnummerTextBox1.Text, [COLOR="red"]TextBox10.Text[/COLOR])
                           Else
                TextBox4.Text = Nothing
                TextBox5.Text = Nothing
                TextBox6.Text = Nothing
            End If

        Catch ex As Exception
         Exit sub        
  End Try

Groet een dankbare Hippy
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan