Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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, 3438 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
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst XML-Datei: Pfade suchen, verlinkte Dateien kopieren und Pfade ändern (4)

Frage von ELEVATOR zum Thema Batch & Shell ...

Basic
gelöst Mit Visual Basic Batch Datei öffnen (26)

Frage von Flodsche zum Thema Basic ...

Batch & Shell
gelöst Script: Dateien kopieren, Benamung anhang von Attributen (4)

Frage von Flexxa zum Thema Batch & Shell ...

Batch & Shell
gelöst Script SFTP Dateien kopieren (10)

Frage von bnfk859-forum zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...