Iandev Smarter Business - Logo Cor
Navegação no fórum
para criar postagens e tópicos.

Tarefa WebView construída para cadastro rápido, onde o cliente precisava ter multi-seleção nos fornecedores, e também rodar um Insert para cada fornecedor selecionado. Para isso, foi construída uma lógica utilizando alguns comandos java e utilização de fo

Tarefa WebView construída para cadastro rápido, onde o cliente precisava ter multi-seleção nos fornecedores, e também rodar um Insert para cada fornecedor selecionado. Para isso, foi construída uma lógica utilizando alguns comandos java e utilização de for/loop utilizando labels.

[code]

parameter fornecedor label="Escolha o Fornecedor" type="integer" values="sql_var(sql_fornecedor)" size="10" multi="true";

parameter peracordo label="% Acordo Fornecedor:" type="decimal" default="0";

# Retira pontos e virgula, e deixa decimal separada por ponto.
set peracordo = bdo.util.NumberUtil.getBigDecimal("$v{peracordo}");

# Limpa registro do Fornecedor.
sql_exec delete from DBA.FORNECEDORDETALHES where idclifor in ($v{fornecedor});

# Split: Quebra as divisões de virgula em Array
# Lenght: Quantos elementos possuiu Array
set count = "$v{fornecedor}".split(",").length;
set idx = 0;

:label1;
set forn = "$v{fornecedor}".split(",")[$v{idx}];

sql_exec insert into DBA.FORNECEDORDETALHES (idclifor,peracordo) values ( $v{forn} ,$v{peracordo});
set idx = $v{idx} + 1;
if $v{idx} < $v{count};
goto label1;
end_if ;

[/code]