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 %> --------------------------------------------------
Annonceindlæg fra Admin By Request
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 %>
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 %>
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.
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???
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!
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\")
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.......
18. december 2001 - 09:06
#8
.....eller, DIT, nye script virkede fint :-)
Slettet bruger
18. december 2001 - 17:27
#9
Glæder mig, at du fik det til at lykkedes. Takker for points.
Kurser inden for grundlæggende programmering