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 :

Mettre à jour tous les items d'une liste, lorqu'une autre liste est modifiée


Sujet :

SharePoint .NET

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2017
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Mettre à jour tous les items d'une liste, lorqu'une autre liste est modifiée
    Bonjour à tous,

    Stagiaire sur le sujet de SharePoint, je me trouve actuellement devant une problématique.

    J'ai fait un workflow qui calcule une date automatiquement (qui ajoute un certain nombre de jours selon certains critères).
    Ce workflow se lance à la modification ou à la création d'un item sur la liste A.

    L'utilisateur souhaite qu'à la modification d'un élément d'une liste B, les dates de tous les éléments de la liste A soient recalculées (donc rappeler mon workflow de calcul de la date).
    Je ne sais pas comment procéder, et surtout comment faire cette "boucle" pour que tous les éléments de la liste A soient mis à jour.

    Avez-vous une idée ?
    Je ne peux utiliser que SharePoint Designer 2010, la politique de l'entreprise est de ne pas développer en C# ou autre...

    Merci d'avance pour votre aide !

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    J'ai exactement le même problème!

    Sauf que je ne suis pas stagiaire et que j'ai une difficulté supplémentaire:
    Je ne peux même pas faire une boucle qui incrémente sur l'identifiant, parce que souvent certains items de la liste sur laquelle je veux boucler ont été supprimé.

    Est-ce qu'il y aurait un "call HTTP web service" qui permettrait de récupérer l'ensemble des items d'une liste et de pouvoir boucler dessus pour passer de l'un à l'autre jusqu'à la fin de la liste?
    (Je suis nul avec les web service, je n'ai jamais réussi à les faire fonctionner, mais on ne sait jamais...)

    Help!

  3. #3
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    [QUOTE=Alice95;9133479]J'ai fait un workflow qui calcule une date automatiquement (qui ajoute un certain nombre de jours selon certains critères).
    Ce workflow se lance à la modification ou à la création d'un item sur la liste A.

    L'utilisateur souhaite qu'à la modification d'un élément d'une liste B, les dates de tous les éléments de la liste A soient recalculées (donc rappeler mon workflow de calcul de la date).
    Je ne sais pas comment procéder, et surtout comment faire cette "boucle" pour que tous les éléments de la liste A soient mis à jour.
    D'après ce que je comprend, le calcul que tu fais dans la liste A dépend d'un paramètre de la liste B. C'est bien ça ?
    Si c'est le cas, je pense qu'il serait préférable d'utiliser les champs calculés plutôt qu'un workflow. Il n'est ne effet pas possible de déclencher un workflow sur tous les éléments de la liste sans forcer une mise à jour globale (type mise à jour importante de la liste).
    Citation Envoyé par Kael_004 Voir le message
    Est-ce qu'il y aurait un "call HTTP web service" qui permettrait de récupérer l'ensemble des items d'une liste
    Oui : [inlineCODE]http://urldusite/_api/web/lists/getbytitle('Titre de la liste')/items[/inlineCODE] (cf : dev.office.com)
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Haha, merci ludojojo! Je savais bien qu'on pouvait tirer quelque chose de ces web services!

    Du coup, il me reste juste la question suivante:
    Comment peut-on boucler sur chacun de ces items, afin de répéter une action sur chaque élément existant dans la liste?

  5. #5
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Kael_004 Voir le message
    Comment peut-on boucler sur chacun de ces items, afin de répéter une action sur chaque élément existant dans la liste?
    Il faut utiliser les boucles (action du ruban dans la rubrique "Insérer") et utiliser le nombre d'éléments comme critère de ta boucle.
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Hmmm, ok, et donc à ce moment je récupère le nombre d'items existants grâce à un call web service HTTP GetItems, quelque chose comme ça? (Je ne connais pas la syntaxe exacte, mais ça me rappelle quelque chose...)

    Reste un souci... J'ai le nombre d'items, ok, donc je sais combien de fois je dois boucler, ok.
    MAIS!
    Mais comment je fais pour passer d'item en item, sachant que je ne peux pas utiliser l'incrémentation sur les ID, car des items pouvant être supprimés, ma liste n'a pas tous les ID.
    Par exemple, dans ma liste, si on récupère les ID des items, on peut obtenir ça: 3, 7, 8, 9, 15, 18, 24
    Bref, ça ne se suit pas, et donc je ne peux pas dire à la fin de chaque boucle "allez, hop, var_i = var_i + 1 !", ça ne marchera pas longtemps.

    Comment faire?
    Sur quoi puis-je incrémenter pour passer d'item en item?

  7. #7
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Il faut stocker le résultat de ta requête dans une variable de ton workflow, c'est elle qui te donnera le nombre d'éléments.
    Ta boucle se fera directement sur la variable, tu as donc accès directement aux éléments.
    Aide les autres...
    Et les autres t'aideront....
    Mon site DVP
    N'oubliez pas de consulter les FAQ SharePoint et les cours et tutoriels SharePoint

    N'oubliez pas de voter pour les messages dont la réponse est pertinente

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    ...ok, donc je n'ai pas du tout compris.
    Faut faire un dictionnaire?
    Une var string classique?
    ...
    C'est quoi exactement le web service qu'on doit appeler?...

    Tu peux m'expliquer, avec les syntaxes à utiliser, siteuplé?

Discussions similaires

  1. [Toutes versions] coller les données d'une plage d'une cellule dans une cellule d'une autre feuille[VBA]
    Par arthson dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/01/2012, 17h37
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  4. Macro pour mettre à jour tous les TCD
    Par kimai81 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 07/03/2008, 21h55
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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