The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here

how to pass one attribute values from one process to other process

sgnarkhede2016sgnarkhede2016 Member Posts: 152 Contributor II
Hello,
I have one process that cotains atttribute  "Name" with value "Sachin"

In my other process i want to retrieve records of only "Sachin" that mentioned above 

Thanks In Advance

Best Answers

  • BalazsBaranyBalazsBarany Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, RapidMiner Certified Expert Posts: 955 Unicorn
    Solution Accepted
    Hi,

    there's a detailed video on the Academy about the the different ways to define macros, including the process context.
    https://academy.rapidminer.com/learn/video/macros-demo

    Regards,
    Balázs
  • BalazsBaranyBalazsBarany Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, RapidMiner Certified Expert Posts: 955 Unicorn
    Solution Accepted
    Hi!

    In xyz.rmp you define the macro "name" with an initial value for testing your process.
    Whenever you start the process, the macro will be already defined.
    For accessing the parameter in Read Database use "prepare statement" and enter the macro value in the Edit Enumeration window. To refer to the macro value, use this syntax: %{macroName}
    Inside the SQL query in Read Database you have to write a question mark to refer to the current value. E. g.:

    select *
    from mytable
    where name = ?

    It is also possible to write the macro directly into the SQL statement (where name = '%{macroName}'). However, this can lead to SQL injection or syntax errors, so the prepared statement way is much better. 

    In abc.rmp you use Execute Process and enter the macro name and value to pass to xyz.rmp.

    Regards,
    Balázs

Answers

  • MartinLiebigMartinLiebig Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, RapidMiner Certified Expert, University Professor Posts: 3,533 RM Data Scientist
    Hi,
    likely you want to use Extract Macro and hand it over as a macro.

    Best,
    Martin
    - Sr. Director Data Solutions, Altair RapidMiner -
    Dortmund, Germany
  • BalazsBaranyBalazsBarany Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, RapidMiner Certified Expert Posts: 955 Unicorn
    Hi,

    you can define macros in the process context. (Activate the Process Context panel in the View menu if you didn't yet.) These macros (text variables) are available as the process parameter interface. In Execute Process you can specify the macros and their values to pass into the subprocess.

    Regards,
    Balázs 
  • sgnarkhede2016sgnarkhede2016 Member Posts: 152 Contributor II
    edited March 2021
    Can you please give any example ,not understanding how to use context
  • sgnarkhede2016sgnarkhede2016 Member Posts: 152 Contributor II
    Thanks,But question still there i need to set macro in other process and acess it other how can that do this.
    e.g  i have process "abc.rmp" that contains macro "name" with value sachin and i have another process "xyz.rmp" in this process i want use "name" in my read database query
Sign In or Register to comment.