Ik wil in een ActiveX script onderdeel van een DTS package regels schrijven naar het logbestand. Dat zou in principe moeten met DTSPackageLog en dan WriteStringToLog.
Dit heb ik in onderstaande code geimplementeerd, ware het niet dat ik een foutmelding krijg zodra ik de stap uit probeer te voeren.
Code is verder niet super boeiend. Er wordt gechecked of het bestand met de bestandsnaam wat in de globale variabele wordt opgeslagen ook daadwerkelijk aanwezig is en op basis daarvan moet in het log de corresponderende regel worden geschreven.
De foutmelding ontstaat gelijk op de eerste regel waar DTSPackageLog wordt aangesproken.
Error Code: 0
Runtimefout Microsoft VBScript
Object vereist 'DTSPackageLog'
Nu is het zo dat DTSPackageLog gewoon zo gebruikt kan worden zonder er een object van te maken. Verder heb ik ook duidelijk een logbestand aangegeven dus dat is het ook niet. De info op MSDN over dit onderwerp is helaas uiterst summier, dus dat schoot ook niet op.
Heeft iemand een idee wat ik fout doe of wat er fout zou kunnen gaan/wat ik over het hoofd zie?
Dit heb ik in onderstaande code geimplementeerd, ware het niet dat ik een foutmelding krijg zodra ik de stap uit probeer te voeren.
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| '********************************************************************** ' Visual Basic ActiveX Script ' Haalt het path en de filenaam op en controleert aanwezigheid file '************************************************************************ Function Main() dim oFSO dim strFieldval dim strFilename strFilename = " ADR2_" strFieldval = DTSGlobalVariables("glb_ADR2_").Value MsgBox strFieldval ' instantiate the Scripting Object set oFSO = CreateObject("Scripting.FileSystemObject") ' Open the file if oFSO.FileExists(strFieldval) then DTSPackageLog.WriteStringToLog strFilename & " Check succeeded " Main = DTSTaskExecResult_Success else DTSPackageLog.WriteStringToLog strFilename & " Check failed " Main = DTSTaskExecResult_Failure End If End Function |
Code is verder niet super boeiend. Er wordt gechecked of het bestand met de bestandsnaam wat in de globale variabele wordt opgeslagen ook daadwerkelijk aanwezig is en op basis daarvan moet in het log de corresponderende regel worden geschreven.
De foutmelding ontstaat gelijk op de eerste regel waar DTSPackageLog wordt aangesproken.
Error Code: 0
Runtimefout Microsoft VBScript
Object vereist 'DTSPackageLog'
Nu is het zo dat DTSPackageLog gewoon zo gebruikt kan worden zonder er een object van te maken. Verder heb ik ook duidelijk een logbestand aangegeven dus dat is het ook niet. De info op MSDN over dit onderwerp is helaas uiterst summier, dus dat schoot ook niet op.
Heeft iemand een idee wat ik fout doe of wat er fout zou kunnen gaan/wat ik over het hoofd zie?