/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Jmail 4.0
Fra : Ole Kokholm


Dato : 24-07-01 20:38


Hej NG.

Jeg har et problem, som jeg håber nogen kender løsningen på.

Baggrund for min ide´:
Jeg får dagligt et større antal emails tilsendt til en dertil specifik
emailkonto fra et firma, som vi samarbejder med. Vi får automatisk en mail,
hver gang nogle foruddefinerede hændelser indtræffer. Emailen indeholder en
vedhæftet tekstfil, der indeholder en tekststreng. Tekststrengen består af
nogle data, som beskriver hændelsen. P.g.a. af de mange emails er det ikke
muligt i et mailprogram at skabe sig et overblik over status på de
forskellige hændelser.

Jeg vil derfor lave et script, der kan tømme pop3-kontoen for emails, trække
data ud af den vedhæftede fil, lægge de hentede data ned i en database. På
baggrund af denne database vil jeg så lave et script, der kan give overblik
over status på de forskellige hændelser.

Problemet:
Mit ASP-script skal, når det er færdigt, ligge på en server, der har
komponenten Jmail 4.0 installeret. Jeg kan uden større problemer hente de
tilsendte emails og behandle data fra emnefelt, bodyfelt m.m.. Men jeg kan
ikke finde ud af, hvordan jeg får fat i den tekst-streng, der ligger i den
vedhæftede fil. Jeg har lavet følgende meget forenklede script for at
frasortere en masse fejlmuligheder:

<%
' Opret tilstand ?
Set pop3 = Server.CreateObject( "JMail.Pop3" )

' Log på
pop3.Connect "emailkonto", "password", "mail.domain.dk"

' Check antal emails
Response.Write( "Du har "& pop3.Count & " email(s) på emailkontoen <br>" )

' Udvælg email på mailserveren
Set msg = pop3.Messages.Item(1)


' Udskriv afsender, emne, body og tidspunkt
Response.Write "Afsender : " & msg.FromName & "<br>"
Response.Write "Emne : " & msg.Subject & "<br>"
Response.Write "body : " & msg.Body & "<br>"
Response.Write "Tidspunkt: " & msg.date & "<br>"

' Udvælg vedhæftet fil i emailen (DENNE NÆSTE LINIE GIVER FEJL !!!)
set attachment = pop3.Attachments.Item(1)

' linie 33

' Udskriv tekststreng fra vedhæftet tekstfil (DENNE NÆSTE LINIE GIVER FEJL
!!!)
Response.Write Attachment.Data & "<br>"

' Afbryd forbindelse til mailserveren
pop3.Disconnect
%>

Jeg har forsøgt at læse mig til en løsning i dokumentationen til JMail, og
det er ud fra denne dokumentation, at jeg har lavet ovenstående. Jeg får
desværre en fejl i linie 31, og hvis jeg undlader denne, får jeg en fejl i
linie 36.

Er der nogen, der kan se, hvad der er galt ?? Eller er der nogen, der har
en anden løsning, der kan trække en tekststreng ud af en vedhæftet fil i en
email.

Så vil jeg være meget taknemlig, da dette efterhånden begynder at gå mig
lidt på.


På forhånd tak !!

Ole



 
 
Allan Ebdrup (24-07-2001)
Kommentar
Fra : Allan Ebdrup


Dato : 24-07-01 21:53


"Ole Kokholm" <kokholm@mail.dk> skrev i en meddelelse
news:3b5dce48$0$4897$edfadb0f@dspool01.news.tele.dk...
[KLIP]
> ' Udvælg vedhæftet fil i emailen (DENNE NÆSTE LINIE GIVER FEJL !!!)
> set attachment = pop3.Attachments.Item(1)

Måske starter deres arrays ved 0 ? pop3.Attachments.Item(0)
Du bør ihvertfald teste om der er noget i pop3.Attachments først, evt. et
check på pop3.Attachments.lenght ??

MVH
Allan




Ole Kokholm (24-07-2001)
Kommentar
Fra : Ole Kokholm


Dato : 24-07-01 22:32

Hej.

Jeg har prøvet med pop3.Attachments.Item(0) Det virker heller ikke.

Og ja, jeg skal selvfølgelig teste om der er noget i pop3.Attachments. Det
viste script er lavet så enkelt som muligt, og udelukkende som en test af
håndteringen af pop3-kontoen. Jeg har dog checket på mail-serveren, at der
er vedhæftet en fil på alle modtagne emails.

Ole


"Allan Ebdrup" <ebdrup@ti-fire.dk> skrev i en meddelelse
news:9jkn4l$2d5f$1@news.cybercity.dk...
>
> "Ole Kokholm" <kokholm@mail.dk> skrev i en meddelelse
> news:3b5dce48$0$4897$edfadb0f@dspool01.news.tele.dk...
> [KLIP]
> > ' Udvælg vedhæftet fil i emailen (DENNE NÆSTE LINIE GIVER FEJL !!!)
> > set attachment = pop3.Attachments.Item(1)
>
> Måske starter deres arrays ved 0 ? pop3.Attachments.Item(0)
> Du bør ihvertfald teste om der er noget i pop3.Attachments først, evt. et
> check på pop3.Attachments.lenght ??
>
> MVH
> Allan
>
>
>



Ole Kokholm (07-08-2001)
Kommentar
Fra : Ole Kokholm


Dato : 07-08-01 20:50

Hej !

Jeg har endnu ikke helt opgivet håbet om, at der findes et kvikt hoved, der
kan se hvad der er galt med mit script.

Måske hjælper det hvis I også for fejlmeddelelsen af se. Den ser sådan ud:


Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'Attachments'

/otc/test.asp, line 31


....jeg håber, at det hjælper nogen.

På forhånd tak !!!

Ole





JH (07-08-2001)
Kommentar
Fra : JH


Dato : 07-08-01 22:03

> Set pop3 = Server.CreateObject( "JMail.Pop3" )
> Set msg = pop3.Messages.Item(1)
>
> set attachment = pop3.Attachments.Item(1)

Jeg er ikke 100% sikker, men prøv at bruge dit "msg"-objekt, i stedet
for "pop3". Det er længe siden jeg sidst legede med det ;)

set attachment = msg.Attachments.Item(1)


Ole Kokholm (07-08-2001)
Kommentar
Fra : Ole Kokholm


Dato : 07-08-01 22:39


"JH" <newsfilter2@dk2net.dk> skrev i en meddelelse
news:0el0ntcjgq3386pgkpiob12nim2qkm2cco@4ax.com...
> > Set pop3 = Server.CreateObject( "JMail.Pop3" )
> > Set msg = pop3.Messages.Item(1)
> >
> > set attachment = pop3.Attachments.Item(1)
>
> Jeg er ikke 100% sikker, men prøv at bruge dit "msg"-objekt, i stedet
> for "pop3". Det er længe siden jeg sidst legede med det ;)
>
> set attachment = msg.Attachments.Item(1)
>

Hej.

Dit forslag kunne jeg ikke få til at virke umiddelbart, men du ledte mig
alligevel ind på det rigtige spor. Følgende virker:

Set Attachments = msg.Attachments
Set at = Attachments(0)
Response.Write(at.Data)

Jeg siger mange tak for hjælpen. Det var efterhånden ved at give mig grå
hår.

Mvh. Ole



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408876
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste