Skip to Main Content

Oracle Forms

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Unhandled Exception ORA-100501

Tony007Oct 14 2021 — edited Oct 15 2021

hi after i upgrade from 11g to Forms [64 Bit] Version 12.2.1.4.0 (Production) am having this error when navigation in trace file am having

PRE-TEXT-ITEM Trigger Fired:
Form: LLCOPD04
Block: PERS
Item: SIGNON_TYPE

State Delta:
LLCOPD04, 14, Trigger, Entry, 5798085819025171, PRE-TEXT-ITEM
LLCOPD04, 15, Prog Unit, Entry, 5798085819237650, /LLCOPD04-7/P21_2021_10_14_17_15_19
LLCOPD04, 15, Prog Unit, Exit, 5798085819350575, /LLCOPD04-7/P21_2021_10_14_17_15_19
LLCOPD04, 14, Trigger, Exit, 5798085819594488, PRE-TEXT-ITEM

Executing MESSAGE Built-in:
In Argument 0 - Type: String  Value: test06 Y
In Argument 1 - Type: Number Value: 121

Executing PAUSE Built-in:
# 35 - LLCOPD04:PERS.SIGNON_TYPE.5798086629722378
ALERT OK

Executing FORM_FAILURE Built-in:
Out Argument 0 - Type: Boolean  Value: FALSE
LLCOPD04, 14, Prog Unit, Entry, 5798086630150099, /LLCOPD04-7/LCL_MODE_OBJ▒▒▒
LLCOPD04, 14, Prog Unit, Exit, 5798086644201748, /LLCOPD04-7/LCL_MODE_OBJ▒▒▒

Unhandled Exception ORA-100501
State Delta:
LLCOPD04, 13, Trigger, Exit, 5798086645115573, KEY-NEXT-ITEM
the code in ite is
PRE-TEXT-ITEM Trigger Fired:

if :PERS.SIGNON_TYPE='L' then
	:PERS.L_FORCE_NO_ID_NO:= '(L-Force No/N-ID No)';
end if;

=====

KEY-NEXT-ITEM
IF nvl(:pers.signon_type,' ') not in ('L','N') then
  message ('Value must be [L] or [N]');
  raise form_trigger_failure;
END IF;
:global.signon_type := :pers.signon_type;
next_item;

the code is failing hear if i comment this out it work

IF form_failure and :global.pstat = 'N' then
   LCL_MODE_OBJ;
   :scr_force_no := :global.pers;
   :signon_type := :global.signon_type;
   raise form_trigger_failure;
 ELSIF 
   form_failure then
   LCL_MODE_OBJ;
   :scr_force_no := :global.pers;
   :signon_type := :global.signon_type;
   IF :global.action = 'RETRIEVE' then
    message('Sign-on ID does not exist - use NEW to create');
    --enable_item('File','New');
    set_menu_item_property('File.New', enabled, property_true);

    raise form_trigger_failure;
   ELSE
    :pers.signon_type := :global.signon_type;
    :scr_force_no   := :global.pers;
    IF :pers.signon_type = 'N' then
      :pers.pers_rank_cde := '199';
      go_field('pers_surname');
      set_item_property('pers_rank_cde',UPDATEABLE,property_false);
      set_item_property('pers_rank_cde',ENTERABLE,property_false);
      set_item_property('pers_rank_cde',NAVIGABLE,property_false);
    ELSE
      set_item_property('pers_rank_cde',UPDATEABLE,property_true);
      set_item_property('pers_rank_cde',ENTERABLE,property_true);
      set_item_property('pers_rank_cde',NAVIGABLE,property_true);
      go_field('pers_rank_cde');
    END IF;
     message('pages23');pause;
    show_page(3);
    message('Enter detail');
    --enable_item('File','Save');
    set_menu_item_property('File.Save', enabled, property_true);

    :crt_temp_rec_ind := 'T';
    raise form_trigger_failure;
   END IF;
 ELSE
   LCL_MODE_OBJ;
   IF :global.action = '   NEW' then
    :global.err := 'N';
    message('Sign-on ID already exist - use RETRIEVE option');
    raise form_trigger_failure;
   ELSE
    IF :pers.crt_temp_rec_ind = 'X' then
      raise form_trigger_failure;
    ELSE
      IF :pers.signon_type = 'N' then
       go_field('pers.pers_race_cde');
      ELSE 
       go_field('pers.pers_id_no');
      END IF;
    END IF;
   END IF;
 END IF;
 :system.message_level := '0';

===

procedure LCL_MODE_OBJ is
begin
--	message('mod3');pause;
 :scr_nohlp_mode := :global.action;
 :scr_nohlp_dte_tme := sysdate;
 :menu.LLCOPD04 := 'LLCOPD04';
 :menu.PERSONNEL_INFORMATION := 'PERSONNEL INFORMATION';
 end;

Comments

Hi Jon,
there is a setting for this when using the new Data Load Definitions in APEX 21.1.
After creating the data load, navigate to Shared Components, Data Load Definitions
Edit your very Data Load Definition
Click the button to edit the Data Profile, which contains all information about the format, columns or data types
Scroll down towards the bottom and you'll see an attribute named Skip Rows.
Does that help?
regards
-Carsten

Jon Finke

Alas, it appears too late - I need to skip the rows when defining the columns to match. It looks like while I can skip the rows, I have to go in and manually define each of the columns.
But perhaps I can edit the original spreadsheet to make the data definition...

Answer

Hi Jon,
ah - that's right. At design time there is no attribute to specify the amount of rows to skip. But the column mapping is only done once; so for the sample file you're uploading, you can also manually remove the rows in question, then create the data load definition, add the "Rows to Skip" attribute and save. Then you should be good, right?
But this is a good heads-up: We might have the Skip Rows attribute in the wizard ...
best regards
-Carsten

Marked as Answer by Jon Finke · Jul 29 2021
Jon Finke

Carsten,
If I edit the excel file ahead of time, delete the header rows, use that to create the data load template, I can then use that to load the spreadsheet. That will work for my application.
But it would be really nice to have the SKIP_ROWS available as an option the wizard when defining the load sources.

1 - 4

Post Details

Added on Oct 14 2021
9 comments
784 views