Script e migração do GlideForm do cliente móvel (formulário g)
O script de cliente para dispositivos móveis é idêntico ao script para a Web, com algumas exceções. Todos os novos scripts devem estar em conformidade com determinadas diretrizes. Os itens a seguir são afetados na plataforma móvel: client scripts, políticas de IU, módulos do navegador e ações de IU.
Scripts de cliente
- Use os novos métodos móveis no lugar de g_form.getControl().
- Não use métodos obsoletos.
- Não faça referência a objetos de navegador incompatíveis.
- Não faça chamadas síncronas de JavaScript, GlideAjaxe GlideRecord.
- Não chame métodos que não estejam disponíveis para dispositivos móveis.
- Habilite scripts para serem executados na IU para celular.
| Usar 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á obsoleto para a plataforma móvel. Em seus 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 seguintes métodos foram descontinuados para a plataforma móvel porque o acesso direto a elementos HTML não é permitido:
Para garantir que os scripts existentes sejam compatíveis, remova todas as chamadas para métodos obsoletos do seu código. Para novos scripts, não use métodos obsoletos 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 fazer referência a objetos de navegador incompatíveis | Os seguintes objetos de navegador não são compatíveis com scripts móveis:
Certifique-se de que novos scripts não usem esses objetos e remova qualquer uso desses objetos dos scripts existentes. Em vez disso, use GlideForm (g_form), que fornece métodos como setLabel(), addDecoration()e hasField() para realizar as mesmas tarefas. |
| Não fazer chamadas JavaScript síncronas | A plataforma móvel não permite chamadas JavaScript síncronas. O método g_form.getReference() agora deve ter o parâmetro de retorno de chamada definido. Por exemplo: Certifique-se de que todas as chamadas g_form.getReference() incluam 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: O script a seguir foi atualizado para incluir o retorno de chamada e é compatível com a plataforma móvel: |
| Não fazer chamadas Ajax síncronas | A plataforma móvel não permite chamadas GlideAjax síncronas. Qualquer uso de getXMLWait() em uma chamada GlideAjax não funcionará na plataforma móvel. Certifique-se de que todas as chamadas GlideAjax sejam assíncronas. Para obter mais informações sobre chamadas GlideAjax síncronas versus assíncronas e getXMLWait(), consulte AJAX. Para obter informações sobre os métodos GlideAjax disponíveis, consulte a API GlideAjax. |
| Não fazer chamadas GlideRecord síncronas | A plataforma móvel não permite chamadas GlideRecord síncronas. Certifique-se de que todas as chamadas GlideRecord existentes incluam 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: O script a seguir foi atualizado para incluir o retorno de chamada e é compatível com a plataforma móvel: |
| Não use métodos indisponíveis na plataforma móvel | Devido às limitações e à funcionalidade reduzida impostas 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 forem executados na plataforma móvel, nenhuma ação ocorrerá:
|
| Habilitar scripts para dispositivos móveis | Os scripts devem ser habilitados para a plataforma móvel. |
Políticas de IU
Use o campo Executar scripts no tipo de IU 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 estejam selecionadas.
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 ficarem 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 aparecer na plataforma móvel. Os scripts de ação de IU que não usam métodos descontinuados não exigem mudanças no próprio script. Para novas ações de IU, certifique-se de que elas sejam criadas na tabela sys_ui_ng_action.