if :parameter.trace is not null and upper(:parameter.trace) = 'YES' then
t.traceon;
end if;
The trace file has a name
PROCEDURE check_unit_in_unit (p_ParentId integer ) IS
BEGIN
t.ProgStart('check_unit_in_unit');
t.p('p_ParentId: '||p_ParentId);
set_application_property(CURSOR_STYLE,'BUSY');
show_text_working;
set_application_property(CURSOR_STYLE,'DEFAULT');
hide_text_working;
go_item('SA_OBJECTS.OBJECT_NAME');
t.ProgEnd('check_unit_in_unit');
exception
when form_trigger_failure then
set_application_property(CURSOR_STYLE,'DEFAULT');
hide_text_working;
go_item('SA_OBJECTS.OBJECT_NAME');
t.ProgEnd('check_unit_in_unit');
raise form_trigger_failure;
when others then
set_application_property(CURSOR_STYLE,'DEFAULT');
hide_text_working;
go_item('SA_OBJECTS.OBJECT_NAME');
d.p(sqlerrm);
t.ProgEnd('check_unit_in_unit');
raise form_trigger_failure;
END;
Results(here it is possible to see result of work of
Logon: Y/...@db
Current Form: C:\my_projects\form_debug\debug.fmx
Calling Form:
Start : Blocks.SA_OBJECTS.Triggers.WHEN-NEW-RECORD-INSTANCE
Start : Program Units.IS_FORM
P_TYPE = PACKAGE BODY
Return value:
FALSE
End : Program Units.IS_FORM
Start : Program Units.IS_STORED_PROCEDURES
P_TYPE = PACKAGE BODY
Return value:
TRUE
End : Program Units.IS_STORED_PROCEDURES
select status from dba_objects where object_id =532357
End : Blocks.SA_OBJECTS.Triggers.WHEN-NEW-RECORD-INSTANCE
Start : Triggers.WHEN-TIMER-EXPIRED
Start : Program Units.POPULATE_FILE_DETAILS
Start : Program Units.POPULATE_NOTE_BLOCK
P_DEPENDENCYBLOCK = SA_OBJECT_DEPENDENCIES
P_NOTEBLOCKNAME = NOTE_BLOCK
Start : Blocks.NOTE_BLOCK.Triggers.POST-BLOCK
End : Blocks.NOTE_BLOCK.Triggers.POST-BLOCK
End : Program Units.POPULATE_NOTE_BLOCK
End : Program Units.POPULATE_FILE_DETAILS
End : Triggers.WHEN-TIMER-EXPIRED
m_multi_lov_pg.block_return := 'EMP';
m_multi_lov_pg.initiate_picklist(
p_DisplayColNumber =>2,
p_From => 'from emp e,dept d where e.deptno=d.deptno order by ename',
p_SelectColumn => 'empno ,ename " Family ",'||
'sal,d.dname,e.deptno, d.deptno',
p_Title => 'Select employes'
,p_IdColumnNumberList => '1'
,p_IdColumnNameList => 'empno'
);
-- initiate_picklist parameters:
p_DisplayColNumber integer := 1 - Column number from column list
p_From varchar2 - Part of select begin from "from" keyword
p_SelectColumn varchar2 - Column list, available aliases
p_Title varchar2 := 'Our Choice' - Multi select window title
p_DateFormat varchar2 := 'dd/mm/rr' - Display format for date fields
p_isReturnTbls boolean := true - if to return lists selected values in 10 PL/SQL tables
p_ColumnWidthLimit integer := 100 - Width limit for long fields
p_IdColumnNameList varchar2 := null - Column names list per ","
for "where clause" bulding in calling block m_multi_lov_pg.block_return
by default where clause for m_multi_lov_pg.block_return not setup
p_IdColumnNumberList varchar2 := null - Column number list per ","
from for "where clause" bulding
by default where clause for m_multi_lov_pg.block_return not setup
else use "where clause" in form:
'column_name in ()' where is list selected values
Limits:
Max Column count in select list = 10;
Max Column length = 255;
Support Column datatypes: Varchar2,
Char,
Number,
Date;
Support Coordinate System property - real centimeter only
Call Sample:
m_multi_lov_pg.initiate_picklist(
p_DisplayColNumber => 2,
p_From => 'from emp order by ename',
p_SelectColumn => 'empno,ename " Family ",ename " family_2 ",'||
'sal,comm,job " Job ",deptno,hiredate " hiredate ",'||
'hiredate "hiredate2 "',
p_Title => 'Select files'
,p_IdColumnNumberList => '1,8'
,p_IdColumnNameList => 'empno,hiredate'
);
m_multi_lov_pg.initiate_picklist(
p_DisplayColNumber => 2,
p_From => 'from emp e,dept d where e.deptno=d.deptno order by ename',
p_SelectColumn => 'empno,ename "Family ",sal,d.dname,e.deptno, d.deptno',
p_Title => 'Select files'
,p_IdColumnNumberList => '1'
,p_IdColumnNameList => 'empno'
);
m_multi_lov_pg.initiate_picklist(
p_DisplayColNumber => 2,
p_From => 'from emp order by ename',
p_SelectColumn => '*',
p_Title => 'Select files'
,p_IdColumnNumberList => '1'
,p_IdColumnNameList => 'empno'
);
m_multi_lov_pg.initiate_picklist(
p_DisplayColNumber => 1,
p_From => 'from sa_units order by 1',
p_SelectColumn => 'unit_name "Unit Name",unit_type "Unit type",'||
'note',
p_Title => 'Select units',
p_isReturnTbls => false
);