Apps To Fusion

.......Our Journey from Apps To Fusion

 
  • Increase font size
  • Default font size
  • Decrease font size



Remove Descriptive Flexfield Segments by Script

E-mail
User Rating: / 0
PoorBest 
Here is a small script to delete all the  segments in a Descriptive FlexField.
This is useful in some cases because FNDLOAD does not perform a delete of segments.
Hence such a script can be used for cleanup of the DFF.
Simply replace the contents in "bold" text below to make this work on your environment
set serveroutput on size 100000 ; 
--Script to clean up DFF Segments
DECLARE
  l_flexfield_type fnd_flex_key_api.flexfield_type;
  l_structure_type fnd_flex_key_api.structure_type;
  l_segment_type   fnd_flex_key_api.segment_type;
  l_flex_num       VARCHAR2(1000);
BEGIN
  FOR p_rec IN (SELECT end_user_column_name,
                       descriptive_flexfield_name,
                       descriptive_flex_context_code
                  FROM fnd_descr_flex_col_usage_vl
                 WHERE (application_id = 800)
                   AND (descriptive_flexfield_name = 'Extra Person Info DDF')
                   AND (descriptive_flex_context_code LIKE
                       'XX_DFF_CONTEXT_HERE')) LOOP
    fnd_flex_dsc_api.delete_segment(appl_short_name => 'PER',
                                    flexfield_name  => p_rec.descriptive_flexfield_name,
                                    CONTEXT         => p_rec.descriptive_flex_context_code,
                                    SEGMENT         => p_rec.end_user_column_name);
  
    dbms_output.put_line('Segment ' || p_rec.end_user_column_name ||
                         ' deleted ');
  END LOOP;

END;

Comments (6)add
Oracle Consultant
written by ali salmiah , June 21, 2010
Gread effort, But can you give me the API that delete the main DFF with all seqment ? if not there why oracle not given this Option to user
report abuse
vote down
vote up
Votes: +1
Disable DFF
written by Anil Passi- , June 21, 2010
Please use this to disable the context itself.
Inside a loop, you can delete all segments and disable all contexts, hence making the DFF ineffective.

DECLARE
l_enable BOOLEAN := FALSE;
BEGIN
-- Call the procedure
fnd_flex_dsc_api.enable_context(appl_short_name => 'APPL SHORT NAME HERE',
flexfield_name => 'DFF NAME HERE',
CONTEXT => 'YOUR CONTEXT NAME HERE',
enable => l_enable);
END;

report abuse
vote down
vote up
Votes: -1
...
written by heman , June 23, 2010
wow! doin well keep up the pace
report abuse
vote down
vote up
Votes: +0
Make some of the segments of a DFF read only for certain users
written by Ajay K , September 16, 2010
Hi Anil,

We have a requirement where in we want some of the segments of a DFF read only for certain set of users. For e.g. if there are 6 DFFs, a XYZ inquiry user should update attribute 1, 2 and 3 but attributes 4,5 and 6 should be read only. However, XYZ Super User should be able to update all the 6 attributes.
I have browsed through all of your articles and tried everything from context sensitive flexfields, forms personalizations, security enabled DFFs except for custom.pll.

Thanks,
Ajay
report abuse
vote down
vote up
Votes: +0
so good
written by replica carrera sunglasses , June 14, 2011
what they can provide to you will be no less than the luxury ones. When it comes to the replica carrera sunglasses
report abuse
vote down
vote up
Votes: +0
Office 2007
written by Office 2007 , December 06, 2011
I will keep your new article. I really enjoyed reading this post, thanks for sharing
report abuse
vote down
vote up
Votes: +0
Write comment
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
smaller | bigger

security image
Write the displayed characters


busy
Last Updated ( Sunday, 20 June 2010 10:39 )  

Search apps2fusion