Identificador de Regra

VEN-140PARMA01

Módulo: VEN - Vendas.

Finalidade: manipular as parcelas da nota no momento do fechamento, em forma de lista.

Características: atende clientes que têm integração com outro sistema onde nem sempre as parcelas vêm calculadas corretamente, permitindo manipular seus campos e ordenação.

Telas:

Transação: não se aplica.

Variáveis disponibilizadas:

Campo Tipo Descrição Retorna Valor
VenNCodEmp Número Código da Empresa N
VenNCodFil Número Código da Filial N
VenNNumNfv Número Número da Nota Fiscal N
VenACodSnf Alfa Série da Nota Fiscal N
IntNListaParcelasAtuais   Lista de Parcelas Atuais N
IntNListaParcelasNovas   Lista de Parcelas Novas S

Exemplo de regra para inverter a ordem das parcelas usando todos os campos:

Definir numero IntNListaParcelasAtuais;
Definir numero IntNListaParcelasNovas;
Definir alfa S_N;
Definir alfa S_N_Campo;
Definir alfa LeuPrimeiro;
Definir alfa aValorCampo;
Definir numero nValorCampo;
Definir numero codigoparcela;

LeuPrimeiro = "N";
ListaRegraPrimeiro(IntNListaParcelasAtuais, S_N); @Posiciona no primeiro registro da lista {Colunas(NomeAtributo | ValorAtributo)} @
Se (S_N = "S"){
  LeuPrimeiro = "S";
  S_N = "N";  
  enquanto (S_N <> "S") { @Lista Preenchida / recebeu atributos@ 
  ListaRegraProximo(IntNListaParcelasAtuais, S_N); @Posiciona no próximo registro@
  ListaRegraFim(IntNListaParcelasAtuais, S_N); @Atualiza variável final de lista@
  }
}
  
Se (LeuPrimeiro = "S"){  
  S_N = "N";      
  codigoparcela = 1;
  enquanto (S_N <> "S"){  
    ListaRegraNovaLinha(IntNListaParcelasNovas);
    
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodSnf", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodSnf",aValorCampo,S_N_Campo);  
    }    
            
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodPar", aValorCampo, S_N_Campo); 
    IntParaStr(codigoparcela,aValorCampo);
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodPar",aValorCampo,S_N_Campo);  
    }
    codigoparcela = codigoparcela + 1;
    
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodCrp", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodCrp",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "NumTit", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"NumTit",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodTpt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodTpt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodFcr", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodFcr",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DatFcr", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DatFcr",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "VctPar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"VctPar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "VlrPar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"VlrPar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "PerDdp", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"PerDdp",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodPor", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodPor",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodCrt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodCrt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodNtg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodNtg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "ObsPar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"ObsPar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "UsuGer", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"UsuGer",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DatGer", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DatGer",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "HorGer", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"HorGer",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodFpg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodFpg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "GerBai", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"GerBai",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DatNeg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DatNeg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DscNeg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DscNeg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CatTef", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CatTef",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "NsuTef", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"NsuTef",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodSac", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodSac",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CheBan", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CheBan",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CheAge", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CheAge",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CheCta", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CheCta",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CheNum", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CheNum",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodBar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodBar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CatExt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CatExt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodOpe", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodOpe",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CarCov", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CarCov",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CarPre", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CarPre",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodCnv", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodCnv",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "VlrTro", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"VlrTro",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "FpgTro", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"FpgTro",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DepCnv", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DepCnv",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "VlrDdp", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"VlrDdp",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DscAnt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DscAnt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DscPon", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DscPon",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "JurVen", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"JurVen",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "DatPpt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"DatPpt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "LocTit", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"LocTit",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "VlrInt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"VlrInt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "NumPfi", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"NumPfi",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "QtdPar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"QtdPar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "TipCar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"TipCar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "ParTit", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"ParTit",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CodFin", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CodFin",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "EntPar", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"EntPar",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "TitBan", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"TitBan",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "JrsNeg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"JrsNeg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "MulNeg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"MulNeg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "OutNeg", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"OutNeg",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "TipInt", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"TipInt",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "CgcCre", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"CgcCre",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "BanOpe", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"BanOpe",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "IndPag", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"IndPag",aValorCampo,S_N_Campo);  
    }
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "IdeTxi", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"IdeTxi",aValorCampo,S_N_Campo);  
    }  
    ListaRegraObterValorAlfa(IntNListaParcelasAtuais, "QtdDdd", aValorCampo, S_N_Campo); @Verifica se a linha é de um item de produto.@
    se (S_N_Campo = "S"){  
      ListaRegraAddValorLinhaAlfa(IntNListaParcelasNovas,"QtdDdd",aValorCampo,S_N_Campo);  
    }  
	
  
    ListaRegraSalvarLinha(IntNListaParcelasNovas);
    ListaRegraAnterior(IntNListaParcelasAtuais, S_N); @Posiciona no próximo registro@ 
    ListaRegraInicio(IntNListaParcelasAtuais, S_N); @Atualiza variável final de lista@
  }
}

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.

Este artigo ajudou você?