Avatar billede tre Nybegynder
14. december 2001 - 09:57 Der er 8 kommentarer og
1 løsning

Create Folder.....

Hej eksperter.

Jeg har lavet følgende script som gerne skulle oprette en masse mapper ud fra en database.

En mappe til hvert kundenummer, i et katalog med det rigtige land.

Er der nogen der kan fortælle mig hvorfor det ikke virker???


---------------------------------------------------

<%

Dim Conn, SQL, objRS

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath (\"/database.mdb\")

SQL = \"SELECT * FROM tabel\"
set objRS = Conn.Execute(SQL)

While Not objRS.EOF

    dim fs, f, CPath
    set fs=CreateObject(\"Scripting.FileSystemObject\")
    CPath = \"E:\\mappe\\\" & objRS(\"Country\") & \"\\\" & objRS(\"CustomerID\")
    set f=fs.CreateFolder(CPath)
    set f=nothing
    set fs=nothing

objRS.MoveNext
Wend

objRS.close
Conn.close
set Conn = Nothing
%>

--------------------------------------------------
Avatar billede Slettet bruger
14. december 2001 - 10:30 #1
du har hvert fald ikke brug for den\"f\" variabel du erklærer.

Kan du ikke fortælle os, om du får en fejlmeddelelse, og i sp fald hvilken?

Prøv evt.:

<%

Dim Conn, SQL, objRS

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath (\"/database.mdb\")

SQL = \"SELECT * FROM tabel\"
set objRS = Conn.Execute(SQL)

While Not objRS.EOF

    dim fs, CPath
    set fs=CreateObject(\"Scripting.FileSystemObject\")
    CPath = \"E:\\mappe\\\" & objRS(\"Country\") & \"\\\" & objRS(\"CustomerID\")
    fs.CreateFolder(CPath)
    set fs=nothing

objRS.MoveNext
Wend

objRS.close
Conn.close
set Conn = Nothing
%>
Avatar billede Slettet bruger
14. december 2001 - 10:33 #2
.. Prøver lige igen.. du skal heller ikke Dim\'e dit FSO objekt hver gang du iterer (kører løkken igennem).


<%

Dim Conn, SQL, objRS, fs, CPath

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath (\"/database.mdb\")

SQL = \"SELECT * FROM tabel\"
set objRS = Conn.Execute(SQL)

set fs=CreateObject(\"Scripting.FileSystemObject\")

While Not objRS.EOF
   
    CPath = \"E:\\mappe\\\" & objRS(\"Country\") & \"\\\" & objRS(\"CustomerID\")
    fs.CreateFolder(CPath)

objRS.MoveNext
Wend

set fs=nothing
objRS.close
Conn.close
set Conn = Nothing
%>
Avatar billede Slettet bruger
14. december 2001 - 10:35 #3
\"itererer\" hedder det ;o)

Men som sagt ville en evt fejlmeddelelse eller beskrivelse af symtomer hjælpe. Opretter den bare ikke mappenerne?

Sørg i øvrigt for, at du har skriveretigheder til den mappe, som du opretter mapperne i.
Avatar billede tre Nybegynder
14. december 2001 - 10:52 #4
Hej igen.

Nu har jeg lige prøvet dit sidste script af.
Det virkede heller ikke. Det var nok en god idé at udelade at definere en variabel så mange gange. Men jeg får alligevel den samme fejl som tidligere:

------ FEJL ---------------

Laufzeitfehler in Microsoft VBScript-Fehler \'800a004c\'

Der Pfad wurde nicht gefunden.

/dev/crm/autoordner.asp, Zeile 16


-------------------------------------------


Siger det jer noget???
Avatar billede tre Nybegynder
14. december 2001 - 10:54 #5
Jeg har prøvet at lave en Response.Write

Det virker fint.....


Mit første script startede med at oprette 10-15 mapper, men det er altså flere tusinde vi snakker om!
Avatar billede Slettet bruger
14. december 2001 - 16:14 #6
Cpath = Server.MapPath(\"/\" & objRS(\"Country\") & \"\\\" & objRS(\"CustomerID\")

husk, at det første \"/\" skal svare til dit bibliotek set fra roden af din wwwroot (eller hvad du kalder den) mappe.

e:\\Inetpub\\wwwroot\\mapper = Server.MapPath(\"/mapper/\" & objRS(\"Country\") & \"\\\" & objRS(\"CustomerID\")
Avatar billede tre Nybegynder
18. december 2001 - 09:06 #7
Hej igen...

Jeg fandt ud af det! Mit script virkede fint. Den ville bare gerne først have oprettet landemapperne inden den ville oprette kundemapperne.......
Avatar billede tre Nybegynder
18. december 2001 - 09:06 #8
.....eller,

DIT, nye script virkede fint :-)

Avatar billede Slettet bruger
18. december 2001 - 17:27 #9
Glæder mig, at du fik det til at lykkedes. Takker for points.
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