【正文】
to from your user exits::!ID:!VALUE:!MEANING!DIR:!ID : You can use :!ID to pass different information depending upon the circumstance. For flexfield routines, :!ID can pass either a bination ID number of an entire bination of segment values ,or it can pass a concatenated string of the individual flexfield segment values.:!VALUE : You use :!VALUE to access the user’s input .:!VALUE refers to the displayed values that appear in the flexfield window and in the concatenated values field. If you do not specify a value for :!ID ,then :!VALUE is passed to your report or stored in your segment column.:!MEANING : You use :!MEANING to pass the concatenated descriptions of your flexfield values. The value description appears as usual next to the flexfield segment value and in the concatenated description field. If you are writing your own function,you should code your user exit to write the value description into :!MEANING.!DIR : Use !DIR for the NAVIGATE argument of key and descriptive flexfields routines. !DIR allows the flexfields routines to determine the proper navigation direction when you use a flexfield as a segment value set.Example of Special validationProblem224。 Suppose you want to let your users pass a single bination of concatenated Accounting flexfield segments as parameter to a report. To let your user choose a single bination ,you must provide a key flexfield window from within the report parameters window on the reports form.Solution224。 You simply define a value set with special validation and use your familiar flexfield user exit. For data entry validation(Event=Edit)FND POPID ALLP_SHORT_NAME=SQLGL CODE=“GL” NUM=101 REQUIRED=Y VALIDATE=FULL ID=:!ID SEG=:!VALUE DESC=:!MEANING NAVIGATE=!DIR DINSERT=NFor data entry validation(Event=Load)FND LOADID ALLP_SHORT_NAME=SQLGL CODE=“GL” NUM=101 REQUIRED=Y VALIDATE=FULL ID=:!ID SEG=:!VALUE DESC=:!MEANING DINSERT=NFor data entry validation(Event=Validate)FND VALID ALLP_SHORT_NAME=SQLGL CODE=“GL” NUM=101 REQUIRED=Y VALIDATE=FULL ID=:!ID SEG=:!VALUE