Criar propriedades de sincronização que copiem dados em registros associados
Para que uma mudança em um campo do Negócio atualize outro campo do Contato, o caminho é Desenvolvimento → Scripts: você escreve o código e o conecta ao evento de ciclo de vida do objeto. O que segue descreve o módulo tal como aparece no aplicativo.
O módulo Scripts
Seção intitulada “O módulo Scripts”A tabela de Scripts lista, para cada um: Script (nome), Ativo, Hooks de ciclo de vida, Variables, Tarefa programada e Git.

Hooks de ciclo de vida
Seção intitulada “Hooks de ciclo de vida”Ao editar um script, o campo Hooks de ciclo de vida é um seletor múltiplo de objetos do sistema: um script real pode ter Company, Contact e Deal selecionados ao mesmo tempo. O texto de ajuda é explícito: “The script will run when the specified lifecycle event is triggered” (o script roda quando o evento de ciclo de vida especificado é disparado). Ou seja, um mesmo script pode reagir a mudanças em vários objetos e, dentro do seu código, ler um campo de um e escrevê-lo em outro — é isso que torna a sincronização possível.

O que mais um script oferece
Seção intitulada “O que mais um script oferece”Além dos hooks de ciclo de vida, cada script tem:
- Code (obrigatório) — um editor de texto com JavaScript livre. Um script real pode usar seu próprio
EventManagerpara registrar handlers por nome de evento (Events.on('ApiRun', ...)), não só por mudança de objeto. - Run on quote calculate — uma chave que, se ativada, executa o script uma vez por cada
Quote.calculatecom a cotação completa. - Variables — variáveis próprias do script, separadas do código.
- Tarefa programada — com sua própria periodicidade, para rodar o script em um horário em vez de (ou além de) por evento.
- Git — um repositório vinculado (por exemplo
https://github.com/.../hook-oxohotel.git), para versionar o código fora do Prolibu.
Perguntas frequentes
Com um Script em Desenvolvimento → Scripts, conectado ao hook de ciclo de vida dos objetos envolvidos.
Com Hooks de ciclo de vida — você escolhe os objetos (por exemplo Company, Contact, Deal) e o script roda quando ocorre um evento de ciclo de vida em qualquer um deles.
Sim. O campo Code é JavaScript livre; existem scripts reais que sincronizam catálogos e cotações com sistemas externos, não só entre registros do Prolibu.
Este artigo foi útil?
Obrigado pelo seu feedback!