Customize file type detection
This option is only available since 4.6.0.3 patch.
When you perform Populate operation from SCM, files are organized in various types based path, file extension etc. You can customize this behavior by updating project properties in many cases. You can customize this further by using Groovy script in SCRIPT property of FD_MATCH_SCRIPT_OVERRIDES_EBS.
Here is an example of matching files from /install/sql as Concurrent Program SQL and /install/bin as Script with Execution.
set define off; INSERT INTO FF.DB_PROPERTIES ( DB_PROPERTIES_ID, DB_PROPERTIES_NAME, DB_PROPERTIES_KEY, SEQUENCE_NUMBER, DESCRIPTION, IS_ACTIVE, IS_REQUIRED, IS_ENCRYPTED, DATA_TYPE, VALIDATION_SCRIPT, VALIDATION_MESSAGE, MIN_VALUE, MAX_VALUE, DISPLAY_ROWS, DISPLAY_COLUMNS, LIST_DATA, CREATED_ON, CREATED_BY, UPDATED_ON, UPDATED_BY, VERSION_NUMBER ) VALUES ( 1000000000000010, 'FD_MATCH_SCRIPT_OVERRIDES_EBS', 'SCRIPT', 0, 'Overriding match script', 'Y', 'Y', 'N', 'String', null, null, null, null, 1, 1, null, sysdate, user, sysdate, user, 1 ); INSERT INTO FF.DB_PROPERTIES_DATA ( DB_PROPERTIES_DATA_ID, DB_PROPERTIES_ID, SEQUENCE_NUMBER, DB_PROPERTIES_VALUE, DESCRIPTION, IS_ACTIVE, CREATED_ON, CREATED_BY, UPDATED_ON, UPDATED_BY, VERSION_NUMBER ) VALUES ( 1000000000000010, 1000000000000010, 0, 'dummy', '', 'Y', sysdate, user, sysdate, user, 1 ); BEGIN update FF.DB_PROPERTIES_DATA set DB_PROPERTIES_VALUE = ' if (!binding.variables.containsKey(''FDEBS_APPLICATION_SHORT_NAME'')){ throw new Exception(''Application Short Name not found. Please Configure FDEBS_APPLICATION_SHORT_NAME property''); } FILE_CONTENT_NEEDED=Boolean.TRUE; CP_SQL_DIR=''install/sql''; if (FILE_PATH_PREFIX.contains(CP_SQL_DIR) && FILE_EXTENSION.toUpperCase().equals(''SQL'')) { return ''CP_SQL''; } SCRIPT_DIR=''install/bin''; if (FILE_PATH_PREFIX.contains(SCRIPT_DIR)) { return ''SCRIPT_EXECUTION''; } return null; ' where DB_PROPERTIES_ID = (SELECT DB_PROPERTIES_ID FROM FF.DB_PROPERTIES WHERE DB_PROPERTIES_NAME='FD_MATCH_SCRIPT_OVERRIDES_EBS' AND DB_PROPERTIES_KEY='SCRIPT') AND SEQUENCE_NUMBER = 0; END; / commit;
The following variables are available for use in the Groovy script.
Variable Name | Example using /path1/path2/APXSOBLX_1.rtf |
FILE_PATH | /path1/path2/APXSOBLX_1.rtf |
FILE_NAME | APXSOBLX_1 |
FILE_PATH_PREFIX | /path1/path2 |
FILE_EXTENSION | rtf |
PARENT_FOLDER | path2 |
Project Properties - Code for each property can be used in script |
Return FILE_CONTENT_NEEDED as Boolean.TRUE if file content is necessary to derive attribute defaults or return Boolean.FALSE.
Also, return one of the following object type when you can derive type, otherwise return null and FlexDeploy will determine object type in the usual manner.
Code to be Returned | For Type |
---|---|
OAF_JAVA WORKFLOW_XML OAF_MDS CP_SQL JAVA_SP SQL XDF SQL_LDR JLT AOL FORM REPORT WORKFLOW_DEFINITION LIBRARY PUBLISHER PROG FONT SCRIPT PERL_MODULE MEDIA HTML OTHER WEB_ADI SETUPS SCRIPT_EXECUTION __IGNORE__ | Oracle Application Framework (OAF) JAVA Workflow XMLs Oracle Application Framework (OAF) MDS Concurrent Program SQLs Java Stored Procedures DB Objects (SQLs) XML Definition Files (XDF) SQL*Loader Java Loader Text (JLT) Application Object Library (AOL) Forms Reports Workflow Definitions Libraries Publisher Files Program Files Font Files Scripts Perl Modules Media Files HTML (Web) Files Other Files Web ADI Functional Setups Script With Execution Ignore the file completely |
- style