Transformation in a Process Flow

Hi there,
I am trying to use a transformation in a process flow and I am getting the following error -
RPE-02040: Internal error: SOMEFUNC cannot be converted to a constant value. Please correct the value.
I have a PL/SQL function SOMEFUNC(x, y) that takes two values and returns a varchar2(10). I imported this function as a transformation with the same name. The mapping after this takes a varchar2(10) as input.
As soon as I bind the input parameter of the mapping following this transformation, I get the above error. If I don't bind it, then there are no errors but that is not useful to me. I need to pass in the return value of this function to the mapping that follows it.
Has anyone been able to do this successfully? How did you get it to work?
This is OWB 10.2.0.2.
Thanks

Thanks for that link David,
that does explain some things but unfortunately I am still running into the same problem.
So here is what I have -
Start -> Transformation -> Assign -> Mapping -> End_Success
I could not see any way to add a variable in OWB 10.2.0.2.8. You could do this earlier from the Start operator but there is no such option in this version. The Assign operator seems to be designed for this.
I bound the mapping for Assign input value to Transformation's out bound value. And I bound Mapping's input parameter to Assign's output variable. I then validated and generated this process flow successfully. However while deploying, I still got -
RPE-02040: Internal error: Transformation cannot be converted to a constant value.
My OWB client version is 10.2.0.2.8 and repository's version is 10.2.0.2.0. Have you run into this problem before?
Thanks

Similar Messages

  • Transform activity in Process Flow

    Hi Guys,
    After wasting hour trying to get the SQLPlus activity working I noticed that I can just drop the stored procedures into the flow as a
    "Transform activity". I linked everything up but as soon as I put the "Transform activity" in the process flow it failes with
    a complete failure. The OWB Browser gives NO details. It just says complete failure. The stored procedure aka. "Transform activity" validates fine
    and executes fine when I do it manually via the DB console.
    Any ideas?

    Hi MccM,
    The OWB browser tells me that the sql load worked and the procedure did not. (I am not familiar with audit views but I doubt that the problem is on the database side since the stored procedure complies fine from there). I noticed that I can configure the activity and set the execution environment with is "NATIVE" in my case. - I dont have any options there.
    Here is a [screen print|http://www.metallon.org/test/e34.jpg] of the OWB browser.
    This is urgend now so I would be very happy for any help and generously give out the "Helpful" post points :)

  • How to run procedure in Process flow

    Hello,
    I have a small procedure which I want to run in between two different mappings. I want to achieve it in process flow.
    I had understanding that this can be done using transformation but didn't had much success.
    Please suggest.
    Thanks

    You are correct that this is done with a transformation in the process flow, and this is the way to do it.
    What kind of error message did you get?
    Was it something with the deployed location for the transformation not being set?
    If thats the case, in the design center, mark the process flow and right click, then choose configure. Find the transformation and set the location for where the procedure is deployed.
    Ragnar

  • Calling pl/sql package on different database in process flow

    Hi there
    Have a process flow which calls procedure on different database. This procedure truncates a table on the remote database.
    Please could somebody confirm we would need to set up dblinks from the owf_mgr schema to the remote database.
    New to wokflow - am i Correct in assuming the process flows run on the owf_mgr
    rather than the control center owbrt.
    Many Thanks

    Hi there,
    Thanks for the reply.
    If my understanding is correct I could have a procedure as follows.
    hkeeping.trunc_table@dblinkname('TABLE_NAME');
    Is this the case?
    Another alternative was to call directly the transformation in the process flow
    e.g. we have pl/sql package on remote database whioch truncates the remote table.
    When we try this with same procedure on same databas as owb user exists on then works fine.
    However on remote database get message below. Does this mean anything to you? How could we sort this?
    RPE-01003: An infrastructure condition prevented the request from completing.
      TEMP_PLOW:TRUNC_TABLE
    Error
    RPE-01038: Failed to evaluate expression null. Please modify the expression, redeploy and retry again.
       TEMP_PLOW:TRUNC_TABLE
    Error
    RPE-01003: An infrastructure condition prevented the request from completing.
       TEMP_PLOW:TRUNC_TABLE
    Error
    RPE-02226: Cannot test Control Center user REMOTEUSERNAME. This user must match the login credentials of the deployment location.
       TEMP_PLOW:TRUNC_TABLE
    Error
    ORA-01937: missing or invalid role name
    Many Thanks

  • Assigning today's date to process flow start actvity

    Hi,
    I am trying to assign today's date to my process flow which will be used as a common load date for multiple transformations within the process flow. I'm at a loss on how to do this. Any help would be appreciated.
    Thanks

    You can add variable to the start acitivity or create stand alone variable(global for Process Flow) in the left side panel (where you see selected objects/events) and give the value of the variable as sysdate. Make sure the Literal property is set to false meaning it is not literally SYSDATE but the value of sysdate.
    It worked for me.
    - Manohar

  • OWB Process Flows

    Hi,
    We have lot of process flows already created. They used Transformation object in many process flows. But they didn't write any PL/SQL code for this transfomation. They wrote shell scripts. They are giving lot of problems. Here my question is can we write shell scripts for transformation? What I know is we have to write PL/SQL code for transformation objects in process flows. If anybody have PL/SQL code for process flows transformation can you share?
    Thanks
    SS

    HI SS,
    sounds like you've got some issues there.
    You say they did not write PL/SQL But an OWB tranformation is PL/SQL. For example, it could be an entry point in a package, like WB_RT_CONVERSIONS.to_date(date). It could simply be a procedure, like WB_Disable_All_Constraints(p_table VARCHAR2 ). In either case, it is complied PL/SQL. And of course mappings become compiled packages in the target schema location.
    I'm puzzled. If there's no PL/SQL, then what does the actual work?
    Which leads me on to my next point. On the process flow pallete, there is a transformation object. You say they used many transformation objects. Then you say "they wrote shell scripts for transformation". But that's operating system code. You don't run OS code inside process flows (except in some unusual circumstances)..
    What do these shell scripts do? What do they execute?
    Finally, you write: "we have to write PL/SQL code for transformation objects in process flows" But surely, those are your mappings, no? And you don't write them, you generate them, no? And you wouldn't begin working on process flows until your mapping streams were complete, would you? Sorry, but I'm baffled by this comment.
    I'd be obliged if you could describe your software stack in a lot more detail, please. For examples, please see this thread: 10gR2: How do you run OWB from Enterprise Manager (OEM) and Scheduler? It is a discussion on running Mappings from Process Flows from Scheduler.
    I have to confess that right now, I cannot even see the shape of the stack you are trying to run, let alone conceptualize a solution, nor even grasp the meaning of your questions. More, and more detailed descriptions, would help enormously.
    Cheers,
    Donna

  • Process Flows Transforms

    Hi,
    I'm trying to include a PL/SQL function into a process flow from the public transformations. Whenever I validate the process flow it reports the error "VLD-10019 ... Function needs a valid deployment location". But I can't find anywhere to define the location of the public transformations, anyone know what I'm missing ?
    Cheers
    Pavel

    Hi Pavel,
    Did you take a look at the configuration for the process? Right click on the process and open configuration. In there you will see your activities.
    Go to the activity node and open this, then you will see a setting called "deployed location". Set that to the location your transformation is located in. Typically this is your target location.
    Hope this helps,
    Jean-Pierre

  • Transformation  activities in owb process flow

    could someone tell me please about process flow in owb ( oracle warehouse builder) 10.2 . how we can associate a procedure name with transformation.
    thanks

    refer OWB10gR2 user's guide regarding FTP option.
    http://download-uk.oracle.com/docs/cd/B31080_01/doc/nav/portal_booklist.htm

  • OWB 10.2 - Real name of transformation in Process Flow

    Hi,
    I haven't found anywhere how I can see transformation's real name in Process Flow.
    Thank you for helping me!

    hi
    check out this view
    select * from ALL_IV_PROCESS_ACTIVITIES
    it runs under owbrepos_owner
    rgds

  • Transformation in Process Flow

    hi
    I am using owb 11g and i am seeing some existing code which has been built by some one.
    In Process Flow, i couldn't see any Procedure name and their parameters, Could you some one let me know where i can find those stuff in 11g.
    thanks

    In process flow, left click on the procedure you want to see (select it) and than go Edit--> Synchronize and you'll see where it is in repository.

  • Data Type for Process Flow... PB with Date?

    I've got a problem by passing parameters in process flow.
    I have a mapping with a parameter DATE_EXEC (data type : DATE) and a default value that is TO_DATE('20/01/2007' , 'dd/mm/yyyy') . My mapping is working good when i launch it.
    I have a process flow which contains the mapping. This process has a parameter DATE_EXEC (data type : DATE). I bind the 2 DATE_EXEC. But when i launch my mapping the value is not recognized, I try with :
    - TO_DATE('20/01/2007' , 'dd/mm/yyyy')
    - 20/01/2007
    - 2007.01.20
    - 2007-01-20
    My question is what are the data type in process flow? They are not ORACLE TYPE.
    For example , a parameter in a mapping which is a VARCHAR2 must be input between quotes but if you bind it to a parameter of a process flow which is a STRING (not ORACLE Data type) , you must input it without quotes?
    Anybody has some rules about that?
    I apologize for my english, i'm a french people.

    Here is some information on the literal quote or not quote query and what I think you need to do at the end, hope it helps. Not exactly intuitive...since the flow designer (you) have to know what is a PLSQL object and what is not.
    1. Literal = FALSE
    When Literal = FALSE is set then the value entered must be a valid PL/SQL expression which is evaluated at the Control Center e.g.
    'Hello World!'
    22 / 7
    2. Literal = TRUE
    When Literal = TRUE then the value is dependent on the the type of Activity. If the activity is a PL/SQL object i.e. Mapping or Transformation, then the value is PL/SQL snippet. The critical difference here is that the value is macro substituted into the call for the object. The format of the value is identical to that entered as default value in the Mapping editor. e.g.
    'Hello World!'
    sysdate()
    If the activity type is not a PL/SQL object then the value is language independent. e.g.
    Hello World
    3.1427571
    What you should try......
    Check the map activity parameter in your process flow to see if literal is false (an expression), set it to false and then try using your TO_DATE('20/01/2007' , 'dd/mm/yyyy') expression, deploy your flow and execute. Alternatively the user guide defines the DATE type for flow with the format YYYY-MM-DD so you can have the parameter value as '2007-01-20' use literal equal to true and remember and quote your value.
    Cheers
    David

  • OWB11gR2: Mapping execution in a process flow not visible in OWB Browser

    When a mapping is executed inside a process flow, execution details are not visible in OWB Repository Browser (Control Center reports) - rows processed, errors etc. Mapping row is missing in a log, like it never happened (but it did).
    This auditing information is very important for monitoring reasons (to our customers also) and I just don't get it how this functionality is lost with this version. Another serious bug?

    Hi David,
    I was rather tired and frustrated last evening, so today I noticed some things I didn't yesterday. Your reply gave me a new motivation.
    The conclusion is - a mapping execution in a process flow is logged, but the way activities are displayed in OWB Browser are now different than in previous versions. If I click on 'Execution Job Report' on a process flow, I see all the activities listed except mappings (transformations, assign, file exists, subprocess etc.). If I want to see mapping execution row, I must click on a plus (expand) sign.
    This kind of behavior will make processes with a complex hierarchy (usually we have more than 5 levels of subprocesses) rather vast to monitor. In 10gR2, a drilling down was accomplished by opening a new browser tab (Execution Job Report link) for each subprocess/mapping activity. Now it shall remain on one huge screen (list) that keeps expanding.
    But, if that is the new feature, we shall live with that. If our customers won't like it, they will have to get used to it.
    Thank you for your reply!

  • Regarding Performance Tunning of Mapping & Process Flow

    Hi,
    i have around 60-70 GB data in Target database.
    i need do improve the performance of Mapping and Process flow.
    i have used lookup transformation in mapping.
    Plz give me some tips for improving performance of Process.
    Thanks,

    Please go through a Performance Tuning Book for Oracle 10gR2.
    Most importantly remember that in Oracle 10g, your performace of mappings can be increased manifold by following these steps:
    1. Do not design a mapping wherein you load a table and then select from that table to load another table and so on. This is a bad design.
    2. Keep mappings as simple as possible. In other words if a mapping is complicated in terms of joins or other operators then split the mapping into more than one parts.
    3. Also check that all your source tables should be analyzed using DBMS_STATS. Ensuring this one single step can make your work very easy.
    4. Put indexes where you find your predicate has a very high selectivity. Also keep in mind the column ordering of the index.
    5. Use Set Based operation, since it is always a good idea to achieve the result by running one single query rather than a loop and multiple inserts.
    6. Use APPEND PARALLEL hint while loading the target tables. This will not generate wny redo and save time
    7. Please have a recheck while usng some performance intensive operators like UNION, DISTINCT and AGGREGATION
    8. When using a sequence operator to load a large table, check that the sequence should be cached with some values.
    9. When loading large data HASH JOINS are the most appropriate more often than not. So you can use USE_HASH as the hint for selecting from large tables.
    10. Filter out as much unrequired data from a table as soon as possible in the mapping before doing multiple joins.
    I am sure there are many more ... the above is just a random list that I could remember now. Please go through Oracle Performance Tuning Guide, Tom Kyte's Oracle Expert One on One. Knowledge of performance tuning will grow with experience. I am also learning each day !!!
    Regards
    AP

  • Audit_id of a process flow

    OK, i know this is basic, but I am new to OWB. How do I get the audit_id of a process flow at execution time? I am running OWB 10.2.0.1. The Transformation Guide as well as the User's Guide says that "you can obtain the audit ID at execution time using the pseudo variable audit_id" when using the Control Center Transformations, but all of their examples use hardcoded audit_id's. There doesn't seem to be any other mention of "pseudo variable" in any of the other OWB documentation.
    thanks in advance

    Hi
    See the global expression values below, you can use PARENT_AUDIT_ID to get the calling process flows audit id:
    http://download.oracle.com/docs/cd/B28359_01/owb.111/b31278/concept_processflows.htm#CHDEJBGF
    Cheers
    David

  • OWB Process Flow Execution in Workflow

    Hi!
    I hope somebody can help me with this one... I have a process flow designed to load data from a flat file to a db staging table then do some transformation on the data and load the data to the data warehouse. I am using OWB 9.2.0.2.8, 9i DB (9.2.0.5) and OWF 2.6.2. I have successfully validated and deployed the process flow but during execution, the process failed on the mapping that loads data from the flat file to the staging table. The message log of the deployment manager reports: /u01/oracle/product/owb/temp/STAGING_MAP.ctl (No such file or directory). Do I have to set the source location for the flat file again? You see we have already executed this mapping alone and it worked fine, using the source location in the server as defined in the mapping, which is /u01/files/.
    Thank you.
    Shiela

    hi,
    well,jus check whether u created locations and connecter and check u deployed every thing and try once again.
    naren

Maybe you are looking for