Skip to content

Instantly share code, notes, and snippets.

View brunogasparetto's full-sized avatar

Bruno Gasparetto brunogasparetto

View GitHub Profile
@brunogasparetto
brunogasparetto / fluig_notificacao_personalizada.md
Last active April 24, 2024 13:00
Fluig: Exemplo de Notificações Personalizadas

Notificações Personalizadas

Recentemente precisei disparar algumas notificações aos usuários, mas não queria o simples envio por e-mail, então percebi que o Fluig possuí opções "ocultas" para criar notificações personalizadas.

Vou mostrar como fiz para disparar notificações referentes a vencimento de CNH.

Com a intenção de organização foi criado o módulo Personalizadas às notificações com o seguinte código:

@brunogasparetto
brunogasparetto / ds_create_folder.js
Created January 22, 2024 21:47
Fluig: Exemplo de criação de pasta utilizando o serviço ECMFolderService
// Deve-se cadastrar o serviço ECMFolderService pelo painel de controle
/**
* Cria uma pasta
*
* Deve-se passar as constraints:
* - parentId: ID da pasta pai;
* - folderName: Nome da pasta a ser criada;
*
* O Dataset retorna o ID da pasta criada.
@brunogasparetto
brunogasparetto / fluig_copiar_grupos_usuario.js
Last active November 9, 2023 12:24
Fluig: exemplo de como copiar os grupos de um usuário para outro
/**
* Copia os grupos de um usuário para outros usuários
*
* Obrigatório passar a constraint "from" com o login do usuário a ser copiado.
* Obrigatório passar a constraint "to" com o login do usuário a adicionar nos grupos.
*
* Pode-se indicar vários usuários "to".
*
* @param {string[]} fields Campos Solicitados
* @param {Constraint[]} constraints Filtros
@brunogasparetto
brunogasparetto / ds_usuarios_ativos.js
Created August 8, 2023 14:55
Fluig: dataset para pegar os usuários ativos permitindo filtrar por Grupos e Papeis
/**
* Usuários ativos no Fluig
*
* Dataset para facilitar a busca por usuários ativos que possam ser utilizados
* como responsáveis/destinatários de tarefas.
*
* Se informar uma constraint para groupId (indiferente do tipo, pois sempre vai considerar SHOULD)
* ele filtrará somente os usuários desse grupo. Pode-se enviar essa constraint para vários grupos
* ao mesmo tempo.
*
@brunogasparetto
brunogasparetto / fluig_send_email.js
Created June 25, 2022 14:13
Fluig: Envio de e-mail com todos anexos do processo
/*
* Super contribuição do vinny.silveira no fórum Fluiggers
* URL: https://fluiggers.com.br/t/envio-de-e-mail-com-anexos/545
*/
/**
* Método para enviar os anexos de uma solicitação anexadas em um e-mail
*
* @param {string} assunto Assunto do e-mail
* @param {string} conteudo Corpo do e-mail escrito em HTML
@brunogasparetto
brunogasparetto / inserir_pai_filho.js
Last active October 22, 2021 01:48
Fluig: Exemplo de Inserção de Pai Filho por Web Service em Widget
const response = await fetch(
`${WCMAPI.serverURL}/webdesk/ECMCardService?wsdl`,
{
method: "POST",
redirect: "follow",
credentials: "omit",
headers: {
"Content-Type": "text/xml;charset=utf-8"
},
body: createItemXml(documentId, novoIndice, conteudoDoItem)
@brunogasparetto
brunogasparetto / Fluig-PostgreSQL.xml
Last active July 12, 2021 13:21
Fluig: Configurar o PostgreSQL no Fluig.
<!--
Criar a pasta <instalação do fluig>\appserver\modules\system\layers\base\org\postgresql\main
Colocar o .jar do jdbc nessa pasta.
Utilizei o postgresql-42.2.20.jar, então deve-se indicar a versão correta no path de resource-root.
Criar o arquivo "module.xml" nesta pasta com o seguinte conteúdo:
-->
<?xml version="1.0" encoding="UTF-8"?>
@brunogasparetto
brunogasparetto / fluig_gerar_pdf_anexar_processo.js
Last active January 24, 2024 21:46
Fluig: exemplo de como utilizar um serviço externo para gerar um PDF e então anexá-lo ao processo em uma atividade de serviço
/*
* Necessário criar um serviço SOAP no Fluig (Painel de controle -> Desenvolvimento -> Serviços)
* com o nome ECMDocumentService apontando para o /webdesk/ECMDocumentService?wsdl
*
* Mais informações: https://tdn.totvs.com/pages/releaseview.action?pageId=73084007
*/
/**
* Cria o PDF do formulário
*
@brunogasparetto
brunogasparetto / send_file_webservice.js
Last active December 14, 2022 22:54
Fluig: enviar um documento do GED para um WS externo como chunked post
var fluigUsername = "username";
var fluigPassword = "password";
var fluigEmpresa = 1;
var documentId = 0;
var documentVersion = "1000";
var documentDescription = "arquivo.pdf";
var mimeType = "application/pdf";
var ECMDocumentServiceProvider = ServiceManager.getServiceInstance("ECMDocumentService");
var ECMDocumentServiceLocator = ECMDocumentServiceProvider.instantiate("com.totvs.technology.ecm.dm.ws.ECMDocumentServiceService");
@brunogasparetto
brunogasparetto / ds_process_attachments_files.js
Last active March 26, 2024 12:41
Fluig: Pega os anexos de um processo juntamente com a sua URL de download
/**
* Pega os documentos anexos a um processo
*
* Deve informar o processId na Constraint (e só ele será usado para filtrar dados).
*
* @param {string[]} fields
* @param {Constraint[]} constraints
* @param {string[]} sortFields
*/
function createDataset(fields, constraints, sortFields) {