FlowFact - Entwicklungstools

zurück

Function - BLOB_SaveAs
Datei speichern

  Function BLOB_SaveAs(ByVal rsBlob As ADODB.Recordset, ByVal strPath As String, Optional ByVal strNewFileName As String = "") As String  
 


rsBlob: Recordset der Tabelle BLOB. Rückgabewert von BLOB_GetInfo.
strPath: Verzeichnis der Zieldatei
strNewFileName: Name der Zieldatei; wenn leer, dann wird der Name aus der Datenbank übernommen
Rückgabe: Pfad und Dateinamen oder leer


Public Function BLOB_SaveAs(ByVal rsBlob As ADODB.Recordset, ByVal strPath As String, Optional ByVal strNewFileName As String = "") As String
    Dim strResult As String
    Dim strSourceFileName As String
    Dim lngTyp As Long
    Dim strBlobDsn As String
    Dim strLinkDsn As String

    strResult = ""
    If rsBlob.EOF = False Then
        strSourceFileName = m_oUtil.k(rsBlob("strsourcefilename"))
        If strNewFileName = "" Then
            strNewFileName = strSourceFileName
        End If
        lngTyp = oUtil.d(rsBlob("lngTyp"))
        If lngTyp = BLOBTYPE_ATTACHMENTLINK Then
            If m_oFS.FileExists(strSourceFileName) Then
                strResult = m_oFS.BuildPath(strPath, strNewFileName)
                m_oFS.CopyFile strSourceFileName, strResult, True
            ElseIf m_oFS.FolderExists(strSourceFileName) Then
                strResult = strPath
                m_oFS.CopyFolder strSourceFileName, strResult, True
            End If
        Else
            strBlobDsn = rsBlob("DSN")
            strLinkDsn = rsBlob("uidLINK_DSN")
            strSourceFileName = m_oBlob.OpenBlobFile(strBlobDsn, strLinkDsn, lngTyp)
            strResult = m_oFS.BuildPath(strPath, strNewFileName)
            m_oFS.MoveFile strSourceFileName, strResult
        End If
    End If

    BLOB_SaveAs = strResult
End Function