Bonjour
Actuellement j'ai ce script : qui me permets de dupplier des composant entre plusieurs projets
Mais je rencontre un problème quand je souhaite éditer le nom d'un composant dans le projet source , l'édition s'applique bien par contre dans le projet de destination il me créer un nouveau composant avec le nouveau nom que j'ai changé.
Je souhaiterai juste quand je modifie un composant sur le projet source , la mdodification s'applique aussi sur le projet source sans créer un nouveau composant
Merci d'avannce
Salut ;)
Moi ce que je souhaiterai ça serai de rajouter du code de la même fonction "edit" que jira propose c'est a dire qu'au lieu qu'il créer un nouveau composant a chaque fois que je veux modifier le nom du composant , il a juste a faire un update , mais a mon avis c'est ma fonction xxxxx.create qui créer a chaque fois.
Salut @Florian PEREZ [Valiantys Administrator]
Alors j'ai fais ça :
Mais j'ai un peu de mal , j'ai fais ça avec la taille des valeurs des composants mais j'ai des erreurs tu aurais une piste ou quelque chose ?
Merci d'avance
Alors déjà, sans trop regarder je vois que ta valeur componentTemp2est pas définie avant ton if, du coup tu compares ta valeur avec undefined (voir tu as un null pointer exception)
Ici voici les étapes que tu devrai faire (avec des logs des valeur pour confirmer que tu as les valeurs attendue):
- faire une liste des composant du proet cible AVANT update
- Compter les composants (composantCount1)
- Faire une liste des composants du projet origine APRES update
- compter les composants (composantCount2)
Si composantCount1==composantCount2
- comparer les 2 listes pour trouver le composant different ( composant1[i]!= composant2[i] dans un boucle)
- puis éditer la list cible avec la valeur origine
sinon process classique
OK merci pour ton aide @Florian PEREZ [Valiantys Administrator]
Alors j'ai reussi a le faire fonctionner tout est bon , un peu differement mais ça marche , mais actuellement je souhaiterai faire la meme chose mais pour supprimer cette fois-ci j'arrive a voir comment je pourrai transformer la fonction
"projectComponentManager.update(destComponent)"
en
"projectComponentManager.delete(destComponent)"
tu aurais une idée ?
Merci d'avance
Hey mais je n'avais pas vu c'est Salim !
J'espère que tout va pour le mieux pour toi !
Alors pour le coup c'est le même type de fonctionnement:
- Dresser une liste des composant du proet cible AVANT update
- Compter les composants (composantCount1)
- Dresser une liste des composants du projet origine APRES update
- compter les composants (composantCount2)
Si composantCount1==composantCount2 >>> alors c'est une modification
Si composantCount1>composantCount2 >>> alors c'est un ajout
Si composantCount1<composantCount2 >>> alors c'est une suppression
- Ensuite tu édites le projet cible en fonction.
Pour la fonction de delete elle existe et elle est trouvable sur https://docs.atlassian.com/software/jira/docs/api/7.2.3/com/atlassian/jira/bc/project/component/ProjectComponentManager.html
Bon courage et le bonjour à toute la team :-)
Hé oui c'est moi le mec qui adore Jifu ;) @Florian PEREZ [Valiantys Administrator]
Bref alors moi par exemple pour le update voila ce que j'ai trouvé et ça marche :
Et le lien que tu m'as envoyé pour la fonction " delete " mais il y a pas vraiment d'exemple.
Merci d'avance