SQL Server
SQL Server
Create Apple Watch HTML (text/watch-html) Email
See more Email Object Examples
Demonstrates how to create an Apple Watch text/watch-html email.Chilkat SQL Server Downloads
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
DECLARE @success int
SELECT @success = 0
-- This example will produce an email such as:
-- MIME-Version: 1.0
-- Date: Fri, 02 Jun 2017 09:17:06 -0500
-- Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
-- X-Priority: 3 (Normal)
-- Subject: Apple Watch Example
-- From: from@example.org
-- To: to@example.org
-- Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
--
-- --------------080904030200000307060803
-- Content-Type: text/plain; charset=utf-8
-- Content-Transfer-Encoding: quoted-printable
-- Content-Disposition: inline
--
-- This is the plain text part.
-- --------------080904030200000307060803
-- Content-Type: text/watch-html; charset=utf-8
-- Content-Disposition: inline
-- Content-Transfer-Encoding: quoted-printable
--
-- <b>This is the Watch HTML part</b>
-- --------------080904030200000307060803
-- Content-Type: text/html; charset=utf-8
-- Content-Disposition: inline
-- Content-Transfer-Encoding: quoted-printable
--
-- <p>This is the standard HTML part</p>
-- --------------080904030200000307060803--
-- Create a new email instance to get the default auto-created fields.
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, 'Body', 'This is the plain text part.'
EXEC sp_OASetProperty @email, 'Subject', 'Apple Watch Example'
EXEC sp_OASetProperty @email, 'From', 'from@example.org'
EXEC sp_OAMethod @email, 'AddTo', @success OUT, '', 'to@example.org'
EXEC sp_OAMethod @email, 'GetMime', @sTmp0 OUT
PRINT @sTmp0
PRINT '--'
-- This is the MIME so far:
-- (Chilkat automatically removes CKX-* headers when sending email.)
-- MIME-Version: 1.0
-- Date: Fri, 02 Jun 2017 09:17:06 -0500
-- Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
-- Content-Type: text/plain; format=flowed
-- Content-Transfer-Encoding: 7bit
-- X-Priority: 3 (Normal)
-- Subject: Apple Watch Example
-- From: from@example.org
-- To: to@example.org
--
-- This is the plain text part.
-- We'll use the Chilkat MIME object to build it.
-- The MIME API provides more flexibility..
DECLARE @mime int
EXEC @hr = sp_OACreate 'Chilkat.Mime', @mime OUT
EXEC sp_OAMethod @email, 'GetMime', @sTmp0 OUT
EXEC sp_OAMethod @mime, 'LoadMime', @success OUT, @sTmp0
-- Convert this MIME to multipart/alternative.
EXEC sp_OAMethod @mime, 'ConvertToMultipartAlt', @success OUT
EXEC sp_OAMethod @mime, 'GetMime', @sTmp0 OUT
PRINT @sTmp0
PRINT '--'
-- We now have this MIME:
-- MIME-Version: 1.0
-- Date: Fri, 02 Jun 2017 09:17:06 -0500
-- Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
-- X-Priority: 3 (Normal)
-- Subject: Apple Watch Example
-- From: from@example.org
-- To: to@example.org
-- Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
--
-- --------------080904030200000307060803
-- Content-Type: text/plain; format=flowed
-- Content-Transfer-Encoding: 7bit
--
-- This is the plain text part.
-- --------------080904030200000307060803--
-- If we desire a particular charset, encoding, or disposition..
DECLARE @partPlainText int
EXEC @hr = sp_OACreate 'Chilkat.Mime', @partPlainText OUT
EXEC sp_OAMethod @mime, 'PartAt', @success OUT, 0, @partPlainText
IF @success = 0
BEGIN
EXEC sp_OAGetProperty @mime, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @email
EXEC @hr = sp_OADestroy @mime
EXEC @hr = sp_OADestroy @partPlainText
RETURN
END
EXEC sp_OASetProperty @partPlainText, 'Charset', 'utf-8'
EXEC sp_OASetProperty @partPlainText, 'Disposition', 'inline'
EXEC sp_OASetProperty @partPlainText, 'Encoding', 'quoted-printable'
-- Create the text/watch-html MIME part and add it.
DECLARE @partWatchHtml int
EXEC @hr = sp_OACreate 'Chilkat.Mime', @partWatchHtml OUT
EXEC sp_OASetProperty @partWatchHtml, 'ContentType', 'text/watch-html'
EXEC sp_OASetProperty @partWatchHtml, 'Charset', 'utf-8'
EXEC sp_OASetProperty @partWatchHtml, 'Disposition', 'inline'
EXEC sp_OASetProperty @partWatchHtml, 'Encoding', 'quoted-printable'
EXEC sp_OAMethod @partWatchHtml, 'SetBody', NULL, '<b>This is the Watch HTML part</b>'
EXEC sp_OAMethod @mime, 'AppendPart', @success OUT, @partWatchHtml
EXEC sp_OAMethod @mime, 'GetMime', @sTmp0 OUT
PRINT @sTmp0
PRINT '--'
-- We now have this MIME:
-- MIME-Version: 1.0
-- Date: Fri, 02 Jun 2017 09:17:06 -0500
-- Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
-- X-Priority: 3 (Normal)
-- Subject: Apple Watch Example
-- From: from@example.org
-- To: to@example.org
-- Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
--
-- --------------080904030200000307060803
-- Content-Type: text/plain; charset=utf-8
-- Content-Transfer-Encoding: quoted-printable
-- Content-Disposition: inline
--
-- This is the plain text part.
-- --------------080904030200000307060803
-- Content-Type: text/watch-html; charset=utf-8
-- Content-Disposition: inline
-- Content-Transfer-Encoding: quoted-printable
--
-- <b>This is the Watch HTML part</b>
-- --------------080904030200000307060803--
-- Create the text/html MIME part and add it.
DECLARE @partHtml int
EXEC @hr = sp_OACreate 'Chilkat.Mime', @partHtml OUT
EXEC sp_OASetProperty @partHtml, 'ContentType', 'text/html'
EXEC sp_OASetProperty @partHtml, 'Charset', 'utf-8'
EXEC sp_OASetProperty @partHtml, 'Disposition', 'inline'
EXEC sp_OASetProperty @partHtml, 'Encoding', 'quoted-printable'
EXEC sp_OAMethod @partHtml, 'SetBody', NULL, '<p>This is the standard HTML part</p>'
EXEC sp_OAMethod @mime, 'AppendPart', @success OUT, @partHtml
EXEC sp_OAMethod @mime, 'GetMime', @sTmp0 OUT
PRINT @sTmp0
PRINT '--'
-- We now have this MIME:
-- MIME-Version: 1.0
-- Date: Fri, 02 Jun 2017 09:17:06 -0500
-- Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
-- X-Priority: 3 (Normal)
-- Subject: Apple Watch Example
-- From: from@example.org
-- To: to@example.org
-- Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
--
-- --------------080904030200000307060803
-- Content-Type: text/plain; charset=utf-8
-- Content-Transfer-Encoding: quoted-printable
-- Content-Disposition: inline
--
-- This is the plain text part.
-- --------------080904030200000307060803
-- Content-Type: text/watch-html; charset=utf-8
-- Content-Disposition: inline
-- Content-Transfer-Encoding: quoted-printable
--
-- <b>This is the Watch HTML part</b>
-- --------------080904030200000307060803
-- Content-Type: text/html; charset=utf-8
-- Content-Disposition: inline
-- Content-Transfer-Encoding: quoted-printable
--
-- <p>This is the standard HTML part</p>
-- --------------080904030200000307060803--
-- Load the email object with this MIME, and we're good to go..
EXEC sp_OAMethod @mime, 'GetMime', @sTmp0 OUT
EXEC sp_OAMethod @email, 'SetFromMimeText', @success OUT, @sTmp0
EXEC sp_OAMethod @email, 'GetMime', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @email
EXEC @hr = sp_OADestroy @mime
EXEC @hr = sp_OADestroy @partPlainText
EXEC @hr = sp_OADestroy @partWatchHtml
EXEC @hr = sp_OADestroy @partHtml
END
GO