none
Script per l'importazione degli allegati in una SpreadSheetList RRS feed

  • Pregunta

  • Buongiorno a tutti,

    Questo è il mio primo post qui, anche perche sono da poco entrato nel mondo SharePoint (Utilizzo Sharepoint Server 2010). Avrei una domanda da fare a voi professionisti.

    Mi spiego.:

    Ho un file Excel che contiene i nomi, autori, versioni, ecc..  di parecchi file presenti sul filesystem su un server in locale. I nomi dei file sul filesystem sono gli stessi della colonna NOME nel file Excel. Questi record presenti nel file Excel vengono importati su Sharepoint in una SpreadSheetList. Per allegare il file corrispondente al record devo importarli uno ad uno, molto scomoda come soluzione.

    Volevo chiedervi se é possibile creare uno script da dare in pasto a PowerShell che ha il compito di scorrere la colonna NOME della SpreadSheetList e per ogni NOME allegare automaticamente il Documento PDF corrispondente che si trova appunto sul Filesystem.

    Spero di essermi spiegato. In caso ci fosse il modo, vi chiedo di darmi qualche spunto. Io non so tanto di programmazione ma cercherò di arrangiarmi :). Qualsiasi consiglio è ben accettato.

    Vi ringrazio anticipatamente.

    Saluti crim

    P.S.: Utilizzo una SpreadSheetList perchè devo importare dei file PDF, dato che con i file PDF non riesco ad estrapolare le Properties per compilare in automatico le colonne nelle DocumentLibrary, come invece è possibile fare con i documenti Office.

    • Editado crim10 lunes, 26 de septiembre de 2011 10:29
    lunes, 26 de septiembre de 2011 10:23

Todas las respuestas

  • lunes, 26 de septiembre de 2011 18:37
  • Ciao Gabriele,

    Innanzi tutto grazie per la risposta e per il cosiglio. Spero di riuscirci con la guida da te postata. Vi faro' sapere.

    saluti

     

    lunes, 26 de septiembre de 2011 19:21
  • Quello che vuoi fare è abbastanza facilmente realizzabile usando PowerShell.

    Inizierei leggendo qua:

    http://blogs.technet.com/b/filecab/archive/2009/12/14/automatically-upload-files-from-file-server-to-sharepoint-using-the-file-classification-infrastructure-fci.aspx

     


    Ci sarebbero anche altri metodi??
    martes, 27 de septiembre de 2011 14:31
  • Tanti se si sa programmare.

     

    martes, 27 de septiembre de 2011 19:08
  •  

    Tanti se si sa programmare.


    Ehh lo so :) ma il programmino potrebbe essere fatto in C# o VB?

    Perché più che altro la guida postata è per le DocLibrary e non per SpreadSheet list (se ho ben capito).

    miércoles, 28 de septiembre de 2011 6:56
  • Il linguaggio può essere qualsiasi fra quelli supportati da .NET.

    Il link postato era da esempio per la funzione di upload.

    E più che altro tutto in SharePoint è una Lista (oggetto SPList)(una Document Library è una lista specializzata). La tua spreadsheetlist non è altro che una lista con visualizzazione a griglia (deprecata fra l'altro dato che usa Activex...)

     

     

    miércoles, 28 de septiembre de 2011 7:08
  • Adesso stro provando a creare un programma in c# che fa l'importazione.

    2 Domande.:

    1.) il programma deve essere sviluppato per forza sul sistema operativo ove è installato Sharepoint server 2010??

    2.) Sharepoint server 2010 è installato sul server con OS w server 2008 R2, come è possibile che io con il mio PC con su Windows 7 riesco a raggiungere le cartelle delle document library dandogli il percorso (\\ < host-server>\nomeSite\Lists\Attachments) ma se vado sul server e cerco, ad esempio, la cartella Attachments non me la trova neanche... Come puo essere possibile. Mi chiedo allora, dove sono collocate queste cartelle di sharepoint??

     

    Spero di essermi spiegato.. saluti crim

    viernes, 30 de septiembre de 2011 13:51
  • 1) No, non è necessario se si usa il Client Object Model di SharePoint. E' lievemente meno efficiente dell'Object Model Server ma ha il vantaggio che può essere eseguito su qualsiasi macchina che abbia il framework 3.5.

    2) Sul server normalmente il servizio di WebClient è disattivato.

     

    viernes, 30 de septiembre de 2011 19:48
  • Grazie per la risposta.

    L'applicazione che sto cercando di sviluppare ha il compito di prendere il primo nome (Quindi all'indice 0) della colonna "Nome" all'interno di una SpreadSheet List e di confrontare tale nome con il nome dei documenti all'interno del filesystem su un Server NAS. Se il nome del file corrisponde al primo recordo della colonna, allora mi deve crearo una cartella numerata "1" nel percorso del server dove sharepoint salva i documenti della Spreadsheet List. E così via, fin quando la colonna "Nome" è stata letta completamente.

    Spero di essermi spiegato. Secondo voi è un metodo applicabile.?

    Ho un problema a leggere il primo indice della colonna. 

     

    In pratica devo leggere il primo recordo (Giovanni) che sarà probabilmente assegnato all'indice {0} e confrontarlo con i file nel NAS. appena trova un PDF di nome Giovanni, allora deve prendere il PDF e copiarlo nel percordo della lista in questione.

    Il problema è che non so come faccio a prendere il primo record, cioè la stringa Giovanni.

    Qualcuno sa aiutarmi?

    miércoles, 5 de octubre de 2011 8:26
  • Probabilmente non hai ben compreso cosa è SharePoint, come funziona SharePoint e soprattutto dove SharePoint memorizza i dati.

    Cominciando dalla fine SharePoint memorizza i dati all'interno di un database SQLServer e non direttamente su un filesystem.
    Poi per fare quello che chiedi è necessario sviluppare (o trovare già sviluppati) degli oggetti specifici SharePoint che rientrno nel novero degli Event Receiver o dei Workflow. Questi oggetti (per alcuni aspetti quasi sovrapponibili) vengono invocati e lanciati in esecuzione al verificarsi di un evento (event receiver) legato alla transizione di stato di un elemento (il campo in un riga di quella che tu chiami spreadsheet list) oppure quando l'utente decide di eseguire l'azione volontariamente o all'aggiornamento dello dell'elemento (Workflow). Gli oggetti della prima categoria (Event Receiver) possono essere prodotti solo scrivendo codice con Visual Studio mentre i secondi possono essere realizzati sia con Visual Studio o coordinando una serie di azioni (workflow per l'appunto) tramite il workflow designer di SharePoint Designer 2010.

    Per ogni chiarimento sono a disposizione.

    miércoles, 5 de octubre de 2011 19:53