Na procedure "p-calcula-despesas", o sistema comparava o código da modalidade com o campo "cd-mediocupa" da tabela "paramecp". O correto é comparar o campo "tipo de medicina".
Só eram considerados movimentos em que o campo "cd-tipo-pagamento", das tabelas "movimen-proced-nota" e "movimen-insumo-nota", possuía valor zero. Quando ocorria glosa, esse campo poderia possuir valor "1" (desconsiderar pagamento), e ainda assim existir valor pago.
Solução:
Realizadas alterações no programa API-GERA-DADOS-SIP.P, para a solução das situações descritas.