LinkedIn
Copied!

Table of Contents

Configuring an activity to access BIX extract files

Version:

Only available versions of this content are shown in the dropdown

After a Business Intelligence Exchange (BIX) extraction process completes in a Pega Cloud environment, obtain the BIX extract files from your Pega Cloud File Storage repository. You can use an activity to pull the extract files onto your enterprise local storage. The activity can be helpful when the BIX FTP listener encounters an error, a transfer fails, or if you do not subscribe to the Pega SFTP service.

Prepare your BIX extract files and find the directory in which they reside to determine the activity code.
  1. Place files in your Pega Cloud File Storage repository by running a BIX extraction process.

    For more information about the BIX extraction process, see Creating and running a BIX extract rule.

  2. Create a library with which to integrate a function.
  3. Find the extract file and directory of the extract file in the Pega Cloud File Storage repository by using a repository API.

    Use D_pxListFiles to find the file path and file name of your BIX extract files.

    For more information about using repository APIs, see Repository APIs.

The BIX extraction process for the XML and CSV formats, as well as their manifest files, places the BIX extract files into your Pega Cloud File Storage repository. You do not have direct access to the Pega Cloud File Storage repository but you can pull BIX extract files to a location in your enterprise network by using the Pega Cloud API through an activity.

  1. In the header of Dev Studio, click Create Technical Function .

  2. In the Label field, enter a name for the rule.

  3. In the Library field, select a library that contains an empty Java directory.

  4. In the Parameters section, enter the following parameter names and Java types:

    Parameters

    Name Java type
    tools PublicAPI
    repositoryName String
    filePath String
    fileName String
  5. Click Create and open.

  6. On the Java tab, in the Compilation status section, select the Function ready to be compiled? check box.

  7. In the Java source field, enter the following code:

    
    String fullFileName: "file://' + repositoryName+ ":" + filePath+ “/"+ fileName;
    try {
    
    	HashStringMap aMap = new HashStringMap();
    	aMap.put("ContentDisposition", "attachment; filename=\"" + fileName *
    	aMap.put("contentType", "application/octet-stream");
    
    	PRFile fileloDownload = new PRFile(fullFileName);
    	if(fileToDownload.exists()) {
    	tools.sendFile(fileToDownload, false, aMap, true);
    	oLog.error("pyDownloadZipFile: File exists and sent " + fullFileName);
    
    	} else {
    	oLog.error("pyDownloadZipFile: Could not download file. File " + fullFileName * " does not exist.");
    	tools.getPrimaryPage().addMessage("DownloadFailedFileDoesntExist");
    
    }
    } catch (Exception e) {
    oLog.error("pyDownloadZipFile: Failed to download file" * e.getMessage)));
    }
    
    
  8. Click Save.

  9. In the header of Dev Studio, click Create Technical Activity .

  10. In the activity rule, enter a label, select an application and the associated ruleset, and then click Create and open.

  11. On the Steps tab, for the first step, enter the following information:

    1. In the Method field, enter Property-Set.

    2. In the Description field, enter Set the file parameters.

    3. Click the Expand icon.

    4. In the Method Parameters section, in the PropertiesName field, enter Param.fullFileName.

    5. In the PropertiesValue field, enter "file://"Param.repositoryName+":"+"/"+Param.fileName.

    6. Click the add row button.

    7. In the PropertiesName field, enter Param.Checkfile.

    8. In the PropertiesValue field, enter Param.filePath+"/"+Param.filename.

    9. Click Jump.

    10. In the resulting window, select the Enable conditions after this action check box.

    11. In the When field, enter @hasMessages(D_pxGetFile[repositoryName:Param.repositoryName,filePath:Param.CheckFile, responseType:"STRING"]).

    12. In the If true list, select Jump to Later Step.

    13. In the True param field, enter DPAGE.

    14. In the If false field, enter Continue Whens.

    15. Click Submit.

  12. For the second step, enter the following information:

    1. In the Method field, enter Java.

    2. In the Description field, enter Java code to download the ZIP file.

    3. Click the Expand icon.

    4. In the PropertiesName field, enter Param.fullFileName.

    5. In the PropertiesValue field, enter "file://"Param.repositoryName+":"+"/"+Param.fileName.

    6. Click the add row button.

    7. In the PropertiesName field, enter Param.GetfilePath.

    8. In the PropertiesValue field, enter Param.filePath+"/"+Param.filename.

    9. Click Jump.

    10. In the resulting window, select the Enable conditions after this action check box.

    11. In the When field, enter hasMessages.

    12. In the If true list, select Jump to Later Step.

    13. In the If false list, select Exit Activity.

    14. Click Submit.

  13. For the third step, enter the following information:

    1. In the Method field, enter Property-Set.

    2. In the Description field, enter Using the function instead of Java step.

    3. Click the Expand icon.

    4. In the PropertiesName field, enter Param.Test.

    5. In the PropertiesValue field, enter the name of the function that you created.

  14. For the fourth step, enter the following information:

    1. In the Method field, enter Show-Page.

    2. In the Step Page field, enter Attachment Page.

    3. In the Description field, enter Show if the Java page has an error.

    4. Click When.

    5. In the resulting window, select the Enable conditions before this action check box.

    6. In the When field, enter Always.

    7. In the If true list, select Continue Whens.

    8. In the If false list, select Skip Step.

    9. Click Submit.

    10. Click Jump.

    11. In the resulting window, select the Enable conditions after this action check box.

    12. In the When field, enter Always.

    13. In the If true field, enter Exit Activity.

    14. In the If false field, enter Continue Whens.

    15. Click Submit.

  15. For the fifth step, enter the followings information:

    1. In the Method field, enter Show-Page.

    2. In the Step Page section, enter D_pxGetFile[repositoryName:Param.repositoryName,filePath:Param.CheckFile, responseType:"STRING".

    3. In the Description field, enter check if file/filepath/repositoryname does not exist.

  16. Click Save.

  17. On the Actions list, select Run.

  18. In the fileName parameter field, enter the name of the extract file.

    The file name should reflect the extract file placed in the repository.
  19. In the filePath parameter field, enter bix/work_BIXFTPListener/completed.

  20. In the repositoryName field, enter pegacloudrepository.

  21. Click Run.

    Your browser opens a new tab and displays a download prompt for your BIX extract file.
Did you find this content helpful?

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.