TIA Datenbausteininhalt per Email versenden

Robman183

Level-1
Beiträge
32
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

Ich habe folgendes Problem bzw. Frage.
Ich möchte aus einem DB, Texte die vorher über die HMI eingegeben worden sind zusammenfassen und per Email versenden.
Die Texte sind als ArrayofString deklariert.
Mein Emailbaustein (TMAIL_C) verlangt von mir ein String oder implizierte Datentypkonvertierung (?), nun ist meine Frage ob es möglich ist dieses Array zu Pointen bzw. ob es eine Möglichkeit gibt die texte aneinander zu reihen.
Ich habe es mal mit dem "INSERT" Baustein versucht, dies klappt auch aber ist für mich eine ziemlich umständliche Lösung, da es bis zu 300 Texte a 35 Zeichen sind und der Eingang von TMAIL nur 255 Zeichen zulässt.

Gibt es noch eine bessere Möglichkeit solche Datenmengen per Email zu versenden ?


Gruß Robman183
 
Das mit dem Anhang habe ich jetzt auch raus gefunden, versendet das zwar noch nicht aber mal schauen.
Wir benutzen ein KTP 1200 Basic.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn ich den Anhang beifüge, versendet der garkeine Email mehr, lösch ich den Anhang wieder geht es wieder.
Muss ich bei dem Datenbaustein irgendwas besonderes beachten oder darf ich nur bestimmte Typen "Pointen".
In der Beschreibung steht das ich es nur machen kann mit Array of Byte/Word/Dword, ich habe aber Strings weil es ja Texte sind.
Gibt es ne Möglichkeit Array of Strings in nen Dword oder so umzuwandeln, so das ich das versenden kann?
Und kann mir jemand sagen wie es dann in der Mail ankommt, steht dann dort der Name der Variablen und der Wert bzw. Text oder steht da irgend ein anderer crazy Stuff ?

Gruß Robman
 
Lass mal die ersten 2 Bytes von deinem String weg. Also wenn der String am Anfang eines
DB´s liegt, versuche mal den Pointer P#DBXY.DBX2.0 Byte 100.
 
@plc_typ: Kann mir kaum vorstellen dass das mit den Strings direkt laufen wird.

Ich schätze mal das der der FB den Variant auf den passenden Datentyp, also Array und Type, prüfen wird.
@TE, welchen Fehlercode bekommst du denn von TMAIL_C? Einen der folgenden?
TMAIL_C-Hilfe schrieb:
W#16#8016 Falscher Datentyp für den Parameter ATTACHMENT Erlaubte Datentypen sind ArrayOfByte, ArrayOfWord und ArrayOfDWord.
W#16#8017 Falsche Datenlänge für den Parameter ATTACHMENT Erlaubte Datenlänge beträgt <= 65534 Byte.

Lauf Hilfe ist nur Array_of_Byte/Word/DWord zulässig.
Du könntest versuchsweise mal ein Array_of_Byte probieren und schauen ob sich die E-Mail so versenden lässt.
Wenn ja, dann müsstet du deine Strings entsprechend umwandeln, zb. mit Strg_TO_Chars.

Interessanterweise deutet die TMAIL_C-Hilfe ganz unten zwar darauf hin dass ein einzelner String im Attachement auch zulässig wäre...
TMAIL_C-Hilfe schrieb:
Hinweis
Optionale Parameter
Die optionalen Parameter CC, TEXT und ATTACHMENT werden nur mit der E-Mail versendet, wenn die entsprechenden Parameter einen String der Länge > 0 enthalten.
Das halte ich aber eher für eine der vielen Ungereimtheiten in der TIA-Hilfe.
 
Hallo liebe Gemeinde,
war ne etwas längere Geschichte.
Also wenn ich ein Array of Byte verschicke funktioniert es.
Brauche ich für diesen Anhang eine besonderes Programm, denn ich kann es mit meinem nicht PG nicht öffnen?
Ich will ja mit dem Anhang bezwecken das mein Kunde die nötigen Informationen lesen kann, habt ihr sonst eine andere Lösung ?
Gruß Robman
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hab es jetzt grade mal ausprobiert, ich kann die strings in char umwandeln und dann in ein Array of Byte schreiben dann funktioniert es und man kann den anhang mit einem textpad öffnen.
Jetzt muss ich mal schauen wieviel Text ich da einfügen kann.
Vielen dank schonmal
 
Kann mir jemand sagen wieso, ich den TMAIL_C Baustein nicht in mein vorhanden Programm einfügen kann.
Ich habe die ganze zeit in einem neuen Programm getestet da gings ohne Probleme, nun will ich den TMAIL_C Baustein in mein "richtiges" Programm einfügen und das geht jetzt nicht, ich kann den Baustein gar nicht einfügen bzw er wird mir noch nicht einmal angezeigt
 
Mal versucht den Programbaustein aus deinem "Testprogramm" in dein Hauptprogramm zu
ziehen (Kopieren)?
 
Soooooo, habe jetzt mein Hauptprogramm in mein Testprogramm eingearbeitet, jetzt funktioniert es.
Mein neues Problem ist wie ich jetzt so eine große Datenmenge (Strings) zusammen füge.
Habe es mit CONCAT versucht, aber leider kann ich da nur 255 zeichen mitnehmen und das reicht mir nicht.
Habt ihr eine Idee wie ich diese Problematik lösen kann ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
An dieser Hürde war ich auch schon .Ich habe ein Array of Byte(1024) angelegt ,dort relativ Kompliziert meine Text hinein kopiert und diese dann versendet .Das hat funktioniert, habe mich dan der Einfachheit halber erstmal mit den 255 Byte zufriedengegeben. Und die Lösung "End" aufgeschoben .Im Moment habe ich gerade kein zugriff auf mein Projekt und Tia (Urlaub) :)
 
Zurück
Oben