Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

When you perform Populate 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.and further customizations can be done by using groovy script a.k.a Match Script override.

Info

If your FlexDeploy version is 5.2.0.1 or lower, please see Customize file type detection. as screens explained in this document were added as part of 5.2.0.2.

Match script override is done for specific project type. For example, you can customize how FlexDeploy determines type for EBS project files as shown below.

Access object type details screen by using menu option - Administration - Customize - Object Types.

Image Added

Search for specific Project Type, in this case EBS. Click on project type name in Project Type column.

Image Added

Update Match Script (groovy), then click Save.

Image Added

Here is an example of matching files from /install/sql as Concurrent Program SQL and /install/bin as Script with Execution.

Code Block
languagesqlgroovy
themeRDark
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.

Now let's talk about how you write such groovy script. You have access to various details about file and project properties. You can make decision based on available variables about file, then return appropriate Object Type Code, or you can return null in which case FlexDeploy will make determination based on default logic as documented in EBS Object Types Reference.

Match Script Variables

Variable NameExample using /path1/path2/APXSOBLX_1.rtf
FILE_PATH/path1/path2/APXSOBLX_1.rtf
FILE_NAMEAPXSOBLX_1
FILE_PATH_PREFIX/path1/path2
FILE_EXTENSIONrtf
PARENT_FOLDERpath2
Project Properties - Code for each property can be used in script
PROJECT_ID122703
PROJECT_NAMEXXHR
FOLDER_PATH/ FlexDeploy / EBS

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.]

EBS Object Type Codes

Code to be ReturnedFor 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