Project Properties


Overview

When a new application is created or when the Properties is selected from the workbench toolbar, the properties dialogue box will launch, this is where the core definition of the application is set.

The property dialogue box contains two types of information:

  1. Application identification: These are the identification fields of the application, including Form id and Description.
  2. Application properties: These are the proprieties settings of the application, including using with SAP workflow and implementation class


I. Application identification:

The below fields comprise the application identification characteristics:

  1. App ID - This contains the project name which is the unique identifier of your application. This is also used for configuration, reporting and to craft the URL. 

    The App ID (Project Name) can no longer be modified in the Project Properties once the project has been created.

  2. Description - This should contain the user-facing name of the application. This will display on the application tile and against corresponding requests in My Forms. 
  3. Icon - The selected icon will display on the application tile and against corresponding requests in My Forms. 
  4. Owner - Identifies the owner of the application, this will automatically default to the creator's system user ID.
  5. Sub Header -  This is optional text that will be displayed under the App's description in the Tile (in FAB New Form). It can be used as an identifier for grouping the apps into functional or organizational areas.  
  6. Footer -  The is an optional text-only area, this can be used to identify tile grouping i.e. Human Resources. 
  7. Date Created - date when the application has been created.
  8. Date Modified - date when the application is last modified.

Application properties:

The below fields comprise the application property characteristics:
  1. Do Not Save to Tables – Marking this setting will tell the application to not save the instance details (run-time data) into the table (e.g. /IQX/FORMS_INST). Header information of the instance will still be saved into the table /IQX/FORMHD_INST. This is used when the instance's detail needs to be saved in a customized table outside of the /IQX/ namespace and there is no need for the redundant data.
  2. Keep Data Revisions – When ticked, this instructs the FAB run-time to keep a version of each request upon each change of status. This essentially creates a changelog or an audit trail for each request. This is mandatory when using Workflow Mode (Process - Enhanced Workflow)
  3. Show in My Forms - When ticked, this enables the application to appear in the “My Forms” inbox of FAB. It generally should be ticked to allow users to review/approve submitted requests.
  4. Show in New Forms - When ticked, this enables the application to appear in the “New Form” launch page of FAB and allows the user to initiate a new instance of the application. This is usually ticked, but there may be some scenarios where the instance of the application is auto-generated by another process. In this circumstance, you may prefer to prevent the user from creating a new instance. This option is used in conjunction with the Configuration Transaction /IQX/FAB_CONFIG to control which application is available to certain users.
  5. Anonymous Access - If ticked, will allow the application to be used without requiring an SAP user-id. A dedicated service is used which is configured with a System User Account so that individual user log-in is not required.  Configuring your App for Anonymous Access provides additional information.
  6. Web App/Repository - An associated BSP Repository is created that can be used for storing MIMEs such as images, CSS, scripts etc and it can be used as the container for a generic web application.
  7. Stand-Alone UI5 App - Will create an independent application with a separate URL from FABAll the features of a FAB App are available, but the App can be modified outside of FAB using external tools such as Eclipse IDE or Web IDE. When selected, the setting for the offline capability of the app will be available.


                                           

    When an application has been converted to a Stand-Alone UI5 app, and you want to preview the app in the FAB workbench, you will need to set the preview server in Settings → Options menu option from within the Developer Workbench. Use this in combination with the 'App Path' setting in the Project Properties to obtain the full URL.

    Working Offline describes the implementation details.             

  8. Encrypt Data – Marking this setting will implement a basic encryption process when saving the data into the IQX staging tables, so that the data is not easily readable via /IQX/DATA_REPORT or by viewing the data in SE16. The developer has the option of implementing their own encryption/decryption logic if desired.

    Data Encryption describes the implementation details.

  9. Authorization - This will restriction of access to the application at the user level.
  10. Auth Group - This will restriction of access to the application at the group level.

    App-Specific Authorization describes the implementation details                                       

  11. Number Range - Specify the pre-configured number range and interval to be used by the app.
  12. Workflow Mode - Defines the type of workflow if a workflow is required. 'Process' is the recommended setting for 'Enhanced Workflow'; it takes advantage of the FAB Process Designer, and has much more sophisticated capabilities. 'Classic' is the original legacy workflow mode, and is no longer recommended to be used.
  13. Agent Determ. - This is a button that should be clicked if the application uses another FAB Application for Agent Determination. That is, if the Enhanced Workflow is used and a separate application is used for determining the approvers, then this can be specified here. See for example IQX_CAPEX_DEMO, where the Role Agent Determination App is specified as 'IQX_CAPEX_DEMO_MATRIX' and 'App Key' = 'Version 1'. Therefore in the implementation of method 'DETERMINE_APPROVERS_FOR_ROLE', the code will read the data from an instance of 'IQX_CAPEX_DEMO_MATRIX which has the property Key = 'Version 1' and use that data to populate the approvers for each Role as needed.
  14. Lock Refresh Interval - For an Enhanced Workflow where parallel Tasks are used, if any of the Tasks is configured with the attribute 'Lock', then at run-time the system will lock the Instance and prevent more than one user accessing the same Instance/Task at the same time. The lock is kept open via the use of a timer (in JavaScript) to prevent the back-end from losing the lock due to system inactivity after a specific period. The 'Lock Refresh' interval should be chosen as a value that is less than the time-out of the back-end system, in order to keep the lock active.
  15. Implementing Class - This is an "Optional" setting explained later in The Application Life Cycle. Briefly, it is the ABAP class that handles ABAP logic for actions such as:
    a. Defaulting form data. b. Back-end validations before saving data Actions upon submission (such as creating a SAP master data object using a BAPI or similar). 

    Use a unique Implementing Class for every project. The system does not allow the sharing of class between projects.

  16. Use with SAP Workflow - Enables the app to use a SAP Workflow. 
  17. URL - Generates the application's URL. To generate URL for the first time or copy the URL (for using and pasting the URL to the browser), select  .
  18. Language - Application's language that can be used for translation.

    Supporting Multiple Languages describes the implementation                               

  19. Use Data Model -  setting this property will allow the application to make use of the advantages of using Data Model Nodes and leverage the runtime optimization.

    Data Model describes the implementation                               

  20. Type Declare - Data Model will be updated in the public, private or protected sections of the implementation class (via attribute GS_DATA)
  21. Save/Cancel -  Actions to apply or discard the changes.