Portal de serviços e client scripts

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • Você pode usar scripts de cliente e scripts de cliente de catálogo no Portal de serviços se o Tipo de IU estiver definido como Móvel/Portal de serviços ou Todos. Scripts de cliente e scripts de cliente de catálogo são usados com o widget de formulário e o widget de item do catálogo SC, em oposição a um controlador de cliente de widget.

    Antes de sinalizar um script como Mobile/Portal de serviços ou Todos, certifique-se de usar somente as APIs móveis. Definir um client script como Mobile não garante que ele funcionará, ele simplesmente sinaliza que o script deve ser tentado pelo aplicativo para celular ou pelo Portal de serviços. Muitos de seus scripts de cliente existentes podem ser definidos como Todos, desde que as chamadas de API sejam compatíveis com o ambiente de scripts de cliente móvel.

    Os tópicos nesta seção exigem conhecimento avançado de codificação e uma compreensão das Portal de serviços APIs.

    Verificando o tempo de execução da área de trabalho versus móvel

    Você pode marcar um client script compatível com desktop e dispositivos móveis, mas incluir um comportamento que depende do tempo de execução. Você pode usar este script:
      if (window === null)
        // Write your mobile compatible code here
      else
        // Write your desktop compatible code here

    Scripts de cliente globais incompatíveis

    Os seguintes globais e APIs não estão disponíveis em scripts de cliente e scripts de cliente de catálogo usados no Portal de serviços:

    • $
    • $$
    • $j
    • angular
    • controle
    • documento
    • jQuery
    • janela
    Nota:
    Os controladores de cliente de widget são controladores angulares completos e não estão sujeitos aos scripts de cliente globais incompatíveis listados aqui. Use jQuery e Angular conforme necessário.

    Widgets integrados e g_form

    Ao usar o tipo de variável do Catálogo de serviços Macro e Macro com rótulo, você pode escolher um widget para incorporar em um formulário de item do catálogo. No controlador do cliente do widget incorporado, você pode acessar o objeto de campo e a instância g_form do item do catálogo usando:

    • $scope.page.field
    • $scope.page.g_form()

    Scripts de cliente usados com Portal de serviços

    O global g_list ajuda a definir o filtro de um elemento de lista do Glide ou uma variável do coletor de lista. Use esta API no lugar da API g_filter em client scripts de desktop.
    function onLoad() {
      var myListCollector = g_list.get("my_list_collector");
      myListCollector.reset();
      myListCollector.setQuery("active=true^category=8c7b22230b402200b0b02c6317673a62");
      myListCollector.addItem('3a700d39af5f4fc0aab978df90f4c692', 'Power Supply');
      myListCollector.addItem('1cb93419a3a248318da8f814140b42f6', 'Backpack');
    }
    g_service_catalog está disponível somente em Portal de serviços scripts de item do catálogo de serviços. Use esta API para saber se o script do item do catálogo é executado como parte de um guia de pedido ou por conta própria.
    function onLoad() {
      if (window) // if CMS, don't run this
       return;
    
       // g_service_catalog api for Service Portal and Mobile
       var isOrderGuide = g_service_catalog.isOrderGuide();
       g_form.setValue("is_order_guide", isOrderGuide ? "Yes!" : "Nope :(");
    }