﻿<?xml version="1.0" encoding="utf-8"?>
<ReportsExport>
  <Reports>
    <Report id="0291205d-142f-4701-8e1c-b13f8cd25c80" codekey="PlatformEmails" categoryCodekey="Testing" name="Testing: Emails, die aus der Plattform verschickt wurden" description="Nur für Platform-Admins. Zeigt alle Mails an, die aus der Plattform heraus verschickt wurden oder noch werden, mit verschiedenen Konfigurations- und Filtermöglichkeiten.">
      <MetaData created="2011-09-09T09:00:00" createdBy="VIWIS" createdBy_user_id="3" modified="2014-05-08T10:30:26" modifiedBy="Administrator VIWIS" />
      <ExecutionDetails format="TableResult" commandType="SqlCommandOrQuery" exportHandler="" adminControl="" exportMultipleTablesToSheets="False" datesWithTime="False" extraParams="" />
      <Mandators mandatorMode="ExcludeMandators" mandator_id="cf85efc9-150b-4eee-8c20-929a112b658c" isStandard="True" isUsedByMenu="False">
        <Mandator mandatorName="ELECT" />
      </Mandators>
      <Parameters>
        <Parameter id="d8e4595f-8bdd-4a54-9298-8f378450e6a0" isRequired="False" name="Zeitraum" contextName="Zeitraum" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="25947fcd-b047-408d-95d9-ca5137470317" isRequired="True" name="OutputFormat" contextName="Ausgabeformat" defaultValue="0" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="42fcdb73-8b9f-4777-8c9b-8a65f817c192" isRequired="False" name="MailStatus" contextName="Status" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="a785aecc-668a-4609-9613-394bd4d708c2" isRequired="False" name="Mandant" contextName="Mandant" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="c34dbe08-0158-4ad3-9e5d-9b603447c72a" isRequired="False" name="Text" contextName="Suchstring" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="8fa7058e-20e0-4c81-ae87-accbce3bb924" isRequired="True" name="MailSearchType" contextName="Suche in" defaultValue="0" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="ca406f5d-c0f6-414b-97b2-1382f42684f0" isRequired="False" name="Benutzer" contextName="Benutzer" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="e030b6dc-99a1-4543-bad4-97234e7dadfa" isRequired="False" name="Seminartitel abhängig vom Mandanten" contextName="Seminartitel" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="e835e8c3-72af-4731-bc67-a8f5f7bf1a5c" isRequired="False" name="Seminertermin abhängig von Seminartitel" contextName="Seminartermin" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="cb651f54-5fa6-477b-9ebb-d812a2cf86cd" isRequired="False" name="Mailvorlage" contextName="Mailvorlage" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
      </Parameters>
      <Roles>
        <Role id="90" />
      </Roles>
      <command>DECLARE @trainingTitle NVARCHAR(300)

        IF (@training_id IS NOT NULL)
        SELECT @trainingTitle = title
        FROM tblItems
        WHERE id = @training_id

        IF (@trainingTitle_id IS NOT NULL AND @trainingTitle IS NULL)
        SELECT @trainingTitle = title
        FROM tblItems
        WHERE id = @trainingTitle_id

        IF (@mailStatus = 1)
        BEGIN
        SET @mailStatus = 0
        SET @dateRange_start = DATEADD(dd, -3, GETDATE())
        END

        -- NOTE: Queries for short and long format are identical except columns in SELECT!
        IF (@outputFormat = 0) -- short format
        SELECT ISNULL(v_Users.Vorname + ' ' + v_Users.Nachname + ' (' + v_Users.descUserCn + ')', '') AS Benutzer,
        tblMails.created AS Erzeugt,
        tblMails.updated as Versandt,
        ISNULL(tblMails.mailTo, '') AS Empfänger,
        tblMails.subject AS Betreff,
        tblMails.body AS Text,
        tblMails.resultMessage AS Status
        FROM tblMails
        LEFT OUTER JOIN tblMandators ON tblMandators.id = tblMails.mandator_id
        LEFT OUTER JOIN v_Users ON v_Users.intUserCn = tblMails.user_id
        LEFT OUTER JOIN tblLanguages ON tblLanguages.Language_ID = tblMails.language_id
        WHERE (@dateRange_start IS NULL OR tblMails.created &gt; @dateRange_start)
      AND (@dateRange_end IS NULL OR tblMails.created &lt; @dateRange_end)
        AND (@string IS NULL
        OR (tblMails.subject LIKE '%'+@string+'%' AND (@mailSearchType = 0 OR @mailSearchType = 1))
        OR (tblMails.body LIKE '%'+@string+'%' AND (@mailSearchType = 0 OR @mailSearchType = 2))
        OR (@mailSearchType = 3
        AND (tblMails.mailTo LIKE '%'+@string+'%'
        OR tblMails.mailCC LIKE '%'+@string+'%'
        OR tblMails.mailBCC LIKE '%'+@string+'%'
        )
        )
        )
        AND (@mandator_id IS NULL OR tblMails.mandator_id = @mandator_id)
        AND (@user_id IS NULL OR tblMails.user_id = @user_id)
        AND (@trainingTitle IS NULL OR tblMails.subject LIKE '%'+@trainingTitle+'%')
        AND (@mailTemplateCodeKey IS NULL OR tblMails.codekey = @mailTemplateCodeKey)
        AND (@mailStatus IS NULL OR tblMails.state = @mailStatus)
        ORDER BY tblMails.created DESC
        ELSE  -- 1: long format

        SELECT tblMandators.name AS Mandant,
        tblMails.state AS StatusNr,
        ISNULL(v_Users.Vorname + ' ' + v_Users.Nachname + ' (' + v_Users.descUserCn + ')', '') AS Benutzer,
        tblMails.created AS Erzeugt,
        tblMails.updated as Versandt,
        ISNULL(tblMails.mailTo, '') AS Empfänger,
        ISNULL(tblMails.mailCC, '') AS CC,
        ISNULL(tblMails.mailBCC, '') AS BCC,
        ISNULL(tblMails.mailFrom, '') AS Absender,
        tblMails.codekey AS Vorlage,
        tblLanguages.Language_Name AS Sprache,
        tblMails.subject AS Betreff,
        tblMails.body AS Text,
        ISNULL(dbo.fn_GetAttachmentList(tblMails.attachmentIds), '') AS Anhänge,
		tblMails.attachmentIds AS Attachments,
        ISNULL(tblMails.alternateViewMIME, '') AS Alternative_Inhaltsart,
        ISNULL(tblMails.alternateViewContents, '') AS Alternativer_Inhalt,
        tblMails.id AS Mail_ID,
        tblMails.resultMessage AS Status
        FROM tblMails
        LEFT OUTER JOIN tblMandators ON tblMandators.id = tblMails.mandator_id
        LEFT OUTER JOIN v_Users ON v_Users.intUserCn = tblMails.user_id
        LEFT OUTER JOIN tblLanguages ON tblLanguages.Language_ID = tblMails.language_id
        WHERE (@dateRange_start IS NULL OR tblMails.created &gt; @dateRange_start)
        AND (@dateRange_end IS NULL OR tblMails.created &lt; @dateRange_end)
        AND (@string IS NULL
        OR (tblMails.subject LIKE '%'+@string+'%' AND (@mailSearchType = 0 OR @mailSearchType = 1))
        OR (tblMails.body LIKE '%'+@string+'%' AND (@mailSearchType = 0 OR @mailSearchType = 2))
        OR (@mailSearchType = 3
        AND (tblMails.mailTo LIKE '%'+@string+'%'
        OR tblMails.mailCC LIKE '%'+@string+'%'
        OR tblMails.mailBCC LIKE '%'+@string+'%'
        )
        )
        )
        AND (@mandator_id IS NULL OR tblMails.mandator_id = @mandator_id)
        AND (@user_id IS NULL OR tblMails.user_id = @user_id)
        AND (@trainingTitle IS NULL OR tblMails.subject LIKE '%'+@trainingTitle+'%')
        AND (@mailTemplateCodeKey IS NULL OR tblMails.codekey = @mailTemplateCodeKey)
        AND (@mailStatus IS NULL OR tblMails.state = @mailStatus)
        ORDER BY tblMails.created DESC
      </command>
    </Report>
  </Reports>
  <Parameters>
    <Parameter id="d8e4595f-8bdd-4a54-9298-8f378450e6a0" isSystem="True" name="Zeitraum" reportParameterType_id="abff13be-91c3-4ee1-93a3-7292f8e013ba" queryParameterName="@dateRange" />
    <Parameter id="25947fcd-b047-408d-95d9-ca5137470317" isSystem="True" name="OutputFormat" reportParameterType_id="89c932c2-c78a-44d2-8f6f-f7b947ae6d88" queryParameterName="@outputFormat" />
    <Parameter id="42fcdb73-8b9f-4777-8c9b-8a65f817c192" isSystem="True" name="MailStatus" reportParameterType_id="21dac8d7-0f00-460d-8c89-f95f880f4f9c" queryParameterName="@mailStatus" />
    <Parameter id="a785aecc-668a-4609-9613-394bd4d708c2" isSystem="True" name="Mandant" reportParameterType_id="6b8fa242-5449-45b3-a81a-65a7e5e3b51d" queryParameterName="@mandator_id" />
    <Parameter id="c34dbe08-0158-4ad3-9e5d-9b603447c72a" isSystem="True" name="Text" reportParameterType_id="6e221a70-58e9-46eb-b028-181b9983b2f6" queryParameterName="@string" />
    <Parameter id="8fa7058e-20e0-4c81-ae87-accbce3bb924" isSystem="True" name="MailSearchType" reportParameterType_id="bc763e39-b72d-4049-a65b-9bb022d1e1af" queryParameterName="@mailSearchType" />
    <Parameter id="ca406f5d-c0f6-414b-97b2-1382f42684f0" isSystem="True" name="Benutzer" reportParameterType_id="1f6b4472-1471-441e-a195-454faa229f22" queryParameterName="@user_id" />
    <Parameter id="e030b6dc-99a1-4543-bad4-97234e7dadfa" isSystem="False" name="Seminartitel abhängig vom Mandanten" reportParameterType_id="898c788e-964b-4b5a-978f-ba2ce5902e7c" queryParameterName="@trainingTitle_id" />
    <Parameter id="e835e8c3-72af-4731-bc67-a8f5f7bf1a5c" isSystem="True" name="Seminertermin abhängig von Seminartitel" reportParameterType_id="74248137-a33e-4c0c-9a2c-cdf38564817e" queryParameterName="@training_id" />
    <Parameter id="cb651f54-5fa6-477b-9ebb-d812a2cf86cd" isSystem="True" name="Mailvorlage" reportParameterType_id="244702a4-6035-4c56-a9b5-84df864f587d" queryParameterName="@mailTemplateCodeKey" />
    <Parameter id="8eacbb69-0b54-4785-9223-3343af2b7ae6" isSystem="True" name="Seminartitel" reportParameterType_id="c4fa1006-96a9-4b85-bf22-6a480289e5f3" queryParameterName="@trainingTitle_id" />
  </Parameters>
  <ParameterTypes>
    <ParameterType id="abff13be-91c3-4ee1-93a3-7292f8e013ba" isSystem="True" name="DateRange" datatype="DateRange" dataValueField="" dataTextField="" />
    <ParameterType id="89c932c2-c78a-44d2-8f6f-f7b947ae6d88" isSystem="True" name="OutputFormat" datatype="IntegerDDL" dataValueField="" dataTextField="">
      <query>
        SELECT [value], [text]
        FROM (VALUES (0, 'Kurz'),
        (1, 'Vollständig')
        ) AS KeyValues([value], [text])
      </query>
    </ParameterType>
    <ParameterType id="21dac8d7-0f00-460d-8c89-f95f880f4f9c" isSystem="True" name="MailStatus" datatype="IntegerDDL" dataValueField="" dataTextField="">
      <query>
        SELECT [value], [text]
        FROM (VALUES
        (-1, 'Vorlage deaktiviert'),
        (0, 'Noch nicht gesendet'),
        (1, 'Wird bei Job-Aufruf versendet (maximal 3 Tage alt)'),
        (200, 'Wurde gesendet')
        ) AS KeyValues([value], [text])
      </query>
    </ParameterType>
    <ParameterType id="6b8fa242-5449-45b3-a81a-65a7e5e3b51d" isSystem="True" name="Mandator" datatype="Mandator" dataValueField="" dataTextField="" />
    <ParameterType id="6e221a70-58e9-46eb-b028-181b9983b2f6" isSystem="True" name="String" datatype="String" dataValueField="" dataTextField="" />
    <ParameterType id="bc763e39-b72d-4049-a65b-9bb022d1e1af" isSystem="True" name="MailSearchType" datatype="IntegerDDL" dataValueField="" dataTextField="">
      <query>
        SELECT [value], [text]
        FROM (VALUES (0, 'Betreff und Body'),
        (1, 'Nur Betreff'),
        (2, 'Nur Body'),
        (3, 'Email: To, CC oder BCC')
        ) AS KeyValues([value], [text])
      </query>
    </ParameterType>
    <ParameterType id="1f6b4472-1471-441e-a195-454faa229f22" isSystem="True" name="User" datatype="User" dataValueField="" dataTextField="" />
    <ParameterType id="898c788e-964b-4b5a-978f-ba2ce5902e7c" isSystem="False" name="Seminartitel abhängig vom Mandanten" datatype="GuidDDL" dataValueField="key" dataTextField="value">
      <query>
        select tblItems.id as 'key', tblItems.title as 'value'
        from tblTrainingTitles
             INNER JOIN tblItems ON tblItems.id = tblTrainingTitles.id
        where @mandator_id is null or tblTrainingTitles.mandator_id=@mandator_id
        order by value
      </query>
      <Parameters>
        <Parameter id="a785aecc-668a-4609-9613-394bd4d708c2" isRequired="False" name="Mandant" contextName="Mandant" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
      </Parameters>
    </ParameterType>
    <ParameterType id="74248137-a33e-4c0c-9a2c-cdf38564817e" isSystem="True" name="Seminartermin abhängig von Seminartitel" datatype="GuidDDL" dataValueField="" dataTextField="">
      <query>
        SELECT tblItems.id AS value,
        tblItems.title + ' [' + dbo.fn_FormatDateSpan(tblTrainings.startDate, tblTrainings.endDate) + ']' AS text
        FROM tblTrainings
             INNER JOIN tblItems ON tblItems.id = tblTrainings.id
        WHERE (@trainingTitle_id IS NULL OR trainingTitle_id = @trainingTitle_id)
        AND (@mandator_id IS NULL OR tblTrainings.mandator_id = @mandator_id)
        ORDER BY tblItems.title
      </query>
      <Parameters>
        <Parameter id="a785aecc-668a-4609-9613-394bd4d708c2" isRequired="False" name="Mandant" contextName="Mandant" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
        <Parameter id="8eacbb69-0b54-4785-9223-3343af2b7ae6" isRequired="False" name="Seminartitel" contextName="Seminartitel" defaultValue="" renderHint="Undefined" disableParameter="DontDisable" />
      </Parameters>
    </ParameterType>
    <ParameterType id="244702a4-6035-4c56-a9b5-84df864f587d" isSystem="True" name="Mailvorlage" datatype="StringDDL" dataValueField="" dataTextField="">
      <query>
        SELECT DISTINCT codekey AS value,
        codekey AS text
        FROM tblMailTemplates
        ORDER BY codekey
      </query>
    </ParameterType>
    <ParameterType id="c4fa1006-96a9-4b85-bf22-6a480289e5f3" isSystem="False" name="Seminartitel" datatype="GuidDDL" dataValueField="" dataTextField="">
      <query>SELECT tblItems.id AS value, 
                    tblItems.title AS text 
               FROM tblTrainingTitles 
                    INNER JOIN tblItems ON tblItems.id = tblTrainingTitles.id
              WHERE tblTrainingTitles.mandator_id = @current_mandator_id ORDER BY text</query>
    </ParameterType>
  </ParameterTypes>
</ReportsExport>