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

Automatisches Bearbeiten und Weiterleiten in Outlook

Frage Microsoft Outlook & Mail

Mitglied: sabado84

sabado84 (Level 1) - Jetzt verbinden

29.04.2008, aktualisiert 16.05.2008, 4054 Aufrufe, 12 Kommentare

Hallo zusammen,

wir haben in unserer Firma eine Outlook-Regel erstellt, die alle High-Priority-Tickets an den jeweiligen Mitarbeiter per SMS weiterleitet (E-Mail an SMS-Server).
Leider unterstützt dieser SMS-Server nur 160 Zeichen, die Meldung an sich hat mit Leerzeichen etc. ca. 500.
Ich würde gerne ein Skript implementieren, welches Informationen wie Name, Department,Description etc. auf SMS-Größe zusammenfasst und weiterleitet.

Mit Outlook Regeln komme ich hier leider nicht weiter.
Falls ihr noch andere Möglichkeiten kennt, bin ich denen gegenüber natürlich offen.

Vielen Dank für eure Hilfe
Mitglied: colinardo
29.04.2008 um 11:45 Uhr
Du kannst die eintreffende Nachricht per Outlook-Regel weiter bearbeiten in dem du in den Optionen für die Regel folgende Aktion auswählst:
" Was soll mit dieser Nachricht passieren?"
x Ein Script ausführen

Um dort aber einen Eintrag den du auswählen kannst vorzufinden , musst du zuerst folgendes machen:

In Outlook den VBA-Editor starten ALT-F11, dann im Modul "ThisOutlookSession" eine neue Subroutine anlegen:

01.
Public Sub MessageScript(oMail As Outlook.mailItem) 
02.
   'hier kommt die Behandlung der Mail rein     
03.
   ' z.b. öffnet folgender Eintrag eine Messagebox beim eintreffen der Nachricht 
04.
   MsgBox oMail.Subject 
05.
End Sub
In der Routine kannst du dir mit den VBA String Methoden deinen persönlichen SMS-Text zurecht schneidern, in dem du z.B. den Body der Nachricht auf eine bestimmte Anzahl von Zeichen zurecht stutzt:

01.
Public Sub MessageScript(oMail As Outlook.mailItem) 
02.
    Dim msgBody, smsBody 
03.
    Dim newSMSMail As Outlook.mailItem 
04.
    Set newSMSMail = Application.CreateItem(olMailItem) 
05.
    msgBody = oMail.Body 
06.
    smsBody = Left(msgBody, 160) 
07.
    With newSMSMail 
08.
        .To = "hier@empfänger.de" 
09.
        .Subject = oMail.Subject 
10.
        .Body = smsBody 
11.
        .Display 
12.
        '.send 
13.
    End With 
14.
End Sub
Dieser Code stutzt den Body auf 160 Zeichen, erstellt eine neue Mail und zeigt diese auf dem Bildschirm an (nur zur Demo damit du experimentieren kannst). Mit der Send Methode im "With" Block kannst du die Nachricht dann verschicken.

Hoffe das hilft dir weiter ...

greets Uwe
Bitte warten ..
Mitglied: sabado84
29.04.2008 um 12:44 Uhr
Hey Uwe,

vielen Dank, das war schon ein Schritt in die richtige Richtung
Du kannst dir eine ankommende E-Mail so vorstellen:

Short Description : XXXXXXXX - Ich komme nicht auf Laufwerk "c"
Customer : Maxime Musterdau
Department : ABC
Telephone no. : +49 (12345) 6789
Room : Dauroom
Priority : High
Affected Users : all
Status : Assigned
Assigned Group : Dau-consultants

Ich möchte zum Beispiel die Short Description, den Customer sowie die Priority in der SMS anzeigen lassen. Kann ich diese Infos rausfiltern?

Vielen dank!

[Edit Biber: hier das Wesentliche nochmal als < Code > formatiert:]
01.
Short Description  : XXXXXXXX - Ich komme nicht auf Laufwerk "c" 
02.
Customer           : Maxime Musterdau 
03.
Department         : ABC 
04.
Telephone no.      : +49 (12345) 6789 
05.
Room               : Dauroom  
06.
Priority           : High 
07.
Affected Users     : all 
08.
Status             : Assigned 
09.
Assigned Group     : Dau-consultants
[/Edit]
Bitte warten ..
Mitglied: colinardo
29.04.2008 um 14:07 Uhr
Habe mal die obige Prozedur an deinen Text angepasst der nun die Textstellen rausfiltert:
Zu beachten ist aber das die Reihenfolge der Kategorien (Short Description,Customer,....) in der Mail eingehalten wird , sonst musst du die stellen im Code anpassen.

01.
Public Sub MessageScript(oMail As Outlook.mailItem) 
02.
    Dim msgBody 
03.
    Dim newSMSMail As Outlook.mailItem 
04.
    Set newSMSMail = Application.CreateItem(olMailItem) 
05.
    msgBody = oMail.Body 
06.
    Dim strDescription, strCustomer, strPrio, posDescription, posCustomer, posPrio 
07.
    posDescription = InStr(1, msgBody, "Description") + 11 
08.
    posCustomer = InStr(1, msgBody, "Customer") + 8 
09.
    posPrio = InStr(1, msgBody, "Priority") + 8 
10.
    strDescription = Mid(msgBody, posDescription, InStr(posDescription, msgBody, "Customer") - posDescription) 
11.
    strCustomer = Mid(msgBody, posCustomer, InStr(posCustomer, msgBody, "Department") - posCustomer) 
12.
    strPrio = Mid(msgBody, posPrio, InStr(posPrio, msgBody, "Affected Users") - posPrio) 
13.
    strDescription = Trim(Replace(strDescription, vbCrLf, "")) 
14.
    strCustomer = Trim(Replace(strCustomer, vbCrLf, "")) 
15.
    strPrio = Trim(Replace(strPrio, vbCrLf, "")) 
16.
    With newSMSMail 
17.
        .To = "hier@empfänger.de" 
18.
        .Subject = "+49xxxxxxxx" 
19.
        .Body = "Description: " & vbCrLf & strDescription & vbCrLf & _ 
20.
                "Customer: " & vbCrLf & strCustomer & vbCrLf & _ 
21.
                "Priority: " & vbCrLf & strPrio 
22.
        .Display 
23.
    End With 
24.
 
25.
End Sub 
26.
 
ÄNDERUNG

Oh, habe gerade gesehen das du den Code umformatiert hast, mit nem Doppelpunkt .
Dafür geht folgende Routine die alles was hinter dem Doppelpunkt steht extrahiert:

01.
Public Sub MessageScript(oMail as Outlook.mailitem) 
02.
    Dim msgBody 
03.
    Dim newSMSMail As Outlook.mailItem 
04.
    Set newSMSMail = Application.CreateItem(olMailItem) 
05.
    msgBody = oMail.Body 
06.
    Dim strDescription, strCustomer, strPrio, posDescription, posCustomer, posPrio 
07.
    posDescription = InStr(1, msgBody, "Description") + 11 
08.
    posCustomer = InStr(1, msgBody, "Customer") + 8 
09.
    posPrio = InStr(1, msgBody, "Priority") + 8 
10.
    strDescription = Mid(msgBody, (InStr(posDescription, msgBody, ":") + 1), InStr(posDescription, msgBody, "Customer") - (InStr(posDescription, msgBody, ":") + 1)) 
11.
    strCustomer = Mid(msgBody, (InStr(posCustomer, msgBody, ":") + 1), InStr(posCustomer, msgBody, "Department") - (InStr(posCustomer, msgBody, ":") + 1)) 
12.
    strPrio = Mid(msgBody, (InStr(posPrio, msgBody, ":") + 1), InStr(posPrio, msgBody, "Affected Users") - (InStr(posPrio, msgBody, ":") + 1)) 
13.
    strDescription = Trim(Replace(strDescription, vbCrLf, "")) 
14.
    strCustomer = Trim(Replace(strCustomer, vbCrLf, "")) 
15.
    strPrio = Trim(Replace(strPrio, vbCrLf, "")) 
16.
    With newSMSMail 
17.
        .To = "hier@empfänger.de" 
18.
        .Subject = "+49xxxxxxxx" 
19.
        .Body = "Description: " & vbCrLf & strDescription & vbCrLf & _ 
20.
                "Customer: " & vbCrLf & strCustomer & vbCrLf & _ 
21.
                "Priority: " & vbCrLf & strPrio 
22.
        .Display 
23.
    End With 
24.
 
25.
End Sub
Bitte warten ..
Mitglied: sabado84
09.05.2008 um 13:08 Uhr
Hallo Uwe,

ich war heute das erste Mal wieder in der Firma und konnte daher jetzt erst deine Nachricht lesen.
Vielen, vielen Dank, das ist genau das, was ich brauche. Habs gerade ausprobiert, klappt einwandfrei. Kannst du mir bitte noch sagen, wie ich die Telefonnummer des Kunden in die SMS reinbekomme? Ist wahrscheinlich nur eine Zeile Script, oder?

Nochmals vielen Dank für deine Hilfe!
Bitte warten ..
Mitglied: colinardo
09.05.2008 um 17:20 Uhr
Hier die Änderung für die Telefonnummer:

schau dir mal die Funktionen InStr() / mid() etc in der Visual Basic Hilfe an dann wirst du auch den folgenden Code verstehen, es geht hier in erster Linie darum die Positionen der Hilfsbezeichner wi e z.b. "Telephone no." zu suchen um dann von dieser Position aus den jeweiligen Wert zu extrahieren indem man als Begrenzung einmal den Doppelpunkt + 1 Zeichen referenziert und dann den nächsten Bezeichner hier "Room" als Begrenzer für den zu extrahierenden Wert nimmt. Wenn man weis welche maximale Länge ein String haben darf kann man stattdessen auch diesen festlegen, wie z.b bei einer Postleitzahl.
Das klingt jetzt vielleicht ein bisschen kompliziert ist aber wenn man mal dahinter gestiegen ist gar nicht so schwer.

Wünsche weiterhin viel Erfolg bei deinem Projekt...

Uwe

01.
Public Sub MessageScript(oMail as Outlook.mailitem) 
02.
    Dim msgBody 
03.
    Dim newSMSMail As Outlook.mailItem 
04.
    Set newSMSMail = Application.CreateItem(olMailItem) 
05.
    msgBody = oMail.Body 
06.
    Dim strDescription, strCustomer, strPrio, strTel, posDescription, posCustomer, posPrio, posTel 
07.
    posDescription = InStr(1, msgBody, "Description") + 11 
08.
    posCustomer = InStr(1, msgBody, "Customer") + 8 
09.
    posPrio = InStr(1, msgBody, "Priority") + 8 
10.
    posTel = InStr(1,msgBody,"Telephone")+ 13 
11.
    strDescription = Mid(msgBody, (InStr(posDescription, msgBody, ":") + 1), InStr(posDescription, msgBody, "Customer") - (InStr(posDescription, msgBody, ":") + 1)) 
12.
    strCustomer = Mid(msgBody, (InStr(posCustomer, msgBody, ":") + 1), InStr(posCustomer, msgBody, "Department") - (InStr(posCustomer, msgBody, ":") + 1)) 
13.
    strPrio = Mid(msgBody, (InStr(posPrio, msgBody, ":") + 1), InStr(posPrio, msgBody, "Affected Users") - (InStr(posPrio, msgBody, ":") + 1)) 
14.
   strTel = Mid(msgBody, (InStr(posTel, msgBody, ":") + 1), InStr(posTel, msgBody, "Room") - (InStr(posTel, msgBody, ":") + 1)) 
15.
   
16.
   strDescription = Trim(Replace(strDescription, vbCrLf, "")) 
17.
    strCustomer = Trim(Replace(strCustomer, vbCrLf, "")) 
18.
    strPrio = Trim(Replace(strPrio, vbCrLf, "")) 
19.
    strTel = Trim(Replace(strTel, vbCrlLf,"")) 
20.
    With newSMSMail 
21.
        .To = "hier@empfänger.de" 
22.
        .Subject = "+49xxxxxxxx" 
23.
        .Body = "Description: " & vbCrLf & strDescription & vbCrLf & _ 
24.
                "Customer: " & vbCrLf & strCustomer & vbCrLf & _ 
25.
                "Priority: " & vbCrLf & strPrio & vbCrLf & _ 
26.
                "Tel.: " & strTel 
27.
        .Display 
28.
    End With 
29.
 
30.
End Sub
Bitte warten ..
Mitglied: Biber
09.05.2008 um 20:18 Uhr
[alles OT]
@Softmeister
Oh, habe gerade gesehen das du den Code umformatiert hast, mit nem Doppelpunkt .
Dafür geht folgende Routine die alles was hinter dem Doppelpunkt steht extrahiert:

sabado84 hat exakt dasselbe gepostet wie ich dann nochmal in <code>-Tags drunterkopiert habe.
Diese Seqenz {ein paar Leerzeichen + Doppelpunkt + ein Leerzeichen +Text} wird offensichtlich von unserer Forensoftware so (fehl-)interpretiert, dass das oben zu sehende Ergebnis rauskommt.
[/alles OT]

Ansonsten: schöne klare Lösungsskizze.

Grüße
Biber
Bitte warten ..
Mitglied: sabado84
14.05.2008 um 07:47 Uhr
Hey Uwe,

dein Script funktioniert einwandfrei, genau wie ich mir das vorgestellt habe. VIELEN DANK!!!
Outlook erlaubt es mir, die Regel nur lokal (Clientseitig, im laufenden Outlookbetrieb) auszuführen.
Kennst du eine Möglichkeit, wie ich das auch Exchange-seitig handeln kann. Sonst müsste ich den Rechner das ganze WE durchlaufen lassen.

Viele Grüße

Sabado
Bitte warten ..
Mitglied: colinardo
14.05.2008 um 08:10 Uhr
Wie das übernehmen der Regeln auf den Exchange funktioniert weis ich im Moment auch nicht, ich habe aber folgende Software der Firma MAPILab gefunden die das komfortabel ermöglicht: http://openpr.de/news/105135/Regeln-fuer-Exchange-Server.html
und hier:
http://www.mapilab.com/de/exchange/rules

Da mich das Thema auch interessiert werde ich mich mal auf Recherche begeben um solch ein Script ohne zusätzliche Software zu implementieren...

grüße Uwe
Bitte warten ..
Mitglied: sabado84
14.05.2008 um 09:11 Uhr
Ich habe bereits das Programm "Mapilap - Advanced Security for Outlook" (http://www.mapilab.com/outlook/security/), mit dem die Zugriffsbestätigung unterbunden werden kann installiert. Vielleicht ist es auch garnicht möglich, VB-Scripte für einzelne Clients auf dem Server auszuführen?!
Bitte warten ..
Mitglied: colinardo
14.05.2008 um 09:14 Uhr
Mit dem Eventservice von Exchange und mit der Hilfe von Outlook lassen sich Serverregeln erstellen:

http://www.msexchangefaq.de/code/eventservice.htm ....

schreibe nachher noch mehr ..
Bitte warten ..
Mitglied: colinardo
14.05.2008 um 15:07 Uhr
Folge den Anweisungen auf dieser Seite:
http://www.msexchangefaq.de/code/eventservice.htm

wichtig ist sind die Zugriffsrechte auf den "Events Root"\EventConfig_<Rechnername>". Dort muss jeder Benutzer Autoren-Rechte besitzen der Regeln erstellen will.

Der Exchange Dienst "MSExchangeES" der sogenannte "Exchange Event Service" oder auf Deutsch "Microsoft Exchange-Ereignis"-Dienst musst du auf automatischen Start setzten.

dann erstellst du eine Regel im Posteingang oder dem Ordner in denen die Tickets landen, auf dem Reiter "Agenten" der "Eigenschaften" dieses Ordners mit folgendem Script s.u. :

dabei musst du die Empfänger-eMail-Adresse an deine Umgebung anpassen, ( dort wo "Administrator@sbs2003.local" steht.
Wenn nun alles richtig funktioniert hat sollte der Exchange alle in diesem Ordner neu erstellten Nachrichten an deine Adresse weiterleiten. Beachte das die Bearbeitung bis zu 60 Sekunden benötigen kann. Falls was nicht richtig funktioniert kannst du auf dem Reiter "Agenten" mit dem Button "Protokolle" in die Logs schauen ....

Konnte das alles erfolgreich in einer virtuellen SBS2003 Domäne testen...

Uwe

01.
 
02.
<SCRIPT RunAt=Server Language=VBScript> 
03.
 
04.
'------------------------------------------------------------------------------ 
05.
06.
' NAME: Forward 
07.
08.
' FILE DESCRIPTION: Automatically forwards all incomming messages to SMS Server 
09.
10.
11.
'------------------------------------------------------------------------------ 
12.
 
13.
'Option Explicit 
14.
 
15.
'------------------------------------------------------------------------------ 
16.
'	Global Variables 
17.
'------------------------------------------------------------------------------ 
18.
 
19.
Dim g_bstrDebug							' Debug String 
20.
 
21.
'------------------------------------------------------------------------------ 
22.
'	CONSTANTS 
23.
'------------------------------------------------------------------------------ 
24.
 
25.
' MAPI property tags used in this script 
26.
Const CdoPR_ACTION = &H10800003 
27.
Const CdoPR_ACTION_FLAG = &H10810003 
28.
Const CdoPR_ACTION_DATE = &H10820040 
29.
Const CdoPR_AUTO_FORWARDED = &H0005000B 
30.
Const CdoPR_SENT_REPRESENTING_ADDRTYPE = &H0064001E 
31.
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H007D001E 
32.
Const CdoPR_RTF_COMPRESSED = &H10090102 
33.
 
34.
Const ACTION_REPLY = 261 
35.
Const ACTION_FORWARD = 262 
36.
Const ACTION_REPLY_SENDER = 102 
37.
Const ACTION_REPLY_ALL = 103 
38.
Const ACTION_FORWARD_FORWARD = 104 
39.
 
40.
' Forward address type and e-mail address 
41.
Const g_Const_ForwardAddress_Type = "SMTP" 
42.
 
43.
'hier musst du die empfänger-email eintragen 
44.
Const g_Const_ForwardAddress = "Administrator@sbs2003.local" 
45.
 
46.
'------------------------------------------------------------------------------ 
47.
'	EVENT HANDLERS 
48.
'------------------------------------------------------------------------------ 
49.
 
50.
' DESCRIPTION: This event is fired when a new message is added to the folder 
51.
Public Sub Folder_OnMessageCreated 
52.
 
53.
	' Declare variables 
54.
	Dim objSession						' Session 
55.
	Dim objFolder						' Outbox folder 
56.
	Dim objCurrentMsg					' Current message 
57.
	Dim objForwardMsg					' Current message 
58.
	Dim objFields						' Message fields 
59.
	Dim objField						' Message field 
60.
	Dim objRecipient					' Recipient 
61.
 
62.
	' Initialize variables 
63.
	Set objSession = Nothing 
64.
	Set objFolder = Nothing 
65.
	Set objCurrentMsg = Nothing 
66.
	Set objForwardMsg = Nothing 
67.
	Set objFields = Nothing 
68.
	Set objField = Nothing 
69.
	Set objRecipient = Nothing 
70.
 
71.
	' Clear error buffer 
72.
	Err.Clear 
73.
 
74.
	' Get session informationen 
75.
	On Error Resume Next 
76.
	Set objSession = EventDetails.Session 
77.
 
78.
	' No errors detected ? 
79.
	If Err.Number = 0 Then 
80.
 
81.
		' Write some logging 
82.
		Call DebugAppend(objSession.CurrentUser & " AutoForward - Proccessing startet", False) 
83.
 
84.
		' Get outbox folder 
85.
		Err.Clear 
86.
		On Error Resume Next 
87.
		Set objFolder = objSession.Outbox 
88.
 
89.
		' No errors detected ? 
90.
		If Err.Number = 0 Then 
91.
 
92.
			' Get current message 
93.
			Err.Clear 
94.
			On Error Resume Next 
95.
			Set objCurrentMsg = objSession.GetMessage(EventDetails.MessageID,Null) 
96.
 
97.
			' Error detected ? 
98.
			If Err.Number <> 0 Then 
99.
 
100.
				' Error reading current message 
101.
				Call DebugAppend("Error - Could not read current message", True) 
102.
			Else 
103.
 
104.
				' Remember subject of current message 
105.
				Call DebugAppend("New message with subject: <" & objCurrentMsg.Subject & "> arrived", False) 
106.
 
107.
				 'Create forward message, write logging 
108.
				Call DebugAppend("Create forward message", False) 
109.
 
110.
				' Forward message using Message.Forward() 
111.
				On Error Resume Next 
112.
				Set objForwardMsg = objCurrentMsg.Forward() 
113.
 
114.
				' Check if we've got a copy of the message 
115.
				If Not objForwardMsg Is Nothing Then 
116.
					 
117.
					' Check if current message subject does not contain 
118.
					' forward prefix 
119.
					If Left(UCase(objCurrentMsg.Subject), 3) <> "FW:" Then 
120.
 
121.
						' Set forward subject with forward prefix 
122.
						objForwardMsg.Subject = "FW: " & objCurrentMsg.Subject 
123.
					Else 
124.
 
125.
						' Set forward subject without forward prefix 
126.
						objForwardMsg.Subject = objCurrentMsg.Subject 
127.
					End If 
128.
 
129.
					Dim msgBody, strDescription, strCustomer, strPrio, strTel, posDescription, posCustomer, posPrio, posTel 
130.
					On Error Resume Next 
131.
					msgBody = objCurrentMsg.Text 
132.
   					posDescription = InStr(1, msgBody, "Description") + 11 
133.
    					posCustomer = InStr(1, msgBody, "Customer") + 8 
134.
    					posPrio = InStr(1, msgBody, "Priority") + 8 
135.
					posTel = InStr(1,msgBody,"Telephone")+ 13 
136.
					strDescription = Mid(msgBody, (InStr(posDescription, msgBody, ":") + 1), InStr(posDescription, msgBody, "Customer") - (InStr(posDescription, msgBody, ":") + 1)) 
137.
    					strCustomer = Mid(msgBody, (InStr(posCustomer, msgBody, ":") + 1), InStr(posCustomer, msgBody, "Department") - (InStr(posCustomer, msgBody, ":") + 1)) 
138.
    					strPrio = Mid(msgBody, (InStr(posPrio, msgBody, ":") + 1), InStr(posPrio, msgBody, "Affected Users") - (InStr(posPrio, msgBody, ":") + 1)) 
139.
   					strTel = Mid(msgBody, (InStr(posTel, msgBody, ":") + 1), InStr(posTel, msgBody, "Room") - (InStr(posTel, msgBody, ":") + 1)) 
140.
   
141.
   					strDescription = Trim(Replace(strDescription, vbCrLf, "")) 
142.
    					strCustomer = Trim(Replace(strCustomer, vbCrLf, "")) 
143.
    					strPrio = Trim(Replace(strPrio, vbCrLf, "")) 
144.
    					strTel = Trim(Replace(strTel, vbCrlLf,"")) 
145.
					If err.Number <> 0 then 
146.
						Call DebugAppend("Error - Could not format strings for body" , True) 
147.
					End if 
148.
					strNewBody = "Description: " & vbCrLf & strDescription & vbCrLf & "Customer: " & vbCrLf & strCustomer & vbCrLf & "Priority: " & vbCrLf & strPrio & vbCrLf & "Tel.: " & strTel 
149.
 
150.
					' Set plain text message body 
151.
					objForwardMsg.Text = strNewBody 
152.
 
153.
 
154.
 
155.
					' Set recipient to forward message 
156.
					On Error Resume Next 
157.
					Set objRecipient = objForwardMsg.Recipients.Add 
158.
 
159.
					' Check if recipient added successful 
160.
					If Not objRecipient Is Nothing Then 
161.
						objRecipient.Name = g_Const_ForwardAddress 
162.
						objRecipient.Address = g_Const_ForwardAddress 
163.
					End If 
164.
 
165.
						' Resolve recipient 
166.
						On Error Resume Next 
167.
						objRecipient.Resolve 
168.
 
169.
 
170.
						' Update and send message 
171.
						Err.Clear 
172.
						On Error Resume Next 
173.
						objForwardMsg.Update 
174.
						objForwardMsg.Send 
175.
 
176.
						' Errors detected ? 
177.
						If Err.Number <> 0 then 
178.
 
179.
							' Could not sent forward message, write logging 
180.
							Call DebugAppend("Error - Could not send forward message", True) 
181.
						Else 
182.
 
183.
							' Forward message successfully sent 
184.
							Call DebugAppend("Success - Forward message send successfully", False) 
185.
 
186.
							 
187.
 
188.
							' Mark current message as read 
189.
							objCurrentMsg.Unread = False 
190.
						 
191.
						End If 
192.
					 
193.
				End If 
194.
			End If 
195.
		Else 
196.
 
197.
			' Write some logging 
198.
			Call DebugAppend("Error - Could not get outbox folder", True) 
199.
		End If 
200.
	Else 
201.
 
202.
		' Write some logging 
203.
		Call DebugAppend("Undefinied Error detected", True) 
204.
	End If 
205.
 
206.
	' Write some logging, without the folder name 
207.
	Call DebugAppend("AutoForward - Processing finished", False) 
208.
 
209.
	' Clear objects 
210.
	Set objSession = Nothing 
211.
	Set objFolder = Nothing 
212.
	Set objCurrentMsg = Nothing 
213.
	Set objForwardMsg = Nothing 
214.
	Set objFields = Nothing 
215.
	Set objField = Nothing 
216.
	Set objRecipient = Nothing 
217.
 
218.
	' Write results to the Scripting Agent log 
219.
	Script.Response = g_bstrDebug 
220.
End Sub 
221.
 
222.
' DESCRIPTION: This event is fired when the timer on the folder expires 
223.
Public Sub Folder_OnTimer 
224.
	'Not used 
225.
End Sub 
226.
 
227.
' DESCRIPTION: This event is fired when a message in the folder is changed 
228.
Public Sub Message_OnChange 
229.
	'Not used 
230.
End Sub 
231.
 
232.
' DESCRIPTION: This event is fired when a message is deleted from the folder 
233.
Public Sub Folder_OnMessageDeleted 
234.
	'Not used 
235.
End Sub 
236.
 
237.
'-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
238.
'                  PRIVATE FUNCTIONS/SUBS 
239.
'-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 
240.
 
241.
'------------------------------------------------------------------------------ 
242.
'   Name: DebugAppend 
243.
'   Area: Debug 
244.
'   Desc: Simple Debugging Function 
245.
'   Parm: String Text, Bool ErrorFlag 
246.
'------------------------------------------------------------------------------ 
247.
 
248.
Private Sub DebugAppend(bstrParm,boolErrChkFlag) 
249.
 
250.
	If boolErrChkFlag = True Then 
251.
		If Err.Number <> 0 Then 
252.
			g_bstrDebug = g_bstrDebug & bstrParm & " - " & cstr(Err.Number) & " " & Err.Description & vbCrLf 
253.
			Err.Clear 
254.
		End If 
255.
	Else 
256.
		g_bstrDebug = g_bstrDebug & bstrParm & vbCrLf 
257.
	End If 
258.
 
259.
End Sub 
260.
 
261.
</SCRIPT> 
262.
 
263.
 
264.
 
Bitte warten ..
Mitglied: sabado84
16.05.2008 um 10:03 Uhr
Hallo Uwe,

vielen Dank. Ich werde die Sache meinem Vorgesetzen vorlegen und er soll dann entscheiden.

Gruß

Sabado
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...

DSL, VDSL
DSL-Signal bewerten (8)

Frage von SarekHL zum Thema DSL, VDSL ...