Jump to content
  • 0

[Opgelost]Scheduled script met SendMail stuurt geen bijlage


Banach

Question

Posted (edited)

FMS versie 16.0.3 draaiend onder MacOS Sierra.

 

Een scheduled script maakt een rapport en schrijft dat weg in het documents mapje onder FMS.

Het bestandspad wordt opgeslagen in een variabele $pad dat is samengesteld door:

Get ( DocumentsPath) & "report.xlsx"

Vervolgens wordt diezelfde variable gebruikt om het rapport als attachement aan een mail te koppelen.

Dit gaat via de scriptstap SendMail via een SMTP server.

 

Het resultaat is dat het rapport netjes wordt aangemaakt in de Documents map van FMS ( in Data) en dat er een mail wordt verzonden. Deze bevat echter niet het attachment.

 

Een en ander al op het web afgestruind waar het doorgaans om een fout begrip gaat tussen FMP en FMS en dus de opgegeven paden niet correct zijn voor FMS. Dat probleem speelt hier dus niet.

 

Ook de toevoeging van "file:" of "filemac" in het pad mag niet baten.

 

Het gaat hier om de migratie vanaf server versie 10 (!) Het heeft dan ook altijd goed gewerkt.

 

Ik zit vast. Heeft iemand enig idee wat de oplossing zou kunnen zijn?

Edited by Guest

9 answers to this question

Recommended Posts

  • 0
Posted

Ik ben hier ondertussen verder mee. Het is nog wel even wat werk om alles weer recht te zetten, maar daar kom ik wel uit.

 

Het blijkt een probleem van het (geconverteerde) bestand te zijn. Een nieuw aangemaakt script met een SendMail scriptstap doet het namelijk wél goed. Ik denk dan ook dat het opnieuw schrijven van het script de oplossing zal zijn.

 

Maar nu is het weekend :wink:

  • 0
Posted

Ondanks het weekend liet dit probleem mij niet los. Er is al veel te veel tijd in gaan zitten terwijl ik niet goed begreep wat de oorzaak was. Ik ben er nu achter; dit hele probleem had in 2 tellen opgelost kunnen worden in plaats van de bijna volle dag die het mij uiteindelijk heeft gekost. :cry:

 

Lees mijn relaas, huiver en lach uitbundig om wat mij zoveel stress en hoofdbrekens heeft bezorgd. Doe er je voordeel mee wanneer je ooit ook zoiets tegenkomt.

 

Het ging hier om een migratie vanaf FM10. Om dan naar 16 te komen moet je de bestanden converteren. Dit ging eigenlijk zonder noemenswaardige problemen. Totdat de klant 2 dagen later meldde dat de rapportages niet meer werden verstuurd vanf de server.

 

Je gaat dit dan onderzoeken en kan geen enkele oorzaak vinden. Je probeert van alles, zet allerlei testjes op en soms werkt het wel, maar veel vaker werkt het niet. Juist doordat je er niet goed de vinger achter kunt krijgen begin je te vermoeden dat het wel eens aan de bestandsconversie zou kunnen liggen.

 

Je gooit dan eens wat regeltjes uit je script weg en typt die weer opnieuw in. Plots werkt het dan weer. Je hebt de oplossing na uren van onderzoek eindelijk te pakken. Het kan niet anders dan dat het aan de conversie ligt.

Op zichzelf is dat al een angstige conclusie. Hoe betrouwbaar is die conversie dan. Welke problemen gaan hier verder nog allemaal uit voortkomen. Ondanks dat je het voor nu hebt opgelost ben je al bang voor wat je volgende week aan problemen voorgeschoteld zal krijgen. Maar ok, dat is volgende week.

 

Vanochtend, vol goede moed even dat scriptje herschreven, dan is dat tenminste al opgelost. Grote schrik; weer géén bijlage. Er staan wat vervelende exports in het script en die had ik niet herschreven maar vanuit het oude script gekopieerd. Misschien lag het daar aan. Eens even zien of dat rapport eigenlijk wel wordt weggeschreven. Ja, dat was geen probleem daar kwam het netjes. En dan viel het kwartje!

 

Het gaat hier om een rapport voor Excel. In de variable die je voor de bestandsnaam gebruikt geef je dan extensie .xls op. Zowel de export als ook de SendMail gebruiken dezelfde variabele en dus dezelfde bestandsnaam, dus dat gaat altijd goed.

 

FOUT!

 

Het oude .xls Excel formaat wordt niet meer ondersteund in FM16. Dit is het .xlsX formaat geworden. In de variabele staat weliswaar .xls, maar FileMaker geeft het bestand dat wordt geëxporteerd automatisch de extensie .xlsx . SendMail kan dan het .xls bestand niet vinden en zo krijg je een mail zonder bijlage!

 

Dit is dus iets waarbij je uren achtereen over het ontbreken van dat ene x-je heenleest. Zelfs in mijn openingspost heb ik .xslX aangegeven, terwijl dit dus in het daadwerkelijke script helemaal niet staat!

 

Achteraf allemaal heel hilarisch. Jammer van de vele uren, maar hier tuin ik dus nooit meer in (hoop ik :) )

Ik ben blij dat ik nu het probleem heb opgelost en ook de oorzaak begrijp.

  • 0
Posted

Welkom bij de club! Wie heeft zoiets nou niet gehad? Een letter vergeten, gewijzigd, een functie die nét even anders werkt, een functie die er niet is en alles wordt tussen /* */ gezet etc. etc.

 

Zoeken tot je een ons weegt en het dan nog niet vinden .... de volgende dag, je ziet het meteen. Of nog mooier, iemand die er helemaal geen ervaring mee heeft die zegt: "waarom ziet dat er zo uit?" en die je dan op jouw (pijnlijke) fout wijst.

  • 0
Posted

Hmm

Ik ervaar een probleem dat enigszins vergelijkbaar is.

 

Ik wil vanuit Webdirect een PDF in een containerveld versturen (FMS 16.0.3).

Lijkt me dat dat als volgt zou moeten werken:

- PDF exporteren naar de Temporary Folder op de server.

- direct daarna als attachment aan een SMTP mail hangen.

 

Als ik dat doe, krijg ik in WebDirect een dialoog dat de file gedownload kan worden (en dat gebeurt ook als je op downloaden klikt)

Daarna wordt een mailtje verstuurd zonder attachment.

 

Wat doe ik fout?

  • 0
Posted

Nee: incompatible met Serverside scripting, maar niet met WebDirect.

Probleem is alleen dat ik dan een download dialoog krijg en WD kennelijk de file niet in de Tempfolder parkeert, maar meteen doorsluist naar de browser.

En dus geeft Send Mail geen attachment, want die is er niet.

 

Het lijkt erop dat ik het met een plugin moet doen.

  • 0
Posted

Maar je verwacht het wél op de server doen want je schrijft

- PDF exporteren naar de Temporary Folder op de server.
Het versturen met smtp zal je dan ook op de server moeten doen.

 

Een plug-in en PSOS is dan de juiste weg. De dacons-mailit en cns-smtp kunnen allebei direct vanuit een container attachments meesturen. Ik gebruikte tot voor kort de dacons-mailit, maar omdat hun ondersteuning zo allejezustraag is, ben ik overgestapt op de CNS-plug-in.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...