Carregar formulário selecionando linhas em uma consulta

Última modificação por FlowFast em 2025/01/30 14:28

Comando utilizado no retorno da navegação

POSTGRES

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
DECLARE
    r record;
BEGIN
   FOR r IN (SELECT l.seq_linha
                    ,lag(l.seq_linha, 1, 0) over(ORDER BY l.seq_linha) seq_ant
                    ,upper(l.cod_coluna) cod_coluna
                    ,l.vlr_coluna
                    ,l.des_coluna
                    ,l.dta_coluna
               FROM xcp_exec_dados l
              WHERE l.seq_execucao = {XCP_SEQ_EXECUCAO_OBJ}
              ORDER BY l.seq_linha)
    LOOP
       IF r.seq_linha > r.seq_ant THEN
           execute WFL_FORM_ADD_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS');
       END IF;
 
       IF r.cod_coluna = 'COD_ITEM' THEN
           execute WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'COD_ITEM', r.vlr_coluna);
       ELSIF r.cod_coluna = 'QTD_ITEM' THEN
           execute WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'QTD_NOTA', r.vlr_coluna);
       ELSIF r.cod_coluna = 'VLR_ITEM' THEN
           execute WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'VLR_UNI', r.vlr_coluna);
       END IF;
 
   END LOOP;
END;

ORACLE

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
DECLARE
   
BEGIN
   FOR r IN (SELECT l.seq_linha
                    ,lag(l.seq_linha, 1, 0) over(ORDER BY l.seq_linha) seq_ant
                    ,upper(l.cod_coluna) cod_coluna
                    ,l.vlr_coluna
                    ,l.des_coluna
                    ,l.dta_coluna
               FROM xcp_exec_dados l
              WHERE l.seq_execucao = {XCP_SEQ_EXECUCAO_OBJ}
              ORDER BY l.seq_linha)
    LOOP
       IF r.seq_linha > r.seq_ant THEN
            WFL_FORM_ADD_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS');
       END IF;
 
       IF r.cod_coluna = 'COD_ITEM' THEN
            WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'COD_ITEM', r.vlr_coluna);
       ELSIF r.cod_coluna = 'QTD_ITEM' THEN
            WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'QTD_NOTA', r.vlr_coluna);
       ELSIF r.cod_coluna = 'VLR_ITEM' THEN
            WFL_FORM_SET_VLR_PRC({XCP_SEQ_EXECUCAO} , 'FORM_ITENS', 'VLR_UNI', r.vlr_coluna);
       END IF;
 
   END LOOP;
END;