recup fichier en OLE

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

recup fichier en OLE

Messagepar jose » 28 Juin 2003 à 20:13

BonjourIl me semble avoir vu sur le forum un script permettant de récupérer dans une base notes tous les fichiers d'un répertoire. Les fichiers étaient récupérés en tant qu"attachement, est il possible de récupérer les fichiers en tant qu'objet. Si oui est ce quelqu'un possède un exemple de script.Merci d'avance à tous.
jose
 

Re: recup fichier en OLE

Messagepar Stephane Maillard » 29 Juin 2003 à 12:11

Bonjour,Dim workspace As New NotesUIWorkspaceDim doc As NotesDocumentDim uidoc As NotesUIDocument Dim handle As VariantSet uidoc = workspace.CurrentDocumentSet doc = workspace.CurrentDocument.DocumentCall uidoc.GotoField( "testrtf" ) call uidoc.CreateObject _("MyName","","c:\temp\WordTemplates\test.doc")Par contre je n'est rien trouvé pour l'affichage en forme d'icône, on est obligé de la faire avec le clic droit sur le fichier "Display as -> icon", sur Notes.net il dise que pour l'affichage en icône il faut utilisé les attachements.[%sig%]
Cordialement

Stéphane Maillard
Avatar de l’utilisateur
Stephane Maillard
Lord of DominoArea
Lord of DominoArea
 
Message(s) : 8695
Inscrit(e) le : 16 Déc 2004 à 01:10
Localisation : Bretagne

Re: recup fichier en OLE

Messagepar jose » 29 Juin 2003 à 21:17

Merci pour ta réponse, mais est ce que tu possède le script complet qui permet de sélectionner le répertoire (à travers une boite de dialogue) que l'on veut importer dans la base en cours. Merci
jose
 

Re: recup fichier en OLE

Messagepar Stephane Maillard » 30 Juin 2003 à 09:09

Bonjour,Voici le code de recherche de fichier et de création de document avec le nom et le fichier attaché.Personnellement je l'ai mis dans une action :Private Const MAX_PATH = 260Private Const INVALID_HANDLE_VALUE = -1Private Type FILETIMEdwLowDateTime As LongdwHighDateTime As LongEnd TypePrivate Type WIN32_FIND_DATAdwFileAttributes As LongftCreationTime As FILETIMEftLastAccessTime As FILETIMEftLastWriteTime As FILETIMEnFileSizeHigh As LongnFileSizeLow As LongdwReserved0 As LongdwReserved1 As LongcFileName As String * MAX_PATHcAlternate As String * 14End TypeDeclare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (Byval lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As LongDeclare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (Byval hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As LongSub Click(Source As Button)Call recherchefichier("C:")End SubFunction RechercheFichier(sSearch As String) As StringDim iNum As LongDim i As LongDim iDeb As LongDim hFile As LongDim tFindFile As WIN32_FIND_DATADim bTrouve As VariantDim sTmpExt As StringDim sExt(3) As StringsExt(0) = "XLS" ' Extension ExcelsExt(1) = "PPT" ' Extension PowerPointsExt(2) = "DOC" ' Extension WinwordsExt(3) = "MDB" ' Extension AccesshFile = findfirstfile(sSearch + "\*.*", tFindFile)bTrouve = hFile <> INVALID_HANDLE_VALUEDo While bTrouveIf tFindFile.dwFileAttributes = 32 Or tFindFile.dwFileAttributes = 1 Thenpos = Instr(tfindfile.cfilename, Chr$(0))tmpSearch = Left$(tfindfile.cfilename, pos - 1)sTmpExt = Right$(Ucase(tmpSearch), 3)Select Case sTmpExtCase sExt(0)RechercheFichier = sSearch & "\" & tmpSearchCall CreationDocument(RechercheFichier, Cstr(tmpSearch))Case sExt(1)RechercheFichier = sSearch & "\" & tmpSearchCall CreationDocument(RechercheFichier, Cstr(tmpSearch))Case sExt(2)RechercheFichier = sSearch & "\" & tmpSearchCall CreationDocument(RechercheFichier, Cstr(tmpSearch))Case sExt(3)RechercheFichier = sSearch & "\" & tmpSearchCall CreationDocument(RechercheFichier, Cstr(tmpSearch))End SelectEnd Ifinum = inum + 1bTrouve = FindNextFile(hFile, tFindFile)LoopEnd FunctionSub CreationDocument(sCheminAndFichier As String, sFichier As String)Dim session As New NotesSessionDim db As NotesDatabaseDim doc As NotesDocumentDim rtitem As NotesRichTextItemDim object As NotesEmbeddedObjectSet db = session.CurrentDatabaseSet doc = New NotesDocument( db )Set rtitem = New NotesRichTextItem( doc, "FichierAttacher" )Set object = rtitem.EmbedObject(EMBED_ATTACHMENT, "", sCheminAndFichier)doc.Form = "Liste Fichier"doc.NomFichier = sFichierCall doc.Save( True, True )End SubJ'ai un masque qui s'appel 'Liste Fichier' avec un champs 'NomFichier' en texte standard et un autre 'FichierAttacher' en RichText.[%sig%]
Cordialement

Stéphane Maillard
Avatar de l’utilisateur
Stephane Maillard
Lord of DominoArea
Lord of DominoArea
 
Message(s) : 8695
Inscrit(e) le : 16 Déc 2004 à 01:10
Localisation : Bretagne


Retour vers Développement