[ASP] Datums weergeven welke niet in database voorkomen

Pagina: 1
Acties:

  • Davidoff402
  • Registratie: Oktober 2000
  • Laatst online: 24-03-2022

Davidoff402

The more you tweak....

Topicstarter
Beschrijving:

Bijna iedere dag voegt iemand zijn gewerkte uren toe aan een database.
Hierbij wordt o.a. de datum vastgelegd en een urenaantal.
Hij kan ook zien op welke dagen hij anders dan 8 uur heeft ingevoerd.

Het probleem:

In de bestaande SQL database staan alle data waarop geschreven is, maar niet de data waarop helemaal niks is ingevuld. (weekends bijvoorbeeld)

Ik wil juist de data welke niet in de database staan (vanaf de eerst geschreven datum) laten afdrukken op het scherm.
De zaterdagen en zondagen laat ik er daarna wel uit met een WeekDay() functie o.i.d.

Zo kan de persoon zien op welke dagen hij vergeten is de uren in te voeren.

Kan iemand mij helpen hoe ik dit het beste aan kan pakken?

Sempron 3800+ 8k9a7i


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 22:55

TeeDee

CQB 241

SELECT * from blaat WHERE Dag = '' ?

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Wellicht kun je iets meer informatie geven...?

Zoals: Om wat voor database gaat het ?
TeeDee slaat de spijker deels op z'n kop: de database verantwoordelijk is een hele makelijke oplossing, maar niet de meest nette...

Vertel eerst maar waar je het in gaat maken !

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 23-08 11:08

Freee!!

Trotse papa van Toon en Len!

Hulp-tabel met werkdagen? Makkelijk genoeg te maken en vullen.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


  • Davidoff402
  • Registratie: Oktober 2000
  • Laatst online: 24-03-2022

Davidoff402

The more you tweak....

Topicstarter
Er is altijd een datum ingevuld bij een item.
Ik zou dus iedere geschreven datum moeten vergelijken met elkaar en kijken of er data tussen zitten. De datums die ertussen zitten wil ik dus weergeven.

Sorry, de database is SQL

[ Voor 7% gewijzigd door Davidoff402 op 01-04-2003 11:09 ]

Sempron 3800+ 8k9a7i


  • Davidoff402
  • Registratie: Oktober 2000
  • Laatst online: 24-03-2022

Davidoff402

The more you tweak....

Topicstarter
Is het verstandig het volgende te doen?

De volgende geschreven datum opslaan als datumTwee

Dan uitvoeren:

if (rs("Datum"))+1 = DatumTwee then
response.write("")
else
response.write rs("Datum")+1
end if

Zo kijk je of de eerste datum+1 dag gelijk is aan de volgende geschreven datum.
Zo niet, geef dan de datum weer van welke dag je mist.

Is hier een betere manier voor?

Sempron 3800+ 8k9a7i


Verwijderd

Nee, ik heb zelf ook een keer een soortgelijk probleem opgelost. Een machine die over een bepaalde periode verhuurd is. Dagen waarop ie niet verhuurd was, moeten ingevuld worden met 0.

Als je datgene wat hierboven staat een beetje goed uitwerkt (soort balanced-line), is dat een goeie manier. Denk er wel aan dat er in de else dan een moveNext komt, maar daarboven niet.

Verwijderd

Wat ik zou doen is:
Maak een gridje met de bepaalde tijd.
Haal je record set op voor de bepaalde tijd.

Loop dan je recordset door en vul dan de grid met de data die voorkomen in je recordset.

  • Davidoff402
  • Registratie: Oktober 2000
  • Laatst online: 24-03-2022

Davidoff402

The more you tweak....

Topicstarter
Hmm, maar dat is wel balen want dan moet je iedere keer je loop uitvoeren totdat je gelijk zit met de volgende geschreven datum.

Het probleem is ook dat de database terug gaat tot '97.

Er zitten dus ongeveer 50*365*6 entries in

Sempron 3800+ 8k9a7i


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Vrij simpel. Haal eerst alle records op vanaf een bepaalde datum, en ga dan met een datum en DateDiff door alle dagen lopen. Bij elke dag Filter instellen en kijken of je records tegenkomt. Zo niet, mis je iets.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?

Pagina: 1