---
title: "Urgent: Skicka ASP-genererade mails i Outlook!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/60972-urgent-skicka-asp-genererade-mails-i-outlook"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "NBT"
published: "2002-12-03T10:47:46.000Z"
updated: "2002-12-04T07:56:45.000Z"
replies: 8
views: 492
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/60972-urgent-skicka-asp-genererade-mails-i-outlook"
---

# Urgent: Skicka ASP-genererade mails i Outlook!

## #1 — NBT, 2002-12-03T10:47Z

Ännu en gång vänder jag mig till Eliternas elit, då detta är ett så kallat "riks-knas scenario" som jag inte kan knäcka...

Ett system där man matar in kvalitetsavvikelser vill ha en funktion så att de kan skicka ett vanligt e-mail med Ms Outlook till berörda parter - som ska fixa till det som gått snett...

Detta har jag försöka att lösa genom att

\<input name="submit" type="button" id="submit" value="Skicka e-postmeddelande till berörd part" onClick = "popup('mailMsg2.asp?caseID=\<%=intShowCase%\>',200,80);"\> 

Ovanstående kod resulterar i att en Popup kommer upp och man klickar på en länk... Mailet öppnas (ibland) i Ms Outlook. Ibland funkar det fint och ibland funkar det inte alls så fint - text klipps av, saknas eller ett MsOutlook felmeddelande som jag inte kommer ihåg hur det lyder.

**mailMsg2.asp**
\---------------------------------

\<!--#include file="func_functions_inc.asp" --\>
\<!--#include file="db_con_inc.asp" --\>

\<%

' Hämta info till mailet
intCaseID = Request.QueryString("caseID")

' Mera info
strSQL = "SELECT c.caseInitiated, c.longDescription, c.proposal, s.stationName " & \_
		 "FROM tblCases AS c, tblSubProcess AS sp, tblProcess AS p, tblStation AS s " & \_
		 "WHERE c.caseID = " & intCaseID & \_
		 " AND c.subProcess = sp.subProcessID " & \_
		 "AND sp.processID = p.processID " & \_
		 "AND p.stationID = s.stationID"

Call openCon()
Set objRS = objCon.Execute(strSQL)

If NOT objRS.EOF Then

	dtmInit 		= objRS("caseInitiated")
	strDescription 	= objRS("longDescription")
	strProposal		= objRS("proposal")
	dtmProposal		= objRS("proposal")
	strStation		= objRS("stationName")

	
End If
Set objRS = Nothing

' Hämtar lite datum
strSQL = "SELECT \* FROM tblAlarms WHERE caseID = " & intCaseID & \_
		 " AND alarmType = 'proposal'"
Set objRS = objCon.Execute(strSQL)

If NOT objRS.EOF Then
 
	dtmProposal		= objRS("alarmDate")

End If
Set objRS = Nothing

' Mera datum
strSQL = "SELECT \* FROM tblAlarms WHERE caseID = " & intCaseID & \_
		 " AND alarmType = 'bekräfta'"
Set objRS = objCon.Execute(strSQL)

If NOT objRS.EOF Then
 
	dtmConfirm		= objRS("alarmDate")

Else

	dtmConfirm		= "Berörd part har bekräftat!"

End If
Set objRS = Nothing

'\*\*\* Lista kontaktpersoner

	strSQL = "SELECT s.name, s.email FROM tblSystemUsers AS s, tblCaseUser AS cu " & \_
		 "WHERE cu.caseID = " & intCaseID & \_
		 " AND cu.uid = s.uid"
	Call openCon()
	Set objRS = objCon.Execute(strSQL)
	
	Do Until objRS.EOF
	
		strKontakt = strKontakt & objRS("name") & " (" & objRS("email") & ")"
		objRS.MoveNext
		If NOT objRS.EOF Then strKontakt = strKontakt & ", "
	
	Loop
	closeCon()
	Set objRS = Nothing

	strSQL = "SELECT name FROM tblSystemUsers " & \_
		 "WHERE uid = '" & Session("uid") & "'"
	Call openCon()
	Set objRS = objCon.Execute(strSQL)

	Call closeCon()
	Set objRS = Nothing

 Set objMess = nothing

%\>

\<!-- HÄR BÖRJAS GENERERINGEN AV MAILET !!! --\>

\<a enctype="text/plain" href="mailto:

\<%
				' \*\*\* Här nedan listar vi upp alla e-postmottagare som är berörda av aktuellt ärende

				strSQL = "SELECT cp.email FROM tblConcernedPart AS cp, tblConCases AS cc " & \_
				"WHERE cc.conID = cp.conID AND cc.caseID = " & intCaseID
				Call openCon()
				Set objPartEmail = objCon.Execute(strSQL)

				Do Until objPartEmail.EOF

				strEmail = objPartEmail("email")
				Response.Write(strEmail & ";")
					objPartEmail.MoveNext

				Loop
					closeCon()
				Set objPartEmail = Nothing
%\>

\<%
				' \*\*\* Här nedan skickar vi två dolda kopior av mailet till Gerth och Björn
%\>

?BCC=fly@xxx.se;gem@xxx.se

&Subject=

UI: CQC Quality System Report gällande AWB-nummer:%20				

\<% strSQL = "SELECT awbNO FROM tblCaseAwbs WHERE caseID = " & intCaseID
				Call openCon()
				Set objAwb = objCon.Execute(strSQL)
				
				Do Until objAwb.EOF
				
					strAwb = objAwb("awbNO")
					Response.Write(strAwb & "%20 %20")
					objAwb.MoveNext
					
				Loop
				Call closeCon()
				Set objAwb = Nothing %\>

&Body=
PÅ STATION ' \<%=strStation%\> ' HAR FÖLJANDE AVVIKELSE ÄGT RUM:
%250A %250A %250A
								

AWB-NUMMER:
%250A

	\<% strSQL = "SELECT awbNO FROM tblCaseAwbs WHERE caseID = " & intCaseID
				Call openCon()
				Set objAwb = objCon.Execute(strSQL)
				
				Do Until objAwb.EOF
				
					strAwb = objAwb("awbNO")
					Response.Write(strAwb & "%20")
					objAwb.MoveNext
					
				Loop
				Call closeCon()
				Set objAwb = Nothing 
				%\>

%250A %250A %250A

BESKRIVNING AV AKTUELLT ÄRENDE:%250A
\<%=fixMailText(strDescription)%\>%250A %250A %250A

CQC:s ÅTGÄRDSFÖRSLAG ÄR FÖLJANDE:%250A
\<%=fixMailText(strProposal)%\>%250A %250A %250A

CQC VILL HA DITT ÅTGÄRDSFÖRSLAG SENAST DEN: \<%=dtmProposal%\>%250A %250A %250A %250A

Med vänliga hälsningar%250A
\<%=strKontakt%\>%250A
Central Quality Control%250A
Telefon: %250A
Telefax:"\>

\<font face="arial" size="2" color="red"\>
Skicka e-postmeddelande till berörd part\</font\>\</a\>

**func_functions_inc.asp**
\---------------------------------
' En funktion som snyggar till mailtext som skrivs ut från databasen
Function fixMailText(strText)

Set objRe = New regExp
objRe.IgnoreCase = True
objRe.Global = True

objRe.Pattern = "\<\[^\>\]\*\>" 
x = objRe.Replace(x," ")

	strText		= Replace(strText,vbCrlf,"%250A")
	
	fixMailText		= strText

End Function

Det går inte att säga vart, när eller hur mailet bryts. Det är olika från gång till gång. Mestadels bryts informationsmängden i mailet när det är ganska mycket text som skall matas in i mailet. 
Vad är det som är fel? 

Jag är inte i dethär läget intresserad av att generera några HTML-baserade e-postmeddelanden. Jag är inte ens säker på om det *går* att göra i Ms Outlook 2000? 
Någon har tidigare sagt att jag inte skall använda mig av "server.HTMLEncode" ?

<http://www.webforum.nu/showthread.php?s=&postid=496794#post496794>

**Extremt** tacksam för snabb feedback!

Permalänk: https://www.webforum.nu/p/60972

## #2 — mrblonde, 2002-12-03T12:35Z

Ett problem kan ju vara att en querystring inte kan vara hur lång som helst, max 255 tecken eller nått (kommer inte ihåg riktigt)...

Permalänk: https://www.webforum.nu/p/875136

## #3 — NBT, 2002-12-03T13:14Z

Överlag, efter att ha testat olika varianter **intensivt** i ett par timmar nu, så har vi väl kommit fram till att mailet bryts efter x antal tecken. Vi har också lyckats felsöka till att innehållet i mailet bryts efter x antal tecken under nedanstående kodsnutt. 

**mailMsg2.asp**
CQC:s ÅTGÄRDSFÖRSLAG ÄR FÖLJANDE:%250A
\<%=fixMailText(strProposal)%\>%250A %250A %250A 

**Konkret exempel ur ovanstående kodsnutt:**
CQC:s ÅTGÄRDSFÖRSLAG ÄR FÖLJANDE:

1\.
Det bästa vore ju naturligtvis om GOT kunde göra sändningarna definitiva när dom vet avgångstiden. Sändningarna preliminärbokas kvällen innan och definitivbokas på morgonen när man vet avgångstiden. Går det **in**
 

Där det är rödmarkerat bryts mailet, i detta fallet...

Finns det något sätt att reglera detta så att man kan "tvinga" Outlook att ta in obegränsat med information?

Kan man tvinga en querystring att vara längre än 255 tecken om det nu skulle vara det som är fel?

Finns det något annat sätt att lösa denna problematik på?

Permalänk: https://www.webforum.nu/p/875178

## #4 — mrblonde, 2002-12-03T13:24Z

Det här är ju en tråkig kommentar jag lägger nu men... vore det inte bättre att sända mailt med hjälp av en komponent, då borde du slippa alla de här problemen.

Du kan ju sätta avsändaren till den som sänder mailet om det är någon som är inloggad i ett system, han har väl användaruppgifter sparade.

Vad är tanken med att det måste vara ett mail som poppar upp från outlook, borde väl gå lika bra med att mail som genererats på servern och sänds iväg.

Jag tror inte att det går att på något sätt tvinga iis:en att acceptera längre querystrings. 

Parantes: med post kan man ha runt 103 000 tecken, det har jag testat :)

Permalänk: https://www.webforum.nu/p/875193

## #5 — NBT, 2002-12-03T13:34Z

Anledningen till att man vill ha upp mailet i Outlook är att man vill kunna

**\* redigera mailen innan man skickar iväg dem
\* spara dem i sin "Skickat-mapp" i Outlook
\* Kunna bifoga filer, ex. XLS-filer, DOC osv.

mm...**

På något sätt måste det väl gå att lösa tycker jag? :OO

Permalänk: https://www.webforum.nu/p/875213

## #6 — solbulle, 2002-12-03T13:48Z

> Kan man tvinga en querystring att vara längre än 255 tecken om det nu skulle vara det som är fel?

Lösningen på det problemet är väl given:

> Parantes: med post kan man ha runt 103 000 tecken, det har jag testat

Permalänk: https://www.webforum.nu/p/875228

## #7 — niko, 2002-12-03T13:55Z

Om begränsningen är antalet tecken som går att överföra till Outlook så finns det kanske en annan lösning.

1\. Skapa en .eml-fil på servern som innehåller själva mailet.

2\. Streama mailfilen till klienten med ADODB.Stream-objektet.

3\. Om du satt: ContentType="application/eml" så borde filen vara associerad med Outlook och öppnas i denna. (Begränsningen på antalet tecken är nu borta eftersom datan inte överförs via en länk.)

Det känns lite krångligt och jag har inga exempel. Men som sagt hittar du inget annat så ..?

Läs:
<http://www.4guysfromrolla.com/webtech/083100-1.shtml>

Permalänk: https://www.webforum.nu/p/875238

## #8 — NBT, 2002-12-03T14:36Z

hmm... Går det verkligen inte att lösa på nåt sätt?
Nu måste jag käka lite, har glömt bort att käka lunch =) Får bli en Statoilkorv eller nått =)

Permalänk: https://www.webforum.nu/p/875296

## #9 — mrblonde, 2002-12-04T07:56Z

> \* redigera mailen innan man skickar iväg dem 
> \* spara dem i sin "Skickat-mapp" i Outlook 
> \* Kunna bifoga filer, ex. XLS-filer, DOC osv.

 
Redigera innan går ju bra, putta ut mailtexteni en textareafält och låt användaren redigera bästan han vill. Sen är det ju bara att posta det til sidan som bygger mailet och sänder iväg med en komponent.

Spara i sin skickat-mapp, sänd en kopia till han som sänder mailet, så får han en kopia iallafall.

Bifoga filer måste ju gå med, bara att ladda upp en fil och sen attacha den till mailet, det går med all säkerhet med Jmail eller någon annan mail komponent, allt annat skule förvåna mig.

Jag håller med om att det inte kasnke är lika smidigt som att ha ett fint outlook mail direkt, men det är en lösning. 

Du får försöka fokusera på att lösa problemet, och om det nu inte blir enkelt med outlook så får man göra det på något annat sätt.

Permalänk: https://www.webforum.nu/p/875796

---

Tråden på webben: https://www.webforum.nu/amne/asp/60972-urgent-skicka-asp-genererade-mails-i-outlook
