Créez une action d’interface utilisateur pour ajouter la case à cocher Connaissances au formulaire Incident.

Avant de commencer

Rôle requis : admin

Procédure

  1. Accédez à la Interface utilisateur du système > Actions d'interface utilisateur.
  2. Cliquez sur Nouveau.
  3. Renseignez les champs suivants.
    Tableau 1. Formulaire Action d’interface utilisateur
    Champ Description
    Nom Créer un article de base de connaissances
    Table Incident
    Nom de l’action create_knowledge
  4. Cochez la case Client .
  5. Cochez la case List v3 Compatible .
  6. Cochez la case Bouton du formulaire.
  7. Dans le champ Onclick, saisissez createKnowledgeClient().
  8. Dans le champ Condition , entrez gs.getProperty(« enable_kcs_incident ») == 'true' & new global. CSMTableMapUtil (current).findMapByName(« incident_kcs_article ») & nouveau global. KBKnowledge().canCreate().
  9. Dans le champ Script, entrez le code suivant.
    function createKnowledgeClient() {
        if (g_form.modified) {
            alert(new GwtMessage().getMessage('You have unsaved changes. Please save them to continue.'));    
        }else{
            //Call the UI Action again but skip the 'onclick' function
            gsftSubmit(null, g_form.getFormElement(), 'create_knowledge');
    //MUST call the 'Action name' set in this UI Action
        }
    }
    
    //Code that runs without 'onclick'
    //Ensure call to server-side function with no browser errors
    if (typeof window == 'undefined')
        CreateKnowledgeServer();
    
    function CreateKnowledgeServer(){
        current.update();
    
        var map = new global.CSMTableMapUtil (current);
        map.findMapByName("incident_kcs_article");
        var targetURL = map.getTargetURL();
            if(targetURL)
            action.setRedirectURL(targetURL[0]);
    }