Avatar billede chrisrj Forsker
13. maj 2005 - 08:33 Der er 43 kommentarer og
1 løsning

Store problemer med SELECT

Jeg har store problemer med at lave mit udtræk korrekt.

Jeg prøver at vise en liste(koden virker 100%) over den tid en medarbejder har brugt på forskellige opgaver i løbet af en måned.

Jeg har i forvejen et udtræk der viser det samme for alle medarbejdere sammenlagt. Det virker 100%.

Men det udtræk jeg har lavet, enten glemmer at sætte de "tomme" dage ind, eller også sætter dem ind forkerte steder.

Min select for een opgave ser således ud:
sql = "SELECT WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours " & _
    "FROM workday WD2 LEFT JOIN (employeeday ED " & _
    "INNER JOIN workday WD ON ED.workdayid=WD.id " & _
    "INNER JOIN timespent TS ON TS.employeedayid=ED.id " & _
    "INNER JOIN assignment A ON TS.assignmentid=A.id AND A.taskid=" & rs("id")  & _
    " and ts.t_hours>0) " & _
    "ON WD2.id=WD.id " & _
    "WHERE WD2.workmonthid=" & SQLType( CLng(arrValue(rpt_value_monthid)) )  & _
    " and (A.employeeid=" & arrValue(rpt_value_empid) & " OR A.employeeid IS NULL) GROUP BY WD2.name, WD2.dato " & _
    "ORDER BY WD2.dato"

Den bliver så kørt igennem for alle opgaver en given medarbejder har.
Men hvorfor kommer de tomme dage ind forkert??
Jeg har siddet og bakset med det her i snart en måned, derfor de mange points. :-/
Sig endelig til, hvis jeg skal uddybe det mere.
Avatar billede chrisrj Forsker
17. maj 2005 - 08:41 #1
Er der virkelig ingen der kan/vil hjælpe??
Avatar billede kichian Nybegynder
17. maj 2005 - 15:34 #2
Hej,
Har du lavet en Response.Write og set om sqlen er hvad du forventer?.

Kan du ikke vise den sql som viser alle medarbejdere. Og virker den også korrekt for dage uden rækker i employeeday?
Avatar billede chrisrj Forsker
17. maj 2005 - 20:08 #3
Hejsa :)

Ja, det har jeg, som sagt virker koden fint. Jeg har også prøvet at køre den direkte på DBen.


Jeg er ikke på arbejdet, så jeg kan ikke vise dig den nu. Men imorgen tidlig kommer den STRAKS på! ;)

Det skal lige siges at jeg IKKE er den store haj til joins...så du skal ikke spørge mig om hvorfor den ser ud som den gør :)

Hvis det ville hjælpe på løsningen af problemet kan jeg godt skrive tabelstrukturen.
Avatar billede chrisrj Forsker
18. maj 2005 - 08:27 #4
Her er min sql for alle medarbejdere:

Og ja, den virker også når ingen har arbejdet i den pågældende måned.

sql = "SELECT Count(ED.id) as antalmedarb, WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours " & _
    "FROM workday WD2 LEFT JOIN (employeeday ED " & _
    "INNER JOIN workday WD ON ED.workdayid=WD.id " & _
    "INNER JOIN timespent TS ON TS.employeedayid=ED.id " & _
    "INNER JOIN assignment A ON TS.assignmentid=A.id AND A.taskid=" & rs("id") & _
    " ) " & _
    "ON WD2.id=WD.id " & _
    "WHERE WD2.workmonthid=" & SQLType( CLng(arrValue(rpt_value_monthid)) )  & _
    " GROUP BY WD2.name, WD2.dato " & _
    "ORDER BY WD2.dato"
Avatar billede kichian Nybegynder
19. maj 2005 - 10:40 #5
Hvis din SQL virker når du kører den direkte på DBen, så er det nærliggende at fejlen ligger  i din ASP side.
Hvis du fjerner "OR A.employeeid IS NULL", kommer data så rigtigt ud på siden?
Avatar billede chrisrj Forsker
19. maj 2005 - 12:29 #6
Du misforstår...

Den der viser alle medarbejdere virker.

Den der viser een medarbejdere virker ikke.

Og nej, hvis jeg fjerner den del kommer det slet ikke korrekt ud.
Avatar billede kichian Nybegynder
21. maj 2005 - 07:06 #7
Hvor virker den der kun viser een medarbejder ikke? Er det både når du kører den direkte på databasen og fra din ASP side at den ikke giver det korrekte resultat?

Har du lavet en Responsen.Write(sql) og kørt resultatet direkte på databasen?

Hvordan ved du at resultatet er forkert? Har du da timer på en bruger en dag, hvor forespørgslen på alle medarbejdere intet viser?
Avatar billede kichian Nybegynder
21. maj 2005 - 07:25 #8
En måde at verificere resultatet er at tilføje A.employeeid til "alle medarbejdere". Både i felt-delen og group by delen, og se hvad den returnerer for en udvalgt bruger.
Avatar billede chrisrj Forsker
21. maj 2005 - 09:39 #9
Grunden til at jeg ved den ikke returnere det rigtige er, at tiderne ikke kommer ud på de korrekte dage.

Mit skema kan f.eks. se sådan ud:

opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5


Men skulle se sådan ud:

opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, , 2, 5.5, 7.5

Du behøver ikke spørge til om min kode virker. Det gør den. Jeg skal "bare" have rettet min sql så den bliver korrekt.
Og som sagt virker sql'en til alle medarbejdere 110 % uanset om der er nogle tider i perioden eller ej.
Avatar billede kichian Nybegynder
21. maj 2005 - 13:18 #10
Og forskellen er??
Avatar billede chrisrj Forsker
21. maj 2005 - 13:23 #11
At der er en tom post ud for den første fredag, hvor der IKKE er arbejdet på opgaven - eller noget anden for den sags skyld.
Avatar billede kichian Nybegynder
21. maj 2005 - 13:30 #12
Ah.. blank lørdag.
Nå. Men når du kører din sql direkte på serveren, har du set at det er det forkerte resultat det returnerer?? For jeg er tilbøjelig til at tro at det er din kode som ikke håndterer NULL tothours korrekt. Har du set dage uden timer for "alle medarbejdere"?
Avatar billede kichian Nybegynder
21. maj 2005 - 14:48 #13
Mit absolut sidste foreslag er at bruge:
SELECT WD2.name, WD2.dato, coalesce(Sum( TS.a_hours ),0) as tothours

i stedet for

SELECT WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours
Avatar billede chrisrj Forsker
22. maj 2005 - 00:05 #14
"Ah.. blank lørdag"
Øh, du mener vist fredag - der er ingen lørdage i mit eksempel :)

Hvad gør coalesce() funktionen?
Avatar billede chrisrj Forsker
23. maj 2005 - 08:34 #15
Jeg har lige prøvet dit forslag...

Det gør ingen forskel, udover at der nu står 0 de steder hvor der ikke stod noget...

Jeg har også lige tjekket(igen) hvad sql'en giver direkte på db'en, og resultatet er noget underligt...
Nogle af opgaverne komme ok ud, andre gør ikke!?


"Har du set dage uden timer for "alle medarbejdere"?"
Ja, de dage hvor der ikke er nogen på arbejde...
Avatar billede kichian Nybegynder
23. maj 2005 - 09:44 #16
Fredag er altså med nu!!, hvilket er løsningen på din kommentar "21/05-2005 09:39:14"
Hvis dette er korrekt, så kan din kode ikke håndtere NULL værdier rigtigt.

Så vidt jeg kan læse af dit svar, så får du nu :
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, 0, 2, 5.5, 7.5

I stedet for:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, , 2, 5.5, 7.5
som du forventer, og ikke
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5
som du fik tidligere.

Coalesce() erstatter NULL med en given værdi, her 0.

Derudover skriver du i sidste kommentar at nogle opgave kommer underligt ud. Dette kan godt skyldes "fejl" i data. Men hvis du kan vise tabeldefinitionerne for de relevante tabeller, så kan jeg da godt lige se på det.
Avatar billede chrisrj Forsker
23. maj 2005 - 12:37 #17
Nej, nej.... INGENTING er blevet bedre...


Jeg får stadig:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5


Tabellerne kommer her:
CREATE TABLE employeeday
(
  id int8 NOT NULL,
  employeeid int8 NOT NULL,
  workdayid int8 NOT NULL,
  arrival timestamp,
  departure timestamp,
  CONSTRAINT emplyeeday_id PRIMARY KEY (id),
  CONSTRAINT employee_fk FOREIGN KEY (employeeid) REFERENCES employee (id) ON UPDATE RESTRICT ON DELETE RESTRICT,
  CONSTRAINT workday_fk FOREIGN KEY (workdayid) REFERENCES workday (id) ON UPDATE RESTRICT ON DELETE RESTRICT
)
WITHOUT OIDS;


CREATE TABLE "assignment"
(
  id int8 NOT NULL,
  taskid int8 NOT NULL,
  employeeid int8 NOT NULL,
  deletedate varchar(23),
  CONSTRAINT assignment_id PRIMARY KEY (id),
  CONSTRAINT employee_fk FOREIGN KEY (employeeid) REFERENCES employee (id) ON UPDATE RESTRICT ON DELETE RESTRICT,
  CONSTRAINT task_fk FOREIGN KEY (taskid) REFERENCES task (id) ON UPDATE RESTRICT ON DELETE RESTRICT
)
WITHOUT OIDS;


CREATE TABLE timespent
(
  id int8 NOT NULL,
  assignmentid int8 NOT NULL,
  employeedayid int8 NOT NULL,
  t_hours numeric(4,2),
  a_hours numeric(4,2),
  approved varchar(1) NOT NULL DEFAULT 0,
  CONSTRAINT timespent_id PRIMARY KEY (id),
  CONSTRAINT assignment_fk FOREIGN KEY (assignmentid) REFERENCES "assignment" (id) ON UPDATE RESTRICT ON DELETE RESTRICT,
  CONSTRAINT employeeday_pk FOREIGN KEY (employeedayid) REFERENCES employeeday (id) ON UPDATE RESTRICT ON DELETE RESTRICT
)
WITHOUT OIDS;

CREATE TABLE workday
(
  id int8 NOT NULL,
  name varchar(255),
  workmonthid int8 NOT NULL,
  dato date,
  CONSTRAINT workday_id PRIMARY KEY (id),
  CONSTRAINT workmonthid_fk FOREIGN KEY (workmonthid) REFERENCES workmonth (id) ON UPDATE RESTRICT ON DELETE RESTRICT
)
WITHOUT OIDS;


Sig endelig til hvis du vil se flere tabeller. :)
Avatar billede kichian Nybegynder
23. maj 2005 - 14:22 #18
"Det gør ingen forskel, udover at der nu står 0 de steder hvor der ikke stod noget...
"

Og hvor er det lige henne? Har du rettet sql i ASP?
Avatar billede chrisrj Forsker
24. maj 2005 - 08:56 #19
Altså:
Du forslog at jeg brugte dette istedet:
SELECT WD2.name, WD2.dato, coalesce(Sum( TS.a_hours ),0) as tothours

Det gjorde jeg så, og derved fik jeg nuller der hvor der ingenting stod før.

Eksempel:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5, 0, 0,....


Hvor det med min gamle sql blev således:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5, , ,....

Begge dele er lige forkerte.


Korrekt ville se således ud:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, , 3.5, 2, 5.5, 7.5, , ,....

Jeg håber du forstår problemet helt nu. :)
Avatar billede kichian Nybegynder
24. maj 2005 - 09:20 #20
Nå. Se det er jo noget helt andet. Der kommer jo rigtige blanke dage ud!! Undtagen for en specifik fredag.

1) Er den manglende fredag en arbejdsdag? Dvs. findes den i Weekday tabellen?

2) Er der andre fredage, hvor der ingen timer er på en employee? Hvordan bliver disse fredage vist?
Avatar billede kichian Nybegynder
24. maj 2005 - 09:24 #21
Og 1) skal være:
Er den manglende fredag en arbejdsdag? Dvs. findes den i Workday tabellen?
Avatar billede chrisrj Forsker
24. maj 2005 - 10:11 #22
Nå. Se det er jo noget helt andet. Der kommer jo rigtige blanke dage ud!! Undtagen for en specifik fredag.
Mja, det var jo bare et eksempel...nogle opgaver er helt anderledes.

Sådan bruger det se ud:
Eksempel:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, , 3.5, 2, 5.5, 7.5, , ,....
opgave 2, , 2, 4, , 3.5, , 5, 7.5, , ,....
opgave 3,  , , , , , 1, 4, 6, 5, ,....
....


Men det kommer sådan ud:
Eksempel:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5, , ,....
opgave 2, 2, 4, 3.5, 5, 7.5, , ,....
opgave 3, 1, 4, 6, 5, , , , , , ,.... <- disse tommer felter er IKKE bare flyttet bagved de nævnte timer - det er nogle andre tomme felter, hvis du forstår :)
....


1) Er den manglende fredag en arbejdsdag? Dvs. findes den i Workday tabellen?
Alle dage i øverste linie er i workday tabellen.

2) Er der andre fredage, hvor der ingen timer er på en employee? Hvordan bliver disse fredage vist?
Som sagt behøver det ikke være en fredag, men det kan være alle dage.
Men ja, der kan sagtens være flere dage hvor der ikke er registreret noget(kender du begrebet ferie? ;).
Avatar billede kichian Nybegynder
24. maj 2005 - 11:46 #23
Jeg kender nemlig godt til ferie.. Selvom jeg får får lidt af det.
Men nu har vi da fået afklaret at der for den specifikke fredag er workday data.

Nu observerer jeg at blanke datoer er fjernet, hvis der er timer efterfølgende. Er det korrekt?
Hvis der er sådan, er disse blanke datoer flyttet bagud i listen? Dvs. er der altid det samme antal dage pr opgave i din liste? For så er det et sorteringsproblem.
Avatar billede kichian Nybegynder
24. maj 2005 - 11:59 #24
Og det første man bliver blind på er øjnene ;-)
Du bliver ved med at vise data pr. OPGAVE. Men den sql du har vist er en sum pr. dag!!
Kan jeg ikke lige få vist den rigtige sql?
Avatar billede kichian Nybegynder
24. maj 2005 - 12:49 #25
Bare glem siste kommentar. Blindheden er vist ved at indtræde.
Avatar billede kichian Nybegynder
24. maj 2005 - 13:09 #26
Gad vide om postgres laver sjov med os. Når du udtrækker alle brugere har du en Count(ED.id) med i din felt liste.
Prøv for en lille test skyld at tilføje denne til din sql:
SELECT WD2.name, WD2.dato, Sum( TS.a_hours ), Count(TS.id) as antalregistreringer
Avatar billede chrisrj Forsker
24. maj 2005 - 13:18 #27
Nu observerer jeg at blanke datoer er fjernet, hvis der er timer efterfølgende. Er det korrekt?
Hvis der er sådan, er disse blanke datoer flyttet bagud i listen? Dvs. er der altid det samme antal dage pr opgave i din liste? For så er det et sorteringsproblem.
Blanke datoer?? Hvor ser du dem henne??
Der er ingen blanke datoer i systemet i den forstand at alle datoer som skal bruges er oprettet. Ellers ved jeg ikke liige hvad du tænker på...


Dagene oprettet udfra måneder, således at dagene passer til deres datoer.
Vi har funktion der opretter hele måneder af gangen, dvs. ALLE dage i en given måned findes altså i systemet - også helligdage.


Du bliver ved med at vise data pr. OPGAVE. Men den sql du har vist er en sum pr. dag!!
Ja, det skal summeres pr. dag. pr opgave.
Derfor bruges også et "...a.taskid=" & rs("id")
Hele sql-sætningen ligger inde i en løkke der kører alle opgaverne igennem.

Kan jeg ikke lige få vist den rigtige sql?
Den rigtige? Mener du den til alle medarbejdere:

sql = "SELECT Count(ED.id) as antalmedarb, WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours " & _
    "FROM workday WD2 LEFT JOIN (employeeday ED " & _
    "INNER JOIN workday WD ON ED.workdayid=WD.id " & _
    "INNER JOIN timespent TS ON TS.employeedayid=ED.id " & _
    "INNER JOIN assignment A ON TS.assignmentid=A.id AND A.taskid=" & rs("id") & _
    " ) " & _
    "ON WD2.id=WD.id " & _
    "WHERE WD2.workmonthid=" & SQLType( CLng(arrValue(rpt_value_monthid)) )  & _
    " GROUP BY WD2.name, WD2.dato " & _
    "ORDER BY WD2.dato"

eller....?
Avatar billede chrisrj Forsker
24. maj 2005 - 13:29 #28
Jeg har lige prøvet bruge dit forslag, men jeg får fejl når jeg prøver at udskrive den!?

if not rs.eof then
response.write "antalregistreringer: " & RS("antalregistreringer") & "<br>"
end if

"Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal."

hvorfor kommer den fejl?
Avatar billede kichian Nybegynder
24. maj 2005 - 13:37 #29
Kan du se mønstret:
Eksempel:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, BLANK , 3.5, 2, 5.5, 7.5, BLANK , BLANK ,....
opgave 2, BLANK , 2, 4, , 3.5, , 5, 7.5, BLANK , BLANK ,....
opgave 3,  BLANK , BLANK, BLANK, BLANK, BLANK, 1, 4, 6, 5, BLANK,....
....


Men det kommer sådan ud:
Eksempel:
opgave, mandag, tirsdag, onsdag, torsdag, fredag, mandag, tirsdag, onsdag, torsdag, fredag....
opgave 1, 5.5, 4, 6, 3.5, 2, 5.5, 7.5, BLANK, BLANK,....
opgave 2, 2, 4, 3.5, 5, 7.5, BLANK, BLANK,....
opgave 3, 1, 4, 6, 5, BLANK, BLANK, BLANK, BLANK, BLANK, BLANK,....

For opgave 2 og 3 er alle "blanke" dage fjernet indtil der kun forekomme "blanke" dage. Altså dage hvor der ikke er arbejdet på opgaven.

Har du prøver med Count(TS.id)?

Og så har i vel "kun" mandag til og med fredag i workday.
Avatar billede kichian Nybegynder
24. maj 2005 - 13:40 #30
Du skal ikke udskrive "antalregistreringer", det er bare for at fremtvinge en reel værdi på dage uden registreringer.

Men måske er der noget med længden af navnet. Prøv noget kortere, Fx antalreg
Avatar billede chrisrj Forsker
24. maj 2005 - 13:41 #31
Nåh, er det bare DET du mener? :)

For opgave 2 og 3 er alle "blanke" dage fjernet indtil der kun forekomme "blanke" dage. Altså dage hvor der ikke er arbejdet på opgaven.
Jeps! :)

Har du prøver med Count(TS.id)?
Øh, var det ikke lige det du forslog før? :)

Og så har i vel "kun" mandag til og med fredag i workday.
Nej, som sagt ALLE dage er i tabellen GOSÅ weekend og helligdage.
Avatar billede kichian Nybegynder
24. maj 2005 - 13:45 #32
Så du frasorteret weekend og helligdage i din kode!?.
Avatar billede chrisrj Forsker
24. maj 2005 - 13:46 #33
Du skal ikke udskrive "antalregistreringer", det er bare for at fremtvinge en reel værdi på dage uden registreringer.
nå, ok. Det gør ingen forskel, det er det samme.

Men måske er der noget med længden af navnet. Prøv noget kortere, Fx antalreg
Ingen forskel - virker stadig ikke

Så du frasorteret weekend og helligdage i din kode!?.
Nej, de skrives også ud til skærmen.
Avatar billede kichian Nybegynder
24. maj 2005 - 13:57 #34
Har lige siddet og set på vores dialog:

Hvordan ser opgave1 ud når du kører sqlen direkte på serveren?
Er det:
5.5, 4, 6, 3.5, 2, 5.5, 7.5, NULL, NULL,...
eller
5.5, 4, 6, NULL , 3.5, 2, 5.5, 7.5, BLANK , NULL, ...
Avatar billede chrisrj Forsker
24. maj 2005 - 14:14 #35
Sådan:
5.5, 4, 6, 3.5, 2, 5.5, 7.5, NULL, NULL,...


Hvor der ret faktisk også burde være tomme dage først....
Avatar billede kichian Nybegynder
24. maj 2005 - 21:11 #36
Prøv de 2 følgende ændringer:
1)
Ret feltlisten til og se om det giver det rigtige resultat.
SELECT Count(ED.id) as antalmedarb, WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours


2)
Dette er lidt af et gæt!

Prøv at rette:
    "FROM workday WD2 LEFT JOIN (employeeday ED " & _
    "INNER JOIN workday WD ON ED.workdayid=WD.id " & _

Til:
    "FROM workday WD2 LEFT JOIN (workday WD " & _
    "INNER JOIN employeeday ED ON ED.workdayid=WD.id " & _

Hvilken version af Postgres kører dette på?

Jeg er tæt på at dømme dette til at være en bug i Postgres
Avatar billede chrisrj Forsker
25. maj 2005 - 08:26 #37
Intet af det gør nogen forskel...

Det er version 8.0

"Jeg er tæt på at dømme dette til at være en bug i Postgres"
Hvorfor det? Det virker jo for alle medarbejdere....
Avatar billede kichian Nybegynder
25. maj 2005 - 15:03 #38
Problemet er at der rigtig nok kommer tomme dage med i udtrækket. Men desværre ikke hvis de er efterfulgt af dage med timer. Dette vurderer jeg til umiddelbart at være en bug, da der ikke sorteres på tothours.

Og du er sikker på at der ikke er samme problematik med alle medarbejdere?

Du kører med seneste version af 8?

For at komme så tæt på alle medarbejdere mht. summering, kan du prøve at omskrive din sql så selecteringen på medarbejder kommer ind i den "indre" tabel:

sql = "SELECT WD2.name, WD2.dato, Sum( TS.a_hours ) as tothours " & _
    "FROM workday WD2 LEFT JOIN (employeeday ED " & _
    "INNER JOIN workday WD ON ED.workdayid=WD.id " & _
    "INNER JOIN timespent TS ON TS.employeedayid=ED.id " & _
    "INNER JOIN assignment A ON TS.assignmentid=A.id AND A.taskid=" & rs("id")  & _
    " and ts.t_hours>0" & _
    " and A.employeeid=" & arrValue(rpt_value_empid) & ") " & _
    "ON WD2.id=WD.id " & _
    "WHERE WD2.workmonthid=" & SQLType( CLng(arrValue(rpt_value_monthid)) )  & _
    " GROUP BY WD2.name, WD2.dato " & _
    "ORDER BY WD2.dato"
Avatar billede chrisrj Forsker
25. maj 2005 - 18:22 #39
"Og du er sikker på at der ikke er samme problematik med alle medarbejdere?"
110 % sikker - påskedagene er med på skemaet og der er ingen timer i de dage...

"Du kører med seneste version af 8?"
Øh, 8.0 er vel 8.0? Jeg ved ikke om det er den sidste - jeg hentede den for ca. 1½-2 måneder siden.

Jeg prøver den sql på mandag - jeg har weekend fra idag af. :p
Avatar billede kichian Nybegynder
25. maj 2005 - 22:52 #40
Jamen, så god Weekend da :) Seneste 8.0 er 8.0.3
Avatar billede chrisrj Forsker
26. maj 2005 - 01:11 #41
Hmmm... jeg kommer liige til at tænke på noget.... :)
Der er vel ingen grund til at kører med den aller nyeste version på min test server, hvis den version der kører sitet(live) har en tidligere version...vel? ;)
Avatar billede kichian Nybegynder
26. maj 2005 - 09:15 #42
Nej da. Bedst at have samme fejl begge steder ;-) Og du har ret i at test- og produktionsmiljø bør være så ens som muligt.

Men der er rettet nogle sikkerheds issues, så du bør jo nok lige undersøge om din produktionsdatabase er truet.
Avatar billede chrisrj Forsker
26. maj 2005 - 09:46 #43
Ja, det ville nok være en god ide. :)
Avatar billede chrisrj Forsker
30. maj 2005 - 08:43 #44
Det er satme stort! Det virker 110%!!! :D:D

Du har reddet ikke bare min dag, men min måned!! :):)

Jeg bukker og takker. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester