The FlexDeploy 4.0.3 - Patch Release 05-22-2017 introduces a "Visible" attribute for FlexFields.  This is helpful to perform validations of the build/deploy request before the form is submitted.  This is achieved by creating an invisible FlexField for either the Deploy Request or Build Request (so that field does not appear on the screen) and using the Validation Script to perform such logic.

We recommend using FLEX_FIELD_10 for performing Build or Deploy request related custom validations. You can do this for Build Request or Deploy Request or both. 

  

Here are some samples of Validation script:

if (PartialDeploymentsFlag && ProjectType!=null && ProjectType.equals("EBS") 
    && (PackageName==null || PackageName.equals("")))
{
  ValidationMessage="Package Name is required";
  return false;
}
return true;


if (PartialDeploymentsFlag && ProjectType!=null && ProjectType.equals("EBS"))
{
    if(StartTime == null && "PROD".equals(EnvironmentCode))
    {
      ValidationMessage="Please enter Start Time for deployment.";
      return false;
    }
}
return true;


if (MainStream)
{
   ValidationMessage="Deployment not allowed from Main Stream.";
   return false;
}
return true;