# 750-841 E-Mail senden

**URL:** <https://oscat.discourse.group/t/750-841-e-mail-senden/1031>\
**Category:** Codesys 2\
**Created:** [17. März 2011 um 10:31 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031 "2011-03-17T10:31:56Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![l.t](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@l.t](https://oscat.discourse.group/u/l.t)\
**Post date:** [17. März 2011 um 10:31 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/1 "2011-03-17T10:31:56Z")

</div>

Hallo!

Ich habe ein Problem mit dem Verschicken von E-Mails mittels der OSCAT Network Lib.  
Hardware ist eine Wago 750-841.

Ich habe einige eigene Einstellungen/E-Mail Accounts getestet und dann auch direkt das Beispiel ausprobiert.  
Leider erhalte ich immer die Fehlermeldungen Error\_C = 1; Error\_T = 4 am Baustein.  
Als DNS4\_IP habe ich die IP der Fritzbox und die in der Fritzbox angezeigten DNS Server (217.0.43.161 bzw. 217.0.43.177) getestet.  
Alles mit dem gleichen “Erfolg”… ???

Kann mir da jemand einen Tip geben?

Danke!

Gruß L.T.

[gelöscht durch Administrator]

---

<div class="post-metadata">

**Author:** ![l.t](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@l.t](https://oscat.discourse.group/u/l.t)\
**Post date:** [17. März 2011 um 11:33 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/2 "2011-03-17T11:33:24Z")

</div>

Also inzwischen habe ich gefunden woram es lag/liegt:

Im Step 310 wird im Baustein SMTP Client die Angabe des Anhangs eingelesen.  
Der Step 400 soll bei nicht vorhandenem Anhang in den Step 800 weiterleiten.  
Das tut der Baustein bei mir aber nicht!  
Es geht im Step 400 - 410 - … weiter.  
Da jedoch kein Anhang angegeben ist läuft das ins Leere.  
Zwinge ich den Baustein den Anhang zu ignorieren (Sprung von 310 nach 800) funktioniert alles wieÂ´s soll.  
Ist das ein Bug oder funktioniert das nur auf meiner Steuerung nicht?

Gruß L.T.

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [17. März 2011 um 11:55 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/3 "2011-03-17T11:55:49Z")

</div>

hallo

1. du sagst er läuft ins leere , kannst du das auch etwas genauer erklären

2. kannst du mal auf schritt 400 einen breakpoint setzen und mir dann sagen was  
bei FILES und cnt1 für ein wert vorhanden ist.

3. wenn du eine datei angibst geht es dann auch

4. der Fehler Error\_C = 1; Error\_T = 4 am Baustein sollte eigentlich nichts mit dem obigen zu tun haben ?

5. wenn FILES =‘’ ist dann springt er doch in schritt 400 gleich auf schritt 800 ?

---

<div class="post-metadata">

**Author:** ![l.t](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@l.t](https://oscat.discourse.group/u/l.t)\
**Post date:** [17. März 2011 um 12:27 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/4 "2011-03-17T12:27:49Z")

</div>

Hallo peewit,

ich hab mit ja den Step nach außen gelegt und eine Trace gemacht (siehe Anhang) und laut dieser Trace durchläuft der Baustein folgende StepÂ´s:

…  
300  
310  
400  
410  
420  
430  
440  
450  
460  
470  
980  
996

Mit Brakepoint hab ich jetzt noch nicht getestet (da ich im Moment den Baustein mit “Zwangsumleitung” des State-Machine verwende)  
Kommt aber bald.

Gruß L.T.

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [17. März 2011 um 12:45 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/5 "2011-03-17T12:45:15Z")

</div>

hallo

Error\_C = 1; Error\_T = 4 am Baustein heisst nichts anderes das die datei nicht geöffnet werden kann, was logisch ist, da eigentlich auch keine datei  
angegeben wurde

der entscheidende punkt ist folgender block

310: IF snd\_step = 0 THEN  
 cnt1 := LIST\_LEN(59, FILES) - 1; (\* Anzahl der Dateien \*)  
step := 400;  
END\_IF;

wenn die FILES einen leerstring übergibst dann ergibt cnt1 = -1  
wenn du \>= 00 als ergebnis bekommst dann ergibt die auswertung das FILES nicht leer ist, und die enthaltenen zeichen eine dateiangabe darstellen sollen

genau das passiert bei dir, anscheind ist FILES nicht leer , ist das vielleicht ein leerzeichen enthalten ?

und wenn files nicht leer ist bzw eine nicht vorhandene datei angegeben ist , dann ist der schrittverlauf bzw die fehlermeldung völlig richtig und logisch

du musst bei schritt 310 mal anhalten und schauen was bei cnt1 als ergebnis kommt, bzw. was denn nun wirklich bei FILES übergeben wird.

gruss peewit

---

<div class="post-metadata">

**Author:** ![l.t](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@l.t](https://oscat.discourse.group/u/l.t)\
**Post date:** [17. März 2011 um 14:14 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/6 "2011-03-17T14:14:12Z")

</div>

Also bei einem Brake im State 310 (bei Setze Step = 400) habe ich als cnt1 = 0.  
Und am Eingang “Files” des Bausteins habe ich definitiv nur ‘’ ohne Leerzeichen dazwischen.

Sonst noch eine Idee?

Gruß L.T.

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [17. März 2011 um 16:10 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/7 "2011-03-17T16:10:41Z")

</div>

ursache ist folgendes  
die LIST\_LEN liefert bei leeren String immer eine 1

in der doku steht das bei leeren String eine 0 geliefert wird

das ist definitiv falsch, darum wird das auch falsch im programm verarbeitet

als schnellen patch kann ich dir folgendes anbieten

SMTP\_CLIENT:

310: IF snd\_step = 0 THEN  
cnt1 := LIST\_LEN(59, FILES) - 1; (\* Anzahl der Dateien \*)  
IF FILES = ‘’ THEN cnt1 := -1; END\_IF;  
step := 400;  
END\_IF;

!! Der Fehler tritt nur auf wenn keine Dateien als Anhang versendet werden !!  
!! Diese Änderung kann bei network.lib für codesys, beckhoff und pcworx genauso durchgeführt werden !!

---

<div class="post-metadata">

**Author:** ![l.t](https://avatars.discourse-cdn.com/v4/letter/l/ccd318/32.png) [@l.t](https://oscat.discourse.group/u/l.t)\
**Post date:** [21. März 2011 um 07:47 UTC](https://oscat.discourse.group/t/750-841-e-mail-senden/1031/8 "2011-03-21T07:47:29Z")

</div>

Hallo,

habÂ´s getestet und es klappt alles.  
Danke!

Gruß L.T.
