LeMemlistPdv
Informar em um relatório as informações da tela de Análise de Preços com Diversos Lucros.
Sintaxe: Funcao LeMemlistPdv(Numero pPos,Numero End pFim,Alfa End ProSer,Alfa End DesVlr, Numero End V0,Numero End V1,Numero End V2,Numero End V3,Numero End V4,Numero End V5,Numero End V6,Numero End V7,Numero End V8, Numero EndV9)
Parâmetros:
| Nome | Tipo | Descrição |
|---|---|---|
| pPos | Numero | Variável que retorna a posição da lista que se quer ler. |
| pFim | Numero | Variável que retorna 1 quando tiver acabado a lista. |
| ProSer | Alfa | Variável que retorna o produto da linha da grade (primeira coluna da grid). |
| DesVlr | Alfa | Variável que retorna a descrição do valor (cabeçalho da Grid). |
| V0 - V9 | Numero |
Valores (Nesta função os parâmetros são dinâmicos, são os valores das células da grade da tela F621PDL - Análise de Preços com Diversos Lucros. Dependendo do V0, que é a fórmula do calculo, podem ter valores distintos). |
Tipo de retorno:
pfim: Variável numérica que retorna 1 quando tiver acabado a lista.
ProSer: Variável alfanumérica que retorna o produto da linha da grade (primeira coluna da grid).
DesVlr: Variável alfanumérica que retorna a descrição do valor
(cabeçalho da Grid).
V0, V1, V2, V3, V4, V5, V6, V7, V8 e V9 Valores numéricos (Nesta função os parâmetros são dinâmicos, são os valores
das células da grade da tela F621PDL - Análise de Preços com Diversos Lucros. Dependendo
do V0, que é a fórmula do calculo, podem ter valores distintos).
Exemplo: Regra depois Imprimir da seçao Título do modelo CSAG001.GER
Definir Alfa DProSer;
Definir Alfa DDesVlr;
Definir Alfa ProSerAnt;
Definir Numero V0;
Definir Numero V1;
Definir Numero V2;
Definir Numero V3;
Definir Numero V4;
Definir Numero V5;
Definir Numero V6;
Definir Numero V7;
Definir Numero V8;
Definir Numero V9;
Definir Alfa D0;
Definir Alfa D1;
Definir Alfa D2;
Definir Alfa D3;
Definir Alfa D4;
Definir Alfa D5;
Definir Alfa D6;
Definir Alfa D7;
Definir Alfa D8;
Definir Alfa D9;
Definir Funcao AtuCab();
FimMemList = 0;
Pos = 0;
DProSer = "";
DDesVlr = "";
ProSerAnt = "";
PrimVez = 1;
Enquanto (FimMemList = 0)
inicio
LeMemListPdv(Pos,FimMemList,DProSer,DDesVlr,V0,V1,V2,V3,V4,V5,V6,V7,V8,V9);
Se (FimMemList = 0)
Inicio
Se ((DProSer <> ProSerAnt) e (DProSer <> "") e (DProSer <> " "))
inicio
se (V0 = 1)
inicio
DVlrbas = "% Lucro Base:";
DVlrVar = "% Variação de Lucro:";
DFormula = "Lucro Líquido";
AlteraControle("DCIF","Imprimir","Verdadeiro");
AlteraControle("FValCif","Imprimir","Verdadeiro");
fim;
se (V0 = 2)
inicio
DVlrbas = "Valor Lucro Base:";
DVlrVar = "Valor Variação de Lucro:";
DFormula = "Lucro Líquido";
AlteraControle("DCIF","Imprimir","Verdadeiro");
AlteraControle("FValCif","Imprimir","Verdadeiro");
fim;
se (V0 = 3)
inicio
DVlrbas = "% Margem de Contr.:";
DVlrVar = "% Variação Margem:";
DFormula = "Margem Contr.";
AlteraControle("DCIF","Imprimir","Falso");
AlteraControle("FValCif","Imprimir","Falso");
fim;
se (V0 = 4)
inicio
DVlrbas = "Valor de Margem:";
DVlrVar = "Variação de Margem:";
DFormula = "Margem Contr.";
AlteraControle("DCIF","Imprimir","Falso");
AlteraControle("FValCif","Imprimir","Falso");
fim;
FVlrBas = V1;
FVlrVar = V2;
FValCva = V3;
FValCdf = V4;
FValCif = V5;
AtuCab();
ListaSecao("Adicional_ProSer");
Pos++;
fim;
LeMemListPdv(Pos,FimMemList,DProSer,DDesVlr,V0,V1,V2,V3,V4,V5,V6,V7,V8,V9);
F0 = V0;
F1 = V1;
F2 = V2;
F3 = V3;
F4 = V4;
F5 = V5;
F6 = V6;
F7 = V7;
F8 = V8;
F9 = V9;
ListaSecao("Adicional_Precos");
Pos = Pos + 1;
Fim;
ProSerAnt = DProSer;
Fim;
Funcao AtuCab();
Inicio
N0 = FVlrBas - (FVlrVar * 4);
N1 = FVlrBas - (FVlrVar * 3);
N2 = FVlrBas - (FVlrVar * 2);
N3 = FVlrBas - (FVlrVar);
N4 = FVlrBas;
N5 = FVlrBas + (FVlrVar);
N6 = FVlrBas + (FVlrVar * 2);
N7 = FVlrBas + (FVlrVar * 3);
N8 = FVlrBas + (FVlrVar * 4);
N9 = FVlrBas + (FVlrVar * 5);
IntParaAlfa(n0,D0);
IntParaAlfa(n1,D1);
IntParaAlfa(n2,D2);
IntParaAlfa(n3,D3);
IntParaAlfa(n4,D4);
IntParaAlfa(n5,D5);
IntParaAlfa(n6,D6);
IntParaAlfa(n7,D7);
IntParaAlfa(n8,D8);
IntParaAlfa(n9,D9);
se ((V0 =1) ou (V0 = 3))
inicio
D0 = D0 + "%";
D1 = D1 + "%";
D2 = D2 + "%";
D3 = D3 + "%";
D4 = D4 + "%";
D5 = D5 + "%";
D6 = D6 + "%";
D7 = D7 + "%";
D8 = D8 + "%";
D9 = D9 + "%";
fim;
Fim;
Utilização da Função (dependentes): Somente funciona com a lista de diversos lucros carregada. Quem carrega esta é a tela de Análise de Preços com Diversos Lucros - Custos.
Observações: O modelo CSAG001.GER, que utiliza esta função, foi desenvolvido para ser chamado através da tela de Análise de Preços com Diversos Lucros. Se for chamado pelo Gerador de relatórios não funciona, pois não há dados carregados.
English
Español
English
Español


