3 Replies Latest reply on Nov 25, 2021 4:53 AM by Jharana Patra

    Data Integration

    Nag Dinamani New Member



      We are trying to implement pushdown optimization for one of the mappings. In expression, we are using the variable port. The PDO doesn't support variable ports.

      Below expression, we are using in variable port

      SetMaxVariable($$RunDate, substr(to_char(ADD_TO_DATE(Systimestamp(),'DD',-1),'YYYY-MM-DD HH24:MI:SS.US'),1,23))

      is there any other way to implement the below expression and also the pushdown optimization needs to work?



        • 1. Re: Data Integration
          user126898 Guru

          variables are typically only supported by the Informatica runtime for a variety of reasons.  Instead you will need to switch the storage of he variable to a file or table.  You would need to create a pre-step to grab said value and pass to the mapping as an input parameter to use in the query or filter.





          • 2. Re: Data Integration
            Nico Heinze Guru

            A mapping variable is used to get some aggregate expression from the input data stream. Either some max value or some min value.

            Which means that you can get the same result using an Aggregator transformation (without any group-by port, meaning it produces exactly one output record for all input) which delivers this value somewhere (e.g. some database table or some output file). You would have to change the mapping to get the same value via an Aggregator, but it works.

            And the advantage of an Aggregator is that you can use it for PDO, as far as I know.

            This way you can get rid of the variable port and nonetheless get the output value you need, it's just a different target which (of course) must be processed differently from the mapping variable, but the principle is the same.




            • 3. Re: Data Integration
              Jharana Patra Guru

              Hi Nag,


              Instead of using the complex formulae if you use transformations ,then it should be taken as part of Pushdown optimization ,since the variable can't be calculated inside DB.