GetAttachmentsFromDms
Uložení příloh z enTeam DMS na disk
Popis
Skript provede vyhledávací dotaz do archivu enTeam DMS a pro vyhovující dokumenty uloží přílohy na disk.declare function Dms_ExecuteQuery dll "ActualDocument" (string, var integer, pointer): integer declare function Dms_GetDocument dll "ActualDocument" (integer, integer): integer declare function DmsDocument_GetAspectByName dll "ActualDocument" (integer, string, var integer): string declare function DmsDocument_GetAttachmentCount dll "ActualDocument" (integer): integer declare function DmsDocument_GetAttachment dll "ActualDocument" (integer, integer): integer declare function DmsAttachment_GetFile dll "ActualDocument" (integer, string): integer declare function Dms_Release dll "ActualDocument" (integer): integer declare function DmsAttachment_GetStrProperty dll "ActualDocument" (integer, string, var integer): string script GetXFromMdms (): boolean var DocCount: integer // Počet dokumentů QryRes, DocDesc, Attachment: integer // Identifikátory objektů I, J: integer // Řídící proměnné AspIndex: integer // Index aspektu AspValue: string // Hodnota aspektu IntSuccess: integer // Výsledek zpracování AttCount: integer // Počet příloh dokumentu FileName: string // Soubor na disku AttName: string // Název přílohy dokumentu begin QryRes := Dms_ExecuteQuery("dokument_nazev=""*Logo*""", DocCount, actualdocument) if QryRes > 0 then for I := 0 to DocCount - 1 do DocDesc := Dms_GetDocument(QryRes, I) if DocDesc > 0 then AspValue := DmsDocument_GetAspectByName(DocDesc, "dokument_nazev", AspIndex) if AspIndex > -1 then write(AspValue) else write("Tento aspekt neexistuje") end AttCount := DmsDocument_GetAttachmentCount(DocDesc) for J := 0 to AttCount - 1 do Attachment := DmsDocument_GetAttachment(DocDesc, J) if Attachment > 0 then // AttCreatedBy := DmsAttachment_GetStrProperty(Attachment, "CreatedBy", IntSuccess) // AttType := DmsAttachment_GetStrProperty(Attachment, "Type", IntSuccess) AttName := DmsAttachment_GetStrProperty(Attachment, "Name", IntSuccess) FileName := "c:\Temp\Dms\" + AttName IntSuccess := DmsAttachment_GetFile(Attachment, FileName) write(FileName) else write("Příloha nebyla nalezena") end end end end Dms_Release(QryRes) end end