Política de IU API - ServiceNow Fluent
A API de política de IU define políticas de interface do usuário (IU) [ sys_ui_policy ] que mudam dinamicamente o comportamento das informações em um formulário e controlam fluxos de processo personalizados para tarefas.
As políticas de IU podem tornar os campos obrigatórios, somente leitura, visíveis, ocultos ou limpos quando determinadas condições são atendidas. Você também pode usar scripts de cliente para executar todas essas ações, mas para tempos de carregamento mais rápidos, use políticas de IU quando possível.
Para obter informações gerais sobre políticas de IU, consulte Using UI policies.
UiPolicy objeto
Crie uma política de IU sys_ui_policy para configurar o comportamento do formulário.
| Nome | Tipo | Descrição |
|---|---|---|
| id | Cadeia de caracteres ou número | Necessário. Um ID exclusivo para o objeto de metadados. Quando você cria a aplicação, este ID é hash em um sys_id exclusivo. Para obter mais informações, consulte ServiceNow Fluent construções de linguagem. Formato: |
| tabela | Cadeia de caracteres | Necessário. A tabela do formulário a ser modificada. |
| shortDescription | Cadeia de caracteres | Necessário. Uma descrição da política e sua finalidade. |
| ativo | Booliano | Sinalizador que indica se a política foi aplicada ao formulário. Padrão: verdadeiro |
| global | Booliano |
Sinalizador que indica se a política se aplica a quais exibições de formulário. Se verdadeiro, a política se aplica a todas as exibições da tabela. Se falso, a política será específica da exibição do formulário especificada com exibição propriedade. Padrão: verdadeiro |
| onLoad | Booliano | Sinalizador que indica quando a política é executada. Se verdadeiro, a política será executada sempre que um formulário for carregado se as condições forem atendidas. Padrão: verdadeiro |
| IfreverseIfFalse | Booliano | Sinalizador que indica se o comportamento da política deve ser invertido quando a condição for avaliada como falsa. Se verdadeiro, a ação da política será desfeita quando as condições de sua política forem avaliadas como falso. Padrão: verdadeiro |
| Herdar | Booliano | Sinalizador que indica se as tabelas que estendem a tabela atual herdam a política. Se verdadeiro, as tabelas estendidas herdarão a política. Quando uma tabela secundária tem uma política herdada de sua tabela primária, a política na tabela secundária é executada primeiro. Este evento é verdadeiro, independentemente da ordem das políticas. Padrão: falso |
| IsolateScript | Booliano | Sinalizador que indica se scripts devem ser executados no escopo isolado. Se verdadeiro, o script será executado em escopo isolado. Esta propriedade só se aplica se RunScripts está definido como verdadeiro. Padrão: falso |
| condições | Cadeia de caracteres | Uma consulta de filtro que especifica os campos e valores que devem ser verdadeiros para que os usuários acessem o objeto. Para obter mais informações, consulte Operators available for filters and queries. Para definir condições usando um script, use um script de cliente. As condições só serão verificadas novamente se um usuário mudar manualmente um campo em um formulário. Se a mudança for feita por uma ação de IU, ação de menu de contexto ou por meio do editor de lista, ela não será avaliada. |
| RunScripts | Booliano | Sinalizador que indica se o comportamento avançado pode ser script para condições verdadeiro e falso. Se verdadeiro, os scripts definidos com ScriptTrue , ScriptFalse , UIType , e. IsolateScript as propriedades são executadas quando aplicável. Padrão: falso |
| ScriptTrue | Cadeia de caracteres | Script do lado do cliente que é executado se as condições da política forem atendidas. Esta propriedade será necessária se RunScripts a propriedade está definida como verdadeira. Formato: Padrão: |
| ScriptFalse | Cadeia de caracteres | Script do lado do cliente que é executado se as condições da política não forem atendidas e o. IfreverseIfFalse a propriedade está definida como verdadeira. Esta propriedade será necessária se RunScripts a propriedade está definida como verdadeira. Formato: Padrão: |
| UIType | Cadeia de caracteres | O tipo de interface do usuário à qual a política se aplica. Esta propriedade será necessária se RunScripts a propriedade está definida como verdadeira. Valores válidos:
Padrão: Desktop |
| ações | Matriz | Uma lista de ações de campo a serem aplicadas se as condições forem atendidas. Para obter mais informações, consulte ações matriz. |
| RelatedListActions | Matriz | Uma lista de controles de visibilidade para listas relacionadas. Para obter mais informações, consulte RelatedListActions matriz. |
| descrição | Cadeia de caracteres | Informações adicionais sobre a política. |
| modelId | Cadeia de caracteres | O sys_id da política de IU primária à qual a política se aplica quando esta política é herdada. Esta propriedade funciona em conjunto com model_table propriedade. |
| modelTable | Cadeia de caracteres | O nome da tabela primária à qual a política se aplica quando uma política de IU é herdada de uma tabela primária. Esta propriedade funciona em conjunto com o. model_id propriedade. |
| pedido | Número | A ordem de execução na qual aplicar políticas se mais de uma política atender às condições. Para políticas de IU herdadas, as políticas da tabela estendida são executadas primeiro. Em seguida, as políticas da tabela base são executadas. Padrão: 100 |
| Valores definidos | Cadeia de caracteres | (Obsoleto) Os valores de campo a serem definidos usando um formato de cadeia de caracteres codificado. Em vez disso, use ações de política de IU [sys_ui_policy_action]. |
| exibição | Referência ou cadeia de caracteres | Necessário. O identificador de variável ou o nome da exibição de IU [sys_ui_view] que se aplica ou a exibição padrão. Para definir uma exibição de IU, consulte API de registro - ServiceNow Fluent. Para usar a exibição padrão ( default_view ), você deve importá-lo: |
import { UiPolicy } from '@servicenow/sdk/core';
export const securityIncidentPolicy = UiPolicy({
$id: Now.ID['security_incident_policy'],
table: 'incident',
shortDescription: 'Lock critical fields for security incidents',
active: true,
onLoad: true,
conditions: 'category="security"',
actions: [
{
field: 'security_notes',
mandatory: true,
visible: true
},
{
field: 'caller_id',
readOnly: true // Lock caller field when category is security
},
{
field: 'assignment_group',
readOnly: true // Lock assignment group when category is security
},
{
field: 'priority',
readOnly: true // Lock priority when category is security
}
],
relatedListActions: [
{
// Using plain GUID for system relationships
list: 'b9edf0ca0a0a0b010035de2d6b579a03', // Attachments
visible: false
},
{
// Using table.field format for reference fields
list: 'x_snc_17sepapp1_expenseitem.expensereport', // Example reference field
visible: true
}
]
})
ações matriz
Configure as ações [sys_ui_policy_action] que a política de IU executa nos campos.
Use o. ações matriz em UiPolicy objeto. As ações são processadas na ordem em que aparecem na matriz. Pelo menos um dos visível , Somente leitura , obrigatório , ou apagado as propriedades devem ser especificadas para cada ação na matriz.
| Nome | Tipo | Descrição |
|---|---|---|
| Assunto: | Cadeia de caracteres | Necessário. O nome do campo ao qual a ação se aplica. Nota: Se o campo especificado não for encontrado no formulário, a política de IU executará a ação na variável com o mesmo nome. |
| visíveis | Booliano ou cadeia de caracteres | Uma opção para controlar a visibilidade do campo. Valores válidos:
Padrão: Ignorar |
| readOnly | Booliano ou cadeia de caracteres | Uma opção para controlar o acesso para editar o campo. Valores válidos:
Padrão: Ignorar |
| obrigatória | Booliano ou cadeia de caracteres | Uma opção para controlar se o campo é obrigatório. Valores válidos:
Padrão: Ignorar |
| apagado | Booliano | Sinalizador que indica se o campo deve ser limpo se as condições da política forem atendidas. Padrão: falso |
| tabela | Cadeia de caracteres | A tabela à qual a ação se aplica, que substitui a tabela especificada pela política. Se estiver vazia, a tabela especificada pela política será aplicada. |
| valor | Cadeia de caracteres | O valor para definir o campo se as condições da política forem atendidas. |
| FieldMessage | Cadeia de caracteres | Uma mensagem para exibir sobre o campo se as condições da política forem atendidas. |
| FieldMessageType | Cadeia de caracteres | Um tipo de mensagem que determina como a mensagem de campo é apresentada. Valores válidos:
Padrão: Nenhum |
| Valor | Cadeia de caracteres | Uma ação a ser executada no valor do campo. Valores válidos:
Padrão: Ignorar |
actions: [
{
field: 'assignment_group',
mandatory: true,
value: 'Critical Response Team', // Set default value
fieldMessage: 'This incident requires immediate attention from the Critical Response Team',
fieldMessageType: 'error' // Show as error message
},
{
field: 'urgency',
value: '1', // Set to High urgency
fieldMessage: 'Urgency has been automatically set to High',
fieldMessageType: 'info'
},
{
field: 'impact',
value: '1', // Set to High impact
fieldMessage: 'Impact has been automatically set to High',
fieldMessageType: 'warning'
}
]
RelatedListActions matriz
Configure a visibilidade de listas relacionadas [sys_ui_policy_rl_action] em um formulário para uma política de IU.
Use o. RelatedListActions matriz em UiPolicy objeto. As ações da lista relacionada são processadas na ordem em que aparecem na matriz. . lista ou visível a propriedade deve ser especificada para cada ação de lista relacionada na matriz.
| Nome | Tipo | Descrição |
|---|---|---|
| lista | Cadeia de caracteres | Uma referência a uma lista relacionada no formulário. Se estiver vazia, a ação se aplicará a todas as listas relacionadas. Esta propriedade será necessária se visível a propriedade não está definida. Formato:
|
| visíveis | Booliano ou cadeia de caracteres | Uma opção para controlar a visibilidade da lista relacionada. Esta propriedade será necessária se lista a propriedade não está definida. Valores válidos:
Padrão: Ignorar |
relatedListActions: [
{
// Using plain GUID for system relationships
list: 'b9edf0ca0a0a0b010035de2d6b579a03', // Attachments
visible: false
},
{
// Using table.field format for reference fields
list: 'x_snc_17sepapp1_expenseitem.expensereport', // Example reference field
visible: true
}
]