IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Sharepoint .NET Discussion :

Upload de fichier vers Sharepoint online avec méta-données


Sujet :

Développement Sharepoint .NET

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 13
    Points
    13
    Par défaut Upload de fichier vers Sharepoint online avec méta-données
    Bonjour à tous,

    je possède des données sous la forme (fichier + XML contenant l'indexation du fichier) que j'aimerai uploader vers mon site sharepoint online.

    auriez-vous des conseils pour faire ça ? j'ai lu qu'avec PowerShell ça serait réalisable mais je ne sais pas par où commencer ...

    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 486
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 486
    Points : 2 082
    Points
    2 082
    Par défaut
    Bonjour

    Installez le SharePoint Online Management Shell
    https://www.microsoft.com/en-us/down....aspx?id=35588

    Parser du xml avec Powershell:
    http://www.tomsitpro.com/articles/po...les,2-895.html

    Upload de fichier vers SPO:
    https://blogs.technet.microsoft.com/...ry-using-csom/

    Mise a jour de metadonnees (item) dans SPO:
    https://docs.microsoft.com/en-us/sha...te-a-list-item

    Exemple de code (upload + mise a jour des metadonnees):
    En presupposant que vous ayez ajoute les colonnes adequates dans la bibliotheque de documents.
    Dans cet exemple ChampDate1, ChampChoix1, ChampTexte1 qui sont respectivement des colonnes Date/Heure, Choix selection simple, Text simple.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    # Variables a ajuster selon votre environnement
    $userName = "user@name.onmicrosoft.com"
    $password = "*******"
    $siteUrl = "https://name.sharepoint.com/sites/sitename"
    $filePath = "C:\FILES\myfile1.txt"
    $libraryTitle = "Documents"
     
    # ----- Le chargement des dlls est inutile si ce script est execute dans le SharePoint Online Management Shell ----
    #Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"  
    #Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"  
     
    Write-Host "START ---------"
    $credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials $userName,(ConvertTo-SecureString $password -AsPlainText -Force)
    $context = New-Object Microsoft.SharePoint.Client.ClientContext $siteUrl
    $context.Credentials = $credentials  
    $targetLibrary = $context.Web.Lists.GetByTitle($libraryTitle) #target list
    $context.Load($targetLibrary)
    $context.ExecuteQuery()
    Write-Host "Doc Library :" $targetLibrary.Title
     
    $fci = New-Object Microsoft.SharePoint.Client.FileCreationInformation
    $fci.Overwrite = $true  
    $fci.Content = [System.IO.File]::ReadAllBytes($filePath)  # Attention si le fichier est gros il faudra implementer une autre methode
    $fci.Url = [System.IO.Path]::GetFileName($filePath)  # La gestion des dossiers est omise pour simplifier
    $uploadFile = $targetList.RootFolder.Files.Add($fci)
     
    Write-Host "Setting metadata..."
    $listItem = $uploadFile.ListItemAllFields  
     
    # A ajuster selon votre schema XML >>>>
    $listItem["ChampDate1"] = [System.DateTime]::Now
    $listItem["ChampTexte1"] = "TEXTE"
    $listItem["ChampChoix1"] = "VALEUR1"
    # <<<< A ajuster selon votre schema XML
     
    $listItem.Update()
    $context.Load($uploadFile)  
     
    Write-Host "Sending file w/ meta..."
    $context.ExecuteQuery() 
    Write-Host "DONE !"

  3. #3
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    Merci beaucoup !
    je vais essayer ça

Discussions similaires

  1. Upload de fichiers vers SharePoint
    Par Nianseal dans le forum Développement Sharepoint
    Réponses: 4
    Dernier message: 12/12/2013, 16h53
  2. [VB.NET]upload de fichier vers un serveur
    Par damaskinos dans le forum Windows Forms
    Réponses: 5
    Dernier message: 09/10/2013, 19h20
  3. Réponses: 1
    Dernier message: 16/10/2007, 09h31
  4. Upload un fichier vers un serveur FTP
    Par midoENSI dans le forum Struts 1
    Réponses: 1
    Dernier message: 25/05/2007, 16h07
  5. uploader un fichier vers un serveur http
    Par Zorgloub dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 26/04/2006, 11h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo