API de regra de negócio - ServiceNow Fluent
A API Regra de negócio define scripts do lado do servidor [sys_script] que são executados quando um registro é exibido, inserido, atualizado ou excluído ou quando uma tabela é consultada.
Para obter informações gerais sobre regras de negócios, consulte Classic Business rules.
Objeto BusinessRule
Crie uma regra de negócio [sys_script] que mude automaticamente os valores nos campos de formulário quando determinadas condições do lado do servidor forem atendidas.
| 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: |
| nome | Cadeia de caracteres | Necessário. Um nome para a regra de negócio. |
| tabela | Cadeia de caracteres | Necessário. O nome da tabela na qual a regra de negócio é executada. |
| script | Script | Um script personalizado é executado quando as condições definidas são verdadeiras. Esta propriedade é compatível com uma função de um módulo JavaScript, uma referência a outro arquivo na aplicação que contém um script ou JavaScript em linha. Formato:
|
| pedido | Número | Um número que indica a sequência na qual a regra de negócio deve ser executada. Se houver várias regras em uma atividade específica, as regras serão executadas na ordem especificada, da mais baixa para a mais alta. Padrão: 100 |
| ativo | Booliano | Sinalizador que indica se a regra de negócio está habilitada. Valores válidos:
Padrão: verdadeiro |
| quando | Cadeia de caracteres | A hora em que a regra de negócio deve ser executada. Para obter mais informações sobre quando as regras de negócios são executadas, consulte How business rules work. Valores válidos:
Padrão: Antes |
| ação | Matriz | As opções de registro às quais a regra de negócio se aplica. Para obter mais informações sobre ações de regra de negócio, consulte How business rules work. Valores válidos:
|
| AddMessage | Booliano | Sinalizador que indica se uma mensagem que aparece quando a regra de negócio é executada deve ser adicionada. Valores válidos:
Padrão: falso |
| Abortar Ação | Booliano | Sinalizador que indica se a transação do banco de dados atual deve ser cancelada. Por exemplo, em uma regra de negócio Antes de inserir, se as condições forem atendidas, não insira o registro no banco de dados. Valores válidos:
Padrão: falso |
| mensagem | Cadeia de caracteres | Uma mensagem que aparece quando a regra de negócio é executada. |
| RoleConditions | Matriz | Uma lista de identificadores de variáveis de Função os objetos que os usuários que estão modificando registros na tabela devem ter para que a regra de negócio seja executada. Para obter mais informações, consulte API de função - ServiceNow Fluent. |
| condição | Cadeia de caracteres | Uma declaração condicional JavaScript que especifica os campos e valores que devem ser verdadeiros para que o script seja executado. Esta propriedade oferece suporte a JavaScript em linha ou a uma referência a outro arquivo na aplicação que contém um script. Nota: Não use esta propriedade se você incluir a declaração de condição com FilterCondition ou script propriedades. Ao especificar a declaração de condição com esta propriedade, a condição é avaliada separadamente e a regra de negócio é executada somente se a condição for verdadeira. Para que a declaração de condição seja reavaliada uma segunda vez antes de executar uma regra de negócios assíncrona, defina glide.businessrule.async_condition_checkpropriedade do sistema como verdadeiro. Formato:
|
| filterCondition | Cadeia de caracteres | Uma consulta de filtro que especifica os campos e valores que devem ser verdadeiros para a regra de negócio ser executada. Para obter mais informações, consulte Operators available for filters and queries. |
| ValorCampo definido | Cadeia de caracteres | Os valores a serem definidos para campos na tabela. Isso pode ser fornecido como uma consulta codificada, como SetFieldValue: . |
| descrição | Cadeia de caracteres | Uma descrição do que a regra de negócio faz. |
| meta | Objeto | Metadados dos metadados da aplicação. Com o. Método de instalação , você pode mapear os metadados da aplicação para um diretório de saída que carrega somente em circunstâncias específicas. Valores válidos para Método de instalação :
|
import { BusinessRule } from '@servicenow/sdk/core'
import { FunctionExport, FunctionExpression } from '../server/scripts.js'
import DefaultExportFunction from '../server/scripts.js'
const BR1 = BusinessRule({
name: 'exportedFunction',
table: 'x_snc_table',
when: 'after',
action: ['update', 'delete', 'insert'],
script: FunctionExport,
order: 100,
active: true,
addMessage: false,
message: '<p>message</p>',
abortAction: false,
$id: Now.ID[0],
})
const BR2 = BusinessRule({
name: 'businessrule2',
table: 'x_snc_table',
script: FunctionExpression,
when: 'after',
action: ['update'],
$id: Now.ID[1],
})
const BR3 = BusinessRule({
name: 'businessrule3',
table: 'x_snc_table',
script: DefaultExportFunction,
when: 'after',
action: ['update'],
filterCondition: `sys_updated_onSTARTSWITHb^sys_updated_bySTARTSWITHm^EQ
<item goto="false" or="false" field="sys_updated_on" endquery="false" value="b" operator="STARTSWITH" newquery="false"/>
<item goto="false" or="false" field="sys_updated_by" endquery="false" value="m" operator="STARTSWITH" newquery="false"/>
<item goto="false" or="false" field="" endquery="true" value="" operator="=" newquery="false"/>`,
$id: Now.ID[2],
})
const BR4 = BusinessRule({
name: 'templateBR',
action: ['insert'],
when: 'after',
table: 'x_snc_table',
roleConditions: [admin],
order: 100,
active: true,
addMessage: true,
message: '<p>message</p>',
script: `gs.info('info')`,
abortAction: false,
$id: Now.ID[3],
})