Identificador de Regra
VEN-135PRANE01
Módulo: VEN - Vendas.
Finalidade: Disponibilizar um ponto de regra após o processamento e gravação do banco de uma pré-fatura.
Características: O identificador executa antes do fechamento nas telas F135FCP e F135FCR.
É possível indicar o cancelamento de saldo dos itens de pedidos pré-faturados nos identificadores VEN-135CASLD01 e VEN-135CASLD03.
Tela: F135FCP e F135FCR.
Transação: Não se aplica.
Regra:
Caso de uso:
No caso de uso abaixo, esse identificador pode ser utilizado para cancelar os itens de pedido que não foram faturados pela pré-fatura (situação diferente de 8).
Na regra abaixo é feito um select que encontra esses itens, que serão cancelados por meio do web service de pedido.
Definir Numero VenNCodEmp;
Definir Numero VenNCodFil;
Definir Numero VenNNumAne;
Definir Alfa sMsg;
Definir Alfa sErro;
Definir Alfa xCursor;
Definir Alfa xSql;
Definir Alfa VenAOrigem;
Definir Funcao fChamarWS();
Sql_Criar(xCursor);
xSql = "SELECT NumPed, SeqIpd FROM e120ipd WHERE " +
"EXISTS (SELECT 1 FROM e135pes WHERE e135pes.codemp = e120ipd.codemp " +
" AND e135pes.filped = e120ipd.codfil " +
" AND e135pes.numped = e120ipd.numped " +
" AND e135pes.codemp = :VenNCodEmp " +
" AND e135pes.codfil = :VenNCodFil " +
" AND e135pes.numane = :VenNNumAne) " +
" AND sitipd <> 8 ";
Sql_DefinirComando(xCursor, xSql);
Sql_DefinirInteiro(xCursor, "VenNCodEmp", VenNCodEmp);
Sql_DefinirInteiro(xCursor, "VenNCodFil", VenNCodFil);
Sql_DefinirFlutuante(xCursor, "VenNNumAne", VenNNumAne);
Sql_AbrirCursor(xCursor);
Se (Sql_Eof(xCursor) = 0)
Definir interno.com.senior.g5.co.mcm.ven.pedidos.GravarPedidos_15 WSGraPed;
Enquanto (Sql_Eof(xCursor) = 0)
{ Sql_RetornarInteiro(xCursor, "NumPed", nNumPed); Sql_RetornarInteiro(xCursor, "SeqIpd", nSeqIpd); fChamarWS(); Sql_Proximo(xCursor); }
Sql_FecharCursor(xCursor);
Sql_Destruir(xCursor);
Funcao fChamarWS();
{ @Dados Gerais@ WSGraPed.Pedido.OpeExe = "C"; WSGraPed.Pedido.CodEmp = 1; WSGraPed.Pedido.CodFil = 1; WSGraPed.Pedido.NumPed = nNumPed; WSGraPed.Pedido.CodCli = 1; @Itens Produto@ WSGraPed.Pedido.Produto.OpeExe = "A"; WSGraPed.Pedido.Produto.SeqIpd = nSeqIpd; WSGraPed.Pedido.Produto.SitIpd = 5; WSGraPed.ModoExecucao = 1; WSGraPed.Executar(); sMsg = WSGraPed.MensagemRetorno; sErro = WSGraPed.respostaPedido.Retorno; sMsg = sMsg + " * " + sErro; Mensagem(Retorna, sMsg); }
|
Variáveis Disponibilizadas:
| Nome | Tipo | Observações | Retorna Valor |
|---|---|---|---|
| VenNCodEmp | NÚMERO | Código da empresa | N |
| VenNCodFil | NÚMERO | Código da filial | N |
| VenNNumAne | NÚMERO | Número da carga | N |
| VenAOrigem | ALFA | Tela de origem | N |
Atenção
Caso o parâmetro global LisVarReg esteja habilitado, a variável ListaVariaveis estará disponível em todos os identificadores de regras do sistema. O conteúdo desta variável lista os campos disponibilizados no identificador de regras em questão.
Não é aconselhada a ativação desse parâmetro global para o uso cotidiano. Esse recurso de listagem dos campos de identificadores auxilia a construção de regras e o Suporte para, por exemplo, depuração ou quando não houver acesso à documentação dos identificadores de regras.
English
Español
English
Español


