Recursos avançados de parametrização (plugando funções / scripts de customização)

Os seguintes tópicos são abordados nesse capítulo:

[1] – Plugando script de cálculo customizados no contexto do orçamento
[2] – Plugando script de cálculo customizados no contexto do faturamento
[3] – Plugando função java customizada de busca de contas em aberto de pacientes
[4] – Plugando função java de customização do cálculo do faturamento
[5] – Plugando script de customização das rotinas de geração do TISS


[1] – Plugando script de cálculo customizados no contexto do orçamento

O permite que seja implementadas customizações sobre as rotinas de cálculo de orçamento através de “scripts”. Para ativar um script de customização no contexto do cálculo de orçamento bastará valorar a coluna denominada “ID Scritp Orçamento” (IDBUDGETSCRIPT) no cadastro de “Pessoa Jurídica” do IW (interface F01014). Após o processamento normal do cálculo do DOC o IW irá executar o script associado à Operadora passando o ID do DOC gerado no parâmetro $P(1).


[2] – Plugando script de cálculo customizados no contexto do faturamento

O permite que seja implementadas customizações sobre as rotinas de faturamento através de “scripts”. Para ativar um script de customização no contexto do cálculo de faturamento bastará valorar a coluna denominada “ID Scritp Faturamento” (IDPAYMENTSCRIPT) no cadastro de “Pessoa Jurídica” do IW (interface F01014). Após o processamento normal do cálculo do DOC o IW irá executar o script associado à Operadora passando o ID do DOC gerado no parâmetro $P(1).



[3] – Plugando função customizada de busca de contas em aberto de pacientes

O IW permite que seja customizado o método de captura da relação de contas abertas para fechamento. Para ativar essa funcionalidade os seguintes parâmetros globais devem ser devidamente valorados:


FIN_BILLING_SEARCH_FUNCTION:
Esse parâmetro permite endereçar qual “comando sql” ou “função java” customizada que será executada no lugar do comando de pesquisa nativo do IW para cada “Tipo de fonte pagadora”. Esse parâmetro deve ser valorado de acordo com a seguinte convenção:

<TipoFontePagadora_1>:<id_ifrsqlcommand_1>|<TipoFontePagadora_2>:<id_ifrsqlcommand_2|.....|<TipoFontePagadora_3>:<id_ifrsqlcommand_3>|<TipoFontePagadora_4>:<id_ifrsqlcommand_4>|

Onde :

Tipo Fonte Pagadora: Corresponde ao keyindex de cada tipo de fonte pagadora. (vide ilustração mais abaixo)
id_ifrsqlcommand : Corresponde a um ID de registro na tabela IFRSQLCOMMAND que será utilizado como fonte ou do “comando sql customizado” ou de “uma função plugada java” customizados que serão executados quando o usuário clicar no botão “Pesquisar” da primeira aba da F01126. Nota: Caso em um mesmo registro da IFRSQLCOMMAND exista a designação tanto de um comando SQL quanto a designação de uma função plugada java o sistema irá executar a função plugada java (desconsiderando o comando sql).

A figura a seguir ilustra as convenções de valores de keyindex para cada tipo de fonte pagadora:




Nota: Não há necessidade preenchimento de valores para todos os tipos de fonte pagadora. Apenas para aqueles tipos de fonte pagadora para os quais o comando de pesquisa deverá ser customizado podem ser referenciados na valoração desse parâmetro. Por exemplo, se desejarmos customizar a pesquisa de contas a fechar somente para “Tipo de fonte pagadora” = “Seguradora” poderemos valorar esse parâmetro da seguinte forma: FIN_BILLING_SEARCH_FUNCTION = 0:391 . Nesse caso, quando o usuário selecionar “Tipo fonte pagadora” = “Seguradora” na primeira a aba da F01126 e clicar no botão “Pesquisar” o sistema irá executar o comando Sql ou função plugada que estiver cadastrado .

Para proceder o cadastramento do registro na tabela IFRSQLCOMMAND de endereçamento do comando sql / função plugada java customizada notem a presença de um botão denominado “Função Pesquisa” na figura acima (esse botão é exibido “somente para usuários que tenham status de “Administrador” no IW. Quando acionamos esse botão o IW irá lançar a caixa de diálogo F01456 que ilustramos abaixo:



Nota: Executamos um duplo clique com botão esquerdo do mouse para colocar o gride no modo tabela para facilitar a visualização das colunas.


Notas Técnicas:

(a) Conforme já foi descrito, as informações exibidas nessa caixa de diálogo ficam armazenadas na tabela IFRSQLCOMMAND do IW.

(b) Dependendo da seleção que realizarmos no combo box “Tipo Fonte Pagadora” o IW irá automaticamente comutar o keyindex de filtragem na IFRSQLCOMMAND. Ou seja, se posicionarmos o combo box “Tipo fonte pagadora” na posição “Seguradora” e clicarmos no botão “Função Pesquisa” o sistema irá exibir na pesquisa do gride na F01456 somente registros relacionáveis a esse tipo de fonte pagadora. Se alterarmos a seleção no combo box “Tipo fonte pagadora” para “Pacientes por seguradora” e clicarmos em seguida no mesmo botão “Função Pesquisa” veremos os registros exibidos na F01456 serão diferentes. O mesmo vale para o “cadastramento” de registros através da F01456 , ou seja, se estivermos com o combo box “Tipo fonte pagadora” posicionado em “Seguradora” e clicarmos no botão “Função Pesquisa” e efetivarmos um registro nessa caixa de diálogo, esse registro estará automaticamente associado ao tipo de fonte pagadora = “Seguradora””.

NOTA: O que irá determinar de fato, qual registro será considerado “em tempo de execução” para fornecer o comando sql ou função plugada customizada será o valor do parâmetro FIN_BILLING_SEARCH_FUNCTION. Notem que através do botão “Função Pesquisa” poderemos inclusive cadastrar mais de um comando sql / função plugada java customizada para cada tipo de fonte pagadora (isso será útiil em tempo de “desenvolvimento de novas versões de função plugada” . Mas o registro efetivamente ativo será aquele endereçado pelo parâmetro FIN_BILLING_SEARCH_FUNCTION.


Para cadastrar um registro na IFRSQLCOMMAND bastará clicarmos no botão “Novo” ilustrado acima e fornecermos valores para as seguintes colunas:

Nome do filtro: Forneça um nome claro para o filtro (essa informação meramente textual para fins de registro).

Descrição: Forneça uma descrição sucinta do conceito implementado pelo filtro customizado (também tem uso apenas para fins de documentação).

Comando sql do filtro: Escreve diretamente nesse atributo o comando sql customizado a ser executado.

Parâmetro: Cadastre nesse atributo os parâmetros que serão promptados ao usuário no momento da execução da pesquisa.

ID Função: Valores esse atributo com o ID de uma função java previamente cadastrada no IW (**).


(**) Para cadastrar funções java utilize a interface F00153 que ilustramos abaixo:



Para efetivar o cadastramento de funções no contexto de “Pesquisa” no “Faturamento” valore as linhas do gride da F0153 da seguinte forma:

Ativo = sim
Id: Deixe em branco (será valorado automaticamente pelo sistema)
Referência: Deixe em branco
Nome: Forneça um nome para função plugada
Descrição: Forneça uma descrição para a função plugada.
Texto: Valore esse atributo com o “código fonte java” da função plugada (não existe limite de caracteres para esse atributo).
Seq: Valore com valor default = 1
Ativo: Valore com “sim”.
Nome Tabela: Deixe em branco.




[4] – Plugando função java de customização do cálculo do faturamento

O IW permite que sejam configuradas “funções plugadas java” para customização das rotinas de faturamento. Para ativar essa funcionalidade o parâmetro global denominado FIN_BILLING_UPD_FUNCTION_MODEL deverá ser ativado no IW.

FIN_BILLING_UPD_FUNCTION_MODEL
: Quando esse parâmetro existir e estiver valorado com 1 o IW irá habilitar o processamento de função plugada no contexto de faturamento. O ID da função plugada propriamente dita (ID da função na tabela GLBBEANSHELL) a ser executada deverá ser associada à Operadora no cadastro de “Pessoa Jurídica” do IW ( F01014 , coluna denominada “Função Plugada Faturamento” (IDPAYMENTFUNCTION)). Nessas condições (parâmetro ativo e existência de função java associada à Operadora) , no pós processamento do faturamento (execução da transação “Gerar Doc” na interface F01126) o IW irá acionar a função plugada associada à Operadora passando como parâmetro o ID do Doc faturamento gerado no parâmetro $P(1). IMPORTANTE: (a) Quando esse parâmetro estiver ativo e existir função plugada associada à operadora isso implicará em executar o serviço de cálculo de faturamento em “modo online” mesmo que esse esteja configurado para processamento em batch.

IMPORTANTE : A ativação desse parâmetro habilita também uma mudança na interface de geração de documento na condição de pesquisa na primeira aba com “Tipo de fonte pagadora” = "Pacientes por seguradora" conforme ilustrado a seguir:


Notem a presença de uma primeira coluna o gride denominada “Selecionar”. Essa coluna contem uma caixa de checagem através da qual o usuário poderá selecionar “vários pacientes” para calculo do faturamento e clicar no botão “Gerar Doc” ou “Simular Doc”. No exemplo acima selecionamos um grupo de pacientes para fechamento de conta e clicamos no botão “Gerar Doc”. Isso faz com que o IW abre uma caixa de diálogo através da qual o usuário poderá acompanhar o andamento do cálculo do faturamento dos pacientes selecionados. A imagem a seguir ilustra essa caixa de diálogo:


Notas Técnicas:

(a) Nesse processo o IW irá executar a chamada do “serviço” que realiza o cálculo do faturamento sequencialmente , iniciando pelo primeiro paciente ticado até concluir o faturamento de cada paciente selecionado. Caso ocorram erros no cálculo da fatura de algum paciente será exibida informação indicativa do erro na caixa de diálogo de acompanhamento ilustrada acima.

(b) Nos casos em que o usuário selecionar uma única linha no gride e clicar no botão “Gerar Doc” o IW irá acionar uma caixa de diálogo simples, solicitando a data de fechamento da fatura do paciente selecionado.

(c) A incidência de algum erro no processamento da função plugada java “não provocará o roll back” da geração do DOC. Ou seja, DOC será gerado e permanecerá como um DOC válido no IW. É recomendável , como método de programação que qualquer exceção importante seja gravada em coluna estendida na tabela CAPPPAYMENT e que essa coluna fique visível aos usuários.




[5] – Plugando script de customização das rotinas de geração do TISS

O permite que seja implementadas customizações sobre as rotinas de geração do TISS (interface F01447) através de “script”. Para ativar um script de customização no contexto de geração do TISS bastará valorar a coluna denominada “ID Script TISS Operadora” (IDLOADTABLE) no cadastro de “Pessoa Jurídica” do IW (interface F01014). Após o processamento normal da geração do TISS o IW irá executar o script associado à Operadora passando o ID do lote TISS gerado no parâmetro $P(1).