Estas são funções auxiliares disponíveis para uso nos plugins. Antes de utilizá-las você deve obter o endereço das mesmas conforme os códigos de exemplo.

AlocarBuffer

Objetivo

Aloca um buffer, copia os caracteres de uma string terminada em zero e retorna um ponteiro para o buffer.

(aviso) O buffer retornado deverá ser desalocado usando LiberarBuffer(). Quem recebe esse buffer no retorno de uma função é que deve fazer isso.

Parâmetros
ParametroDescrição
 Buffer

Sequencia de caracteres (wide) terminada por zero.

Retorno

O novo buffer alocado com a cópia do conteúdo do buffer original.

AssinarEvento

Objetivo

Assina um evento do Colibri. (informação) Saiba mais em Eventos disponíveis.

Esta função é recebida como parâmetro em RegistrarAssinaturas().

As assinaturas de eventos devem ocorrer durante a chamada a RegistrarAssinaturas().

Parâmetros


ParametroDescrição
umPluginNome do plugin.
umEvento

Tipo do evento assinado. Consulte Eventos do Colibri

Retorno
Sem retorno

Callback

Objetivo

Permite disparar um evento de mensagem para dentro do Colibri .

Parâmetros
ParametroDescrição
umPluginNome do plugin.
umEvento

Tipo do evento.

umContextoJSON com o conteúdo da mensagem
Retorno

Nenhum

GravarConfig

Objetivo

Grava uma configuração do plugin. As configurações ficam custodiadas no Colibri, mas devem ser mantidas pelo plugin.

Parâmetros
ParametroDescrição
umPlugin

Nome do plugin 

umaConfig

Identificador da configuração.
Limite: 60 caracteres no conjunto [A-Z, a-z, 0-9, _]

idMaquina

ID da máquina a que se aplica a configuração
Se for passado 0 (zero), esta configuração se aplica a todas as maquinas que utilizam o plugin

umValor

Valor da configuração.
Pode-se utilizar None para apagar a configuração.

Retorno

Nenhum

GravarHistorico

Objetivo

Grava um registro na tabela de histórico da operação.

Parâmetros
ParametroDescrição
plugin

Nome do plugin 

operacaoId

Identificação da operação de venda. Este parâmetro é obrigatório pois é parte da chave primaria da tabela.

vendaId

Identificação da venda. (Este parâmetro é opcional. Usar uma string quando não for aplicável.)

descricao

Descrição do evento que gerou o histórico.

detalhesInformações adicionais sobre o evento.
funcIdid do funcionário logado (se passar 0, assume-se o funcionário logado no POS no momento da chamada)
funcAutorizouIdid do funcionário que autorizou a ação (se passar 0, assume-se o funcionário que concedeu o privilégio no momento da chamada)
Retorno

Nenhum

LiberarBuffer

Objetivo

Liberar um buffer alocado com AlocarBuffer

Parâmetros
ParametroDescrição
Buffer

Buffer alocado com AlocarBuffer 

Retorno

Nenhum

MostrarMensagem

Exibe uma mensagem com o aspecto visual do Colibri. 
(informação) Disponível a partir da versão 1001 do gerenciador de plugins
Parâmetros
plugin

Nome do plugin (exceto .net)

dados

JSON com os dados da mensagem

Retorno

Inteiro com o identificador do botão clicado para fechar a mensagem

RetornoEquivale aDescrição
1IDOKBotão OK
2IDCANCELBotão Cancelar
6IDYESBotão Sim
7IDNOBotão Não

MostrarTeclado

Exibe um teclado para coletar dados com o aspecto visual do Colibri.
(informação) Disponível a partir da versão 1001 do gerenciador de plugins.
Parâmetros
plugin

Nome do plugin (exceto .Net)

dados

JSON com os dados do teclado

Retorno

JSON com os dados coletados no teclado

ChaveTipoDescrição
retornoBooleano

True se o diálogo foi fechado OK
False se o diálogo foi cancelado

respostaTexto

Texto coletado no teclado, ou texto default, se cancelado.

MostrarMenu

Exibe um menu dinâmico para coletar uma opção numérica com o aspecto visual do Colibri.
(informação) Disponível a partir da versão 9.5.6 do Colibri POS 
Parâmetros
plugin

Nome do plugin (exceto .Net)

dados

JSON com os dados do menu

Retorno

Inteiro com o índice numérico do item escolhido no menu.

ObterConfigs

Objetivo

Obtém todas as configurações associadas ao plugin e à maquina

Parâmetros
ParametroDescrição
um_plugin

Nome do plugin


uma_maquina

ID da máquina.
Se for passado 0 (zero), devolve as configurações para a máquina vigente

Retorno

Retorna um JSON com as configurações do plugin para a máquina. As configurações aplicáveis a todas as máquinas também são retornadas com "maquina_id": 0.

(informação) Caso exista uma configuração com mesmo nome para todas as máquinas e para a máquina vigente, será retornada a configuração da máquina. Isto permite aplicar uma configuração para todas as máquinas e exceções por máquina.

(aviso) O valor de retorno deve ser desalocado com LiberarBuffer().

{
  "configs": {
    "nome_config_1": {
      "maquina_id": 1, 
      "valor": "valor_config_1"
    },
    "nome_config_2": {
      "maquina_id": 1, 
      "valor": "valor_config_2"
    },
    "nome_todas_maquinas": {
      "maquina_id": 0, 
      "valor": "valor_config_todas_maquinas"
    }
  }
}

ObterFuncao

Objetivo

Obtém uma função do Colibri.

Esta função é recebida como parâmetro em AtribuirObtencaoDeFuncoes().

O ponteiro desta função pode ser guardado para obter-se funções posteriormente.

Parâmetros
ParametroDescrição
nomeFuncao

Nome da função a ser obtida

Retorno

Ponteiro da função solicitada ou nulo, caso não seja encontrada uma função com esse nome.

VerificarPermissao

Objetivo

Verifica se o usuário atual tem essa permissão.

Se o usuário atual não tem permissão e o parâmetro deveElevar = 1, solicita elevação de privilégio com a digitação de outro usuário que tenha a permissão.

Parâmetros
ParametroDescrição
umPlugin

Nome do plugin 

umGUIDdePermissao

Identificador da permissão a ser testada.

deveElevar

Se for 1 indica que o sistema deve solicitar elevação para um usuário que tenha a permissão

Retorno

RetornoSignificado
1

Usuário fornecido possui a permissão

0Usuário fornecido não possui a permissão
-1Cancelada a digitação do usuário
-2Erro ao obter o usuário

VerificarPermissaoEx

Objetivo

Utilize esta função em vez da anterior se precisar mais informações sobre quem esta logado e quem autorizou algum acesso. Ela é idêntica a anterior, mas retorna um json contendo mais informações. 

Parâmetros
ParametroDescrição
umPlugin

Nome do plugin 

umGUIDdePermissao

Identificador da permissão a ser testada.

deveElevar

Se for 1 indica que o sistema deve solicitar elevação para um usuário que tenha a permissão

Retorno
{
  "descricao": "Permite cancelar um item",  
  "tem_permissao": true,
  "func_id": 1,
  "func_autorizou_id": 2
}