Home

TOTVS | Plataformas e tecnologias

Árvore de páginas

Importante

Caro Cliente,

O TOTVS ECM 3.0 foi fundamentado na tecnologia de interface Flash, do qual a Adobe irá descontinuar seu suporte em 31/12/2020.

Recomendamos que nossos clientes avaliem a utilização do TOTVS Fluig Plataforma, que proporciona uma maior abrangência de recursos e importantes inovações tecnológicas. São inúmeras novidades não só em ECM e BPM que o Fluig entrega aos seus mais de 4 mil clientes, mas também conta com recursos de portais, social e identidade única.

Entre em contato com seu executivo de conta para saber mais detalhes desta oferta.

Exemplos de customização

O TOTVS | ECM possibilita várias formas de customização, deixando o sistema mais flexível e seguro.

DataSet

Para utilização interna ao sistema, são disponibilizados diversos DataSets que tem como objetivo disponibilizar aos processos de customização, uma consulta rápida e alguns dados do sistema.

Através do Painel de Controle, é possível navegar pelos DataSets disponíveis bem como visualizar o seu conteúdo. Com isto, é possível verificar quais os campos disponíveis, tanto para filtros quanto para acesso, bem como fazer testes sobre DataSets customizados.

Vários pontos do sistema podem fazer uso dos DataSets. Dependendo do local onde o DataSet é utilizado, podem ocorrer variações na forma de acessá-lo ou de manuseá-lo. Os DataSets podem ser acessados através de diversos pontos, por exemplo:

  • Via Pontos de customização;
  • Via Javascript em formulário;
  • Via Tags no formulário;
  • Via Portal;
  • Via Web Services
     

Os métodos disponíveis para utilização dos DataSets estão explicados no documento "Guia de Referência Customização de Datasets.pdf", disponível na mídia do produto.


WebService

O TOTVS | ECM disponibiliza uma série de WebServices para que seja possível que outros sistemas se comuniquem com ele.

Além de disponibilizá-los, o TOTVS | ECM pode acessar WebServices disponibilizados por outros sistemas. Para acessar, basta cadastrá-los através do ícone de serviços.

Para mais informações de utilização, consulte a documentação "Guia de Referência Utilização de Webservices.pdf" disponível na mídia do produto.


Adapter e Aplicativos

O TOTVS | ECM disponibiliza recursos como os Adapter e aplicativos, que possibilitam a execução de programas , como por exemplo, o ERP da Datasul, o EMS.

Existem também no produto, uma opção de visualização de relatórios, a ferramenta de visualização de relatório do TOTVS | ECM possui várias funcionalidades, sendo:

  • Verificar Índice: Caso o relatório desenvolvido possua índice, é possível listá-lo;
  • Executar relatório: Permite que o relatório seja executado novamente;
  • Exportar dados: Exporta os dados gerados do relatório em arquivo, permitindo selecionar as colunas desejadas e o separador de dados;
  • Exportar relatório: Converte os dados do relatório em diferentes formatos de arquivos: Excel, PostScript, PDF, Word e PowerPoint, além de permitir a seleção de páginas que serão exportadas.
  • Imprimir relatório: Imprime relatório selecionando as impressoras instaladas no computador do usuário autenticado e permite imprimir em formato PDF ou HTML;
  • Imprimir relatório no servidor: Imprime relatório a partir das impressoras instaladas no servidor do TOTVS | ECM.
  • Navegação de páginas: Permite a navegação entre as páginas do relatório.

Ainda falando sobre relatórios, é possível, a partir da classe DatasetFactory, acessar dados de fichários no TOTVS | ECM e utilizá-los para popular um relatório.


Exemplos práticos


DataSet

O exemplo a seguir, apresenta uma chamada simples a um DataSet, nesse caso, ao DataSet "group".


function doTest1() {         var dataset = DatasetFactory.getDataset("group", null, null, null);
return dataset.rowsCount;
}


Como cada linha do DataSet representa um registro, o método acima retorna a quantidade de grupos cadastrados no TOTVS|ECM.

Para acessar um WebService, é necessário criar um DataSet.

Exemplo

Existe um fichário que recebe um valor em reais e, através de uma função JavaScript pode-se pegar esse valor, enviar a um DataSet, que por sua vez pode enviá-lo a um WebService e após o WebService processar esse valor (converter o valor para dólar, por exemplo), fazer o caminho de volta até o fichário para que seja possível, por exemplo, preencher outro campo do formulário.

Através de uma função JavaScript no arquivo HTML do fichário, é possível criar um constraint que enviará um valor do fichário até o DataSet.

Exemplo

Neste exemplo, observe que está sendo enviado o valor do campo "diaria". 


var c = DatasetFactory.createConstraint("valor", document.form.diaria.value, document.form.diaria.value, ConstraintType.MUST);
var constraints   = new Array(c);
var dataset = DatasetFactory.getDataset("convertToDolar", null,constraints, null);


A seguir, apresentamos um exemplo para o DataSet convertToDolar, que recebe, entre outros valores, a constraint com o valor em reais e o envia até o WebService.


function createDataset(fields, constraints, sortFields) {    var newDataset = DatasetBuilder.newDataset();
    newDataset.addColumn("Cotacao");
    var viagemService = ServiceManager.getService('WS');
    var serviceHelper = viagemService.getBean();
    var serviceLocator = serviceHelper.instantiate('org.apache.ws.axis2.WSLocator');
    var service = serviceLocator.getWSHttpSoap11Endpoint();
    var retorno = service.toDolar(new java.lang.Double(constraints[0].getInitialValue()));
    newDataset.addRow(new  Array(retorno.toString()));
    return newDataset;
}


O comando ServiceManager.getService('W') realiza a comunicação com o WebService "WS", que por sua vez disponibiliza o método "toDolar", utilizado para realizar a conversão do valor em reais para o valor em dólar.

Após o WebService processar o valor e devolver ao DataSet o valor já em dólar, o DataSet retorna esse valor para o JavaScript do formulário, que por sua vez, pode popular um campo do fichário com o valor já convertido.

Exemplo

No código abaixo, observe como receber o retorno do DataSet.


var valor = dataset.values[0];
document.getElementById("valorEmDolar").value = valor["Cotacao"];


Observe no código, que pegamos o valor na posição zero do DataSet, que é uma linha, um registro e setamos na variável "valor", depois precisamos saber o nome da coluna do DataSet para pegar o valor do dólar, que nesse caso é "Cotacao" e o valor é enviado para o campo do formulário chamado "ValorEmDolar".



DataSet Customizado

É possível criar DataSets customizados que podem ser construídos a partir de um código JavaScript. Uma vez que o próprio DataSet é criado a partir de um código JavaScript, é possível fazer chamadas a outros DataSets, chamadas à serviços externos ou apenas criar a DataSet a partir de valores codificados.

Exemplo

function createDataset(fields, constraints, sortFields) {       var newDataset = DatasetBuilder.newDataset();       // Cria as colunas
newDataset.addColumn("Sigla");
newDataset.addColumn("Estado");
newDataset.addColumn("Capital");
newDataset.addColumn("Area");
// Cria os registros
newDataset.addRow(new Array('AM','Amazonas','Manaus',1570746));
newDataset.addRow(new Array('PA','Pará','Belém',1247690));
newDataset.addRow(new Array('MT','Mato Grosso','Cuiabá',903358));
newDataset.addRow(new Array('TO','Tocantins','Palmas',277621));
newDataset.addRow(new Array('PI','Piauí','Teresina',251529));

return newDataset;
}


No exemplo acima, é criado um DataSet cujo os campos e valores estão fixos no código. Para criar um novo DataSet, é utilizado o método DatasetBuilder.newDataset(). A partir deste objeto, é possível criar as colunas desejadas (addColumn) bem como adicionar linhas (addRow).



Customização de fichários

Os eventos de customização para fichário, são criados na área de metadados da publicação deste tipo de documento.


Evento: DisplayField

Altera os valores que serão apresentados no campo do formulário. Para isto, utilize o seguinte procedimento:

form.setValue(“nome-do-campo”, “valor”);

Exemplo

function displayFields(form, customHTML) {            if ( form.getFormMode() == “MOD” ) {            form.setValue('RNC_colab_abertura', new java.lang.Integer(1));            }}


Evento: EnableFields

Dispara no momento em que os objetos do formulário são habilitados, permitindo desabilitar alguns campos, caso haja necessdidade.

Para habilitar ou desabilitar um campo do formulário, realize o seguinte procedimento:

form.setEnabled("nome-do-campo",true/false)

Onde “true” habilita o campo e “false” desabilita o campo.


Exemplo

function enableFields(form) {       if ( form.getFormMode() != 'ADD' ){
               form.setEnabled("rnc_area",false);
               form. setEnabled ("rnc_tipo_ocorrencia",false);
       }
}


Evento: ValidateForm

Este evento é executado antes da gravação dos dados no formulário no banco de dados. Em caso de erros de validação dos dados no formulário, esse evento retornará uma mensagem de erro.

Exemplo

function validateForm(form) {       if ( form.getValue('RNC_colab_abertura') == null ){
throw "O colaborador de abertura não foi informado";
}
}

Exemplo de customização de e-mail

O método é disparado no exato momento em que qualquer um dos e-mails de processo é enviado.

function onNotify(subject, receivers, template, params){       if(template.match("tpl028")!=null){               receivers.add("[email protected]");        }
}


Para mais informações sobre customizações, consulte a documentação do produto.




  • Sem rótulos