Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
fatima4
Explorer
1,453

We have looked into SAP documentation and SAP recently recommended using ${body} instead of ${in.body}. In order to identify which artifacts are using this code in an efficient time, especially since we don't yet have a full Git pipeline. (~500 iflows in our current Integration Suite CI capability). We implemented the search code tool. By specifying ${in.body} as the search parameter, the tool scans all iFlows, identifies where this string is used, and returns the names of the relevant iFlows. 

fatima4_0-1738177180528.jpeg

https://help.sap.com/docs/cloud-integration/sap-cloud-integration/using-camel-simple-expression-lang...

This tool is having below features:

  • To search a specific code in:
    • Script collection
    • Resources
    • Search function name in message mapping when the iflow uses folder .mmap
  • This tool can't search in function libraries types

High level flow:

fatima4_0-1737149812574.png

 

This tool needs to support multiple packages

Trigger process for this tool execution is based on start timer.

fatima4_0-1737572907121.pngPrerequisites:

  1. Cloud integration credentials:
    1. Create role collection searchCodeiflows and add roles
      1. fatima4_0-1737573134520.png
    2. Create user and assign role connection searchCodeiflows
    3. This user credential is being use to get information about script collection, resources, etc.

To be able to use the tool,

  1. Download the SearchCodeTool project from the BTP-Integration-Suite repository: https://github.com/FatimaMel/BTP-Integration-Suite 
    1. Create a searchCodeTool.zip folder with those files inside:
      1. fatima4_0-1738175853226.png 
  2. In SAP integration suite, upload the searchCodeTool.zip folder as type Integration Flow in a package
    1. fatima4_1-1738175882435.png
  3. Create in security material:
    1. User Credentials created earlier at step 1.b in Prerequises
      1. fatima4_2-1738175927766.png 
  4. In configuration of the artifact, set the parameters:
    1. choosePackagesId is for searching in specific packages. Ex: packageId1||packageId2
    2. CIDesignTime with the domain url of the deployment iflow, but remove '-rt' from the url
      1. fatima4_3-1738175976872.png
    3. codeToSearch is the specific code to search
    4. searchCodeUserCred is the name of User Credentials created at step 3.a
    5. SearchInResourcesAndMapping and SearchInScriptCollection are for searching in specific areas. If no value is specified, it will be set to true. 
      1. fatima4_4-1738176018460.png
  5. Performance of the iflow:
    1. The performance depends on the number of packages and integration flow. For about 50 packages and around 350 iflows, it can take up to 7 minutes.

 

 

7 Comments
DG
Active Contributor

Cool it is useful to be able to search for such content. 

And idea could be also to show the result here. 

 

In Figaf we added similarly concept called tagging that allows you to search via regex/xpath that will allow you to search continues for such problems. 

Nice blog Fatima. Thanks for sharing with community. 

Daggolu_PremSai
Explorer
0 Kudos

Hi Fatima,

Thanks for the blog.

while uploading the SearchCodeTool.zip file in integration suite, getting below error.

Daggolu_PremSai_0-1738310611608.png

Could you please check and update the files in GitHub repository ?

oguzhanserin
Discoverer

Dear Fatima,

It’s always exciting to see open-source solutions that help streamline development processes—especially within the SAP ecosystem. The code examples and step-by-step guidance you provided offer invaluable insights for fellow developers looking to enhance their integration workflows. Kudos to you for sharing such a well-structured and helpful resource!

In Acorel, We have created a specialized tool to address the impending deprecation of the ${in.body} statement or any other mass changes. Specifically, our solution does not only automate the task of scanning but also creates backups, replaces outdated references with the new ${body} notation, redeploys flows, and provides a comprehensive report—all to ensure a safe and efficient transition. And this proved to be successful in some clients already.

It is great that all these tools or flows help clients to incorporate any changes smoothly, especially for the changes that has to be implemented in multiple scenarios!

Best regards,

Oguzhan

fatima4
Explorer
0 Kudos

Hi @DG,

Thank you for your comment !

For the result, you will be able too see it in the Monitor Message Processing, there will be two attachments one for the result and one for the errors: 

fatima4_0-1738336026227.png

Thank you !

Fatima

fatima4
Explorer
0 Kudos

Hi @Daggolu_PremSai,

Thank you for your comment !

I updated the github repository with the searchCodeTool.zip, you can directly download it and upload it in BTP. Please let me know if you have any further issues.

Thank you, 

Fatima

Daggolu_PremSai
Explorer
0 Kudos

Hello @fatima4,

Thanks for the update, now its working!

Labels in this area