Client para celular GlideForm (formulário g) script e migração

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 4 min. de leitura
  • O script de cliente para celular é idêntico ao script para a Web, com algumas exceções. Todos os novos scripts devem estar em conformidade com determinadas diretrizes. Os seguintes itens são afetados na plataforma móvel: Scripts de cliente, políticas de IU, módulos de navegador e ações de IU.

    Scripts de cliente

    Para que scripts novos ou existentes sejam válidos para dispositivos móveis, eles devem estar em conformidade com os seguintes requisitos:
    • Use os novos métodos móveis no lugar de G_form.getControl() .
    • Não use métodos descontinuados.
    • Não faça referência a objetos de navegador incompatíveis.
    • Não tornar JavaScript síncrono, GlideAjax e GlideRecord chamadas.
    • Não chame métodos que não estão disponíveis para celular.
    • Habilitar scripts para execução na IU para celular.
    Tabela 1. Requisitos
    Use os novos métodos móveis Vários novos métodos estão disponíveis para modificar campos de formulário em vez de manipular diretamente o HTML. Esses métodos substituem os usos anteriores de G_form.getControl() , que está descontinuado para a plataforma móvel. Nos scripts existentes, certifique-se de que os novos métodos sejam usados no lugar de métodos que não são válidos na plataforma móvel. Para obter informações sobre esses novos métodos, consulte API GlideForm() para celular .
    Não use métodos descontinuados

    Os métodos a seguir foram descontinuados para a plataforma móvel porque o acesso direto a elementos HTML não é permitido:

    • G_form.getControl()
    • G_form.getFormElement()
    • G_form.getElement()

    Para garantir que os scripts existentes sejam compatíveis, remova todas as chamadas para métodos descontinuados do seu código. Para novos scripts, não use métodos descontinuados se quiser que o script seja válido para dispositivos móveis.

    Para G_form.getControl() algumas das funcionalidades incluídas anteriormente com este método foram extraídas para métodos individuais. Em vez de G_form.getControl() , use os novos métodos descritos no site do desenvolvedor.

    Não faça referência a objetos de navegador incompatíveis

    Os seguintes objetos do navegador não são compatíveis com scripts para celular:

    • Janela
    • JQuery ou Prototype (USD, USD ou USD)
    • Documento

    Certifique-se de que os novos scripts não usem esses objetos e remova qualquer uso desses objetos dos scripts existentes. Usar GlideForm (g_form) em vez disso, que fornece métodos como SetLabel() , AddDecoration() e HasField() para realizar as mesmas tarefas.

    Não faça chamadas JavaScript síncronas

    A plataforma móvel não permite chamadas JavaScript síncronas. . G_form.getReference() o método agora deve ter o parâmetro de retorno de chamada definido. Por exemplo:

     g_form.getReference(fieldName, callback)

    Certifique-se de que todos G_form.getReference() as chamadas incluem o parâmetro de retorno de chamada. Por exemplo, o script a seguir não inclui um retorno de chamada e é incompatível com a plataforma móvel:

     var userName = g_form.getReference('assigned_to').user_name;
     g_form.setValue('u_assigned_user_name', userName);

    O script a seguir foi atualizado para incluir o retorno de chamada e é compatível com a plataforma móvel:

     g_form.getReference('assigned_to', function(now_GR) {
         g_form.setValue('u_assigned_user_name', gr.user_name);
     });
    Não faça chamadas Ajax síncronas A plataforma móvel não permite síncrono GlideAjax chamadas. Qualquer uso de GetXMLWait() em a. GlideAjax a chamada não funcionará na plataforma móvel. Certifique-se de que todos GlideAjax as chamadas são assíncronas. Para obter mais informações sobre síncrono versus assíncrono GlideAjax chamadas e. GetXMLWait() , consulte AJAX . Para obter informações sobre o disponíveis GlideAjax métodos, consulte API GlideAjax .
    Não faça síncrono GlideRecord chamadas

    A plataforma móvel não permite síncrono GlideRecord chamadas. Certifique-se de que qualquer existente GlideRecord as chamadas incluem um retorno de chamada. Por exemplo, o script a seguir não inclui um retorno de chamada e é incompatível com a plataforma móvel:

     var now_GR = new GlideRecord('incident');
     gr.addQuery('number', g_form.getValue('related_incident'));
     gr.query();
     gr.next();
     g_form.setValue('u_related_incident_description', gr.short_description);

    O script a seguir foi atualizado para incluir o retorno de chamada e é compatível com a plataforma móvel:

     var now_GR = new GlideRecord('incident');
     gr.addQuery('number', g_form.getValue('related_incident'));
     gr.query(function(now_GR) {
         gr.next();
         g_form.setValue('u_related_incident_description', gr.short_description);
     });
    Não use métodos indisponíveis na plataforma móvel
    Devido às limitações e à funcionalidade reduzida que é imposta pela plataforma móvel, os métodos a seguir não foram descontinuados, mas não estão disponíveis na plataforma móvel. Se eles forem executados na plataforma móvel, nenhuma ação ocorrerá:
    • MostrarLista Relacionada ()
    • Lista Relacionada ()
    • MostrarListas Relacionadas ()
    • HideRelatedLists()
    • flash()
    • GetSections()
    • EnableAttachments()
    • DisableAttachments()
    • SetReadonly() (Observe que SetReadOnly() está disponível)
    • GetParameter()
    Habilitar scripts para dispositivos móveis

    Os scripts devem estar habilitados para a plataforma móvel.

    Nota:
    Não há suporte para focar um elemento em um formulário para celular.

    Políticas de IU

    Use Execute scripts no tipo de IU campo para determinar se os scripts são executados na plataforma móvel, na área de trabalho ou em ambos. Atualize as políticas existentes para que elas se apliquem à plataforma móvel ou a ambas. Para novos scripts, certifique-se também de que a opção móvel ou ambas esteja selecionada.

    Módulos do navegador

    Para o código existente, os módulos devem ser transferidos para as tabelas sys_ui_application ou sys_ui_module para que estejam disponíveis na plataforma móvel. Ao desenvolver um novo código, certifique-se de que todos os módulos sejam criados nas tabelas sys_ui_application ou sys_ui_module.

    Ações de IU

    As ações de IU devem ser transferidas para a tabela sys_ui_ng_action para que apareçam na plataforma móvel. Scripts de ação de IU que não usam métodos descontinuados não exigem mudanças no script em si. Para novas ações de IU, certifique-se de que elas sejam criadas na tabela sys_ui_ng_action.