Histórico da Página
Objetivo
Permite ao associado consultar as informações referentes aos registros de débitos(comprador / avalista), títulos protestados, consultas anteriores (ACIPA), central de crédito, devoluções informadas pelo CCF – Cadastro de Cheques sem Fundos e pelos associados, cheques sustados, cheques sustados pelo motivo 21, histórico do cheque e da conta corrente consultada, consultas anteriores (SPC | Cheque), nome e endereço da agência bancária, síntese cadastral e confirmação de telefone.
Registros
- ‘CSR50‘ – Solicitação de Consulta: permite solicitar à ACIPA as consultas SCPC + SCPC | Cheque ou SCPC + SCPC | Cheque + SCPC | Score fornecendo os parâmetros necessários
- ‘CSR51‘ – Resposta da Consulta: será transmitido pela ACIPA, contendo as informações correspondentes aos parâmetros fornecidos, podendo ser sintética ou analítica
- Fluxo Transacional
Procedimentos
- Transmitir à ACIPA o registro de solicitação de consulta fornecendo os parâmetros necessários. Após a validação das informações, será transmitido pela ACIPA o registro de resposta contendo no campo código de retorno o resultado da transmissão, conforme segue:
- “0″ – Consulta concluída
- “1″ – Indica que existem mais registros a serem transmitidos
- “9″ – Consulta não efetuada
- Para acesso via Renpac/Socket: Quando Tipo de Transmissão da Resposta for “C” (Conversacional), se o código de retorno for “1″, enviar a função <enter> para receber o próximo registro. Quando Tipo de Transmissão da Resposta for “T” (Transacional), será transmissão única, com o envio de todas os registros.
Propriedades Configuráveis do Acesso
Nas propriedades do acesso deverão ser informadas as configurações para acessar o orgão como ip, porta, usuário …. exemplo dessas configurações:
Bloco de código | ||
---|---|---|
| ||
#Parametros de acesso para solicitacao da Consulta SPC ACIPA
ACIPA.TRANSACAO = CSR50
ACIPA.VERSAO = 08
ACIPA.RESERVADO_SOLICITANTE =
ACIPA.RESERVADO_ACIPA =
ACIPA.IP = 200.246.58.2
ACIPA.PORTA = 9164
ACIPA.CODIGO = 5530
ACIPA.SENHA = 317799
ACIPA.SOCKET_TIMEOUT = 3000
#Consulta -> "CIN"(INTEGRADA - SCPC + CHEQUE) / "SPC"(SCPC) / "CHEQUE"(CHEQUE)
ACIPA.CONSULTA = CIN
#Codigo da cidade. Obs: Tabela fornecida pela ACIPA
ACIPA.LOCALIDADEORIGEM =
#Tipo de Resposta -> 1 = SINTÉTICA / 2 = ANALÍTICA
ACIPA.TPRESPOSTA = 1
#Tipo de Documento -> 1 = CPF
ACIPA.TPDOCUMENTO = 1
#Tipo de Transmissão de Resposta -> C = CONVERSACIONAL(EM BLOCOS) / T = TRANSACIONAL(ÚNICA)
ACIPA.TPTRANSMISSAORESPOSTA = T |
Onde as propriedades representam:
- ACIPA.TRANSACAO= Código que será utilizado para especificar o serviço utilizado
- ACIPA.VERSAO= versão do serviço utilizado
- ACIPA.RESERVADO_SOLICITANTE – para uso do solicitante
- ACIPA.RESERVADO_ACIPA – para uso da Acipa
- ACIPA.IP – IP que será configurado para acessar o orgão
- ACIPA.PORTA – porta que será utilizada para o acesso
- ACIPA.CODIGO – Código do operador
- ACIPA.SENHA – Senha do operador
- ACIPA.CONSULTA – Tipo de consulta “CIN” (INTEGRADA – SCPC + CHEQUE) / “SPC” (SCPC) / “CHEQUE”(CHEQUE)
- ACIPA.LOCALIDADEORIGEM – Localidade de origem, tabela fornecida pela Acipa
- ACIPA.TPRESPOSTA – Tipo de resposta, valores ’1′ para consultas Sintéticas e ’2′ para Analíticas
- ACIPA.TPDOCUMENTO – Tipo de Documento, para acipa sempre informar ’1′ pois representa ‘CPF’
- ACIPA.TPTRANSMISSAORESPOSTA – Tipo de transmissão da resposta, ‘C’ – Conversacional (transmissão em blocos) ou ‘T’ – Transacional(Transmissão Única).
Preenchimento da HashMap de Entrada
Método de acesso no XML
Esse será o método usado pelo reflection da política; só tem importância para o***************************************************
Bloco de código | ||
---|---|---|
| ||
<!-- metodo de acesso para ser carregado no acesso -->
<code name="br.com.tools.acessos.acipa.Acipa"/>
|
Sufixo do Acesso
‘Sufixo para as variáveis‘ internas da política; toda vez que você acessar um item de registro, ele só poderá ser acessado acrescentado esse sufixo, e.g., ‘T111_NOMEspc‘. Isso diferencia os vários acessos disponiveis nas políticas. Será usada apenas pelo Compilador e pela política, mas deve ser informado numa construção do acesso (veja Intellector Developer API)
Bloco de código | ||
---|---|---|
| ||
<!-- esse deverah ser sufixo para ser acrescentado ao nome -->
<!-- vindo da politica, entao irei buscar na hash da politica -->
<!-- hash.getKey(cpf_acipa); um de/para para os elementos -->
<nome_acesso>acipa</nome_acesso> |
Dados de Entrada do Acesso
Para o preenchimento da hashMap de entrada, é imprescindivel entender o layout CSR60 e, devem conter as seguintes chaves de entrada (UPPERCASE); cada campo contém os seguintes dados, sendo eles validados pelo Compilador:
- ‘description‘ – propriedade da tag “field”, contem a descrição do campo
- ‘type‘ – propriedade da tag “field”, define o tipo de dado Pure Java, como String, Integer, Double, Date e Boolean.
- ‘format‘ – propriedade da tag “field”, contem o formato do dado; atualmente, só os dados de datas tem esse campo preenchido.
- ‘field‘ – tag relativa ao nome do campo, escrito em maiúsculas (não necessariamente), como por ex. ‘TPRESPOSTA‘
Bloco de código | ||
---|---|---|
| ||
<!-- contem os dados necessários para entrada no ACIPA/CSR51 -->
<entrada>
<field description="CPF do cliente consultado" type="String" format="">CPF</field>
<field description="RG do cliente consultado" type="String" format="">RG</field>
<field description="Outro documento do cliente consultado" type="String" format="">OUTRODOCUMENTO</field>
<field description="Nome do cliente consultado" type="String" format="">NOME</field>
<!-- Data de nascimento; deverah vir DDMMAAAA -->
<field description="Data de nascimento do cliente consultado" type="Date" format="ddmmyyyy">DTNASCIMENTO</field>
<!-- tipo de credito; "CH"=cheque,... -->
<field description="Tipo de crédito do cliente consultado" type="String" format="">TPCREDITO</field>
<!-- valor do credito com 2 casas decimais (00000.00) -->
<field description="Valor do crédito do cliente consultado" type="Double" format="">VLRCREDITO</field>
<field description="Endereço do cliente consultado" type="String" format="">ENDERECO</field>
<!-- data do cheque; DDMMAAAA -->
<field description="Data do cheque do cliente consultado" type="Date" format="ddmmyyyy">DTCHEQUE</field>
<!-- quantidade de dias do cheque -->
<field description="Quantidade de dias para o cheque" type="Integer" format="">DIAS</field>
<!-- identificador do request (origem) -->
<!-- >field type="String" format="">ORIGEM</field-->
<!-- "C"= CMC7; qualquer outra coisa eh cheque;simplesmente pego o CMC7 -->
<field description="CMC7 do cheque consultado" type="String" format="">CMC7</field>
<!-- TRATAREMOS AS INFOS DO CHEQUE SEPARADAMENTE -->
<!-- numero do banco -->
<field description="Banco do cliente consultado" type="String" format="">BANCO</field>
<!-- numero da agencia -->
<field description="Agência do cliente consultado" type="String" format="">AGEN</field>
<!-- numero da conta corrente -->
<field description="Conta corrente do cliente consultado" type="String" format="">CTACORRENTE</field>
<!-- digito da conta corrente -->
<field description="Dígito da conta corrente do cliente consultado" type="String" format="">DIGITOCTA</field>
<!-- numero do cheque -->
<field description="Número do cheque do cliente consultado" type="String" format="">NUMEROCHEQUE</field>
<!-- digito do cheque -->
<field description="Dígito do cheque do cliente consultado" type="String" format="">DIGITOCHEQUE</field>
<!-- FIM DADOS DO CHEQUE -->
<!-- DADOS COMUNS NO ENVIO -->
<!-- quantidade de cheques entre 01 e 24 -->
<field description="Quantidade de cheques do cliente consultado" type="Integer" format="">QTDCHEQUES</field>
<!-- valor do cheque, nao dos cheques - decimal (000000.00) -->
<field description="Valor do cheque do cliente consultado" type="Double" format="">VLRCHEQUE</field>
<!-- CEP de origem da consulta do cheque; formato NNNNNCCC -->
<field description="CEP de Origem" type="String" format="">CEPORIGEM</field>
<!-- numero do DDD -->
<field description="DDD do cliente consultado" type="String" format="">DDD</field>
<!-- numero do telefone -->
<field description="Telefone do cliente consultado" type="String" format="">TEL</field>
<!-- origem das informações caso informado CMC7 os dados bancarios serão retirados do CMC7 -->
<field description="Origem das informações bancárias" type="String" format="">ORIGEMINFORMACOES</field>
<!-- codigo do facilitador -->
<field description="Código do facilitador" type="String" format="">FACILITADOR</field>
</entrada> |
Resposta da Consulta
- Todos os registros contem seus respectivos espaços, se houverem; não existe “trim()” nos blocos lidos.
- Podem haver Registros tratados por Exceptions de InfraEstrutura
Bloco de código | ||
---|---|---|
| ||
DEBUG [main] (2008-08-04 14:19:04,819) - >> tipo110()
DEBUG [main] (2008-08-04 14:19:04,819) - >> Erro 110: TRATADO POR EXCECAO DE INFRAESTRUTURA <<
DEBUG [main] (2008-08-04 14:19:04,819) - << tipo110()
INFO [main] (2008-08-04 14:19:04,819) - retCode[0]: Consulta Concluida
ERROR [main] (2008-08-04 14:19:04,820) - java.lang.Exception: 110* DATA DO CHEQUE INVALIDA |
Tipo 110 |
---|
- indica que não existem informações para os documento solicitados
- ‘Erro 110‘: TRATADO POR EXCEÇÃO DE INFRAESTRUTURA
Tipo 120
- Nada consta para os documentos solicitados.
- ‘Erro 120:‘ TRATADO POR EXCEÇÃO DE INFRAESTRUTURA
Tipo 210
- Nada consta para os documentos solicitados.
- ‘Erro 210:‘ TRATADO POR EXCEÇÃO DE INFRAESTRUTURA
Tipo 240
- Mensagem de erro.
- Erro 240: TRATADO POR EXCEÇÃO DE INFRAESTRUTURA
Dados de Saída do Acessos
- A HasMap de saída dos acessos, seguem o mesmo princípio da entrada, exceto pelo fato de que os dados de um determinado registros, podem se repetir, nesse caso, há a presença de um ‘contador‘ para um eventual looping de tratamento pelas aplicações clientes. Cada campo contém os seguintes dados, sendo eles validados pelo Compilador:
- ‘description‘ – propriedade da tag “register”, contem a descrição do campo
- ‘type‘ – propriedade da tag “register”, define o tipo de dado Pure Java, como String, Integer, Double, Date e Boolean.
- ‘format‘ – propriedade da tag “register”, contem o formato do dado; atualmente, só os dados de datas tem esse campo preenchido.
- ‘register‘ – tag relativa ao nome do campo, escrito em maiúsculas (não necessariamente), como por ex. ‘T111_NOME‘
- Abaixo o XML de saída com o ‘contador‘.
- exemplo ‘com‘ um contador… observe que ‘counter=T125_NUMOCORRENCIAS‘ indica quantos registros, se existirem, ‘T125‘ foram retornados pelo SPC.
Bloco de código | ||
---|---|---|
| ||
<saida id="T125" counter="T125_NUMOCORRENCIAS" >
<register type="String" format="">T125_TPOCORR_</register>
<register type="String" format="">T125_CONTRATO_</register>
<register type="Date" format="ddmmyyyy">T125_DATAOCORR_</register>
<register type="Date" format="ddmmyyyy">T125_DATADISPO_</register>
<register type="String" format="">T125_MOEDA_</register>
<register type="Double" format="">T125_VALOR_</register>
<register type="String" format="">T125_SITUACAO_</register>
<register type="String" format="">T125_INFORMANTE_</register>
</saida>
|
- Exemplo ‘sem‘ um contador… neste caso, ‘counter=”"‘ indica que somente um registro, se existir, foi retornado pelo SPC
Bloco de código | ||
---|---|---|
| ||
<saida id="T211" counter="" >
<register type="String" format="">T211_CPF</register>
<register type="String" format="">T211_NOME</register>
<register type="String" format="">T211_TOTALNOMES</register>
<register type="String" format="">T211_TOTALDEVOLUCOES</register>
<register type="String" format="">T211_MOTIVO12</register>
<register type="String" format="">T211_MOTIVO13</register>
<register type="String" format="">T211_MOTIVO14</register>
<register type="String" format="">T211_MOTIVO99</register>
</saida> |
Registros Disponíveis
- “‘Tipo 111′” (ACIPA): informa a quantidade de nomes foneticamente iguais ao fornecido. Se não existir nomes iguais, esse tipo não será enviado.
- “‘Tipo 112′” (ACIPA) – Nome + Documentos.
- “‘Tipo 113′”‘ (ACIPA): indica a quantidade de ocorrências, protestos, consultas anteriores e central de crédito existentes.
- “‘Tipo 120′” (ACIPA): indica que não existem informações para os documento solicitado.
- “‘Tipo 121′” (ACIPA): relaciona os nomes foneticamente iguais ao fornecido. Se não existir nomes iguais, esse tipo não será enviado.
- “‘Tipo 122′” (ACIPA): Nome + Documentos.
- “‘Tipo 123′” (ACIPA): informa o nome do cônjuge e/ou naturalidade. Se não existir, não será enviado.
- “‘Tipo 124′” (ACIPA): relaciona as informações complementares. Se não existir, não será enviado.
- “‘Tipo 125′” (ACIPA): relaciona as ocorrências de débitos e títulos protestados. Se não existir, não será enviado.
- “‘Tipo 126′” (ACIPA): relaciona as consultas anteriores. Se não existir, não será enviado. Caso existam, serão enviadas, independente da existência de débitos no SCPC.
- “‘Tipo 127′” (ACIPA): relaciona os créditos concedidos. Se não existir, não será enviado.
- “‘Tipo 128′” (ACIPA): Cidade/UF de origem da ocorrencia.
- “‘Tipo 211′” (ACIPA | Cheque): informa a quantidade de devoluções informadas pelo CCF – Cadastro de Cheques sem Fundo. Se não existir informações, não será enviado.
- “‘Tipo 212′” (ACIPA | Cheque): informa a quantidade de cheques sustados.
- “‘Tipo 213′” (ACIPA | Cheque): informa a quantidade de cheques sustados para o banco, agência, C/C e cheque com CPF/CNPJ diferente do informado.
- “‘Tipo 214′” (ACIPA | Cheque): Talões sustados para o documento, banco e agência informados.
- “‘Tipo 215″‘ (ACIPA | Cheque): Talões sustados para o banco, agência e C/C com CPF/CNPJ diferente do informado.
- “‘Tipo 216′” (ACIPA | Cheque): indica a existência de devoluções informadas pelos associados e/ou informações complementares. Não existindo nenhum dos dois tipos de informações, não será enviado.
- “‘Tipo 217′” (ACIPA | Cheque): Consultas anteriores.
- “‘Tipo 218′” (ACIPA | Cheque): Síntese cadastral – pessoa física nome, documento e data de nascimento.
- “‘Tipo 219′” (ACIPA | Cheque): Síntese cadastral – pessoa física nome da mãe e título de eleitor.
- “‘Tipo 220′” (ACIPA | Cheque): Confirmação de telefone – Nome.
- “‘Tipo 221′” (ACIPA | Cheque): Confirmação de telefone – Endereço.
- “‘Tipo 222′” (ACIPA | Cheque): Confirmação de telefone – bairro, cep, cidade e uf.
- “‘Tipo 223′” (Cheque): Cheques sustados pelo motivo 21 (Contra-ordem ou oposição ao pagamento) Estas informações não são desabonadoras ao cliente.
- “‘Tipo 224′” (Cheque): Resumo das consultas de Cheques – Total de periodo Estas informações não são desabonadoras ao cliente.
- “‘Tipo 225′” (Cheque): resumo das consultas anteriores de cheques – quantidade e mês.
- “‘Tipo 226′” (ACIPA | Cheque): consta para o banco, agência e conta corrente informados outros documentos.
- “‘Tipo 228′” (ACIPA | Cheque): Endereço da agência bancária – nome.
- “‘Tipo 229′” (ACIPA | Cheque): Endereço da agência bancária – endereço e bairro.
- “‘Tipo 230′” (ACIPA | Cheque): Endereco da agência bancária – cidade, UF, CEP e praça.
- “‘Tipo 241′” (ACIPA | Cheque): informa o nome, data de nascimento e documentos existentes.
- “‘Tipo 242′” (ACIPA | Cheque): relaciona as devoluções informadas pelo CCF – Cadastro de Cheques sem Fundo. Se não existir informações, não será enviado.
- “‘Tipo 243′” (ACIPA | Cheque): indica cheque sustado para o documento, banco, agência e cheque informado.
- “‘Tipo 244′” (ACIPA | Cheque): indica cheque sustado para o banco, agência C/C e cheque com CPF/CNPJ diferente do informado.
- “‘Tipo 245′” (ACIPA | Cheque): Talao sustado para o documento, banco e agencia informados.
- Tipo “’246′” (ACIPA | Cheque): indica cheque sustado para o banco, agência C/C e cheque com CPF/CNPJ diferente do informado.
- “‘Tipo 247′” (ACIPA | Cheque): relaciona as informações complementares. Se não existir, não será enviado.
- “‘Tipo 248′” (ACIPA | Cheque): indica cheque sustado para o documento, banco, agência e cheque informado
- “‘Tipo 249′” (ACIPA | Cheque): relaciona as consultas anteriores, totalizadas por tipo de informação: cheques anteriores; cheques no dia; cheques pré-datados, quando as informações pertencerem ao próprio consulente. Se não existir não será enviado.
- “‘Tipo 250′” (ACIPA | Cheque): Síntese Cadastral – pessoa física nome, documento e data de nascimento.
- “‘Tipo 251′” (ACIPA | Cheque): Síntese Cadastral – pessoa física nome da mãe e título de eleitor.
- “‘Tipo 252′” (ACIPA | Cheque): Confirmação de telefone – nome.
- “‘Tipo 253′” (ACIPA | Cheque): Confirmação de telefone – endereço.
- “‘Tipo 254′” (ACIPA | Cheque): Confirmação de telefone – bairro, cep, cidade e uf.
- “‘Tipo 255′” (ACIPA | Cheque): indica cheque sustado para o documento, banco, agência e cheque informado.
- “‘Tipo 256′” (ACIPA | Cheque): resumo das consultas anteriores de cheques total e período.
- “‘Tipo 257′” (Cheque): Resumo das consultas anteriores de Cheques – qtde/mes.
- “‘Tipo 258′” (ACIPA | Cheque): indica que para o banco, agência e conta corrente informados, consta outro documento diferente do informado. Se não existir informações, não será enviado.
- “‘Tipo 260′” (ACIPA | Cheque): Nome da agência Bancária.
- “‘Tipo 261′” (ACIPA | Cheque): Endereco da agência Bancária.
- “‘Tipo 262′” (ACIPA | Cheque): Endereco da agência Bancária cidade, uf, cep e praça.