[[:ajuda|{{ :ajuda:gsan-arrecadacao.png?nolink&200|}}]]
====== Inserir Guia de Devolução ======
O objetivo desta funcionalidade é inserir uma guia de devolução nas bases de dados do GSAN. Ela pode ser acessada via **Menu de sistema**, no caminho: **[[:Ajuda:pagina_inicial|GSAN]] > [[:Ajuda:Arrecadação]] > [[:ajuda:Arrecadação:Devolução]] > [[:ajuda:Arrecadação:Guia de Devolução]] > Inserir Guia de Devolução**.
Feito isso, o sistema visualiza a tela a seguir:
==== Observação ====
^Informamos que os dados exibidos nas telas e relatórios a seguir são fictícios, e não retratam informações de clientes.^
{{ :ajuda:arrecadacao:iinserir_guia_devolucao.jpg?nolink |}}
Acima, informe obrigatoriamente número do **Registro de Atendimento (R.A.)**, ou o número da **Ordem de Serviço (O.S.)**. Caso deseje pesquisá-los, clique em {{:ajuda:lupa.gif?nolink|}}. Em seguida, o sistema exibe as telas de pesquisa, respectivamente, **[[=ajuda:pesquisar_registro_de_atendimento|Pesquisar Registro de Atendimento]]** e **[[=ajuda:pesquisar_ordem_de_servico|Pesquisar Ordem de Serviço]]**.
Caso o R.A. tenha sido informado, o sistema preenche a matrícula do imóvel ou código do cliente. Caso tenha sido informada a Ordem de Serviço, o sistema obtém o número do Registro de Atendimento através dessa O.S., exibindo o R.A. sem permitir alteração. Informe os demais campos necessários à inclusão da guia de devolução e clique no botão {{:ajuda:inserir.png?nolink|}}. Para detalhes sobre o preenchimento dos campos clique **[[=ajuda:arrecadacao:inserir_guia_de_devolucao#preenchimento_dos_campos|AQUI]]**.
Antes de inserir a nova guia, o sistema efetua algumas validações:
* Verificar existência do registro de atendimento:
* Caso não exista o Registro de Atendimento, o sistema exibe a mensagem: //Registro de Atendimento inexistente//.
* Validar registro de atendimento:
* Caso o Registro de Atendimento não esteja associado a um imóvel ou a um cliente, o sistema exibe a mensagem: //Não há Imóvel nem Cliente associado ao Registro de Atendimento <>//.
* Caso a situação do Registro de Atendimento seja encerrada, o sistema exibe a mensagem: //Registro de Atendimento está encerrado//.
* Caso o tipo de solicitação do Registro de Atendimento não permita a geração de guia de devolução, o sistema exibe a mensagem: //Especificação do Tipo de Solicitação do Registro de Atendimento não permite a geração de Guia de Devolução//.
* Verificar existência da ordem de serviço:
* Caso não exista a ordem de serviço, o sistema exibe a mensagem: //Ordem de Serviço inexistente//.
* Validar ordem de serviço:
* Caso a Ordem de Serviço não esteja associada a um Registro de Atendimento, o sistema exibe a mensagem: //Ordem de Serviço não está associada a um Registro de Atendimento//.
* Caso a Ordem de Serviço esteja associada a um Registro de Atendimento, e o Registro de Atendimento não esteja associado a um imóvel ou a um cliente, o sistema exibe a mensagem: //Não há Imóvel nem Cliente associado ao Registro de Atendimento da Ordem de Serviço <>//.
* Verificar a existência de dados:
* Caso não exista a tabela na base de dados, o sistema exibe a mensagem: //Tabela <> inexistente// e cancela a operação.
* Caso a tabela esteja sem dados, o sistema exibe a mensagem: //Tabela <> sem dados para seleção// e cancela a operação.
* Verificar tipo do documento com registro de atendimento:
* Caso o tipo do documento selecionado seja conta ou débito a cobrar, e o Registro de Atendimento informado não esteja associado a um imóvel, o sistema exibe a mensagem: //Não há Imóvel associado ao Registro de Atendimento <>. Não é possível selecionar este tipo de documento//.
* Verificar existência da localidade:
* Caso a localidade não exista, o sistema exibe a mensagem: //Localidade inexistente//.
* Verificar existência da conta:
* Caso a conta não exista, o sistema exibe a mensagem: //Conta inexistente//.
* Verificar localidade da conta:
* Caso a localidade da conta esteja diferente da localidade do imóvel, o sistema exibe a mensagem: //A localidade <> da Conta difere da localidade <> do Imóvel <>//.
* Caso contrário, o sistema atribui o valor da conta ao campo Valor da Devolução e permite alteração.
* Verificar existência da guia de pagamento:
* Caso a guia de pagamento não exista, o sistema exibe a mensagem: //Guia de Pagamento inexistente//.
* Verificar imóvel ou cliente da guia de pagamento:
* Caso o Registro de Atendimento informado esteja associado a um imóvel:
* Caso a guia de pagamento não esteja associada a um imóvel, o sistema exibe a mensagem: //Esta Guia de Pagamento não está associada a um imóvel//.
* Caso contrário:
* Caso o imóvel da guia de pagamento esteja diferente do imóvel do Registro de Atendimento, o sistema exibe a mensagem: //O Imóvel <> da Guia de Pagamento não corresponde ao Imóvel <> do Registro de Atendimento//.
* Caso contrário, caso a localidade da guia de pagamento esteja diferente da localidade do imóvel, o sistema exibe a mensagem: //A localidade <> da Guia de Pagamento difere da localidade <> do Imóvel <>//.
* Caso o Registro de Atendimento informado esteja associado a um cliente:
* Caso a guia de pagamento não esteja associada a um cliente, o sistema exibe a mensagem: //Esta Guia de Pagamento não está associada a um cliente//.
* Caso contrário:
* Caso o cliente da guia de pagamento, o sistema exibe a mensagem: //O Cliente <> da Guia de Pagamento não corresponde ao Cliente <> do Registro de Atendimento//.
* Caso contrário, o sistema atribui ao campo Localidade:
* A localidade da guia de pagamento;
* O nome da localidade.
* Verificar tipo de débito da guia de pagamento:
* Caso tenha informado a Ordem de Serviço e o tipo de serviço desta esteja associado a um tipo de débito:
* Caso o tipo de débito da guia de pagamento esteja diferente do tipo de débito do tipo de serviço da Ordem de Serviço, o sistema exibe a mensagem: //O Tipo de Débito <> da Guia de Pagamento não corresponde ao Tipo de Débito <> da Ordem de Serviço//.
* O sistema atribui o valor da guia de pagamento ao campo Valor da Devolução e permitir alteração.
* Verificar existência do débito a cobrar:
* Caso o débito a cobrar não exista, o sistema exibe a mensagem: //Débito a Cobrar inexistente//.
* Verificar imóvel do débito a cobrar:
* Caso o imóvel do débito a cobrar esteja diferente do imóvel do Registro de Atendimento, o sistema exibe a mensagem: //O Imóvel <> do Débito A Cobrar não corresponde ao Imóvel <> do Registro de Atendimento//.
* Verificar localidade do débito a cobrar:
* Caso a localidade do débito a cobrar esteja diferente da localidade do imóvel, o sistema exibe a mensagem: //A localidade <> do Débito A Cobrar difere da localidade <> do Imóvel <>//.
* Verificar tipo de débito do débito a cobrar:
* Caso tenha sido informada a Ordem de Serviço, e o tipo de serviço desta esteja associado a um tipo de débito:
* Caso o tipo de débito do débito a cobrar esteja diferente do tipo de débito do tipo de serviço da Ordem de Serviço, o sistema exibe a mensagem: //O Tipo de Débito <> do Débito A Cobrar não corresponde ao Tipo de Débito <> da Ordem de Serviço//.
* O sistema atribui o valor do débito a cobrar ao campo Valor da Devolução e permitir alteração.
* Verificar existência do tipo de débito:
* Caso o tipo de débito não exista, o sistema exibe a mensagem: //Tipo de Débito inexistente//.
* Verificar valor da devolução:
* Caso o tipo do documento selecionado seja conta, o sistema calcula o valor possível de ser devolvido.
* Caso o tipo do documento selecionado seja débito a cobrar, o sistema calcula o valor possível de ser devolvido.
* Caso o tipo do documento selecionado seja guia de pagamento, o sistema calcula o valor possível de ser devolvido.
* Caso o valor possível de ser devolvido seja <= 0, o sistema exibe a mensagem: //Não existe valor a ser devolvido para o documento informado//.
* Caso contrário:
* Caso o valor informado seja superior que o possível de ser devolvido e o usuário não possua senha especial, o sistema exibe a mensagem: //Valor da Devolução deve ser até o valor <>, que equivale a diferença entre o valor pago e os valores do <>, e de Guias de Devolução//.
* Caso o tipo do documento selecionado seja conta ou débito a cobrar ou guia de pagamento e o valor da devolução informado esteja superior ao valor limite do tipo de crédito, e o usuário não possua senha especial, o sistema exibe a mensagem: //Valor da Devolução ultrapassa o limite estabelecido para Devolução de Pagamento em Duplicidade//.
* Caso o tipo do documento selecionado seja devolução de valor e o valor da devolução informado esteja superior ao valor limite do tipo de crédito, e o usuário não possua senha especial, o sistema exibe a mensagem: //Valor da Devolução ultrapassa o limite estabelecido para Devolução de Outros Valores//.
* Verificar sucesso da transação:
* Caso o código de retorno da operação efetuada no banco de dados seja diferente de zero, o sistema exibe a mensagem conforme o código de retorno; caso contrário, exibe a mensagem //<> efetuada com sucesso//.
* Verificar pagamento:
* Caso o documento seja do tipo conta, guia de pagamento ou débito a cobrar, e não exista pagamento para a identificação informada, o sistema exibe a mensagem: //<> <> não tem pagamentos efetuados//.
* Verificar existência de Guias de Devolução:
* Caso o Registro de Atendimento esteja associado a um imóvel e o //Tipo de Documento// informado seja //Conta//, //Guia de Pagamento// ou //Débito a Cobrar//, o sistema verifica se já existe uma Guia de Devolução, para o imóvel, com o mesmo //Tipo de Documento// e a mesma identificação de documento, se houver, obtém o valor da devolução.
* Caso o Registro de Atendimento esteja associado a um cliente e o //Tipo de Documento// informado seja //Guia de Pagamento//, o sistema verifica se já existe uma Guia de Devolução, para o cliente, com o mesmo //Tipo de Documento// e a mesma identificação de documento, se houver, obtém o valor da devolução.
* Caso o Registro de Atendimento esteja associado a um cliente e o //Tipo de Documento// informado seja //Devolução de Valor//, o sistema verifica se já existe uma Guia de Devolução, para o cliente, com o mesmo //Tipo de Documento// e o mesmo //Tipo de Débito//, o sistema exibe a mensagem: //Já existe Guia de Devolução <> para este cliente <>, e o mesmo tipo de débito <> OK ou CANCELA//. Caso o usuário selecione o “OK”, o sistema continua o processamento.
* Verificar existência do funcionário:
* Caso a matrícula do funcionário (xxxxxxxx) não exista no sistema, o sistema exibe a mensagem: “Funcionário inexistente”.
* Verificar crédito a realizar:
* O sistema verifica se existe um crédito a realizar; caso exista, o sistema exibe a mensagem: //A conta referente ao mês/ano <> de valor << valor da conta>> já foi devolvida//, e não permite que se devolva novamente.
====== Preenchimento dos Campos ======
^Campo^Preenchimento dos Campos^
|Registro de Atendimento|Campo obrigatório - Informe o número do Registro de Atendimento, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar o RA desejado. O nome é exibido no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.\\ Para consultar detalhes da seleção do Registro de Atendimento, clique no link **[[:ajuda:pesquisar_registro_de_atendimento|Pesquisar Registro de Atendimento]]**.|
|Ordem de Serviço|Campo obrigatório - Informe o número da Ordem de Serviço, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a O.S. desejada. O nome é exibido no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.\\ Para consultar detalhes da seleção da Ordem de Serviço, clique no link **[[:ajuda:pesquisar_ordem_de_servico|Pesquisar Ordem de Serviço]]**.|
|Tipo do Documento|Campo obrigatório - Selecione o tipo do documento entre as opções disponibilizada pelo sistema.|
|Localidade|Caso este campo esteja habilitado, é obrigatório o preenchimento. Informe o número da Localidade, com no máximo 3 (três) dígitos, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a localidade desejada. O nome é exibido no campo ao lado.\\ Para consultar detalhes da seleção da localidade, clique no link **[[:ajuda:pesquisar_localidade|Pesquisar Localidade]]**.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
|Matrícula do Imóvel|Este campo é preenchido pelo sistema.|
|Código do Cliente|Este campo é preenchido pelo sistema.|
|Referência da Conta|Caso este campo esteja habilitado, o preenchimento é obrigatório. Informe-o no formado mm/aaaa (mês, ano), ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a referência desejada. A identificação é exibida no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
|Guia de Pagamento|Caso este campo esteja habilitado, o preenchimento é obrigatório. Informe o código da guia de pagamento, com no máximo 9 (nove) dígitos, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a guia desejada. A identificação é exibida no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão{{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
|Débito a Cobrar|Caso este campo esteja habilitado, o preenchimento é obrigatório. Informe o código do débito a cobrar, com no máximo 9 (nove) dígitos, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a guia desejada. A identificação é exibida no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
|Tipo do Débito|Campo obrigatório - Caso este campo esteja habilitado, o preenchimento é obrigatório. Informe o tipo de débito, com no máximo 4 (quatro) dígitos, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar o tipo desejado. O nome do tipo de débito é exibido no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.\\ Para consultar detalhes da seleção do Tipo do Débito, clique no link **[[:ajuda:pesquisar_tipo_de_debito|Pesquisar Tipo de Débito]]**.|
|Valor da Devolução|Campo obrigatório - Informe o valor da devolução com duas casas decimais.|
|Funcionário Analista|Campo obrigatório - Informe a matrícula do funcionário que analisou o pedido de devolução, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a matrícula desejada. O nome do funcionário é exibido no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
|Funcionário Autorizador|Campo obrigatório - Informe a matrícula do funcionário que autorizou o pedido de devolução, ou clique no botão {{:ajuda:lupa.gif?nolink|}} para selecionar a matrícula desejada. O nome do funcionário é exibido no campo ao lado.\\ Para apagar o conteúdo do campo, clique no botão {{:ajuda:borracha.gif?nolink|}} ao lado do campo em exibição.|
\\
====== Funcionalidade dos Botões ======
^Botão^Descrição da Funcionalidade^
|{{:ajuda:lupa.gif?nolink|}}|Ao clicar neste botão, o sistema permite consultar um dado nas bases de dados.|
|{{:ajuda:borracha.gif?nolink|}}|Ao clicar neste botão, o sistema apaga o conteúdo do campo em exibição.|
|{{:ajuda:Desfazer.png?nolink|}}|Ao clicar neste botão, o sistema desfaz o último procedimento realizado.|
|{{:ajuda:arrecadacao:b_cancelar_.jpg?nolink|}}|Ao clicar neste botão, o sistema cancela o procedimento e retorna à tela principal.|
|{{:ajuda:inserir.png?nolink|}}|Ao clicar neste botão, o sistema comanda a inserção dos dados nas bases de dados do sistema.|
===== Referências =====
**[[=postgres:arrecadacao:uc0322|Inserir Guia de Devolução]]**
==== Termos Principais ====
**[[=ajuda:arrecadacao:guia_de_devolucao|Guia de Devolução]]**
**[[=ajuda:arrecadacao|Arrecadação]]**
\\
Clique **[[:ajuda|aqui]]** para retornar ao Menu Principal do GSAN.