====== WEB-Service do módulo Receitas ======
===== Informações Gerais =====
==== Serviço ====
| Nome: | Web Service do módulo Receitas do SIOP |
| Nome na interface: | WSReceita |
| Início da operação: | 13/05/2014 |
| Endereço do WSDL - Testes | https://testews.siop.gov.br/services/WSReceita?wsdl |
| Endereço do WSDL - Produção | https://webservice.siop.gov.br/services/WSReceita?wsdl |
==== Objetivo ====
Fornecer uma interface que possibilite a interoperabilidade entre os sistemas governamentais e o SIOP para a transmissão de dados referentes à captação de base externa para os cenários de arrecadação de receitas.
===== Operações =====
Nesta seção estão relacionadas as operações disponibilizadas pelo serviço. A figura abaixo ilustra como essas operações devem ser utilizadas na obtenção das informações necessárias para a construção da estrutura de dados que deve ser enviada para o SIOP.
{{ :webservices:wsreceita:ws_receitas_operacoes.png?700 |}}
==== Captar Base Externa ====
Operação para cadastro e de base externa.
**Nome da operação na interface do serviço:**
captarBaseExterna
**Parâmetro(s) de entrada:**
|Parâmetro|Tipo (tamanho)|Observações|
|credencial|CredencialDTO|Credencial do usuário|
|captacaoBaseExternaDTO|CaptacaoBaseExternaDTO| |
**Tipo de Retorno:**
RetornoCaptacaoBaseExternaDTO
**Exemplo:**
Requisição:
32
***
WSINFRASIG
466
21230000
26101
149
justificativa
metodologia
memoriaDeCalculo
2014
444
Resposta:
A6A6342E22DF78A9F8B50364669F1F5D
true
466
21230000
26101
149
justificativa
metodologia
memoriaDeCalculo
2014
444.0
João da Silva
0
João da Silva
==== 2.2 Consultar Detalhes por Grupo de Natureza de Receita ====
Operação de exclusão de pedido de alteração orçamentária.
**Nome da operação na interface do serviço:**
consultarDetalhesPorGrupo
**Parâmetro(s) de entrada:**
|Parâmetro|Tipo(tamanho)|Observações|
|credencial|CredencialDTO|Credencial do usuário|
|codigoCaptacaoBaseExterna|Integer| |
|grupoNaturezaReceita|String(5)| |
**Tipo de Retorno:**
RetornoCaptacaoDetalheBaseExternaDTO
**Exemplo:**
Requisição:
32
***
WS-SISTEMA
466
40000
Resposta:
F610A7F31A51EAEE8648CEB1EDB02D70
true
22120102
74101
160
16000201
74101
159
16000201
74101
173
16000201
74101
160
19210600
74101
160
16000201
25101
160
19159901
74101
160
==== 2.3 Consultar Disponibilidade de Captação de Base Externa ====
**Nome da operação na interface do serviço:**
consultarDisponibilidadeCaptacaoBaseExterna
**Parâmetro(s) de entrada:**
|Parâmetro|Tipo(tamanho)|Observações|
|credencial|CredencialDTO|Credencial do usuário|
**Tipo de Retorno:**
RetornoCaptacaoBaseExternaDTO
**Exemplo:**
Requisição:
32
***
WS-SISTEMA
Resposta:
948F90F1FA0BDB402709427F0BE5886C
true
466
Descricao da Captacao Disponivel
90000
2014
true
2014-05-01T00:00:00-03:00
2014-12-31T00:00:00-02:00
90000
2015
false
90000
2016
false
90000
2017
false
20000
2014
true
2014-05-01T00:00:00-03:00
2014-12-31T00:00:00-02:00
20000
2015
false
20000
2016
false
20000
2017
false
===== Estruturas de Entrada/Saída e Retorno =====
As informações que trafegam pelo serviço são organizadas em estruturas de dados que atuam como entrada (parâmetros) e retorno das operações. Enquanto os dados são manipulados pelos sistemas, seja nos clientes ou no servidor, essas informações ficam alocadas em entidades que, no contexto de web services, podem ser chamadas de Objetos de Transferência de Dados, ou DTOs (sigla de Data Transfer Objects). Um DTO é uma classe de objetos que descreve os atributos (e as operações de atribuição e consulta de seus valores) de determinado conceito envolvido no domínio de um problema. No momento da comunicação, seja na requisição ou na resposta, os DTOs são transformados em estruturas XML formatadas de acordo com a especificação contida no documento descritor do web service (WSDL).
As linguagens de programação modernas possuem ferramentas que automatizam o processo de construção dos DTOs a partir do WSDL, bem como bibliotecas com funcionalidades que tornam transparente para o desenvolvedor o processo de tradução de DTO para XML e vice-versa.
**Entradas**
==== CaptacaoBaseExternaDTO ====
|Atributo|Tipo|Observações|
|codigoCaptacaoBaseExterna|Integer|Código da captação base externa. Ver operação Consultar Disponibilidade de Captação de Base Externa.|
|descricao|String| |
|detalhesBaseExterna|List| |
|disponibilidades|List|Não preencher. Usado apenas como retorno de algumas operações.|
==== CredencialDTO ====
Esta estrutura é composta pelas informações necessárias para que a aplicação cliente se identifique junto ao serviço. A credencial a ser utilizada nos web services do SIOP é específica para esse fim e não é válida para acessar a aplicação web.
|Atributo|Tipo(tamanho)|Observações|
|usuario|Texto|Login do usuário no SIOP|
|senha|Texto|Hash MD5 da senha do usuário no SIOP|
|perfil|Inteiro|Perfil com o qual o usuário deseja realizar determinada operação.|
==== CaptacaoDetalheBaseExternaDTO ====
|Atributo|Tipo(tamanho)|Observações|
|codigoNaturezaReceita|String(8)| |
|codigoUnidadeRecolhedora|String(5)| |
|subNatureza|String(3)| |
|justificativa|String(min=1, max=2000)| |
|metodologia|String(min=1, max=2000)| |
|memoriaDeCalculo|String(min=1, max=2000)| |
|valoresBaseExterna|List| |
|versao|Integer|Não preencher. Usado apenas como retorno de algumas operções.|
|usuarioInclusao|String(min 3)|Não preencher. Usado apenas como retorno de algumas operções.|
|usuarioAlteracao|String(5)|Não preencher. Usado apenas como retorno de algumas operções.|
==== CaptacaoValorBaseExternaDTO ====
|Atributo|Tipo(tamanho)|Observações|
|exercicio|Integer| |
|valor|Numeric(16,2)| |
|usuarioInclusao|String|Não preencher. Usado apenas como retorno de algumas operções.|
|usuarioAlteracao|String|Não preencher. Usado apenas como retorno de algumas operções.|
==== DisponibilidadeCaptacaoBaseExternaDTO ====
|Atributo|Tipo(tamanho)|Observações|
|grupoNaturezaReceita|String(5)| |
|exercicio|Integer| |
|abertoParaCaptacacao|boolean| |
|inicioDisponibilidade|Date| |
|fimDisponibilidade|Date| |
**Retornos**
==== RetornoCaptacaoBaseExternaDTO ====
|Atributo|Tipo(tamanho)|Observações|
|captacoesBaseExterna|List| |
|sucesso|boolean|Indica se a requisição foi processada com sucesso.|
|mensagensErro|List|Contém a lista de mensagens de erro nos casos em que sucesso retornar valor igual false.|
==== RetornoCaptacaoDetalheBaseExternaDTO ====
|Atributo|Tipo(tamanho)|Observações|
|detalhesCaptacaoBaseExterna|List| |
|sucesso|boolean|Indica se a requisição foi processada com sucesso.|
|mensagensErro|List|Contém a lista de mensagens de erro nos casos em que sucesso retornar valor igual false.|