oracle form builder动态加栏位

来源:互联网 发布:js去掉字符串的换行符 编辑:程序博客网 时间:2024/06/05 18:57

参考同事的代码,创建了1~99item,动态赋值

app_folder.event('WHEN-NEW-BLOCK-INSTANCE');
DECLARE
P_NUM VARCHAR(3) := '0';
CURSOR CU_COLUMN IS
 SELECT COLUMN_NAME,
  NULLABLE
   FROM ALL_TAB_COLUMNS
  WHERE TABLE_NAME = upper('WST_INV_TRN_INTER_TMP')
  ORDER BY COLUMN_ID; --莉l  
BEGIN
IF UPPER(:PARAMETER.P_TABLE_DELE) ='SHOW' THEN
SET_ITEM_PROPERTY('WST_IMPORT_BUTTON_B.DELE',ENABLED,PROPERTY_TRUE);
SET_ITEM_PROPERTY('WST_IMPORT_BUTTON_B.DELE',VISIBLE,PROPERTY_TRUE);
ELSE
SET_ITEM_PROPERTY('WST_IMPORT_BUTTON_B.DELE',ENABLED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('WST_IMPORT_BUTTON_B.DELE',VISIBLE,PROPERTY_FALSE);
END IF; --琌旧玡埃い﹍计沮Item陪ボ
SELECT COUNT(1)
 INTO :PARAMETER.P_COLUMN_NUM
    FROM ALL_TAB_COLUMNS
   WHERE TABLE_NAME = :PARAMETER.P_TABLE_NAME;
/* FOR CU_COL IN CU_COLUMN LOOP
if P_NUM >32 then exit;
end if;
P_NUM := P_NUM + 1;
P_NUM := LPAD(P_NUM,2,'0');
COPY(initcap(replace(CU_COL.COLUMN_NAME,'_',' ')),'WST_IMPORT_PROMPT_B.TEMP'||P_NUM); --笆篈结Folder
IF CU_COL.NULLABLE = 'N' THEN
APP_ITEM_PROPERTY.SET_PROPERTY('WST_IMPORT_B.TEMP'||P_NUM,REQUIRED,PROPERTY_TRUE);
ELSE
APP_ITEM_PROPERTY.SET_PROPERTY('WST_IMPORT_B.TEMP'||P_NUM,REQUIRED,PROPERTY_FALSE);
END IF; --笆篈砞竚ゲ斗块兜
END LOOP;*/
:WST_IMPORT_PROMPT_B.TEMP01 :='PO NUMBER';
:WST_IMPORT_PROMPT_B.TEMP02 :='GRN';
:WST_IMPORT_PROMPT_B.TEMP03 :='Waybill/Airbill';
:WST_IMPORT_PROMPT_B.TEMP04 :='Item';
:WST_IMPORT_PROMPT_B.TEMP05 :='QTY';
:WST_IMPORT_PROMPT_B.TEMP06 := 'Rcv Date';
:WST_IMPORT_PROMPT_B.TEMP07 :='杆虫Xン计';
P_NUM := 7 + 1;
FOR A IN P_NUM..99 LOOP
P_NUM := LPAD(P_NUM,2,'0');
SET_ITEM_PROPERTY('WST_IMPORT_B.TEMP'||P_NUM,VISIBLE,PROPERTY_FALSE);
SET_ITEM_PROPERTY('WST_IMPORT_PROMPT_B.TEMP'||P_NUM,VISIBLE,PROPERTY_FALSE);
P_NUM := P_NUM + 1;
END LOOP; --奔ぃ惠璶
END;

原创粉丝点击