Customize file type detection

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_DATA_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

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_ID

3911701

PROJECT_NAME

XXHR

FOLDER_PATH

FlexDeploy / EBS

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

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

The following macros are not currently supported in the footer:
  • style