!!!MAINTAIN FUNCTIONS

Functions are those user interface components or features which provide the business functionality of the  product. As a result, they may be screen forms, processes, reports, utilities, menus, capabilities, tools, or procedures. 

This section explains the Maintain Functions (IMFN) screen and its associated fields. 

The Maintain Functions (IMFN) form describes each function within the system as well as defaults that are used elsewhere.   

This screen allows you to control the individual functions within the application. All functions must have their execution rights defined for users or roles in order for those functions to be accessed. You can indicate whether a specific user or role may create, retrieve, update or delete data within a function.  

This screen also allows you to indicate the purpose of the function, attach HTML files and control other features such as print orientation and function type. 

There are two types of functions: 
|Internal Function|The main purpose of an Internal Function is to allow you to create, view, edit and delete your company’s information within the application.   For example, all the individuals who will be using the application are maintained as a list of users through the Maintain Users ([IMUS]) screen.\\In addition, these internal functions allow you to customize some of the structure of the application to suit your company’s needs.  You can indicate how information will be presented and who will be able to access or edit this information. 
|External Function |External Functions are links to either external web pages or to documents stored outside of the application.   For example, you may have a company policy that you would like to have accessible on the application.   You can create a new function which points the application to that document so that users may view it online. 
Through the IMFN screen, you will be able to modify the Internal Functions and also create and modify External Functions. 

The function table data is system provided, although certain options may be tailored by the system administrator, and new custom functions (e.g. procedures) may be added.  Typically, there is no modification of provided functions and they should not be changed unless directed to do so by Support.
 
Security is defined at the function level. A user must be granted execution rights to the function to be able to access it. 

The definition data for the Maintain Functions screen is stored in the [P2K_AM_FUNCTIONS], [P2K_AM_EXECUTION_RIGHTS], [P2K_AM_PREFERENCE_VALUES] and [P2K_CM_CHANGE_REASON_USAGES] tables

;[Product|PRODUCT_CODE]:Which product the function applies against.  Every function must belong to a product of one type or another. 
;[Function Name|FUNCTION_NAME]:Name of the function. This is the shortcut code that you can type in the Command window.  For system supplied functions, this should not be changed. 
;[Description|DESCRIPTION]:Description of the use/purpose of the function. 
;[Description (FRE)|]:This field provides the description in an secondary language. (On the example screen, the second language is identified as French -(FRE)’.)
;[Function Type|FUNCTION_TYPE]:Defines that the function is a screen, menu, procedure etc.  
;[Usage|FUNCTION_USAGE]:The Usage field indicates where the function originates.  The function may be system supplied or user defined. 
;[Computer Language|COMPUTER_LANGUAGER]:Specifies the computer language in which the function has been developed. 
;[Destination Format|DESTINATION_FORMAT]:
;[Function Style |FUNCTION_STYLE]:
;[Subject Table|]: 
;[Find LOV|]:
;[Extends|]:
;[PL/SQL Logic|PLSQL_BLOCK]: 
;[Web Address|WEB_ADDRESS]:If the function is to call up a web page or document on a server, the URL for that page or document will be provided in this field.
;[Implementation Name|IMPLEMENTATION_NAME]:
;[Where to Run |WHERE_RUN]:Determines that the function runs on the client or on the server. 
;[Function Level|FUNCTION_LEVEL]:Describes the level of complexity of the function, from low to high. 
;[PA Type|]:
;[Create Allowed|]:If the Create Allowed toggle is ON, users are able to add records with the function. If the toggle is OFF, no user is permitted to add records with the function. 
;[Retrieve Allowed|]:If the Retrieve Allowed toggle is ON, users are able to browse records with the function. If the toggle is OFF, no users is permitted to browse records with the function. 
;[Update Allowed |]:If the Update Allowed toggle is ON, users are able to change records with the function. If the toggle is OFF, no user is permitted to change records with the function. 
;[Delete Allowed|]:If the Delete Allowed toggle is ON, users are able to delete records with the function. If the toggle is OFF, no user is permitted to delete records with the function. 
;[Purpose|PURPOSE]:This field allows you to provide a description of the menu item (either function or sub-menu). 
;:If you are using the web menu instead of the web splash, the text you supply here will appear on the Menu as the description under Label. 
;:The purpose provided here will not be seen on the splash screen. 
;[Copy Function and Form|]:
\\  \\
----
!!Execution Rights tab 
The Execution Rights tab allows you to grant specific users or roles access to the function and to define in what capacity. 

;[Role|] or [User|]:These fields allow you to chose the individual or role you wish to assign execution rights to. 
;[Create|CREATE_ALLOWED]/[Retrieve|RETRIEVE_ALLOWED]/[Update|UPDATE_ALLOWED]/[Delete Allowed|DELETE_ALLOWED]:These toggles allow you to indicate the specific execution rights you wish grant to the user or role. 
\\  \\
----
!!Preferences tab
The Preferences tab allows you to add features to the function, such as headers or footers. 
 
;[Preference|PREFERENCE_CODE]:If the function has any preferences associated with it, you may define those preferences in this field. There are a list of preferences in the drop down menu for you to select from. At this time, however, there are only two preferences that are applicable to functions within the application: 
;:HEADER INFO and FOOTER INFO 
;:These selections will allow you to add text to either the bottom (footer) or top (header) of the function form. 
;:The Header and Footer preferences are exclusive to functions and may not be attached to other items such as roles. 
;:ALLOW FIND FOCUS 
;:This will prevent a screen from having their list or find block hidden. This is particularly useful for the screens that have no other data other then the find block. 
;[Priority|PREFERENCE_SEQUENCE]:This field allows you to define the order in which the preferences will appear. Although at this time none of the preferences would occur at the same time, preferences developed in the future, however, may need a sequential order. 
;[Value|PREFERENCE_VALUE]:You need to specify the details of the preference in this field. 
;:For example:
||Preference|| 	Value 
|FOOTER INFO| 	docs/WEECN_FOOTER.html 
|ALLOW FIND FOCUS| 	N 
|Add OPEN IN SAFEMODE |

;:You must create an HTML file and save that file in the document folder on your application server. 
;:e.g. oracle/ias_903/j2ee/home/applications/selfService/HLApplication/doc/file.html 

;:Once the file has been saved, you will indicate the folder, file name and extension; there is no need to include the path up to the application folder. 
;:e.g. doc/file.html 
;:Both the file name and extension must be entered with the exact spelling and case as indicated in the document folder. 
;:`Preference' and 'Value' are mandatory fields that must be completed when you are creating a new record. 
\\  \\
----
!!Change Reasons tab 
;[Change Reason|CHANGE_CODE]:The reason the function has been modified is provided in this field. 
;[Description|DESCRIPTION]:This field full details about the change reason.