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

SharePoint .NET Discussion :

la colonne caché ID dans les listes


Sujet :

SharePoint .NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 104
    Points : 38
    Points
    38
    Par défaut la colonne caché ID dans les listes
    Bonjour,

    il me semble qu'il y a dans les listes SharePoint une colonne invisible qui est en fait un compteur du numéro de l'élément dans la liste. Je suis en train de créer un programme qui permet la création automatique d'un site avec une custom action sur la liste et je souhaiterais réutiliser l'ID des éléments pour lesquels je créé un site. Cependant je ne parviens pas à récupérer cet ID. Quelq'un a une idée ?

  2. #2
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    264
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 264
    Points : 311
    Points
    311
    Par défaut
    Je ne suis pas sure de bien comprendre. Tu veux récupérer l'ID du template, de la liste ou des items ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 104
    Points : 38
    Points
    38
    Par défaut
    En faite j'ai créé une custom action qui ajoute une option dans le menu contextuel des items de la liste, ce bouton permet la création d'un site et je souhaiterais faire apparaître l'ID de l'item dans le nom et l'adresse du site que je créé. C'est donc l'ID de l'item que j'aimerais récupérer.

  4. #4
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    264
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 264
    Points : 311
    Points
    311
    Par défaut
    D'accord j'ai compris.
    Je ne sais pas si c'est possible de récupérer l'item d'où provient l'évènement. Car sinon il suffit juste d'avoir cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SPListItem myItem = myItemInParameters; //Celui recu en parametre
    Guid myGuid = myItem.ID;
    Es-ce que tu pourrais mettre un peu de ton code si jamais cela ne correspond pas ? Ca sera plus facile pour nous. Merci.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 104
    Points : 38
    Points
    38
    Par défaut
    pour "myItemInParameters" , je le récupère comment ? en passant son nom dans ma liste ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SPListItem MyItem = "item";

  6. #6
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    264
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 264
    Points : 311
    Points
    311
    Par défaut
    Il me faudrait le code parce que la je ne peux pas déterminer sur quoi la sélection peut se faire.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 104
    Points : 38
    Points
    38
    Par défaut
    Voici mon code :

    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Xml;
    using System.IO;
    using Microsoft.SharePoint;
    using System.Web.UI;
    using System.Web.UI.WebControls.WebParts;
    using Microsoft.SharePoint.Utilities;
    using Microsoft.SharePoint.WebPartPages;
     
    namespace WSPBuilderProject1
    {
        public class Maclass: Page
        {
            protected override void OnLoad(EventArgs e)
            {
                base.OnLoad(e);
     
                // Page d'attente
                SPLongOperation Operation = new SPLongOperation(this);
                Operation.LeadingHTML = "Création du site collaboratif, veuillez patienter";
                Operation.Begin();
     
                // Déclaration du site courant
                SPWeb MonWeb = SPContext.Current.Web;
                // Déclaration de la collection de site
                SPWebCollection MesSites = MonWeb.Webs;
                // Permettre les mise à jour non sûr
                MonWeb.AllowUnsafeUpdates = true;
     
                if (MonWeb.IsCurrentUserMemberOfGroup(MonWeb.Groups["Home Members"].ID))
                {
                    MonWeb.RootFolder.WelcomePage = "Pages.default.aspx";
     
                    SPList Maliste = MonWeb.Lists["test"];
     
     
                    SPListItem MonItem = 
                    int MonGuid = MonItem.ID;
     
                    //Déclaration de la liste
                    //SPList Maliste = MonWeb.Lists["test"];
                    //SPField MonField = Maliste.Fields["testcolonne"];
     
                    // création d'un sous site
     
                    // Déclaration de l'adresse du sous site à créer
                    string SiteUrl = "testwebpart1/testdesoussite";
                    // Déclaration du nom du sous site à créer
                    string SiteTitle = "test de sous site";
                    // Déclaration de la description du sous site à créer
                    string SiteDescription = "petit test de sous site";
     
                    // Récupération de la gallerie des templates ftp
                    SPWebTemplateCollection MyTemplates = SPContext.Current.Site.GetCustomWebTemplates(1033);
     
                    SPWebTemplate mySiteTemplate = null;
     
                    // Récupération du template qu'on utilisera
                    foreach (SPWebTemplate template in MyTemplates)
                    {
                        if (template.Title == "TemplateTest")
                        {
                            mySiteTemplate = template;
                            break;
                        }
                    }
     
                    // Création du sous site
                    if (mySiteTemplate != null)
                    {
                        SPWeb mySubSite =
                            SPContext.Current.Web.Webs.Add( SiteUrl, SiteTitle, SiteDescription, 1033,
                            mySiteTemplate, false, false);
                    }
     
                    Operation.End("http://litwaredemo/testwebpart1");
                }
                else
                {
                    SPUtility.Redirect(SPUtility.AccessDeniedPage, SPRedirectFlags.Default, this.Context);
                }
            }
     
        }
    }

  8. #8
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    264
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 264
    Points : 311
    Points
    311
    Par défaut
    Est-ce que cela provoque une erreur ?

    MonWeb.RootFolder.WelcomePage = "Pages.default.aspx";
    A mon avus c'est plus un "Pages/Default.aspx".

    De ce que j'en ai vu tu as du mettre un bout de code de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <CustomAction
            Id="TheKid.DuplicateListItem"
            Location="EditControlBlock"
            Title="Créer le site en question"
            RegistrationType="ContentType"
            RegistrationId="0x01">
            <UrlAction Url="~site/_layouts/TheKidListActions/CopyListItem.aspx?List={ListId}&amp;ID={ItemId}"/>  
        </CustomAction>
    L'url contient donc l'ID de la liste et l'ID de l'item. Voila comment tu peux les récupérer.
    Voici le lien : http://blog.thekid.me.uk/archive/200...harepoint.aspx

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 104
    Points : 38
    Points
    38
    Par défaut
    Est-ce que cela provoque une erreur ?

    Citation:
    MonWeb.RootFolder.WelcomePage = "Pages.default.aspx";
    A mon avus c'est plus un "Pages/Default.aspx".
    Effectivement, il y avait bien là une faute de frappe de ma part mais elle n'entraînait pas de gros plantage... merci pour ce point.

    Pour le second point, j'ai fini par trouver une méthode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     string itemId = this.Page.Request.QueryString["item"];
    Merci pour ton aide

  10. #10
    Membre averti
    Inscrit en
    Décembre 2006
    Messages
    264
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 264
    Points : 311
    Points
    311
    Par défaut
    Nickel !

    Pense au [Résolu] !

    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Supprimer la colonne "Titre" dans les listes
    Par KL dans le forum SharePoint
    Réponses: 6
    Dernier message: 11/06/2009, 17h47
  2. Réponses: 3
    Dernier message: 29/06/2007, 15h29
  3. [XUL] Comportement des images dans les listes item
    Par Christophe Charron dans le forum Autres langages pour le Web
    Réponses: 1
    Dernier message: 02/03/2007, 12h50
  4. Réponses: 7
    Dernier message: 22/10/2005, 19h20

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