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

Salesforce.com Discussion :

Création d'un bouton/lien qui modifie le champ courant


Sujet :

Salesforce.com

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 177
    Points : 86
    Points
    86
    Par défaut Création d'un bouton/lien qui modifie le champ courant
    Bonjour,

    Je cherche à créer un bouton (que je vais afficher dans l'objet case) qui lorsque je clique dessus modifie un champ tout simplement.
    J'ai donc créé un bouton:
    Requete/Boutons, liens et actions/Nouveau bouton ou lien
    Puis type d'affichage: Bouton vers la page de détails
    Comportement: execution javascript
    Source de contenu: Onclick JS


    Mais pour le code je ne sais pas ce qu'il faut faire.
    Je dois récupérer l'objet courant puis faire la modification (qui sera je pense stoppé si une règle de validation passe avant).

    Pouvez-vous m'aider s'il vous plaît?

  2. #2
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Points : 1 875
    Points
    1 875
    Par défaut
    Quand tu clic ça ouvre le record en modification et tu veux que la valeur du champs se transforme tout seul ?
    Je suis pas très calé en JS essaye de voir sur chat.developpez.com section dév web. Il y a pas mal de personne qui sont bonnes en JS qui pourront surement t'aider
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Octobre 2006
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 130
    Points : 146
    Points
    146
    Par défaut
    Pas besoin de javascript, il suffit de créer un bouton qui appelle une URL qui va pré-remplir le champ en question avec la bonne valeur.

    Par exemple un bouton de type URL qui appelle la valeur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /{!Account.Id}/e?acc2=toto&retURL={!Account.Id}
    va ouvrir l'enregistrement compte courant en édition et remplacer le nom du compte (acc2) par la valeur "toto".

    Tous les champs standards ont un nom interne de variable comme acc2 pour le nom du compte, si c'est un champ standard la valeur sera un id.

    Pour la trouver, il faut se mettre sur un enregistrement compte en édition puis dans l'explorer de code (généralement F12 sur Chrome et Firefox) puis sélectionner le champ en question et le nom à utiliser se situe dans la balise "Name".

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 177
    Points : 86
    Points
    86
    Par défaut
    Quand tu clic ça ouvre le record en modification et tu veux que la valeur du champs se transforme tout seul ?
    Je suis pas très calé en JS essaye de voir sur chat.developpez.com section dév web. Il y a pas mal de personne qui sont bonnes en JS qui pourront surement t'aider
    Oui en effet, lorsque je clic sur ce Bouton, j'aimerai que ça récupère le record courant du case, et que je puisse modifier une valeur, exemple le type d'enregistrement ou même un champ standart tout simple comme un checkbox.

    Voila le code que j'utilise :
    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
    {!REQUIRESCRIPT("/soap/ajax/22.0/connection.js")}
    
    switch(true)
    {
    //si la checkbox est cochée
    case ("{!Case.Annulation_Transfert__c}"==true):
    alert("le case est pas transfere");
    break;
    
    
    default:
    var newRecords = [];
    var c = new sforce.SObject("Case");
    c.id ="{!Case.Id}";
    c.Annulation_Transfert__c = true;
    c.Date_Annulation_Transfert__c = new Date();
    newRecords.push(c);
    result = sforce.connection.update(newRecords);
    window.location.reload();
    break;
    }
    Ce code ne génère aucune erreur, l'alert s'affiche bien quand la condition est vrai. Mais cela ne modifie pas mes champs quand le code passe par default.
    Quelques sources:
    http://hometeamconsulting.com/create...with-a-button/
    http://hometeamconsulting.com/update...cript-buttons/
    ********************************************************************************************

    Tomasi,
    Ton exemple semble intéressante.
    j'essaie donc de créer ce bouton qui appelle un lien mais je vois pas comment faire cette manip.
    Configuration de l'application/Personnalisation/requete/Boutons, liens et actions/ Nouveau bouton ou lien/ Et après ??

    Type d'affichage ?
    Lien vers la page de détails Afficher un exemple
    Bouton vers la page de détails Afficher un exemple
    Bouton de liste Afficher un exemple


    Comportement ?

    Source de contenu, URL?

    Et où doit on mettre ton url modifié bien sur ? : /{!Account.Id}/e?acc2=toto&retURL={!Account.Id}


    Désolé mais si tu pouvais me donner un peu plus de précision. Merci à vous deux

  5. #5
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Points : 1 875
    Points
    1 875
    Par défaut
    Citation Envoyé par max33370 Voir le message
    Oui en effet, lorsque je clic sur ce Bouton, j'aimerai que ça récupère le record courant du case, et que je puisse modifier une valeur, exemple le type d'enregistrement ou même un champ standart tout simple comme un checkbox.

    Voila le code que j'utilise :
    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
    {!REQUIRESCRIPT("/soap/ajax/22.0/connection.js")}
    
    switch(true)
    {
    //si la checkbox est cochée
    case ("{!Case.Annulation_Transfert__c}"==true):
    alert("le case est pas transfere");
    break;
    
    
    default:
    var newRecords = [];
    var c = new sforce.SObject("Case");
    c.id ="{!Case.Id}";
    c.Annulation_Transfert__c = true;
    c.Date_Annulation_Transfert__c = new Date();
    newRecords.push(c);
    result = sforce.connection.update(newRecords);
    window.location.reload();
    break;
    }
    Ce code ne génère aucune erreur, l'alert s'affiche bien quand la condition est vrai. Mais cela ne modifie pas mes champs quand le code passe par default.
    Quelques sources:
    http://hometeamconsulting.com/create...with-a-button/
    http://hometeamconsulting.com/update...cript-buttons/
    ********************************************************************************************

    Tomasi,
    Ton exemple semble intéressante.
    j'essaie donc de créer ce bouton qui appelle un lien mais je vois pas comment faire cette manip.
    Configuration de l'application/Personnalisation/requete/Boutons, liens et actions/ Nouveau bouton ou lien/ Et après ??

    Type d'affichage ?
    Lien vers la page de détails Afficher un exemple
    Bouton vers la page de détails Afficher un exemple
    Bouton de liste Afficher un exemple


    Comportement ?

    Source de contenu, URL?

    Et où doit on mettre ton url modifié bien sur ? : /{!Account.Id}/e?acc2=toto&retURL={!Account.Id}


    Désolé mais si tu pouvais me donner un peu plus de précision. Merci à vous deux
    Tu le mets dans un bouton de type URL
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

Discussions similaires

  1. Un lien qui modifie le z-index d'un div
    Par koKoTis dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 28/09/2014, 16h38
  2. [AC-2000] Qui à modifier le champ
    Par jclm230759 dans le forum Access
    Réponses: 3
    Dernier message: 23/03/2013, 14h26
  3. [AC-2007] Bouton Annuler qui modifie les informations
    Par Petit Rasta dans le forum IHM
    Réponses: 4
    Dernier message: 29/04/2010, 14h37
  4. [1.x] Fonction qui modifie un champ d'une table
    Par blasil64 dans le forum Symfony
    Réponses: 4
    Dernier message: 05/02/2010, 16h55
  5. Réponses: 2
    Dernier message: 28/05/2008, 12h36

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