Här har vi en början på en hta-fil, med lite felhantering (rapporterar än så länge endast fel, inga positiva händelser). Självklart kan detta göras djupare och mer specifikt, samt kasta in en räknare etc.
Du kan ju PM:a mig lite mer information, eller kanske egen-ritade bilder på hur det ska se ut. :) Så kan vi komma fram till en lösning och sedan posta resultatet här så att folk får se det?
<html>
<!--********************************************************************
'*
'* File: wF.hta
'* Creator: Olle Lundberg
'********************************************************************-->
<title>HTA för devotion (bättre titel kommer ;) )</title>
<HTA:APPLICATION
ID="objwF"
APPLICATIONNAME="devotion"
SCROLL="no"
SINGLEINSTANCE="yes"
WINDOWSTATE="normal"
MAXIMIZEBUTTON="no"
CAPTION="YES"
>
<head>
<style>
BODY
{
background-color: buttonface;
font-family: Arial;
font-size: 8pt;
margin-top: 10px;
margin-left: 10px;
margin-right: 10px;
margin-bottom: 10px;
}
.button
{
font-family: Helvetica;
font-size: 8pt;
}
</style>
<script language="vbscript">
doLog=true
const LOG_FILE="ErrorLog.txt"
sub main()
Dim sSQL, objConn, objRS1, objRS2, iStatus, sNote, sCategory, sName, sArtNr, sUnit, iPrice, iNextId, sArticleNumber, sArticleName, sList, iSupplierId
'Ange status; 0 = "synkroniserad med SPCS", 1 = "Inte synkroniserad mot SPCS"
iStatus = 0
'Notering
sNote = ""
'Pris
iPrice = 0
' Öppna databasen
' ***************
On Error Resume Next
Set objConn = CreateObject("ADODB.Connection")
objConn.ConnectionString = "Provider=SQLOLEDB.1;Password=H74x32L;Persist Security Info=True;User ID=sa;Initial Catalog=IntranetSydostel;Data Source=.\sqlexpress"
objConn.Open
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
Exit Sub
end if
' Slut felhantering
sSQL = "SELECT tblArticle.articlenumber, tblArticle.articleName, tblArticle.articleUnit " &_
"FROM tblArticle " &_
"ORDER BY tblArticle.articlenumber"
Set objRS1 = CreateObject("ADODB.Recordset")
objRS1.Open sSQL, objConn, 3, 1
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
If not objRS1.EOF then
do while not objRS1.EOF
sArticleNumber = objRS1("articleNumber")
sArticleName = objRS1("articleName")
sUnit = lCase(objRS1("articleUnit"))
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
'Ta ut de två första tecknena i E-numret
sList = left(sArticleNumber, 2)
'Hämta kategorinamn mha sList
Set objRS2 = objConn.Execute ("SELECT listName FROM tblList WHERE listNr = '" & sList & "'")
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
If not objRS2.EOF then
sCategory = objRS2("listName")
End If
objRS2.Close
Set objRS2 = Nothing
Set objRS2 = objConn.Execute ("SELECT nextId FROM UppdragNu.dbo.tblNextId WHERE [table] = 'tblArticle'")
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
If not objRS2.EOF then
iNextId = cLng(objRS2("NextId"))
End If
objRS2.Close
Set objRS2 = Nothing
sSQL = "INSERT INTO UppdragNu.dbo.tblArticle ([Id], [Status], [Modified], [Nr], [Name], [Category], [Unit], [Price], [Note]) " &_
"VALUES(" & iNextId & ", " & iStatus & ", getdate(), '" & sArticleNumber & "', '" & sArticleName & "', " &_
"'" & sCategory & "', '" & sUnit & "', " & iPrice & ", '" & sNote & "')"
objConn.execute sSQL,,128
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
sSQL = "UPDATE UppdragNu.dbo.tblNextId SET nextId = nextId + 1 WHERE [Table] = 'tblArticle'"
objConn.Execute sSQL,, 128
' Felhantering
if Err.Number <> 0 then
Report(Err.Description)
Err.Clear
end if
' Slut felhantering
objRS1.Movenext
Loop
Else
Report("Kunde inte hitta ett korrekt recordset!")
End if
objRS1.Close
Set objRS1 = Nothing
On Error Goto 0
end sub
Sub Report(strMessage)
dim FSO
set FSO=CreateObject("Scripting.FileSystemObject")
document.GetElementById("information").innerHTML=strMessage
if (doLog) then
set File=FSO.OpenTextFile(LOG_FILE, 8, -2, TRUE)
File.Write Now()&vbCrLf&strMessage&vbcrlf&vbcrlf&_
"-----------------"&vbcrlf&vbcrlf
File.close
end if
end Sub
Sub Window_Onload
self.Focus
self.resizeTo 615,100
main
end sub
</script>
</head>
<body>
Information: <span id="information"></span>
</span>
</body>
</html>
Kopiera, klistra in i en käck textfil, och spara som *.hta