Integração com a plataforma LMS Konviva
A Senior possui um aplicativo integrador que permite transitar dados entre o sistema de Gestão de Pessoas | HCM e a plataforma de ensino Konviva, da iLog, realizando uma carga inicial de dados e mantendo a sincronia entre os produtos.
Para tanto, a integração entre as plataformas atende a três cenários:
- Clientes sem o módulo Treinamento: a integração envia apenas as informações dos colaboradores do Gestão de Pessoas | HCM para o Konviva, ou seja, os dados de treinamentos realizados não são levados ou buscados da plataforma LMS. São enviadas para o Konviva, as sincronias de unidades, setor, cargo e usuário. Não retorna nada.
- Clientes com o módulo Treinamento que fazem a gestão de cursos pelo Konviva: a integração envia apenas as informações dos colaboradores do Gestão de Pessoas | HCM para o Konviva, e busca da plataforma LMS o cadastro de cursos e históricos de treinamentos realizados. São enviadas para o Konviva, as sincronias de unidades, setor, cargo e usuário. E retorna do Konviva, a sicronia de matrículas concluídas..
- Clientes com o módulo Treinamento que o utilizam para fazer a gestão de cursos: a integração envia as informações dos colaboradores, seus cursos, turmas e eventos do Gestão de Pessoas | HCM para o Konviva, e busca da plataforma LMS os históricos de treinamentos realizados. São enviadas para o Konviva, as sincronias de unidades, setor, cargo, usuário, categoria de cursos, cursos, turmas e matrículas. E retorna do Konviva, a sicronia de matrículas concluídas.
Pré-requisitos de instalação
Antes de iniciar a instalação do integrador, verifique se o seu sistema atende aos seguintes requisitos:
- Java SE versão 8 ou superior.
- Gestão de Pessoas | HCM (versão 6.2.33 ou superior).
- Instalação dos web services do módulo Treinamento e acesso aos web services do servidor em que está o aplicativo integrador.
- Comunicação com a URL da API da plataforma Konviva.
Nota
O consultor deve acionar a Ilog antes de iniciar as rotinas de integração.
Download e Instalação/Atualização
- Acesse o endereço do Integrador da Senior.
- Faça o download dos arquivos rh-integration-monitor.zip (este é o arquivo através do qual será feito o acompanhamento da integração) e rh-integration.zip (este arquivo é o do serviço de integração).Nota
Caso já faça uso da ferramenta e queira apenas atualizar o integrador e manter seus arquivos .sql customizados, basta sobrescrever o conteúdo atual com o arquivo rh-integration-update.zip. Caso apresente conflitos com algum .sql, deverá ser realizado manualmente o merge para tratar as diferenças encontradas.
- Descompacte os dois arquivos em um servidor que possui permissão de acesso ao arquivo .CFG do Gestão de Pessoas | HCM e à URL do Konviva.
Nota
Saiba mais sobre localização e funcionamento do arquivo .CFG na Central de Configurações Senior.
O integrador pode ser utilizado como serviço ou como um utilitário (executado manualmente). Caso escolha utilizar como serviço, ele deve ser instalado através do arquivo InstallService64.bat, descompactado pelo passo 2 do guia acima. O nome do serviço no Windows é Senior - Integrador Gestao de Pessoas Konviva.
Configurações
Algumas configurações são obrigatórias e outras opcionais a serem realizadas no arquivo de configurações da instalação do Gestão de Pessoas | HCM e também diretamente no arquivo integration.properties, que foi descompactado pelo arquivo rh-integration.zip durante o download e a instalação.
As configurações a seguir devem ser realizadas na Central de Configurações Senior (arquivo de configurações .CFG) quando se deseja retornar do Konviva as informações de conclusão de curso:
- Configuração correta do endereço URL dos web services do módulo Treinamento.
- Credenciais usadas para acionar os web services responsáveis por gravar os históricos de treinamento.
- O usuário configurado no passo anterior deve ter permissão no módulo Treinamento e nas telas a seguir:
As demais configurações são diretamente no arquivo de propriedade do Integrador, que pode ser aberto diretamente em um editor de arquivo de texto. Abaixo a lista de parametrizações:
| Parâmetro | Descrição | Valor padrão | Exemplos | Obrigatório |
|---|---|---|---|---|
| integration.system | Sistema que será integrado. | - | integration.system=KONVIVA | Sim |
| integration.token | Token para autenticação no sistema parceiro. Este token deve ser obtido pelo cliente com o próprio sistema que será integrado. | - | integration.token=TOKEN 123456 | Sim |
| system.api.url | Endereço URL dos serviços expostos pelo sistema parceiro. | - | system.api.url=http://integracaosenior.homol.konviva.com.br/action/api | Sim |
| config.rootdir | Diretório de instalação do Gestão de Pessoas | HCM. | - | config.rootdir=C:\\Senior\\Vetorh | Sim |
| config.environment | Nome do arquivo .CFG (sem a extensão). | - | config.environment=senior | Sim |
| config.logUTC | Alinha configurações de horário (GMT + fuso) para utilizar no log, de acordo com a configuração do servidor. Opções: -1 = horário atual menos 1 hora; 0 = horário atual; 1 = horário atual mais 1 hora. |
0 | config.logUTC=0 | Não |
| integration.inbound.port | Porta que será utilizada pelo servidor HTTP do integrador. Caso seja configurado um valor diferente do padrão, este deve ser ajustado também no arquivo config.js do monitor de integração. | 8082 | integration.inbound.port=8082 | Sim |
| integration.konviva.type |
Modelo de integração.
|
1 = Somente colaboradores | integration.konviva.type=3 | Sim |
| sync.atualizar.identificador | Habilita a utilização da funcionalidade para atualizar o identificador no sistema Konviva. | false | sync.atualizar.identificador=true | Sim |
| sync.enabledOnStart | Habilita o início automático da sincronia após iniciar o Integrador. | false | sync.enabledOnStart=true | Não |
| sync.interval | Tempo (em segundos) para verificação da sincronia (Gestão de Pessoas > Konviva). | 10 | sync.interval=10 | Não |
| resync.interval | Tempo (em minutos) para verificação da sincronia (retorno de matrículas do Konviva para o Gestão de Pessoas). | 240 | resync.interval=180 | Não |
| integration.log.level | Nível dos logs do integrador. O valor recomendado é ALL. | WARNING | integration.log.level=ALL | Não |
| resync.startDateIntegracaoHistoricosCurso | Data inicial para executar na busca do fluxo "Histórico dos cursos realizados no Konviva" na Carga Inicial. Quando não informada, considera a data 01/01/1900. | 01/01/1900 | resync.startDateIntegracaoHistoricosCurso=01/01/2018 | Não |
| resync.endDateIntegracaoHistoricosCurso | Data final para executar na busca do fluxo "Histórico dos cursos realizados no Konviva" na carga inicial. Quando não informada, considera o dia anterior ao atual. | Data atual | resync.endDateIntegracaoHistoricosCurso=05/02/2018 | Não |
| sync.aproveitamento.type | Formato no qual a sincronia do aproveitamento do participante no Konviva será gravado na média do histórico do participante no módulo Treinamento. A média poderá ser gravada no formato centesimal (padrão) ou decimal. O parâmetro também é utilizado na sincronização do curso do módulo Treinamento para o Konviva, convertendo a média mínima decimal do módulo de treinamento, para centesimal no Konviva. | C | sync.aproveitamento.type=C | Não |
| migration.entity | Especificar qual fluxo deve ser executado na MIGRAÇÃO. Suporta as seguintes opções (uma por vez): Tudo, Usuario, Cargo, Setor, Unidade, Curso, Categoria, Turma. Não há necessidade de reiniciar o serviço a cada vez que alterar as configurações. Observação: quando a entidade for Usuario, implica também na exportação das matrículas, que por sua vez, exporta algumas turmas e cursos relacionadas as matrículas. | Tudo | migration.entity=Cargo | Não |
| ws.call.configuration | Define a URL de configuração dos web services do módulo Treinamento. Por padrão, utiliza-se a configuração da Central de Configuração. | - | ws.call.configuration=http://localhost:80 | Não |
| cliente | Especificar algum cliente para controle interno. Só realizar sob necessidade e orientação da Senior. | - | - | Não |
| active.proxy |
Define se utiliza a configuração de proxy do arquivo de configurações do Gestão de Pessoas | HCM. Opções: true ou false. |
false | active.proxy=false | Não |
| sync.addtable.unidade | Adiciona uma tabela específica no monitoramento da sincronia de Unidades. | - | sync.addtable.unidade=USU_AGRUP016HIE | Não |
| sync.addtable.unidade | Define uma nova tabela a ser monitorada no fluxo de sincronia de Unidades Isto não substitui as tabelas padrões que são monitoradas. | - | sync.addtable.unidade=R034CPL | Não |
| sync.addtable.superiorimediato | Definir uma tabela a ser monitorada no fluxo de Superiores Imediatos. | - | sync.addtable.superiorimediato=R034FUN | Não |
| one.taborg.for.all | Indica que não deve ser utilizado o "NumEmp" para compor as chaves das Unidades. Depois de realizar o processo de Implantação, não deve mais sofrer alterações. | false | one.taborg.for.all=true | Não |
| sync.inserir.demitidos | Permite que o processo de sincronismo inclua demitidos. Deve ser utilizado somente temporariamente, para tratar problemas na base de dados quando o colaborador já foi integrado, mas, por algum motivo, foi excluído do banco de dados, e, com isso, a atualização para desativar o colaborador não é realizada. | false | sync.inserir.demitidos=false | Não |
Integração e Sincronia
O Integrador é responsável por realizar a carga dos dados da base do Gestão de Pessoas | HCM para o Konviva e por manter a sincronia entre eles. Com base nisso, a integração está dividida em duas partes:
- Carga de dados, ou Integração: utilizada para enviar as informações para o Konviva pela primeira vez, por exemplo, após a instalação ou o lançamento de um novo fluxo no sistema. A carga de dados pode ser completa ou por fluxo, mas tem um início e fim bem definidos.
- Sincronia: processo que envia constantemente as atualizações entre os sistemas. Esse processo precisa ser habilitado e deve ficar em execução de forma contínua após o processo de carga dos fluxos.
- Consistência de base
- Unidades
- Setores
- Cargos
- Usuários
- Superiores Imediatos
- Categorias de curso
- Cursos
- Turmas
- Matrículas
- Histórico dos cursos realizados no Konviva
Antes de habilitar a sincronia pela primeira vez, a carga inicial deve ter sido executada para todos os fluxos.
Habilitar fluxo de Superiores Imediatos
Para habilitar o fluxo de Superiores Imediatos, é preciso realizar algumas configurações. A forma como estas informações serão buscadas no Integrador são definidas pelo cliente via queries SQL customizados. Assim, fica bem flexível buscar as informações da maneira desejada por cada organização.
- Adicionar ao arquivo integration.properties a propriedade "sync.addtable.superiorimediato", sinalizando a tabela que será monitorada para a sincronia do fluxo de superiores imediatos.
- No diretório de queries do Integrador, devem existir as seguintes queries: "superior-imediato-query.sql" para habilitar o recurso na integração; e "superior-imediato-sync-query.sql" para liberar o recurso na sincronia.
Estas queries são reponsáveis por buscar os superiores imediatos.
- Query de carga inicial (superior-imediato-query): não recebe parâmetros. Precisa obrigatoriamente retornar campos com a seguinte nomenclatura: codigo_empresa, tipo_colaborador, cadastro_colaborador, empresa_superior, tipo_superior, cadastro_superior.
- Query de sincronia (superior-imediato-sync-query): recebe parâmetros: numemp, tipcol, numcad da pendencia que está sendo processada. Precisa obrigatoriamente retornar campos com a seguinte nomenclatura: codigo_empresa, tipo_colaborador, cadastro_colaborador, empresa_superior, tipo_superior, cadastro_superior.
A operação DELETE na sincronia do fluxo de Superiores Imediatos não está habilitada no Integrador. Nos casos em que se deseja deixar um usuário do Konviva sem superior imediato informado, esta ação deve ser feita diretamente na plataforma Konviva.
Como executar a integração
Para iniciar o integrador como utilitário, o arquivo start.bat deve ser executado com o parâmetro "nosvc" (exemplo: start.bat -nosvc). O utilitário é obtido pela descompactação do arquivo rh-integration.zip durante o download e a instalação. Quando o integrador é instalado como serviço, isso não é necessário.
A execução e o acompanhamento da integração são feitos por meio do dashboard de integração, disponível em rh-integration-monitor\index.html. Veja abaixo o que precisa ser feito:
- Execute a consistência de base no Integrador (não confundir com o passo a seguir, que é a consistência da base pelo CBDS).
- A consistência de base irá inserir todas as tabelas que são integradas na tabela Pendências de Replicação (RTC_PENDENCIES) e persistir a tabela de Pendências de Replicação Parceiro Konviva (RTC_PEND_KONVIVA), utilizada para controlar as pendências que já foram sincronizadas.
- Execute a consistência de base no CBDS
- Neste momento, o CBDS irá ler as tabelas cadastradas na tabela Definição das Tabelas de Replicação para Cloud (RTC_REPLICATIONDEF) e irá criar triggers para cada uma das tabelas. Essas triggers irão monitorar as operações de Insert, Update e Delete, e inserir as pendências na tabela de Pendências de Replicação (RTC_PENDENCIES).
- Execute a carga total dos dados. Para isso:
- Na guia Integração, selecione a opção "Todas". Com isso, todos os dados que devem ser integrados ao Konviva serão enviados para ele, seguindo a ordem de dependência entre os fluxos.
- É possível acompanhar o envio dos dados pelo painel "O que está acontecendo" e pelo log do integrador, localizado no arquivo no diretório de instalação.
Como os dados são sincronizados
A partir do momento em que as triggers são criadas na consistência de base, todas as alterações das tabelas do Gestão de Pessoas | HCM são gravadas na tabela Pendências de Replicação (RTC_PENDENCIES).
Essa tabela possui o nome da tabela alterada, a chave primária do registro no formato json e o tipo da operação que ocorreu: Insert, Update ou Delete.
Quando a sincronia está habilitada, o integrador ler os registros da tabela Pendências de Replicação (RTC_PENDENCIES) que ainda não foram tratados e trata cada alteração de acordo com sua especificidade. Enquanto a sincronia ficar desabilitada, as alterações vão se acumulando na tabela e serão sincronizadas na mesma ordem em que ocorreram quando a sincronia for habilitada novamente.
Todos os fluxos e processos possuem logs em arquivo de texto, separados no mesmo diretório de instalação do Integrador. Se houver alguma falha na execução de algum fluxo, esta falha é armazenada e pode ser visualizada no Dashboard. Existe também a possibilidade de repetir a execução destes fluxos ou registros que falharam através de uma opção no próprio Dashboard.
Todos os registros integrados estão presentes em uma base (com uma estrutura de De Para e banco H2) localizada no mesmo diretório do Integrador e denominada DB_INTEGRATION.mv.db. Este arquivo nunca deve ser excluído, movido ou renomeado. Em caso de mudança do Integrador para outro servidor, o serviço de Integração deve ser parado e o respectivo arquivo deve ser copiado junto com o Integrador para o novo servidor.
Se o arquivo for perdido, haverá a necessidade de aplicar o processo de Migração, que possui um outro objetivo, mas acaba sendo um recurso para reconstrução dos vínculos entre os sistemas nesta base citada.
Queries do Integrador
A tabela a seguir apresenta uma descrição do objetivo de cada comando SQL utilizado nos fluxos da carga inicial, sincronia e outros processos. Os arquivos .sql que contêm as queries podem ser consultados na pasta queries do integrador.
| Nome | Arquivo .sql |
|---|---|
| Carga inicial de cargos (R024CAR) | cargo-query |
| Sincronia de cargos (R024CAR) | cargo-sync-query |
| Utilizado na exportação do recurso Migração, para encontrar no Gestão de Pessoas | HCM um assunto de curso (R128ASS) baseado no nome da categoria de curso retornada pelo Konviva | categoria-curso-pelo-nome-query |
| Carga inicial dos assuntos de cursos (R128ASS) | categoria-curso-query |
| Sincronia dos assuntos de cursos (R128ASS) | categoria-curso-sync-query |
| Utilizado na importação do recurso Migração, para encontrar no Gestão de Pessoas | HCM um colaborador (R034FUN) baseado na chave empresa (NumEmp), tipo (TipCol) e cadastro (NumCad). | colaborador-query |
| Utilizado na importação do recurso Migração, para encontrar no Gestão de Pessoas | HCM um colaborador (R034FUN) baseado no número de CPF. | colaborador-query-cpf |
| Carga inicial dos cursos de aperfeiçoamento (R128CUA) | curso-query |
| Sincronia dos cursos de aperfeiçoamento (R128CUA) | curso-sync-query |
| Utilizado como auxiliar na carga inicial das Unidades | empresas-unidades-query |
| Carga inicial das matrículas dos cursos de aperfeiçoamento (R134DRE) | matricula-query-R134DRE |
| Carga inicial das matrículas dos eventos (quando usa rotina de Adm. Por Eventos – R234PAR) | matricula-query-R234PAR |
| Sincronia das matrículas dos cursos de aperfeiçoamento (R134DRE) | matricula-sync-query-R134DRE |
| Sincronia das matrículas dos eventos (quando usa rotina de Adm. Por Eventos – R234PAR) | matricula-sync-query-R234PAR |
| Utilizado na exportação do recurso Migração, para encontrar no Gestão de Pessoas | HCM a pessoa associada a um colaborador (R033PES, R034FUN) baseado na chave empresa (NumEmp), tipo (TipCol) e cadastro (NumCad). | pessoa-colaborador-query |
| Utilizado na exportação do recurso Migração, para encontrar no Gestão de Pessoas | HCM informações da pessoa associada a um colaborador (R033PES) baseado no código da pessoa (CodPes). | pessoa-query |
| Carga inicial da hierarquia de locais do organograma (R016HIE, R016ORN) | setor-query |
| Sincronia da hierarquia de locais do organograma (R016HIE, R016ORN) | setor-sync-query |
| Carga inicial das turmas dos cursos de aperfeiçoamento (R134DTU) | turma-query-R134DTU |
| Carga inicial dos eventos (quando usa rotina de Adm. Por Eventos – R234EVN) | turma-query-R234EVN |
| Sincronia das turmas dos cursos de aperfeiçoamento (R134DTU) | turma-sync-query-R134DTU |
| Sincronia dos eventos (quando usa rotina de Adm. Por Eventos – R234EVN) | turma-sync-query-R234EVN |
| Carga inicial da hierarquia de locais do organograma (R016HIE, R016ORN) | unidade-query |
| Sincronia da hierarquia de locais do organograma (R016HIE, R016ORN) | unidade-sync-query |
| Carga inicial dos colaboradores (R034FUN, R034CPL) | usuario-query |
| Sincronia dos colaboradores (R034FUN, R034CPL) | usuario-sync-query |
| Utilizado para definir a Unidade principal/raiz por empresa. | empresa-unidade-query.sql |
| Utilizado para retornar as empresas que utilizam a tabela de organograma da pendência a ser processada na sincronia. | empresas-unidades-sync-query.sql |
| Utilizado para descobrir a Unidade Pai da Unidade que está sendo processada. | unidade-get-parent-query.sql |
| Utilizado na sincronia, em operações de DELETE, para validar a existência e validade de uma unidade na tabela de organograma. | unidade-exists-sync-delete-query.sql |
| Carga inicial de superiores imediatos dos usuários (tabela e comando definido pelo cliente). | superior-imediato-query.sql |
| Sincronia de superiores imediatos dos usuários (tabela e comando definido pelo cliente). | superior-imediato-sync-query.sql |
Cada fluxo da Integração executa as consultas SQL para buscar informações da base do Gestão de Pessoas | HCM, processá-las e, via web service, enviar as informações para o Konviva, ou processar internamente para algum tratamento específico.
Estes comandos SQL podem ser customizados durante a implantação e, dependendo da alteração, durante as atividades de uma integração já em andamento.
Para customizar, a recomendação é duplicar o arquivo, concatenando depois da extensão ".sql" o texto ".usu". Por exemplo, "usuario-sync-query.sql.usu".
Ainda assim deve-se existir a preocupação ao customizar esses comandos SQL, pois em uma atualização do Integrador, o comando original pode ter sido alterado a ponto de quebrar a compatibilidade com o comando customizado, e precisará ser ajustado manualmente. De preferência, a cada atualização, os comandos customizados precisam ser revisados pelo cliente.
Nota
Para entender um pouco mais sobre os fluxos e informações que são integradas, o quadro abaixo apresenta os campos disponíveis para Integração do Gestão de Pessoas | HCM para o Konviva e para cada fluxo (abrangendo carga inicial + sincronia) e também qual o valor padrão que os comandos SQL utilizam.
| Fluxo | Campo na query | Descrição | Valor padrão |
|---|---|---|---|
| Usuários | nome_colaborador | Nome do usuário no Konviva | R034FUN.NomFun |
| Usuários | senha | Senha para acesso ao Konviva | R034FUN.NumCpf |
| Usuários | data_nascimento | Data de nascimento do usuário | R034FUN.DatNas |
| Usuários | genero | Identidade de gênero | R034FUN.TipSex |
| Usuários | idioma_preferido | Idioma preferido no Konviva | “PORTUGUES” |
| Usuários | login | Login para acesso ao Konviva | R034FUN.NumCpf |
| Usuários | Email do usuário para uso no Konviva | R034CPL.EmaCon | |
| Usuários | cpf | Documento pessoal (CPF) | R034FUN.NumCpf |
| Usuários | data_admissao | Data de admissão do colaborador | R034FUN.DatAdm |
| Usuários | codigo_cargo | Cargo do usuário | R034FUN.EstCar + R034FUN.CodCar |
| Usuários | numero_local | Unidade do usuário | R034FUN.TabOrg + R034FUN.NumLoc |
| Usuários | cep | CEP, do endereço do usuário | R034CPL.EndCep |
| Usuários | endereço | Endereço do usuário | R034CPL.EndRua |
| Usuários | numero_endereco | Número do endereço do usuário | R034CPL.EndNum |
| Usuários | complemento_endereco | Complemento do endereço do usuário | R034CPL.EndCpl |
| Usuários | bairro | Bairro do endereço do usuário | R074BAI.NomBai |
| Usuários | cidade | Cidade do usuário | R074CID.NomCid |
| Usuários | pais | País do usuário | R074EST.DesEst |
| Usuários | estado | Estado do usuário | R074PAI.NomPai |
| Usuários | ddi_comercial + ddd_comercial + telefone_comercial + ramal_comercial | Representa o número de telefone comercial | R034CPL.DdiTel + R034CPL.DddTel + R034CPL.NumTel + R034CPL.NumRam |
| Usuários | ddi_residencial + ddd_residencial + telefone_residencial + ramal_residencial | Representa o número de telefone residencial | R034CPL.NmDdi2 + R034CPL.NmDdd2 + R034CPL.NmTel2 + R034CPL.NmRam2 |
| Usuários | id_konviva | Esta informação representa o Identificador de usuário no Konviva. Quando não preenchido na Integração, o próprio Konviva trata o preenchimento do campo. A recomendação é que o Konviva mesmo faça este gerenciamento, ou seja, não passar o campo na Integração. Caso surgir a necessidade, a orientação é para que o cliente avalie a necessidade junto ao Suporte dos dois sistemas. | Null |
| Superior Imediato | codigo_empresa | Código da empresa do usuário liderado | NumEmp |
| Superior Imediato | tipo_colaborador | Tipo de colaborador do usuário liderado | TipCol |
| Superior Imediato | cadastro_colaborador | Cadastro do usuário liderado | NumCad |
| Superior Imediato | empresa_superior | Código da empresa do superior imediato do usuário | NumEmp |
| Superior Imediato | tipo_superior | Tipo de colaborador do superior imediato do usuário | TipCol |
| Superior Imediato | cadastro_superior | Cadastro do superior imediato do usuário | NumCad |
| Cargos | codigo_estrutura + codigo_cargo | Código do cargo | R024CAR.EstCar + R024CAR.CodCar |
| Cargos | titulo_cargo | Nome do cargo | R024CAR.TitCar |
| Cargos | descricao_cargo | Descrição do cargo | Null |
| Categorias de Curso | codigo_assunto | Código da categoria | R122ASS.CodAss |
| Categorias de Curso | descricao_assunto | Nome da categoria | R122ASS.DesAss |
| Setores | taborg + numloc | Código do setor | R016ORN.TabOrg + R016ORN.NumLoc |
| Setores | codigo_local + “ – “ + nome_local | Nome do setor | R016HIE.CodLoc + R016ORN.NomLoc |
| Setores | descricao_setor | Descrição do setor | R016ORN.NomLoc |
| Unidades | codigo_empresa + tabela_hierarquia + codigo_unidade + controle_hierarquia + codigo_local | Código da unidade | R030ORG.NumEmp + R016HIE.TabOrg + R016HIE.NumLoc + R016HIE.PosLoc + R016HIE.CodLoc |
| Unidades | nome_unidade | Nome da unidade | R016ORN.NomLoc |
| Cursos | codigo_curso | Código do curso | R128CUA.CodCua |
| Cursos | nome_curso | Nome do curso | R128CUA.NomCua |
| Cursos | carga_horaria | Carga horária do curso | R128CUA.CHrCua |
| Cursos | formato_treinamento | Modalidade (poderá ser 1-Presencial, 2-Sincrono, 3-Distancia, 4-Blended) | R140REA.ForRea |
| Cursos | frequencia_requerida | Frequencia requerida para aprovação | R128CUA.FreCua |
| Cursos | aproveitamento_requerido | Aproveitamento requerido para aprovação | R128CUA.MedCua |
| Cursos | conteudo | Descrição do conteúdo do curso | R128CUA.DesCon |
| Cursos | metodologia | Descrição da metodologia do curso | R128CUA.MetCua |
| Cursos | objetivo | Descrição do objetivo do curso | R128CUA.DesObu |
| Turmas | codigo_curso + turma_curso | Identificador da turma | R134DTU.CodCua + R134DTU.TmaCua |
| Turmas | codigo_curso | Código do curso | R134DTU.CodCua |
| Turmas | codigo_empresa + tabela_organograma + numero_local | Código da unidade | R134DTU.EmpTlt + R134DTU.OrgTlt + R134DTU.LocTlt |
| Turmas | nome_turma | Nome da turma | R134DTU.TmaCua |
| Turmas | tipo_turma | Tipo da turma (“CONTINUA” ou “PERIODICA”) | R140REA.ForRea |
| Turmas | inicio_inscricao | Data de início para inscrições na turma | Null |
| Turmas | fim_inscricao | Data limite para inscrições na turma | R134DTU.DatLim |
| Turmas | inicio_realizacao | Data de início da turma | R134DTU.DatIni |
| Turmas | fim_realizacao | Data de término da turma | R134DTU.DatFim |
| Turmas | tipo_duracao | Tipo de duração (sempre deve ser em dias, opção 2) | R134DTU.TipDur |
| Turmas | duracao_dias | Duração da turma, em dias | R134DTU.TemDur |
| Turmas | quantidade_vagas | Quantidade de vagas para a turma | R134DTU.QtdVag |
| Turmas | situacao | Situação do curso (“ATIVO” ou “INATIVO”) | R134DTU.SitCua |
| Turmas | tipo_efetuar_matricula | Formato de matricula na turma (“SEM_APROVACAO” ou “COM_APROVACAO”) | Null |
| Turmas | lista_espera | Lista de espera (“true” ou “false”) | Null |
| Turmas | validade_turma | Validade da turma em meses | R128CUA.ValCua |
| Turmas | tipo_vencimento | Tipo da validade da turma (“SEM_VENCIMENTO” ou “MESES”) | R128CUA.ValCua |
| Turmas | perm_aluno_finalizar_mat | Permite aluno finalizar a matrícula (“true” ou “false”) | R140REA.ForRea |
| Turmas | inicio_primeiro_acesso | Inicia após o primeiro acesso (“true” ou “false”) | “True” |
| Matrículas | codigo_curso + turma_curso + codigo_empresa + tipo_colaborador + cadastro_colaborador | Identificador da matrícula | R134DRE.CodCua + R134DRE.TmaCua + R134DRE.NumEmp + R134DRE.TipCol + R134DRE.NumCad |
| Matrículas | codigo_curso + turma_curso | Identificador da turma | R134DRE.CodCua + R134DRE.TmaCua |
| Matrículas | codigo_empresa + tipo_colaborador + cadastro_colaborador | Identificador do matriculado | R134DRE.NumEmp + R134DRE.TipCol + R134DRE.NumCad |
| Matrículas | status_matricula | Situação da matrícula (“CONCLUIDO”, “CANCELADO” ou “MATRICULADO”) | R140NPC.SitCua |
| Matrículas | aproveitamento | % de aproveitamento no curso e turma | Null |
| Matrículas | frequencia | % de frequência no curso e turma | Null |
Observações
- O fluxo de Unidades leva para o Konviva a estrutura da tabela de organograma, e para montar a hierarquia dos locais (Unidades) no Konviva, considera também o campo de Posição do Local (PosLoc) da mesma forma que funciona no Gestão de Pessoas | HCM.
- Toda vez que é executado o fluxo de usuário, um outro fluxo, interno, também é executado, para definir o perfil do usuário no Konviva. Todos os usuários que passam pelo fluxo são definidos com Perfil Aluno, e, caso o colaborador seja um Gestor, com base na hierarquia de postos de trabalho, também terá um segundo perfil no Konviva, de Gestor.
Observação
para que o Integrador consiga definir o perfil para o usuário, é necessário que a Unidade a qual o usuário pertence, tenha sido integrada corretamente para o Konviva.
Ou seja, o fluxo de Usuários depende do fluxo de Unidades.
- Após a execução do fluxo de Usuários para algum colaborador, quando a senha informada para o usuário via Integração for utilizada pelo usuário para realizar login na plataforma Konviva, não será mais possível atualizar esta senha via Integração. É um comportamento limitado pelo Konviva.
- Para enviar junto ao Konviva o idioma preferido para cada usuário, deve-se criar na query do fluxo de Usuários algum retorno para o campo denominado idioma_preferido. Caso esta configuração não seja feita, os usuários sempre serão levados ao Konviva pelo Integrador com o idioma preferido (PORTUGUES).
- O Konviva atualmente suporta as seguintes opções de idioma: "MANDARIM", "ESPANHOL", "INGLES" e "PORTUGUES". Esta configuração pode ser feita no caso de possuir empresas ou faixas de colaboradores de diferentes países e idiomas.
Exemplo de aplicação nas queries de usuário:,CASEWHEN fun.numemp in (1,2,3) THEN'PORTUGUES'WHEN fun.numemp in (5,8,9) THEN'INGLES'WHEN fun.numemp in (10,11) THEN'ESPANHOL'WHEN fun.numemp in (20,22,25) THEN'MANDARIM'END AS idioma_preferido - Adicionar zeros à esquerda no CPF para utilizar como login, ou outros.
Exemplos de formatação nos bancos de dados suportados pela Senior:- Oracle:
lpad(fun.numcpf, 11, '0') as login, lpad(fun.numcpf, 11, '0') as senha
- Sql Server:
- right(replicate('0',11)+cast(fun.numcpf as varchar(11)),11) as login, right(replicate('0',11)+cast(fun.numcpf as varchar(11)),11) as senha
- Oracle:
Como os históricos de treinamentos são sincronizados
Quando a sincronia dos dados estiver habilitada, o Integrador solicita ao Konviva todas as matrículas que foram concluídas no dia anterior e no dia atual, conforme a periodicidade informada no arquivo de configurações. A periodicidade padrão é de quatro horas para cada execução. Nos casos em que o Integrador estiver fora do ar por mais de um dia, ou sua sincronia esteja desabilitada, ao retomar a execução, ele obtém todas as matrículas concluídas desde o último dia em que houve execução da sincronia até o dia atual.
Importante
Quando o cenário usado for Clientes com o módulo Treinamento que fazem a gestão dos cursos pelo Konviva: o integrador irá gravar o curso e o histórico de treinamento.
Quando o cenário usado for Clientes com o módulo Treinamento que o utilizam para fazer a gestão dos cursos: a administração é feita por turmas em que existem dois cenários:
- Turma cadastrada no módulo Treinamento e com participantes: o integrador atualiza o status do participante na guia Participantes, na tela Definição das Turmas (FR134DTU), colocando o curso com seu devido status (reprovado ou concluído com aprovação) e atribuindo o aproveitamento. O próprio TR criará o histórico de treinamento para o colaborador.
- Turma cadastrada no módulo Treinamento e sem participantes: o integrador cadastra o histórico de treinamento para o colaborador, com seu devido status (reprovado ou concluído com aprovação) e atribuindo o aproveitamento.
Análise inicial para resolução de problemas da integração
Quando ocorrer a situação em que era esperado que um registro fosse integrado, mas ele não foi, deve-se analisar as seguintes questões:
1. Existe algum erro no Dashboard para aquele determinado fluxo e registro?
2. Não existem erros? Ao executar na base do Gestão de Pessoas, o comando SQL de sincronia daquele determinado fluxo passa a chave do registro, o registro é retornado?
3. Se for retornado, o que está aparecendo nos logs explica o fato de não ter sido integrado?
4. Se não há mensagens de erros ou algo que explique porque o registro não foi integrado, pode ser que seja necessário acionar o Suporte.
1. Existe algum erro no Dashboard para aquele determinado fluxo e registro?
2. Não existem erros? Existe alguma informação nos logs que explique o que pode ter ocorrido?
3. No console de web services do módulo Treinamento (menu Recursos > Web Services > Console) existe alguma chamada registrada para os serviços e registro em questão?
4. Se buscarmos a execução do web service GetMatriculaByDataConclusao através de uma ferramenta externa, passando a data em que a matrícula foi concluída no Konviva, ela é retornada?
5. Se nenhuma das alternativas for positiva, talvez seja necessário acionar o Suporte.
Migração
O processo de migração entre sistemas tem o objetivo de auxiliar nas situações em que as soluções foram implantadas em momentos distintos e precisam ser integradas. Através desse recurso, é possível exportar os vínculos entre as entidades dos sistemas, realizar os ajustes necessários e importar para efetivá-los na base de dados.
Exportar
Situada na guia Migração do dashboard, a ação de exportação gera um arquivo no formato .CSV com o mapeamento existente entre os sistemas. As informações são exportadas da seguinte forma:
- Busca todos os usuários do Konviva e, para cada usuário, busca:
- Contrato ativo do colaborador pelo CPF
- Cargo
- Setor
- Matrículas vinculadas a este usuário
- Para cada matrícula encontrada busca:
- Evento/turma
- Unidade
- Curso
- Para cada curso encontrado, busca a categoria do curso
- Origem de cada entidade:
- Usuários: Ficha básica do colaborador (R034FUN)
- Cursos: Cursos de aperfeiçoamento (R128CUA)
- Turmas: Administração de eventos (R234EVN) ou Definições de turma (R134DTU)
- Matrículas: Participantes do evento (R234PAR) ou Participantes da turma (R134DRE)
- Categorias: Assuntos de curso (R128ASS)
- Cargos: Cargos (R024CAR)
- Setores: Locais do organograma (R016ORN)
- Unidades: Locais do organograma (R016ORN)
Template de exportação
| A | B | C | D | E | F | G | H | I | J | K |
|---|---|---|---|---|---|---|---|---|---|---|
| USUARIOS | IdKonviva | NomeKonviva | NumeroEmpresaSenior (NumEmp) | TipoColaboradorSenior (TipCol) | NumeroCadastroSenior (NumCad) | NomeSenior (NomFun) | CPFSenior (NumCpf) | - | - | - |
| CURSOS | IdKonviva | CodigoCursoKonviva (CodCua) | NomeCursoKonviva | CodigoCursoSenior (CodCua) | NomeCursoSenior (NomCua) | - | - | - | - | - |
| TURMAS | IdKonviva | CodigoCursoKonviva (CodCua) | NomeTurmaKonviva | CodigoEventoSenior (CodEvn) | NomeEventoSenior (NomEvn) | - | - | - | - | - |
| MATRICULAS | IdKonviva | IDUsuarioKonviva | NomeUsuarioKonviva | IDTurma | CodigoCursoKonviva (CodCua) | NomeTurmaKonviva | NomeTurmaKonviva | NomeEventoSenior (NomEvn) | CodigoPessoaSenior (CodPes) | NomePessoaSenior (NomPes) |
| CATEGORIAS | IdKonviva | NomeCategoriaKonviva (DesAss) | CodigoAssuntoSenior (CodAss) | DescricaoAssuntoSenior (DesAss) | - | - | - | - | - | - |
| CARGOS | IdKonviva | CodigoCargoKonviva | NomeCargoKonviva | EstruturaCargoSenior (EstCar) | CodigoCargoSenior (CodCar) | CodigoCargoSenior (CodCar) | NomeCargoSenior (TitCar) | - | - | - |
| SETORES | IdKonviva | OrganogramaKonviva (TabOrg) | NumeroLocalKonviva (NumLoc) | NomeSetorKonviva | OrganogramaSenior (TabOrg) | OrganogramaSenior (TabOrg) | NumeroLocalSenior (NumLoc) | - | - | - |
| UNIDADES | IdKonviva | NumeroEmpresaKonviva (NumEmp) | OrganogramaKonviva (TabOrg) | NumeroLocalKonviva (NumLoc) | NomeUnidadeKonviva | NomeUnidadeKonviva | NumeroEmpresaSenior (NumEmp) | NumeroLocalSenior (NumLoc) | NomeLocalSenior (NomLoc) | - |
| A | B | C | D | E | F | G | H | I | J |
|---|---|---|---|---|---|---|---|---|---|
| USUARIOS | IdKonviva | NomeKonviva | NumeroEmpresaSenior (NumEmp) | TipoColaboradorSenior (TipCol) | NumeroCadastroSenior (NumCad) | NomeSenior (NomFun) | CPFSenior (NumCpf) | - | - |
| CURSOS | IdKonviva | CodigoCursoKonviva (CodCua) | NomeCursoKonviva | CodigoCursoSenior (CodCua) | NomeCursoSenior (NomCua) | - | - | - | - |
| TURMAS | IdKonviva | CodigoCursoKonviva (CodCua) | NomeTurmaKonviva | CodigoCursoSenior (CodCua) | NomeCursoSenior (NomCua) | CodigoTurmaSenior (TmaCua) | - | - | - |
| MATRICULAS | IdKonviva | IDUsuarioKonviva | NomeUsuarioKonviva | IDTurma | CodigoCursoKonviva (CodCua) | NomeTurmaKonviva | CodigoCursoSenior (CodCua) | NomeCursoSenior (NomCua) | CodigoTurmaSenior (TmaCua) |
| CATEGORIAS | IdKonviva | NomeCategoriaKonviva (DesAss) | CodigoAssuntoSenior (CodAss) | DescricaoAssuntoSenior (DesAss) | - | - | - | - | - |
| CARGOS | IdKonviva | CodigoCargoKonviva | NomeCargoKonviva | EstruturaCargoSenior (EstCar) | CodigoCargoSenior (CodCar) | NomeCargoSenior (TitCar) | - | - | - |
| SETORES | IdKonviva | OrganogramaKonviva (TabOrg) | NumeroLocalKonviva (NumLoc) | NomeSetorKonviva | OrganogramaSenior (TabOrg) | NumeroLocalSenior (NumLoc) | NomeLocalSenior (NomLoc) | - | - |
| UNIDADES | IdKonviva | NumeroEmpresaKonviva (NumEmp) | OrganogramaKonviva (TabOrg) | NumeroLocalKonviva (NumLoc) | NomeUnidadeKonviva | NumeroEmpresaSenior (NumEmp) | OrganogramaSenior (TabOrg) | NumeroLocalSenior (NumLoc) | NomeLocalSenior (NomLoc) |
Importar
A importação efetiva os vínculos da base H2 conforme cada assunto. É importante ressaltar que a importação não manipula os dados de registros e as alterações nas descrições dos campos não serão efetivadas. Estes campos servem apenas para ter como base a origem da informação, sendo considerada apenas a ligação entre os sistemas.
Ao importar, o Integrador realiza algumas consistências, conforme tabela abaixo:
| Situação | Tipo | Mensagem apresentada |
|---|---|---|
| Se o registro a ser importado não existe no Konviva. | Erro | Registro não encontrado no sistema Konviva. |
| Se o registro a ser importado não existe no sistema da Senior. | Erro | Registro não encontrado no sistema Senior. |
| Se faltam parâmetros no arquivo de importação, por exemplo, o ID do registro no Konviva ou o código no sistema Senior, ou então não foi utilizado separador ;. | Erro | Registro incompleto ou no formato inválido para importação. |
| Se o registro já estava previamente integrado. | Alerta | Este vínculo já está integrado. |
| Se foi encontrado outro registro para o mesmo assunto com o identificador do Konviva repetido. | Alerta | Já foi processado um registro com este identificador do Konviva. |
| Se foi encontrado outro registro para o mesmo assunto com o identificador da Senior repetido. | Alerta | Já foi processado um registro com este identificador da Senior. |
English
Español

English
Español


