Sök…


Introduktion

Det finns flera skäl som du kan stöta på för att du behöver e-postfunktioner i SAS. Du kan skicka ett e-postmeddelande för att meddela någon att en process har passerat / misslyckats, du kan skicka ett e-postmeddelande med makrovariabler som visar hur många poster som har laddats i slutet av dataflödet, eller kanske du behöver skicka några filer som innehålla rapporter. Oavsett vad du behöver är det flera sätt att skicka e-postmeddelanden och filer i SAS.

parametrar

Tagg / Attribut Värde
LRECL Denna parameter används för att definiera postens längd vid läsning och skrivning av filer. Jag har löst många problem genom att bara ställa in detta till sitt maxvärde, vilket är 32767. Det är mycket möjligt att det är mindre effektivt att ställa in något sådant till sitt maxvärde, men i slutet av dagen får det jobbet gjort för mig utan eventuella filtförlust. (intervallet för LRECL är 1-32767)

Skickar ett grundläggande e-postmeddelande med SAS

Filename myEmail EMAIL
    Subject = "My Email Subject"
    From    = "[email protected]"
    To      = '[email protected]'
    CC      = '[email protected]'
    Type    = 'Text/Plain';


Data _null_; File myEmail;
    PUT "Email content";
    PUT "&recordsCount loaded to your favorite table today!";
RUN;

Bifoga en Excel-fil till din SAS-e-post

Filename myEmail EMAIL
    Subject = "My Email Subject"
    From    = "[email protected]"
    To      = '[email protected]'
    CC      = '[email protected]'
    Type    = 'Text/Plain'
    ATTACH = ("my/excel/file/path/file.extension" content_type="application/vnd.ms-excel" LRECL= 32767);


Data _null_; File myEmail;
    PUT "Email contentent";
    PUT "&recordsCount loaded to your favorite table today!";
RUN;

Skickar ett SAS-e-postmeddelande med ett HTML-organ

Notera e-posttypen: Type = 'text / html';

Filename myEmail EMAIL
    Subject = "My Email Subject"
    From    = "[email protected]"
    To      = '[email protected]'
    CC      = '[email protected]'
    Type    = 'text/html';

Data _null_; File myEmail;
PUT "
<html>
    <head>
        <style>
            table, th, td {
                border: 1px solid black;
                   border-collapse: collapse;
            }
        </style>
    </head>
    <body>
        <p>Here is your email</p>
        <p>Go ahead, organize your data within an HTML table tag here!</p>
        <table>
            <tr>
                <th>
                    column 1
                </th>
                <th>
                    column 2
                </th>
            </tr>
            <tr>
                <td>
                    &countOfRecords1
                </td>
                <td>
                    &countOfRecords2
                </td>
            </tr>
        </table>
    </body>
</html>
";
RUN;

Det är mycket möjligt att när du bygger ut en HTML-e-post i SAS, hittar du HTML är förvrängd när du får e-postmeddelandet. Detta är ett resultat av att SAS sätter pauser till nästa rad i texten till din PUT. En paus placerades antagligen mitt i en av taggens text. Skulle detta hända dig, försök flytta dina HTML-taggar runt. Det kanske inte är vackert, men du kanske måste ha några taggar att dela en rad för att undvika att detta händer. Detta hände med mig, och det är exakt hur jag fixade det.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow