FlowFact - Entwicklungstools

zurück

Function - AKT_CreateEMail
EMail-Aktivität anlegen

Diese Funktion legt mit minimalen Angaben eine EMail-Aktivität mit ihren Std.-Merkmalen in der Datenbank an. Hinweis: Die erzeugte EMail wird sofort in den Postausgang gelegt.
  Function AKT_CreateEMail(Optional ByVal strAktArtDsn As String = "", _  
 


strAktArtDsn: Datensatznummer (DSN) der Aktivitätenart; leer => std. aus Benutzereinstellungen
strMailTo: Empfänger EMail-Adresse
strMailSubject: Betreffzeile der EMail
strMailBody: Textnachricht bzw. Inhalt des Notizfeldes
strAttachmentPipeList: Liste Dateianhängen z.B. Datei1|Datei2|Datei3|Datei4
strMailCC: Weitere Empfänger; Liste von EMailadressen
strMailBCC: Weitere Empfänger (blindcopy); Liste von EMailadressen
blnErledigt: Aktivität auf erledigt setzen
dateDatum: Anfang des Zeitraumes
dateDatumBis: Ende des Zeitraumes
dateDatumVorlage: Vorlagedatum
dateDatumAlarm: Datum bzw. Zeit, zu dem der Alarm diese Aktivität (z.B. einen Termin) meldet
dateLoeschdatum: Datum, an dem die Aktivität gelöscht werden soll
strStichwort1: Erstes Stichwort
strStichwort2: Zweites Stichwort
strEmskDsn: Datensatznummer (DSN) der Eingabehilfe
strAdDsn1: Datensatznummer (DSN) der ersten verknüpften Adresse
strAdDsn2: Datensatznummer (DSN) der zweiten verknüpften Adresse
strObjDsn: Datensatznummer (DSN) des verknüpften Objekts
strAnfDsn: Datensatznummer (DSN) der verknüpften Anfrage
strProjekteDsn: Datensatznummer (DSN) des verknüpften Projektes
strAktenDsn: Datensatznummer (DSN) der verknüpften Akte
strVertraegeDsn: Datensatznummer (DSN) des verknüpften Vertrages
strVorgangAktDsn: Datensatznummer (DSN) der übergeordneten verknüpften Aktivität (=Vorgangsaktivität)
strDetailsDsn: Datensatznummer (DSN) des verknüpften Detailsdatensatzes einer Adresse
Rückgabewert: Datensatznummer (DSN) der Aktivität oder 'LEER'


Public Function AKT_CreateEMail(Optional ByVal strAktArtDsn As String = "", _
                          Optional ByVal strMailTo As String = "", _
                          Optional ByVal strMailFrom As String = "", _
                          Optional ByVal strMailSubject As String = "", _
                          Optional ByVal strMailBody As String = "", _
                          Optional ByVal strAttachmentPipeList As String = "", _
                          Optional ByVal strMailCC As String = "", _
                          Optional ByVal strMailBCC As String = "", _
                          Optional ByVal blnErledigt As Boolean = False, _
                          Optional ByVal dateDatum As Date = 0, _
                          Optional ByVal dateDatumBis As Date = 0, _
                          Optional ByVal dateDatumVorlage As Date = 0, _
                          Optional ByVal dateDatumAlarm As Date = 0, _
                          Optional ByVal dateLoeschdatum As Date = 0, _
                          Optional ByVal strStichwort1 As String = "", _
                          Optional ByVal strStichwort2 As String = "", _
                          Optional ByVal strEmskDsn As String = "", _
                          Optional ByVal strAdDsn1 As String = "", _
                          Optional ByVal strAdDsn2 As String = "", _
                          Optional ByVal strObjDsn As String = "", Optional ByVal strAnfDsn As String = "", Optional ByVal strProjekteDsn As String = "", Optional ByVal strAktenDsn As String = "", Optional ByVal strVertraegeDsn As String = "", Optional ByVal strDetailsDsn As String = "", Optional ByVal strRootAktDsn As String = "") As String
    Dim rsAkt As ADODB.Recordset
    Dim strMkmDsnList As String
    Dim strAktDsn As String
    Dim strBuffer As String
    Dim strItem As String

    Set rsAkt = AKT_New()


    If strMailFrom = "" Then
        strMailFrom = m_oUtil.k(oBase.FF_CurrentUserRS("Email").value)
    End If

    If strAktArtDsn = "" Then
        strAktArtDsn = m_oUtil.k(oBase.FF_CurrentUserRS("FAXART_DSN").value)
    End If

    rsAkt("Art_Dsn").value = m_oUtil.SqlStrNull(strAktArtDsn)  'Aktivitätenart (Pflicht; sonst keine Anzeige)


    '** EMail-Absender-Adressat-Inhalt
    rsAkt("MailTo").value = strMailTo
    rsAkt("MailFrom").value = strMailFrom
    rsAkt("cc").value = strMailCC
    rsAkt("bcc").value = strMailBCC
    rsAkt("Subject").value = Mid(strMailSubject, 1, 256)
    rsAkt("Notiz").value = strMailBody

    rsAkt("Erledigt").value = IIf(blnErledigt, 1, 0)
    rsAkt("Datum").value = IIf(dateDatum = 0, Null, dateDatum)
    rsAkt("Datum_Bis").value = IIf(dateDatumBis = 0, Null, dateDatumBis)
    rsAkt("Vorlage").value = IIf(dateDatumVorlage = 0, Null, dateDatumVorlage)
    rsAkt("Alarm").value = IIf(dateDatumAlarm = 0, Null, dateDatumAlarm)
    rsAkt("Loeschdatum").value = IIf(dateLoeschdatum = 0, Null, dateLoeschdatum)
    rsAkt("Stichwort1").value = Mid(strStichwort1, 1, 50)
    rsAkt("Stichwort2").value = Mid(strStichwort2, 1, 50)
    rsAkt("Emsk_Dsn").value = m_oUtil.SqlStrNull(strEmskDsn)
    rsAkt("AD_Dsn").value = m_oUtil.SqlStrNull(strAdDsn1)             'Verknüpfung mit Adresse
    rsAkt("AD_B_Dsn").value = m_oUtil.SqlStrNull(strAdDsn2)           'Verknüpfung mit einer zweiten Adresse
    rsAkt("OBJ_Dsn").value = m_oUtil.SqlStrNull(strObjDsn)            'Verknüpfung mit Objekt
    rsAkt("ANF_Dsn").value = m_oUtil.SqlStrNull(strAnfDsn)            'Verknüpfung mit Anfrage
    rsAkt("Projekte_Dsn").value = m_oUtil.SqlStrNull(strProjekteDsn)  'Verknüpfung mit Projekt
    rsAkt("Akten_Dsn").value = m_oUtil.SqlStrNull(strAktenDsn)        'Verknüpfung mit Akte
    rsAkt("Verträge_Dsn").value = m_oUtil.SqlStrNull(strVertraegeDsn) 'Verknüpfung mit Vertrag
    rsAkt("Akt_Dsn").value = m_oUtil.SqlStrNull(strRootAktDsn)        'Verknüpfung mit 'übergeordneter' Aktivität

    '** in Postausgang legen
    rsAkt("deferred_delivery_time").value = Now
    rsAkt("delivery_state").value = DELIVERYSTATE_Queue
    rsAkt("from_ben_dsn").value = m_oUtil.k(oBase.FF_CurrentUserRS("DSN").value)


    '-- Standard Berechtigung hinzufügen
    rsAkt("ACL").value = m_oBase.BEN_StdACL 'm_oUtil.k(oBase.FF_CurentUserRS("FAXAKT_ACL").Value)

    '-- Update
    strAktDsn = rsAkt("Dsn").value
    AKT_Update rsAkt

    '** Dateianhänge als Link hinzufügen
    strBuffer = strAttachmentPipeList
    While strBuffer <> ""
        strItem = Trim(m_oTools.StrList_DeleteFirst(strBuffer, "|"))
        AKT_Blob_Add strAktDsn, strItem, True, True
    Wend


    '-- Standard Merkmale hinzufügen
    strMkmDsnList = AKT_Merkmal_StdDsnCommaList()
    AKT_Merkmal_Add strAktDsn, strMkmDsnList

    AKT_CreateEMail = strAktDsn
End Function