Regente - 5.8.4.52
05/02/2016
Retenção de taxa de embarque por aeroporto
Alteramos o Regente para que a fatura e a nota de débito sejam impressas com o detalhamento das retenções de taxa de embarque por concessionária. Para isso, foram realizadas as alterações abaixo:
- ajustamos a tela Eliminação de Localizadores (FV400EXC) para armazenar a última opção escolhida entre período ou localizador;
- foram criados modelos para tratar o detalhamento de taxa de embarque de forma diferenciada;
- alteramos a configuração de FOPs para gerar as parcelas para o fornecedor de produto por taxa de embarque;
- criamos a função de programador BuscaFornecedorInfraero;
- na sugestão das taxas, é considerado o local;
- ajustamos as telas de geração de fatura e geração de fatura de retenção, para adequar-se às parcelas por taxa de embarque;
- criamos o identificador (TXE.) na integração do GDS. Ele exibirá o valor da taxa por aeroporto, caso esse detalhamento não for informado, será sugerido com base nos dados recebido.
As configurações necessárias no Regente para que esta nova rotina funcione, devem ser consultadas no documento Retenção por Aeroporto Concessionária.
Locais:
- Diversos > Eliminação Registros > GDS (FV400EXC)
- Comercial > Relatórios > Documentos: Modelos 084 e 085
- Tabelas > Financeiro > FOPs > Formas Pagamento (FV010FOP)
- Comercial > Processo Comercial (FV300PCV)
- Comercial > Geração Títulos Retenção (FV601GTR)
- Comercial > Geração Títulos (FV601GTI)
Erro na regra dos acordos ao realizar integração via web service
Problema: ao realizar uma integração via web service com.senior.g5.co.agt.Integracao, ocorria um erro na regra dos acordos, indicando que o campo CODET1 não era informado.
Correção efetuada: ajustamos a rotina que trata das vendas via web services, para que as enviem para a regra dos acordos no campo NumPcv.
Melhoramos a mensagem de retorno na função BuscaValorPaxNum para quando não existir campo informado.
No entanto, mesmo com esses ajustes, a regra que trata dos acordos não deveria ser usada para validar a existência do código de estrutura ou de outros campos. Na inclusão isso acaba acontecendo, mas na alteração, o usuário pode optar por não recalcular os acordos (se isso for feito, a regra de acordos não é executada).
Ao chamar a regra dos acordos, na integração de web services, algumas tabelas ainda não foram gravadas. A integração via web services é feita de forma a obter ganhos de performance. Ou seja, está preparada para processar grandes volumes de dados, por isso, somente no final do processamento, quando tudo já foi validado, as tabelas são bloqueadas e os registros gravados. Com isso, o tempo de bloqueio é menor. Quando estiver dentro de um documento ou na integração GDS, a gravação é feita antes.
A regra de acordos permite fazer validações, desde que antes confirme se o registro existe. Somente depois irá conferir o conteúdo dos campos. Se o registro não existir, a validação não será feita.
CurAux.sql "SELECT CODET1 FROM V330PES WHERE CODEMP=:CODEMP AND CODFIL=:CODFIL AND CODPST=:CODPST
AND ANOPCV=:ANOPCV AND NUMPCV=:NUMPCV AND PESSIS=:vPesSis";
CurAux.AbrirCursor();
Se (CurAux.Achou)
{
se ((CurAux.CodEt1 = " ") ou (CurAux.CodEt1 = ""))
Mensagem(Erro,"Obrigatório informar o código de estrutura 1");
}
CurAux.FecharCursor().
Mas, conforme explicado acima, essa validação não será feita para web services ou quando o usuário alterar e optar por não recalcular os acordos.
Quando for web services, só é disponível para acesso via banco, a tabela V300PCV (tabela principal do PC).
Para algumas validações, na regra dos acordos, pode-se usar a função BuscaValorPaxNum(campos numéricos) ou BuscaValorPaxStr(campos alfanuméricos), que possuem disponíveis os seguintes campos:
PESSIS: Seq.pax no PC
TIPPES: Tipo de pessoa (ADT, CHD, ...)
TARSIS: Seq.Tarifa
CODCLI: Código do cliente
CODFOP: Código da FOP
CODMFP: Código da modalidade
INDNET: Indicador de Neta ou Comissionado
PEROLN: % on line.
CODBTA: Código da tarifa básica
TIPBTA: Tipo da tarifa
CLASVC: Classe do serviço
TURCOD: Código do tour code
SEQCTS: Seq. do contato solicitante
CODCCU: Código centro de custo
CODECC: Código empresa do cartão de crédito
DOCFOP: Documento da FOP (nr.cartão)
CIEREE: Código da cia do bilhete reemitido/reembolsado
SERBIL: Série do bilhete reemitido
NUMBIL: Número do bilhete reemitido
CUPREE: Número do cupom reemitido
AUTCLI: Autorização do cliente
CODCIE: Código da cia do bilhete reemitido
QTDCNJ: Quantidade de conjugados
TIPBID: Tipo do bilhete reemitido/reembolsado
APRCCR: Aprovação do cartão
DATVAL; Data validade do cartão
SEQSOL: Seq. do contato solicitante (mesmo que SEQCTS)
VLRMTR: Valor da menor tarifa
VLRTCH: Valor da tarifa cheia
VLRTAB: Valor total da tarifa em moeda base
VLRTAN: Valor total da tarifa em moeda nacional
VLRTBA: Valor da tarifa base em moeda base
VLRTNA: Valor da tarifa base em moeda nacional
VLRTOB: Valor da tarifa on line, em moeda base
VLRTON: Valor da tarifa on line, em moeda nacional
VLRTXB: Valor da taxa em moeda base
VLRTXN: Valor da taxa em moeda nacional
Outras funções que podem ser usadas são a BuscaValorDocNum e a BuscaValorDocStr, onde tem disponíveis os seguintes campos:
V320DOC.FORPDT: Código do fornecedor de produto (ex.: cia, hotel)
V320DOC.CODODC: Código operação comercial
V320DOC.APLOPR: Sequência da aplicação da operação comercial
V320DOC.TIPBID: Tipo de bilhete
V320DOC.QTDCNJ: quantidade de conjugados
V320DOC.DATEMI: data de emissão
V320DOC.FORREP: Código do fornecedor de reporte (ex.: cia, hotel, bsp, central de reservas)
V320DOC.TIPDST: Tipo de destino
V320DOC.MOEBAS: Código da moeda base
V320DOC.VLRCMC: Valor do câmbio para o cliente
V320DOC.VLRCMF: Valor do câmbio para o fornecedor
V320DOC.VLRTAB: Valor total da tarifa em moeda base
V320DOC.VLRTAN: Valor total da tarifa em moeda nacional
V320DOC.VLRTNA: Valor da tarifa base em moeda nacional
V320DOC.VLRTBA: Valor da tarifa base em moeda base
V320DOC.VLRTXB: Valor da taxa em moeda base
V320DOC.AGTEMI: Código do agente de emissão
V320DOC.AGTRSV: Código do agente de reserva
V320DOC.FORRPS: Código do fornecedor representante
V320DOC.TURCOD: Código do tour code
V320DOC.SISRSV: Código do sistema de reserva
V320DOC.LOCELT: Código do localizador eletrônico
V320DOC.ITNBID: Itinerário (só com aeeroportos)
V320DOC.TIPPDT: Tipo de produto
V320DOC.CODCLI: Código de cliente
V320DOC.ITNCID: Itinerário (com aeeroportos e cidades)
V320DOC.NOVDOC: Terá 1=Novo documento ou 0=documento já existia
V321DVO.CODCIE: Código cia emissora
V321DVO.SERBID: Série bilhete
V321DVO.NUMBID: Número bilhete
V321DVO.AGTPMT: Código do agente de promotor
V321DVO.INDNET: Indicador de Neta ou Comissionado
Considerando a impossibilidade de incluirmos novos campos nessas estruturas, uma alternativa para a validação de campos seria triggers. Elas agem diretamente no banco, numa linguagem de conhecimento geral. Se isso for feito, identificar claramente na mensagem, para que se conheça o local de onde a mensagem está sendo gerada.
Local: Diversos > Serviços
Informação incompleta na mensagem de tour code
Problema: a mensagem de validação do tour code não era suficientemente clara sobre qual tour code havia sido informado, pois aparecia uma informação incompleta na mensagem de erro.
Correção efetuada: melhoramos a mensagem que avisa sobre problemas na validação do conteúdo do campo de tour code.
A mensagem passa a mostrar o conteúdo original e o conteúdo em análise.
Local: Comercial > Processo Comercial (FV300PCV)
English
Español

