Skopiuj dokument z EPDM i wklej go na dysk lokalny za pomocą VBA

Witam

Żałuję, że nie mogę skopiować pliku z PDM i wkleić go na dysk lokalny poza PDM.

W załączeniu znajduje się fragment kodu VBA, który zacząłem tworzyć, ale nie działa. (patrz komunikat o błędzie).

Czy jest to wykonalne? Czy ktoś ma jakieś pojęcie o problemie?

Dziękuję.


code_vba.png

W załączeniu znajduje się komunikat o błędzie

Dziękuję


message_erreur.png

Witam

GetFileCopy jest używany tylko do repatriacji pliku lokalnie w repozytorium (odpowiednik pobrania wersji).

Musisz użyć metody CopyFile.

1 polubienie

Dziękuję, rzeczywiście...

Z drugiej strony nie jestem ekspertem w VBA i nie potrafię korzystać z metody CopyFile.

Patrz w załączeniu 


copyfile.png

Najprostszym sposobem jest wykonanie prostego okna kopiowania i wklejania.

Dim Vault As New EdmVault5
Dim folder As IEdmFolder5
Dim file As IEdmFile5
Dim destfolder As String

Vault.LoginAuto "BllueBus", 0

Set file = vault.GetFileFromPath("D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\U100023AA-R01.pdf")

destfoler = "C:\Temp\"

FileCopy "D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\U100023AA-R01.pdf", "C:\Temp\U100023AA-R01.pdf"

Wszystko, co musisz zrobić, to umieścić zmienne do zarządzania różnymi plikami i użyć metody GetFile, aby pobrać plik lokalnie przed utworzeniem kopii.

1 polubienie

Poniżej znajduje się kod funkcjonalny.

Sub CopyFile()

Dim Vault As EdmVault5
Dim folder As IEdmFolder5
Dim file As IEdmFile5
Dim destfolder As String


Set Vault = New EdmVault5
Vault.LoginAuto "BlueBus", 0

Set folder = Vault.GetFolderFromPath("D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\")
Set file = folder.GetFile("U100023AA-R01.pdf")

file.GetFileCopy 0, "", 0

destfolder = "C:\PDF\"

FileCopy file.GetLocalPath(folder.ID), destfolder & file.Name

End Sub

 

3 polubienia

Dziękuję Cyril.f!

To działa!