Sample code for 30+ languages & platforms
SQL Server

Count the MIME Parts of a Given Content-Type

See more Email Object Examples

Demonstrates the Chilkat Email.GetNumPartsOfType method, which returns the number of non-multipart MIME parts matching a Content-Type pattern. The first argument is the content-type pattern (an exact type or a wildcard), the second is an inlineOnly flag, and the third is an excludeAttachments flag. This example counts the text/* parts.

Background: This is the companion of GetNthTextPartOfType: it tells you how many parts match a pattern so you can loop over them by index. Wildcards like text/* or image/* make it easy to ask questions such as "how many images does this message contain?" while the boolean flags let you include or exclude attachment parts from the count.

Chilkat SQL Server Downloads

SQL Server
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    --  Demonstrates the GetNumPartsOfType method, which returns the number of non-multipart
    --  MIME parts matching a Content-Type pattern.  The first argument is the Content-Type
    --  pattern (exact or wildcard), the second is inlineOnly, and the third is excludeAttachments.

    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', 'GetNumPartsOfType example'

    EXEC sp_OAMethod @email, 'SetTextBody', NULL, 'This is the plain-text version.', 'text/plain'
    DECLARE @success int
    EXEC sp_OAMethod @email, 'AddHtmlAlternativeBody', @success OUT, '<html><body>This is the HTML version.</body></html>'

    --  Count the non-multipart parts whose content type matches text/*.
    DECLARE @n int
    EXEC sp_OAMethod @email, 'GetNumPartsOfType', @n OUT, 'text/*', 0, 0

    PRINT 'Number of text/* parts = ' + @n

    EXEC @hr = sp_OADestroy @email


END
GO