Avatar billede maximus25 Nybegynder
05. august 2004 - 09:25 Der er 6 kommentarer og
1 løsning

Vis forskellige data alt efter hvem der logger på

Hejsa
Jeg har lavet et lille system som viser vagter over nogle medarbejdere.
Dataene bliver udtrukket fra et excel ark hvor lederen taster vagterne ind.
Det virker perfekt men nu tænkte jeg på at lave det sådan at man kun så sine agne vagter....man logger ind for at se vagtplanen og en session bliver sat!

En kolone fra excel arket ser sådan ud:

Anders
x
x

x

x
x

Hvor krydset symboliserer at han er på vagt.

Er der en der har et godt forslag??


Her er koden:


<%
    If Not Session("Adgang") = "Godkendt" Then
        Response.Redirect("../admin/login/login.asp?valg=forbudt")
    End If

%>

<%

Dim adoCn
Dim adoRs
Dim adoFld
Dim strQuery
Dim strResults
Dim ugenr

ugenr = request.QueryString("ugenr")

if request.QueryString("ugenr") = "" then
ugenr= weekNr (tmpDate)
end if

'response.write "ugenr " & ugenr

Const adUseClient = 3
Const adClipString = 2

Const strColDelim = "<font style=arial size=2 border=1 color=#ffffff>&nbsp;&nbsp;</td><td>"
Const strRowDelim = "</td></tr><tr><td>"

Set adoCn = CreateObject("ADODB.Connection")
Set adoRs = CreateObject("ADODB.Recordset")
With adoCn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .ConnectionString = _
        "Data Source="&Server.MapPath("excelark/Vagtplan.xls")&";" & _
          "Extended Properties=""Excel 8.0;HDR=Yes;"";" 
    .CursorLocation = adUseClient
    .Open
End With



strQuery = "SELECT * FROM ["&ugenr&"$c3:N17]"

With adoRs
    Set .ActiveConnection = adoCn



    .Open strQuery

End With
%>


<table align=center width=800 cellpadding="0" cellspacing="0" border=1  bgcolor="#006699" color="#ffffff">
<tr><td><b>
<%


if request.QueryString("ugenr") = "" then
ugenr= weekNr (tmpDate)
response.write "Uge nr. " & ugenr
else




ugenr = request.QueryString("ugenr")
response.write "Uge nr. " & ugenr

end if
%>

&nbsp;&nbsp; 





</td></tr></table>

        <table align=center width=800 cellpadding="0" cellspacing="0" border=1 bgcolor="#006699" text color="#ffffff">
           

<tr>
                <td rowspan="<%= adoRs.RecordCount + 2 %>">
               



   
                </td>


   

            </tr>

            <tr>
           
           
           
            </tr>           
            <tr style="border:10px solid silver;size=1px;>
                <td color="#ffffff" style="border:10px solid red;size=px;border:1px solid blue;"">
                <%
                strResults = adoRs.GetString(adClipString, _
                    adoRs.RecordCount, strColDelim, _
                    strRowDelim)
                strResults2 = Left(strResults, _
                    InStrRev(strResults,"<tr><td>") - 1)
                Response.Write"<td style=border:10px solid red;size=1px;>" & strResults
                %>
            </tr>
        </table>
    </body>
</html>
Avatar billede ponyboye Nybegynder
05. august 2004 - 09:34 #1
ja du kan bruge en Session til at give brugeren et navn og der ved lave en funktion der trækker vagterne på det navn som Sessionen har.

hvis nu bent logger ind vil Sessionen få navnet bent og harefter ved den hvilken vagter den skal trække ud
Avatar billede ponyboye Nybegynder
05. august 2004 - 09:36 #2
hvorfor lægger du ikke vagterne i en access database. for jeg tror da ikke der er nogle fordele ved at lægge dem i excel
Avatar billede ponyboye Nybegynder
05. august 2004 - 09:36 #3
det er bare hvad jeg vil gøre
Avatar billede maximus25 Nybegynder
05. august 2004 - 09:46 #4
administrationen er nemmere fra et excelark. Har du et forslag til koden hvis man skal gøre som du foreslår?
Avatar billede eagleeye Praktikant
05. august 2004 - 20:06 #5
Hvordan er dit excel ark bygget op? Hvad har du af kolonner?
Hvis kolonnen hed ens brugernavn kunne man hente den kolonne ud som er logget ind.
Avatar billede maximus25 Nybegynder
06. august 2004 - 08:48 #6
Jeg har valgt ikke at lave "range" da der er 52 sheets en for hver uge i året....jeg har i stedet pillet dataene ud via celle referencer:

strQuery = "SELECT * FROM ["&ugenr&"$c3:N17]"

ugennr er variablen som sættes når brugeren via en select box vælger en uge. Alle sheets i excelarket hedder et nr fra 1 til 52.

et eksempel på medarbejderes dag kunne se sådan ud:

Mandag
Anders Ulrik
x      x
x     
      x
x
      x
x
x


Hvor krydset symboliserer at de er på vagt.

Nogen forslag?:)
Avatar billede maximus25 Nybegynder
06. oktober 2004 - 20:14 #7
der er ikke kommet noget som jeg kunne bruge i lang tid så sprørsmålet lukkes........
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
Kurser inden for grundlæggende programmering

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