/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Vagtplan - 3
Fra : Jørn Andersen


Dato : 19-06-01 03:33

Hej,

Jeg er ved at lave nogle ASP-sider med en vagtplan til min
arbejdsplads (ja, det tager sin tid ...).

Mit problem er nu, at jeg gerne vil have en oversigt i tabelform, der
viser alle vagter i en given periode (fx en uge eller en måned) -
noget a la en krydstabulering i Access (97).

Jeg har en tblMedarbejdere (nøgle: medarbID) og en tblTidtype (nøgle:
tidtypeID), som lister hhv. medarbejdere og de forskellige vagt- og
andre tidstyper (fx ferie o.l.).

Disse har så en mange-til-mange-relation gennem en tblVagtskema
(nøgle: intervalID), som bl.a. indeholder dato/tid-felterne "start" og
"slut", der angiver vagtperiodens start og sluttidspunkt.

Det jeg ønsker er en tabelopstilling med navne nedad og dage henad,
hvor skæringsfelterne skal vise relevante intervalID'er.

Noget lignende dette (Brug Fixed Pitch - fx Courier):

Man Tir Ons Tor Fre Lør Søn
Jens 17 15 28
Hans 11 14
Niels 23 16 24 25 26
Per 18 12

(tallene er intervalID'er)

Hvordan gør man det på en nogenlunde fornuftig måde?

I Access kan jeg gøre det med en krydstabulerings-forespørgsel, men
det kan jeg ikke finde ud af at lave i SQL.

Og egentlig er det heller ikke helt nok, da der gerne må være mulighed
for at have flere intervalID'er i samme felt (hvis fx en medarbejder
både har vagt og afspadserer samme dag).

Nogen ideer?
- Hvis jeg ikke har givet alle nødvendige oplysninger, så sig lige
hvad der mangler


Mvh. Jørn


--
Jørn Andersen
Brønshøj

 
 
Jesper Stocholm (19-06-2001)
Kommentar
Fra : Jesper Stocholm


Dato : 19-06-01 08:23

Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> Hej,
>
> Jeg er ved at lave nogle ASP-sider med en vagtplan til min
> arbejdsplads (ja, det tager sin tid ...).
>
[snip]
>
> Det jeg ønsker er en tabelopstilling med navne nedad og dage henad,
> hvor skæringsfelterne skal vise relevante intervalID'er.
>
> Noget lignende dette (Brug Fixed Pitch - fx Courier):
>
> Man Tir Ons Tor Fre Lør Søn
> Jens 17 15 28
> Hans 11 14
> Niels 23 16 24 25 26
> Per 18 12
>
> (tallene er intervalID'er)
>
> Hvordan gør man det på en nogenlunde fornuftig måde?
>
> I Access kan jeg gøre det med en krydstabulerings-forespørgsel, men
> det kan jeg ikke finde ud af at lave i SQL.
>
> Og egentlig er det heller ikke helt nok, da der gerne må være mulighed
> for at have flere intervalID'er i samme felt (hvis fx en medarbejder
> både har vagt og afspadserer samme dag).
>
> Nogen ideer?
> - Hvis jeg ikke har givet alle nødvendige oplysninger, så sig lige
> hvad der mangler
>

Hvis jeg læser det korrekt, så skal du bruge en T-SQL [1]/ ANSI-SQL
statement til at lave det der i Access svarer til PIVOT. Du bør nok
derfor kigge lidt på CROSS-TAB reports i BOL [2]. Den findes bla. på

http://msdn.microsoft.com/library/psdk/sql/ac_8_qd_14_04j7.htm

[1] Jeg går ud fra, at du udvikler på MSSQL
[2] Sjovt nok kan jeg ikke finde den i min BOL7 - men jeg er rimeligt
sikker på, at den findes i BOL2k



Jesper

--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408869
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste