Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Recupera de forma assíncrona os fluxos de processo de negócios habilitados para uma tabela para a qual o usuário atual pode alternar.
Sintaxe
formContext.data.process.getEnabledProcesses(callbackFunction(enabledProcesses));
Parâmetro
| Nome | Tipo | Obrigatório | Description |
|---|---|---|---|
callbackFunction |
Função | Yes | A função de retorno de chamada deve aceitar um parâmetro que contenha um objeto com propriedades de dicionário em que o nome da propriedade é a ID do fluxo do processo de negócios e o valor da propriedade é o nome do fluxo do processo empresarial. Os processos habilitados são filtrados de acordo com os privilégios do usuário. A lista de processos habilitados é a mesma que um usuário pode ver na interface do usuário se quiser alterar o processo manualmente. |
Example
A função Sdk.formOnLoad no exemplo usa o método formContext.data.process.getEnabledProcesses para recuperar assíncronamente informações sobre fluxos de processo de negócios habilitados para a tabela. O exemplo passa uma função anônima como o primeiro parâmetro. Essa função é executada de forma assíncrona quando os dados são retornados e os dados são passados como o parâmetro para a função anônima.
As informações sobre o fluxo de processo empresarial habilitado são fornecidas como um objeto de dicionário em que a ID do processo é o nome da propriedade e o nome do fluxo de processo empresarial é o valor da propriedade. O código de exemplo processa essas informações e define os valores em uma matriz global Sdk.enabledProcesses a ser acessada pela lógica que é executada posteriormente. O exemplo também percorre os valores na matriz Sdk.enabledProcesses e usa a função Sdk.writeToConsole para gravar informações sobre os fluxos de processo de negócios recuperados para o console.
Observação
A função Sdk.formOnLoad na biblioteca JavaScript de exemplo deve ser definida como o manipulador de eventos OnLoad para um formulário e o contexto de execução De passagem como a primeira caixa de seleção de parâmetro deve ser selecionado na caixa de diálogo Propriedades do Manipulador .
Além disso, este exemplo apenas ilustra o uso de alguns dos métodos na API formContext.data.process . Ele não representa o uso dessa API para atender a um requisito de negócios; destina-se apenas a demonstrar como os valores de propriedade de chave podem ser acessados no código.
//A namespace defined for SDK sample code
//You should define a unique namespace for your libraries
var Sdk = window.Sdk || {};
(function () {
//A global variable to store information about enabled business processes after they are retrieved asynchronously
this.enabledProcesses = [];
// A function to log messages while debugging only
this.writeToConsole = function (message) {
if (typeof console != 'undefined')
{ console.log(message); }
};
// Code to run in the OnLoad event
this.formOnLoad = function (executionContext) {
// Retrieve the formContext
var formContext = executionContext.getFormContext();
// Retrieve Enabled processes
formContext.data.process.getEnabledProcesses(function (processes) {
//Move processes to the global Sdk.enabledProcesses array;
for (var processId in processes) {
Sdk.enabledProcesses.push({ id: processId, name: processes[processId] })
}
Sdk.writeToConsole("Enabled business processes flows retrieved and added to Sdk.enabledProcesses array.");
//Write the values of the Sdk.enabledProcesses array to the console
if (Sdk.enabledProcesses.length < 0) {
Sdk.writeToConsole("There are no enabled business process flows for this table.");
}
else {
Sdk.writeToConsole("These are the enabled business process flows for this table:");
for (var i = 0; i < Sdk.enabledProcesses.length; i++) {
var enabledProcess = Sdk.enabledProcesses[i];
Sdk.writeToConsole("id: " + enabledProcess.id + " name: " + enabledProcess.name)
}
}
//Any code that depends on the Sdk.enabledProcesses array needs to be initiated here
});
};
}).call(Sdk);
Quando você executa este exemplo com as ferramentas de desenvolvedor do navegador abertas, veja a seguir um exemplo da saída gravada no console para uma tabela com vários fluxos de processo de negócios habilitados.
Enabled business processes flows retrieved and added to Sdk.enabledProcesses array.
These are the enabled business process flows for this table:
id: 7994be68-899e-4a40-8d18-f5c3b6940188 name: Sample Lead Process
id: 919e14d1-6489-4852-abd0-a63a6ecaac5d name: Lead to Opportunity Sales Process