Sample code for 30+ languages & platforms
SQL Server

Load an Email Body from a File

See more Email Object Examples

Demonstrates the Chilkat Email.LoadBodyFromFile method, which loads the email body from a file. The first argument is the file path, the second is true to create an HTML body or false for a plain-text body, and the third is the charset used to interpret the file's bytes. This example loads a plain-text body as utf-8.

Background: Message bodies are often authored and stored as separate files — a marketing team might maintain an HTML template, or a script might generate a text body on the fly. LoadBodyFromFile reads such a file straight into the email, with the isHtml flag telling Chilkat whether to treat it as an HTML or plain-text body and the charset ensuring non-ASCII characters decode correctly.

Chilkat SQL Server Downloads

SQL Server
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 0

    --  Demonstrates the LoadBodyFromFile method, which loads the email body from a file.
    --  The first argument is the file path, the second is true to create an HTML body or false for a
    --  plain-text body, and the third is the charset used to interpret the file's bytes.

    DECLARE @email int
    EXEC @hr = sp_OACreate 'Chilkat.Email', @email OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    EXEC sp_OASetProperty @email, 'Subject', 'Body loaded from a file'

    --  Load a plain-text body (isHtml = false) using the utf-8 charset.
    EXEC sp_OAMethod @email, 'LoadBodyFromFile', @success OUT, 'qa_data/txt/body.txt', 0, 'utf-8'
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @email, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @email
        RETURN
      END

    EXEC sp_OAGetProperty @email, 'Body', @sTmp0 OUT
    PRINT @sTmp0

    --  Note: The path "qa_data/..." is a relative local filesystem path,
    --  relative to the current working directory of the running application.

    EXEC @hr = sp_OADestroy @email


END
GO