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

Configuration .NET Discussion :

Feature de Sharepoint 2010 vers Sharepoint 2013 [Débutant]


Sujet :

Configuration .NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur Intranet/Extranet
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Administrateur Intranet/Extranet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Feature de Sharepoint 2010 vers Sharepoint 2013
    Bonjour,

    D'une part, je vais essayer d'être le plus clair possible, j'ai obtenu le job dans lequel je suis sans connaitre Sharepoint, l'ensemble de mes connaissances est du à de l'autoformation effectuée sur les derniers mois. Donc veuillez m'excuser si je ne suis pas des plus précis sur les termes.
    Dans l'entreprise ou je me trouve nous avons fait une Migration de Sharepoint 2010 vers Sharepoint 2013, aucun souci sur les migration sauf sur une feature que mon prédécesseur avait développé spécifiquement pour une collection de site.

    Cette feature permet à partir d'un formulaire de première liste, de supprimer l'héritage sur l’élément crée et d'ajouter dans les autorisations des (3) groupes avec des rôles.
    L'un des groupes est défini dans une colonne Prestataire qui est de type recherche d'une seconde liste, cette liste d'éléments à son équivalent en groupe Sharepoint, seuls les utilisateurs présents dans les groupes correspondant ont un visuel sur l’élément.

    Ainsi les utilisateurs qui remplissent le formulaire de ma première liste dans le champs Prestataire, il ne peuvent que choisir l’élément ou le groupe qu'il appartient est en lecture dessus

    Le probleme maintenant sous Sharepoint 2010 cette feature fonctionnait tres bien, mais lorsque j'ai réinstallé la solution cela ne fonctionnait plus.
    Maintenant lorsqu'un utilisateurs ajoute un élément à la première liste celui-ci voit bien l’élément avec l'essemble des colonnes remplit mais les autres utilisateurs d'autre groupe voit aussi l’élément sauf ce qui figure dans la colonne qui doit définir les groupes

    Voici le code de l'eventReceiver actuellement

    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
    public override void ItemAdded(SPItemEventProperties properties)
            {
                base.ItemAdded(properties);
     
                // Elevation des droits
                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    try
                    {
                        SPWeb web = new SPSite(properties.SiteId).OpenWeb(properties.RelativeWebUrl);
                        SPListItem item = web.Lists[properties.ListId].GetItemById(properties.ListItemId);
     
                        // Annuler l'héritage par défaut
                        if (!item.HasUniqueRoleAssignments) { item.BreakRoleInheritance(true); }
     
                        // Supprimer tous les droits
                        while (item.RoleAssignments.Count > 0)
                        {
                            item.RoleAssignments.Remove(0);
                        }
     
                        string group = item["Prestataire"].ToString();
     
                        char[] param = new char[] { '#' };
     
                        string[] tabgroup = group.Split(param);
     
                        SPGroup spgroup;
                        //Creation du SPGroup en fonction du group du champ "Prestataire"                    
                        spgroup = web.SiteGroups[tabgroup[1]];
     
                        //Création du role (contributeur)
                        SPRoleAssignment newRoleAssignment = new SPRoleAssignment(spgroup);
                        newRoleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.Contributor));
                        // Affectation du role
                        item.RoleAssignments.Add(newRoleAssignment);
     
                        string groupcg = "Groupe Decision";
                        SPGroup spgroupcg = web.SiteGroups[groupcg];
                        SPRoleAssignment newRoleAssignmentcg = new SPRoleAssignment(spgroupcg);
                        newRoleAssignmentcg.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.Reader));
                        item.RoleAssignments.Add(newRoleAssignmentcg);
     
                        string groupcg2 = "Groupe Contribution";
                        SPGroup spgroupcg2 = web.SiteGroups[groupcg2];
                        SPRoleAssignment newRoleAssignmentcg2 = new SPRoleAssignment(spgroupcg2);
                        newRoleAssignmentcg2.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.Contributor));
                        item.RoleAssignments.Add(newRoleAssignmentcg2);
     
                        item.Update();
     
                    }
                    catch (Exception ex)
                    {
                        properties.Cancel = true;
                        properties.ErrorMessage = "Erreur dans l'Event ItemAdded : " + ex.Message;
                    }
     
                });
            }
    J’espère avoir été assez clair et Merci d'avance de votre aide

  2. #2
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Points : 4 913
    Points
    4 913
    Par défaut
    Bonjour,

    c'est très clair, et le code semble clean.

    La feature, provient d'un .WSP, ce dernier est-il installé correctement sur le serveur 2013?

    En mode compatibilité 2010? normal 2013?

    Le nouveau site qui a été migré, il est migré en 2013 ou en mode compatibilité 2010?

    La feature est-elle visible dans la page des fonctionnalités du sites?
    Merci d'utiliser en cas de résolution de votre problème

    N'oubliez pas non plus le petit pouce vert pour récompenser celui que vous a aidé

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur Intranet/Extranet
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Administrateur Intranet/Extranet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 2
    Points
    2
    Par défaut

    La feature, provient d'un .WSP, ce dernier est-il installé correctement sur le serveur 2013?
    La feature est-elle visible dans la page des fonctionnalités du sites?

    La feature est installé correctement, nous avons la possibilité de l'activé, de ce fait elle est visible dans les fonctionnalités de site

    En mode compatibilité 2010? normal 2013?

    Dans un premier temps, je l'ai installé directement lors de notre migration, voyant que cela produisait toujours le résultat décrit dans mon précédent message, dans un premier temps je l'ai donc mise à niveau dans les paramètres des solutions. Le résultat fut identique je suis donc dans un second temps passé la solution dans Visual Studio 2012 afin de mettre la solution de base à niveau pour SharePoint 2013 (en suivant divers tutoriel). Mais cela n'a pas changer le résultat final

    Le nouveau site qui a été migré, il est migré en 2013 ou en mode compatibilité 2010?

    Le site migré est en 2013, WebApp créer en 2013, importation de la base de donnée 2010, vérification des features, un upgrade de la base, et upgrade visuel du site puis la réinstallation de la feature

  4. #4
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Points : 4 913
    Points
    4 913
    Par défaut
    Bonjour,

    Si vous avez pu rebuilder le .WSP avec les assemblies 2013, puis redéployer sur le serveur ce dernier, vous avez donc la main sur la solution.

    Avez vous envisager de rajouter quelque log dans la méthode ItemAdded? Afin de savoir & vérifier que le code s'execute bien.

    Egalement, dans la même logique, etes vous certains que l'event Receiver est bien rattaché à votre liste? Dans le cas contraire, l'utilisation de SharePoint manager (outil gratuit) ou de powershell pourrait s'avérer utile pour le vérifier.

    J'insiste sur ces sujets car le code semble hors de cause, je penche plus pour une mauvaise installation/configuration.
    Merci d'utiliser en cas de résolution de votre problème

    N'oubliez pas non plus le petit pouce vert pour récompenser celui que vous a aidé

  5. #5
    Candidat au Club
    Homme Profil pro
    Administrateur Intranet/Extranet
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Administrateur Intranet/Extranet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Oui j'ai la main sur la solution, j'ai dû mal m'exprimer.

    Il est possible que cela soit un problème de installation/configuration, mais ce qui me semble étrange c'est lorsque que l'ajout de l'item se fait dans la liste, seules les informations dans la colonne (qui me permet de définir les droits) ne s'affiche pas pour l'ensemble des utilisateurs mais le reste des propriété de l'item sont visibles. J'ai l'impression qu'il me manque un élément pour prendre en compte l'ensemble de l'item

  6. #6
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Points : 4 913
    Points
    4 913
    Par défaut
    Oui j'ai la main sur la solution, j'ai dû mal m'exprimer.
    Non c'était claire, ma première phrase était un préambule pour la suite, c'est tout.


    seules les informations dans la colonne (qui me permet de définir les droits)
    C'est celle la qui est null après l'ajout?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string group = item["Prestataire"].ToString();
    Il n'existe pas, hors développement de colonne custom, de permissions sur l'affichage d'une colonne. Soit vous voyez toutes les colonnes de l'item (donc l'item), soit vous ne voyez pas l'item.
    Merci d'utiliser en cas de résolution de votre problème

    N'oubliez pas non plus le petit pouce vert pour récompenser celui que vous a aidé

  7. #7
    Candidat au Club
    Homme Profil pro
    Administrateur Intranet/Extranet
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Administrateur Intranet/Extranet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    J'ai pu résoudre mon problème, j'avais bien un problème de configuration au moment de l'installation,

    J'ai checker l'ensemble des paramètre de configuration sur l'ensemble de nos serveurs, je n'ai pas compris le pourquoi du comment mais mon deuxième serveur frontal ne voyait pas ma solution installé.

    Merci pour l'aide apporté, ce fut pas une solution propre mais plutôt un avis neuf qui m'a permis de resoudre cela.

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

Discussions similaires

  1. Mise à niveau de Sharepoint 2007 vers Sharepoint 2010
    Par joujousagem2006 dans le forum Installation
    Réponses: 7
    Dernier message: 04/08/2015, 14h26
  2. [Débutant] Migration données de SharePoint 2010 vers SharePoint 2013
    Par fides dans le forum Développement Sharepoint
    Réponses: 2
    Dernier message: 01/06/2015, 16h38
  3. [SP-2010] Importation de calendrier Sharepoint 2010 sur Outlook 2013
    Par fredflo dans le forum SharePoint
    Réponses: 4
    Dernier message: 23/04/2015, 16h18
  4. Réponses: 8
    Dernier message: 27/11/2011, 17h14
  5. [SP2010] Migration données vers sharepoint 2010
    Par xanass dans le forum Développement Sharepoint
    Réponses: 17
    Dernier message: 08/12/2010, 16h25

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