FORM遍历数据块

FORM遍历数据块

BEGIN
  go_block('BLOCKNAME');
  first_record;
  IF :system.block_status <> 'NEW ' THEN
    LOOP
      IF :system.last_record = 'TRUE' THEN
        EXIT;
      ELSE
        next_record;
      END IF;
    END LOOP;
  END IF;
END;

例子

BEGIN
    --检查是否选择需要处理的记录
    i := 0;
    go_block('UNPAY');
    first_record;
    IF :system.block_status <> 'NEW ' THEN
      LOOP
        IF :unpay.check_box = 'Y' THEN
          i := i + 1;
        END IF;
        IF :system.last_record = 'TRUE' THEN
          EXIT;
        ELSE
          next_record;
        END IF;
      END LOOP;
    END IF;
  
    --有勾选记录则进行处理
    IF i > 0 THEN
      go_block('UNPAYPRO');
    ELSE
      fnd_message.set_string('请选择需要进行处理的记录!');
      fnd_message.error;
      RAISE form_trigger_failure;
    END IF;
  END;


你可能感兴趣的:(form,遍历,数据块,Go,record)