Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Visual Basic Script zum ändern einer Datei und alte Dateien Kopieren....

Frage Entwicklung Visual Studio

Mitglied: Praktikantin

Praktikantin (Level 1) - Jetzt verbinden

17.03.2009, aktualisiert 10:03 Uhr, 3480 Aufrufe

SQL Server 2000 DTS...

Hallo Leute,

ich habe ein DTS entwickelt (mit sehr viel mühe) und habe einen Punkt erreicht an dem ich wirklich nicht weiter weiß. Unsere Firma benutzt Noch immer den SQL Server 2000 und da kann man nur VBScript benutzen. Ersteinmal das Script:

01.
 
02.
'********************************************************************** 
03.
'  Visual Basic ActiveX Script 
04.
'************************************************************************ 
05.
 
06.
Function Main() 
07.
	 
08.
Dim str 
09.
 
10.
Set listdir = CreateObject ("Scripting.FileSystemObject") 
11.
 
12.
	Set invfile = listdir.OpenTextFile((DTSGlobalVariables("temppath").Value), 1) ''''TEMPPATH = "C:\TEXT.TXT" DER GANZE PATH DER DATEI 
13.
	Set newfile = listdir.CreateTextFile((DTSGlobalVariables("filename").Value)) '''FILENAME = '"TEXT.TXT" NUR DER NAME DER DATEI 
14.
 
15.
	 
16.
	while (invfile.AtEndOfStream = False) 
17.
 
18.
	ch = invfile.ReadLine 				'''read the first line 
19.
 
20.
	If ((left(ch,9))<>" DATETIME"  and  (left(ch,1))=" " )  AND ch <> "" Then    
21.
	                      
22.
			newfile.Write(ch)				''''If we dont do that then the first character wont be on the file 
23.
			newfile.WriteLine 
24.
		 
25.
		End If 
26.
 
27.
	wend 
28.
 
29.
	newfile.Close 
30.
	invfile.Close 
31.
 
32.
	set invfile = nothing 
33.
	set newfile = nothing 
34.
 
35.
	set listdir = nothing 
36.
 
37.
	Main = DTSTaskExecResult_Success 
38.
 
39.
End Function 
40.
 
41.
 
Wie ihr selbst feststellen könnt ist dieser Code dazu erstellt worden um die Leere Zeilen zu löschen und die Zeilen die mit " DATETIME" beginnen... Leider passier nichts wenn ich es laufen lasse... Da habe ich mir gedacht dass etwas Falsch ist. Hat da irgendjemmand eine Iddee????

Set invfile = listdir.OpenTextFile((DTSGlobalVariables("temppath").Value), 1) ''''TEMPPATH = "C:\TEXT.TXT" DER GANZE PATH DER DATEI
Set newfile = listdir.CreateTextFile((DTSGlobalVariables("filename").Value)) '''FILENAME = '"TEXT.TXT" NUR DER NAME DER DATEI

Hier muss ich etwas anderes machen. Habe schon ein paar Sachen verändert zb.
Set newfile = listdir.CreateTextFile(("c:\new_text.txt"))
und bekomme die Nachricht dass dieser Path nicht existiert. Aber ich will keine neue Datei erstellen sondern die Datei die ich habe korigieren (Leere Zeilen löschen und die Datetime)... Irgendwie komme ich aber nicht weiter....

Dann zum letzten Schritt :


01.
'********************************************************************** 
02.
'  Visual Basic ActiveX Script 
03.
'************************************************************************ 
04.
 
05.
Function Main() 
06.
 
07.
    Dim dt 
08.
    Dim yyyy 
09.
    Dim mm 
10.
    Dim dd 
11.
 
12.
dt = Date 
13.
 
14.
	yyyy = DatePart( "yyyy",  dt) 
15.
	mm = DatePart( "m",  dt) 
16.
	dd  = DatePart( "d",  dt) 
17.
	 
18.
	If len(mm) = 1Then 	mm = "0" & mm 	End If 
19.
	If len(dd) = 1Then 	dd = "0" & dd	End If 
20.
 
21.
	dt= yyyy&mm&dd 
22.
 
23.
 
24.
	Set listdir = CreateObject("Scripting.FileSystemObject") 
25.
 
26.
	listdir.copyFile DTSGlobalVariables("temppath").Value,  DTSGlobalVariables("finalpath").Value + "inv_" + left(DTSGlobalVariables("filename").Value, len(DTSGlobalVariables("filename").Value)-4) + "_" + dt + ".txt"    
27.
 
28.
'''''''TEMPPATH = "C:\TEXT.TXT" , 'FILENAME = '"TEXT.TXT",  FINALPATH =  "C:\OLD_FILES\" 
29.
 
30.
	listdir.deleteFile DTSGlobalVariables("temppath").Value	 
31.
 
32.
	Main = DTSTaskExecResult_Success 
33.
End Function 
34.
------------------------------------------
Das ganze funktioniert prima, aber wenn ich am gleichen Tag mehr als eine Datei bekomme (die haben immer den gleichen Namen) dann werden die die es schon in den Order Old_files gibt überschrieben... Das Problem ist aber dass jede Datei die ich erstelle diesen namen heben wird text_20090317.txt also wissen wir den Namen nicht im vorraus und können ihn nicht mit einem If vergleichen....

Vielen dank im vorraus für jede Hilfe.

Julia
Ähnliche Inhalte
Visual Studio
gelöst Visual Basic für anfänger (12)

Frage von Daoudi1973 zum Thema Visual Studio ...

VB for Applications
gelöst Inhalt einer XML Datei Script ändern (4)

Frage von chris27584 zum Thema VB for Applications ...

Batch & Shell
gelöst Batch Datei zum Kopieren aktueller Dateien erstellen (5)

Frage von daniel011 zum Thema Batch & Shell ...

Batch & Shell
Dateien kopieren die nicht mehr verändert werden? (10)

Frage von pbelcl zum Thema Batch & Shell ...

Neue Wissensbeiträge
LAN, WAN, Wireless

Schwachstelle im WPA2 Protokoll veröffentlicht

(3)

Information von colinardo zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte