Localizing Forms and Actions in SSP Workflow

Many aspects of the Self Service Portal are controlled by workflow. To customize its behavior and appearance you can:

  • Customize Forms used for viewing Incidents, Equipment Reservations, Computers, and other objects.
  • Create new and customize existing Create Service Actions, used for creating various types of Incidents (that appear in the SSP as Tickets) and Equipment Reservations.
  • Create new and customize existing Update Service Actions used for updating Incidents, Approval Requests, Equipment Reservations, and Service Requests.

Among other things, these workflow elements define Forms and fields that SSP users work with.

NOTE: For details, see Defining Workflow for the Self Service Portal.

Alloy Navigator includes localization dictionaries for all workflow items that are involved in SSP operations. The following languages are provided: English (United States), German, Spanish, French, Italian, Portuguese, Russian, Chinese. If you have customized the workflow and added new workflow items, new fields, or other elements you may need to localize your changes, i.e. update localization dictionaries for desired languages.

For example, to update or add those entries of the localization dictionary that relates to the Incident View Form or a workflow Action used in or added to the SSP Incident workflow:

  1. Navigate to the localization folder under the Self Service Portal installation directory:

    [PhysicalPathToSSP]\localization\

    The [PhysicalPathToSSP] is the placeholder for the physical path to Self Service Portal files.

    NOTE: For instruction on viewing the physical path of Self Service Portal installation folder, see Physical Path to Self Service Portal Files.

  2. Open the localization dictionary that you want to update with a unicode-aware text editor (for example, using Microsoft Notepad)

    NOTE: For details on localization dictionary structure, see Preparing a Localization Dictionary.

  3. For the Incident View Form (Incidents appear in the SSP as Tickets), add a new object to the Terms array or update the existing one. The object looks like this:

    
    {
    
      "key": "TICKETS.FORMS.VIEW_FORM.ViewFormElement",
    
      "text": "LocalizedElement"
    
    },
    
    

    Where

    • TICKETS.FORMS.VIEW_FORM — the part of the key responsible for the Incident View Form in the SSP.

    • ViewFormElement — the name of the element (field, text, or section) added to the View Form or updated on it.

    NOTE: The field name is the original database name of a field that can be seen under the Binding section of the Field Properties dialog box. For details, see Customizing System Fields.

    • LocalizedElement — the localized version of the element added to the View Form or updated on it.

  4. For the caption of the Action, find and update the following object in the Terms array. If the object does not exist (when a new Action is being added) add it to the Terms array:
    
    {
    
      "key": "TICKETS.ACTION.ActionID",
    
      "text": "LocalizedActionCaption"
    
    },
    
    

    Where

    • TICKETS.ACTION— the part of the key responsible for the captions of Actions in the SSP Incident workflow. (Incidents appear in the SSP as Tickets.)
    • ActionID — the identifier (ID) of the Action.
    • LocalizedActionCaption — the localized caption of the Action.

    See below the Spanish localization file es_ES.json with the localized caption of the Update Incident Action #684:

  5. To localize the caption and instruction on the Form used in the Action, do one of the following:
    • For a nameless custom Form used in a Create Service Action or in an Update Service Action, find and update the following objects in the Terms array. If the objects do not exist (when a new Action is being added) add them to the Terms array:
      
        {
      
          "key": "TICKETS.FORMS.CUSTOM_ActionID.FORM.CAPTION",
      
          "text": "LocalizedFormCaption"
      
        },
      
        {
      
          "key": "TICKETS.FORMS.CUSTOM_ActionID.FORM.INSTRUCTION",
      
          "text": "LocalizedFormInstruction"
      
        },
      
      

      Where

      • TICKETS.FORMS.CUSTOM_ — the part of the key responsible for the custom Forms used for creating and updating Incidents in the SSP. (Incidents appear in the SSP as Tickets.)
      • ActionID — the identifier (ID) of the Service Action using this custom Form. (see below). You have to specify the Action ID here because custom Forms have no name.

      NOTE: The auto-generated Service Action’s ID can be seen on the General tab of the Create Action/Update Action for Self Service Portal dialog box when managing Service Actions system field labels.For details, see Accessing Workflow Items or Components by ID.

      • LocalizedFormCaption — the localized Form caption.
      • LocalizedFormInstruction — the localized Form instruction.

      For example, in the Spanish localization file es_ES.json, the localized caption and instruction of the custom Form for the Update Incident action #684 looks like this:

      {

      "key": "TICKETS.FORMS.CUSTOM_684.FORM.CAPTION",

      "text": "Agregar una nota"

      },

      {

      "key": "TICKETS.FORMS.CUSTOM_684.FORM.INSTRUCTION",

      "text": "Por favor, escriba una nota."

      },

    • For a named Form used in a Create Service Action or in an Update Service Action, find and update the following objects in the Terms array. If the objects do not exist add them to the Terms array:
      
        {
      
          "key": "TICKETS.FORMS.Form_Name.FORM.CAPTION"",
      
          "text": "LocalizedFormCaption"
      
        },
      
        {
      
          "key": "TICKETS.FORMS.Form_Name.FORM.INSTRUCTION",
      
          "text": "LocalizedFormInstruction"
      
        },
      
      

      Where:

      • TICKETS.FORMS.Form_Name. — the part of the key responsible for named reusable Forms that you can use for creating and updating Incidents in the SSP. (Incidents appear in the SSP as Tickets.)
      • Form_Name — the name of the reusable Form.
      • LocalizedFormCaption — the localized Form caption.
      • LocalizedFormInstruction — the localized Form instruction.

      NOTE: Keys in the Terms array relating to object classes other than Incidents, begin with the corresponding OBJECT_CLASS name instead of TICKETS.

      For example, in the Spanish localization file es_ES.json, the localized caption and instruction for reusable Form "Choose Device" looks like this:

      
        {
      
          "key": "TICKETS.FORMS.CHOOSE_DEVICE.FORM.CAPTION"",
      
          "text": "Elegir el dispositivo"
      
        },
      
        {
      
          "key": "TICKETS.FORMS.CHOOSE_DEVICE.FORM.INSTRUCTION",
      
          "text": "Rellene, por favor, los siguientes campos."
      
        },
      
      
  6. For every new Form that you want to localize in the SSP, add a number of new objects to the Terms array in the corresponding localization file with the keys responsible for the elements of the new Form added. To update localization for existing Forms, find and update the corresponding objects in the Terms array. The objects looks like this:
    For a custom Form:
    
      {
    
        "key": "TICKETS.FORMS.CUSTOM_ActionID.FormElement",
    
        "text": "LocalizedElement"
    
      },
    
    
    
    
    For a reusable Form:
    
      {
    
        "key": "TICKETS.FORMS.Form_Name.FormElement",
    
        "text": "LocalizedElement"
    
      },
    
    
    
    

    Where:

    • ActionID — the identifier (ID) of the Service Action using the custom Form. You have to specify the Action ID here because custom Forms have no name.
    • Form_Name — the name of the reusable Form name.
    • FormElement — the name of the element (field, text, section, or attachment area) added to the custom or reusable Form or updated on it.
    • LocalizedElement — the localized version of the element (field, text, section, or attachment area) added to the custom or reusable Form or updated on it.

      NOTE: For physical fields added to the custom or reusable Form, FormElement is the name of the field in the database; for virtual fields, the name of the virtual field.

      NOTE: The original database name of a field can be seen under Binding section of the Field Properties dialog box when managing system field labels. For details, see Customizing System Fields.

    Figure below shows the Spanish localization file es_ES.json with the localized Update Incident Action #684.

    The Terms array in any of localization files includes keys beginning with "FIELDS.COMMON. The localized fields or other elements defined by these keys are used by default if you do not have the corresponding fields or elements localized for a particular Form. For example, if the key "TICKETS.FORMS.CUSTOM_684.ADDITIONAL" is not defined or defined incorrectly the localized caption of the Additional section will be taken from the object

    {

    "key": "FIELDS.COMMON.ADDITIONAL",

    "text": "Información adicional"

    },

    For details on localization dictionary structure, see Preparing a Localization Dictionary.

  7. Save the localization dictionary.

    NOTE: nstead of creating dictionary entries for Forms from scratch, you can use localization templates for default SSP workflow Forms. To do this, locate a necessary template in the en-US.json localization dictionary by searching for template, copy the object and paste it to the localization dictionary for your language, and then customize it. Do not forget to uncomment the template object, otherwise it will be ignored.