Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

É possível realizar a consulta a um Dataset da Plataforma (interno, formulários ou customizado), a fim, de elaborar o resultado final dos usuários que poderão ser listados para escolha da execução da próxima atividade. Este procedimento pode ser realizado conforme o exemplo a seguir:

 

Exemplo de macro para bloco de código:


Bloco de código
languagejavascript
function resolve(process,colleague){

	var userList = new java.util.ArrayList();

	//-- CONSULTA A UM DATASET, DE GRUPO DE USUARIOS FLUIG
	var dtsGroup = DatasetFactory.getDataset('group',null,null,null);
	for(var g = 0; g < dtsGroup.values.length; g++){
		userList.add( 'Pool:Group:'+dtsGroup.getValue(g.toString(),"groupPK.groupId") );
	}
	
	//-- CONSULTA A UM DATASET, DE PAPEIS DE USUARIOS FLUIG
	var dtsRole = DatasetFactory.getDataset('workflowRole',null,null,null);
	for each(papel in dtsRole.values){
		userList.add( 'Pool:Role:'+papel["workflowRolePK.roleId"] );
	}
	
	return userList;

}

 

No exemplo acima, para que o(s) Grupo(s) seja(m) listado(s) é necessária a inclusão do prefixo "Pool:Group:" concatenado ao código deste Grupo. Com isto, ao selecionar o grupo a atividade é atribuida ao Grupo e uma pessoa deste deverá assumí-la. Da mesma forma ocorre para o(s) Papel(éis) Workflow, porém o prefixo deve ser "Pool:Role:" mais o código do Papel.

 

Utilizando Serviços / Webservices

A construção de um mecanismo ainda possibilita a utilização de um Serviço de Integração Fluig, que poderá consumir um webservice do tipo SOAP ou do tipo Progress para obter os responsáveis, de acordo com uma regra de negócio provida pelo ERP, por exemplo. Este método pode seguir o modelo abaixo:

 

Bloco de código
languagejava
function resolve(process,colleague){

	var userList = new java.util.ArrayList();

	//-- CHAMADA A UM SERVICO DE INTEGRACAO FLUIG, COM UM WEBSERVICE ESPECIFICADO
	var biblioteca = ServiceManager.getService('ECMColleagueService').getBean();
	var endpoint = biblioteca.instantiate('com.totvs.technology.ecm.foundation.ws.ECMColleagueServiceServiceLocator');
	var webservice = endpoint.getColleagueServicePort();
	var usuariosDtoArray = webservice.getSummaryColleagues(1);
	for each(usuario in usuariosDtoArray.getItem()){
		userList.add( usuario.getColleagueId().toString() );
	}
	
	return userList;

}

 

O exemplo acima utilizou o webservice ECMColleagueService da própria plataforma e o Serviço foi criado utilizando a API Axis, padrão do TOTVS ECM 3.0.

 

 

 

 

 

 

Assunto Primário

Explicação. Exemplo para links e anexos.

...