Tjenare! Istället för att öppna filen och läsa igenom denna för varje post i ditt recordset, så skulle jag satsat på att läsa in textfilen till en tabell i databasen och matchat den med SQL. Tack för tipset! Nej det var inte det jag menade.Slött script
Är den någon som har lust att hjälpa mig snabba upp detta script?
Scriptet jämför priser och lagersaldon som finns i en textfil med priser och lagersaldon i en Access fil.
Tack på förhand.
Vänliga Hälsningar
Fredrik
<code>
<%
'Öppna anslutning till textfil (SMG)
StrPath = Server.MapPath("/db/NyaPriser/prisfila00.txt")
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set ObjOpenFile = objFSO.OpenTextFile(strPath,1)
'SLUT
'Öppna en anslutning till Access databas som innehåller produkt information
set objConn = Server.CreateObject("ADODB.Connection")
objconn.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&server.mappath("/db/ArtikelDB.mdb")
Set objRS = Server.CreateObject("ADODB.Recordset")
'SLUT
strSQL = "SMG"
objRS.Open strSQL, objConn,3,3
Do while not objRS.EOF
objRS("Endrad") = "0"
Set ObjOpenFile = objFSO.OpenTextFile(strPath,1)
Do while not objOpenFile.AtEndOfStream
TextFil = objOpenFile.Readline
LevArtNr = Trim(Mid(TextFil, 21,18))
Beskrivning = Trim(Mid(TextFil, 39,40))
InPris = Trim(Mid(TextFil, 88,10))
LevLagerAntal = Trim(Mid(TextFil, 109,10))
if LevArtNr = objRS("LevArtNr") then
response.write LevArtNr & "<br>"
objRS("InPris") = InPris
objRS("LevLagerAntal") = LevLagerAntal
objRS("Endrad") = "1"
objRS.Update
End if
Loop
objRS.MoveNext
Loop
'Städa
objRS1.Close
Set objRS1 = Nothing
objConn.Close
Set objConn = Nothing
objOpenFile.Close
Set objOpenFile = Nothing
Set objFSO = Nothing
'SLUT
%>
</code>Sv: Slött script
Sv: Slött script
Jag förmodar att du tyckte att jag skulle sitta och manuellt läsa in
text filen i en tabell? Hälst vill jag undvika det efter som detta är
ett jobb som ska göras dagligen med en ny likadan text fil, det
tar kanske inte mer än några minuter men jag vill undvika det iaf.
Mvh FreddeSv: Slött script
Vet inte riktigt hur du vill lägga upp det, men
om du nu har en ACCESS-databas, så kan du tex automatisera inläsningen istället genom att tex importera filen till en tabell med ett ACCESS makro och köra de querisar som krävs för att uppdatera dina tabeller.
Detta makro kan du ju sedan dra igång från ditt andra program, alternativt lägga ett schedulerat jobb som kör vid bestämda intervall så att användaren inte behöver vänta på att uppdateringen skall ske om så nu är fallet.
Mvh Danne