ODI: Error invalid identifiers in "insert stream I$ table. '

Hello

I am trying to write a temporary interface (yellow), which will act as a source for a standard interface (in blue).

However when I run the standard interface, I get the error on step 8 - integration: Insert flow I$ table

ODI-1228: CR_2 (integration) task fails on the connection target ORACLE ORACLE_Local.

Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "T". "" R_id ": invalid identifier

The target code:

/ * DETECTION_STRATEGY = NOT_EXISTS * /.

Insert / * + append * / in THE_SCHEMA. I _CR_TABLE $

(

CNUMBER,

R_ID,

IND_UPDATE

)

Select

CNUMBER,

R_ID,

IND_UPDATE

de)

Select

C1_CNUMBER CNUMBER,

C2_R_ID R_ID,

'I' IND_UPDATE

of THE_SCHEMA. C$ _0CR_TABLE

where (1 = 1)

) S

If NOT EXISTS

(select 1 from THE_SCHEMA. CR_TABLE T

where T.R_ID = S.R_ID

and ((T.CNUMBER = S.CNUMBER) or (T.CNUMBER IS NULL and S.CNUMBER IS NULL))

)

Source : DB2 v9.1.0.7,.

Target : database Oracle 11 g Enterprise Edition Release 11.2.0.3.0 - 64 bit Production

ODI v11.1.1

On the standard interface:

I set the box "use the temporary interface as an underlying table (subselect).

R_ID field on the target table is the key field. It is mapped to one of the fields in the interface of temp and it the value "run on: Source" with set of Insert and Update check boxes.

I use SQL LKM for Oracle components to get the data from the interface of the target temp.

On the interface of temp:

No key for each field in the target field

IKM DB2 using updated incremental, FLOW_CONTROL with STATIC_CONTROL set to false.

Any help would be greatly appreciated!

In the target database, I changed the name of the field R_ID... but I forgot to update this column in the ODI of the table model. Once I have updated the model and mappings, the interface ran as expected.

Tags: Business Intelligence

Similar Questions

  • criticism: Error invalid identifier in interface

    Hello

    I have 3 identical ODI viz Dev, Test, and production environments.
    We develop packages in Dev and migrate them to Test to test and when everything works well in the Test then move to prod.
    Now, I created a package which is kind of transformation type of package that collects data from other tables and put in unique tables based on rules and the different filters.

    The problem here, I do face is that I have the package which is fine workmanship in dev and tests but gives me error in Prod which seems such DB error.
    Error is given in session task interfaces control of PK inserting errors and the error is as

    ODI-1217: INT_GEN_BSMASTERTYRE Session (69702202) fails with return code 904.
    ODI-1226: step INT_GEN_BSMASTERTYRE fails after 1 attempt.
    ODI-1240: Flow INT_GEN_BSMASTERTYRE fails during a control operation. This flow of charge table target NEWBSMASTERTYRE.
    ODI-1228: task failed NEWBSMASTERTYRE (control) on the target of connection ORACLE OMP.
    Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "MASTERUNITID": invalid identifier
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:91)
    at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)

    MASTERUNITID is now field that is present in all tables target of Dev, Test, Prod, but still I get this error.
    Please help me to solve this error. What would be the cause of this error.

    all entries would be useful.


    Thank you
    Mahesh

    MaheshGx wrote:
    Hello

    I have 3 identical ODI viz Dev, Test, and production environments.
    We develop packages in Dev and migrate them to Test to test and when everything works well in the Test then move to prod.
    Now, I created a package which is kind of transformation type of package that collects data from other tables and put in unique tables based on rules and the different filters.

    The problem here, I do face is that I have the package which is fine workmanship in dev and tests but gives me error in Prod which seems such DB error.
    Error is given in session task interfaces control of PK inserting errors and the error is as

    ODI-1217: INT_GEN_BSMASTERTYRE Session (69702202) fails with return code 904.
    ODI-1226: step INT_GEN_BSMASTERTYRE fails after 1 attempt.
    ODI-1240: Flow INT_GEN_BSMASTERTYRE fails during a control operation. This flow of charge table target NEWBSMASTERTYRE.
    ODI-1228: task failed NEWBSMASTERTYRE (control) on the target of connection ORACLE OMP.
    Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "MASTERUNITID": invalid identifier
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:91)
    at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)

    MASTERUNITID is now field that is present in all tables target of Dev, Test, Prod, but still I get this error.
    Please help me to solve this error. What would be the cause of this error.

    all entries would be useful.

    Thank you
    Mahesh

    Hello

    The following applies to your case?

    You have a target say XYZ table, on which you have defined the Frother.
    Evety works very well.
    Now, you have added a new column say Col1 in XYZ, regenarated the script and try to run it.
    This operation fails with error ORA-00904: invalid identifier ' Col1'

    This is due to the fact, ODI creats the error table (E$) once and then use the same table for any Sub sequent performance. If there is no change in the target table, this change does not get propagated to the table structure of $ E.

    If the above is true, then you have two options.
    1 > drop the E$ _
    Then ODI will create the table for you and that it will be "Col1" columns.
    2 > manually change the E$ _ and add the missing column there.

    Thank you
    Fati

  • SQL Error: Invalid identifier ORA-00904

    Hello

    The Version of SQL Developer: 11g

    Two tables: nav_vendors (source), vendor (destination)

    Both having 16 'Same' columns (data will differ for some records of... for some data records are same to check the process DML works according to the need).

    I'm trying to insert update and delete using merge operation

    I m getting error below whenever I tried to merge them. All column names are the same in the table.

    SQL error: ORA-00904: "S". "" COMPANY_CODE ": invalid identifier

    SQL:

    MERGE INTO s source

    USING (nvl (d.VENDOR, s.VENDOR) selection of the SELLER,

    NVL (d.Name, s.Name) NAME.

    NVL (d.NAME3, s.NAME3) Name3,

    NVL (d.ADDRESS1, s.ADDRESS1) address1.

    NVL (d.DISTRICT, s.DISTRICT) DISTRICT.

    NVL (d.CITY, s.CITY), CITY,

    NVL (d.Country, s.Country) COUNTRIES.

    NVL (d.Postcode, s.Postcode) ZIP Code,

    NVL (d.TELEPHONE, s.TELEPHONE), PHONE,.

    NVL (d.Fax, s.Fax) FAX.

    NVL (d.contact, s.contact) CONTACT.

    NVL (d.URL, s.URL) URL.

    NVL (d.email, s.email) EMAIL.

    NVL (d.DELIVERY_TOLERANCE, s.DELIVERY_TOLERANCE) DELIVERY_TOLERANCE.

    NVL (d.EXCLUDE_REWORK_TEXT, s.EXCLUDE_REWORK_TEXT) EXCLUDE_REWORK_TEXT.

    NVL (d.COMPANY_CODE, s.COMPANY_CODE) COMPANY_CODE.

    (case

    When ((d.VENDOR = s.VENDOR)

    and (d.NAME = s.NAME)

    and (d.NAME3 = s.NAME3)

    and (d.ADDRESS1 = s.ADDRESS1)

    and (d.DISTRICT = s.DISTRICT)

    and (d.CITY = s.CITY)

    and (d.COUNTRY = s.COUNTRY)

    and (d.POSTCODE = s.POSTCODE)

    and (d.TELEPHONE = s.TELEPHONE)

    and (d.FAX = s.FAX)

    and (d.CONTACT = s.CONTACT)

    and (d.URL = s.URL)

    and (d.EMAIL = s.EMAIL)

    and (d.DELIVERY_TOLERANCE = s.DELIVERY_TOLERANCE)

    and (d.EXCLUDE_REWORK_TEXT = s.EXCLUDE_REWORK_TEXT)

    and (d.COMPANY_CODE = s.COMPANY_CODE))

    then "correspondence".

    When d.COMPANY_CODE is null

    then 'DELETE '.

    When s.COMPANY_CODE is null

    then "INSERT."

    on the other

    "no match."

    chck end)

    of s nav_vendorz

    full outer join of the seller d

    On(d.COMPANY_CODE=s.COMPANY_CODE)

    ) d

    (S.COMPANY_CODE = d.COMPANY_CODE AND (in d.chck ("not matched", 'match', 'DELETE')))

    WHEN MATCHED THEN

    ->UPDATE SET s.company_code = d.company_code <-error line

    WHERE in d.chck ("not matched", "DELETE")

    DELETE WHERE d.chck = 'DELETE '.

    WHEN NOT MATCHED THEN

    INSERT (VENDOR, NAME, ADDRESS1, NAME3, NEIGHBORHOOD, CITY, COUNTRY, CODE POSTAL, PHONE, FAX, CONTACT, URL, EMAIL, DELIVERY_TOLERANCE, EXCLUDE_REWORK_TEXT, COMPANY_CODE)

    VALUES

    (d.VENDOR, d.NAME, d.NAME3, d.ADDRESS1, d.DISTRICT, d.CITY, d.COUNTRY, d.POSTCODE, d.TELEPHONE, d.FAX, d.CONTACT, d.URL, d.EMAIL, d.DELIVERY_TOLERANCE,d.EXCLUDE_REWORK_TEXT,d.COMPANY_CODE);/

    (1) use different alias names

    (2) do not try to update a column that is used to 'ON' clause.

  • HELP: instr() error - invalid identifier

    Hello

    Query is attack on this line:

    instr(hntl.note_text, "Critical and/or Actionable") != 0
    

    Error:

    ORA-00904: "criticism and/or action": invalid identifier

    00904, 00000 - '% s: invalid identifier '.

    note_text column is of type varchar (2000)

    How can I make this work?

    Hello

    In Oracle SQL, string literals are enclosed in single quotes, not double - quote.  You probably want to

    ... instr (hntl.note_text, "Criticism and/or Actionable")! = 0

    Note that SQL differs from SQL * more in this regard.  In SQL * Plus, - single and double quotes are often used interchangeably.  In SQL, they always have a different meaning.

    In Oracle SQL, quotation marks are used in identifiers (such as table names or column) which are not conform to the normal rules of naming.  For example, the column names cannot usually contain special characters such as spaces or slashes (' / ').  If you really want to have a column that is named

    Criticism or action

    you will then need to with the spaces and the bar slash, surround it with quotation marks.  That's exactly what the system thought you were doing: he thought you were trying to refer to a column called 'Critical and/or usable' and, when he couldn't find a column with this name, it gave you an error indicating that the column name was not fair.

  • Apps BI - workflow task has received the error "invalid identifier".

    Hi all

    I'm loading acreage subject of projects using the client CAD for 11.5.10 container. And my Oracle EBS 11.5.10 only data source. Few of the workflow tasks failed. For example: "SDE_ORA_TaksDimension." When I checked the logs of session, its display like "ORA-00904 'PA_PROJ_ELEMENT_VERSIONS'." FINANCIAL_TASK_FLAG ': invalid identifier "error of a few paintings of projects (PA). I checked in the database to Oracle 11.5.10 and noticed that the column (FINANCIAL_TASK_FLAG) itself is not there in the table (PA_PROJ_ELEMENT_VERSIONS).
    I also checked SDE_ORA_TaksDimension in "SDE_ORA11510_Adaptor" mapping in the table PA_PROJ_ELEMENT_VERSIONS Design, Informatica PowerCenter Workflow is to have the column with "FINANCIAL_TASK_FLAG".

    In other words, there are some differences between available "SDE_ORA11510_Adaptor" and Oracle EBS 11.5.10 database. Could someone please help me or guide me to solve this problem?

    Thank you
    Harish Nunn

    This is probably because you do not have the PRE REQUISIUTE following for PROJECT ANALYTICS for 11.5.10:

    requires the Family Pack M (11i. PJ_PF. (M) to be applied to Oracle eBusiness Suite 11.5.10.

    You need to run the analytical project.

    Check the answer as CORRECT

  • Get the error invalid identifier in the left outer join

    I wrote a query and get the invalid identifier error during execution:
    the exact error is: ORA-00904: "D". "" ACCT_NO ": invalid identifier
    This query is not able to access the parent table alias in the subquery of the left outer join.

    This is the query:
    SELECT D.PROD_DESC_TX, BASE. ASSET_NUM, BASE. PROD_ID, BASE.NAME
    OF TABLE1 D
    LEFT OUTER JOIN
    (
    SELECT ASSET_NUM, PROD_ID, B.SID
    FROM TABLE2 E
    JOIN IN-HOUSE TABLE3 HAS IT E.PROD_ID = A.ROW_ID
    JOIN INTERNAL TABLE 4 C ON A.PAR_PROD_INT_ID = C.ROW_ID
    INTERNAL TABLE5 JOIN B ON C.ROW_ID = B.PAR_ROW_ID
    AND B.TYPE = 'VALUE '.
    AND B.NAME = 'VALUE '.
    WHERE E.ASSET_NUM = ((CASE WHEN LTRIM (RTRIM (D.BANK_NO)) = '021 ' THEN '021' ELSE ' 020' END) |) LTRIM (RTRIM (D.APPL_CD)). LTRIM (RTRIM (D.ACCT_NO)))
    ) BASE ON ((CASE WHEN LTRIM (RTRIM (D.BANK_NO)) = '021 ' THEN '021' ELSE ' 020' END) |) LTRIM (RTRIM (D.APPL_CD)). LTRIM (RTRIM (D.ACCT_NO))) = BASE. ASSET_NUM
    WHERE D.BANK_NO = 'VALUE '.
    AND D.APPL_CD = 'VALUE '.
    AND D.ACCT_NO = 'VALUE '.

    Edited by: user648525 13 Sep, 2011 01:21

    I can easily look at your request at this time (using my iPhone on a train).

    But trying out this line in the WHERE (the one with the invalid reference) clause in the main query.

    Who is... in the view of inline, use only the logic of the join (the clauses).

    Overflow the filtering logic (WHERE clause) to the main request. You may need to select some additional inline view columns to make these references work.

  • Error - invalid identifier

    Hello

    Get the identifier not valid error query below

    Select * from c2s_tbl where tbl_name in (c2m_client
    c2m_client_a
    c2m_client_p
    c2m_exp2lim
    c2m_exp2lim_diff
    c2m_exposure
    c2m_exposure_a
    c2m_limit
    c2m_limit_a
    c2m_limit_acl
    c2m_limit_diff
    c2m_limit_diff_sum
    c2m_limit_err
    c2m_limit_exp
    c2m_limit_irb
    c2m_limit_irb_pr_k_dil
    c2m_limit_k_dil
    c2m_limit_p
    c2m_limit_rc
    c2m_ls
    c2m_ls_a
    c2m_ls_irb
    c2m_ls_secu_id
    c2m_rating
    c2m_rating_a
    c2n_gl
    c2m_limit_a_tot
    c2u_exp_pk_tmp
    c2u_cost_of_funds
    c2u_cost_of_funds_err
    c2u_xr
    c2u_secu_pk_tmp
    c2uu_sys_map
    c2uu_limit
    c2uu_exp
    c2uu_ls
    c2uu_prov
    c2uu_rating_borr
    c2uu_rating_limit
    c2uu_rating_secu
    c2uu_client
    c2uu_client_group
    c2ud_sys_map
    c2ud_limit
    c2ud_exp
    c2ud_ls
    c2ud_prov
    c2ud_rating_borr
    c2ud_rating_limit
    c2ud_rating_secu
    c2ud_client
    c2ud_client_group
    c2ud_log_rows
    c2u_bk_facility_err
    c2u_bk_facility
    c2t_gl
    c2ux_xr_ar_diff
    c2u_ccy_cf_err
    c2u_client
    c2u_client_err
    c2u_client_map
    c2u_client_master
    c2u_client_master_err
    c2u_client_pk_tmp
    c2u_exposure
    c2u_exposure_err
    c2u_gl
    c2u_gl_err
    c2u_limit
    c2u_limit_err
    c2u_limit_pk_tmp
    c2u_ls
    c2u_ls_err
    c2u_log_rows
    c2u_log_rows_row4id
    c2u_pool
    c2u_rating
    c2u_rating_borr_err
    c2u_rating_limit_err
    c2u_rating_sec_err
    c2u_stat
    chn_upload
    c2u_prov
    c2u_prov_err
    c2u_client_group
    c2u_client_group_err
    c2ru_bk_gl
    c2ru_bk_gl_err
    c2ccu_cust_sales
    c2ccu_cust_sales_err
    c2r_obs
    c2r_car
    c2m_limit_id_diff
    chn_temp_retail_err
    c2ub_client_pk_tmp
    c2ub_limit_pk_tmp
    c2ub_exposure_pk_tmp
    c2ub_security_pk_tmp
    c2u_client_crar
    c2u_client_crar_err
    c2ua_sys_map
    c2ua_limit
    c2ua_exp
    c2ua_ls
    c2ua_prov
    c2ua_rating_borr
    c2ua_rating_limit
    c2ua_rating_secu
    c2ua_client
    c2ua_client_group
    c2ub_sys_map
    c2ub_limit
    c2ub_exp
    c2ub_ls
    c2ub_prov
    c2ub_rating_borr
    c2ub_rating_limit
    c2ub_rating_secu
    c2ub_client
    c2ub_client_group
    c2uv_sys_map
    c2uv_limit
    c2uv_exp
    c2uv_ls
    c2uv_prov
    c2uv_rating_borr
    c2uv_rating_limit
    c2uv_rating_secu
    c2uv_client
    c2uv_client_group
    c2uf_sys_map
    c2uf_limit
    c2uf_exp
    c2uf_ls
    c2uf_prov
    c2uf_rating_borr
    c2uf_rating_limit
    c2uf_rating_secu
    c2uf_client
    c2uf_client_group
    c2up_sys_map
    c2up_limit
    c2up_exp
    c2up_ls
    c2up_prov
    c2up_rating_borr
    c2up_rating_limit
    c2up_rating_secu
    c2up_client
    c2up_client_group
    c2m_tb
    c2u_client_ai
    c2u_client_ai_err
    c2u_limit_ai
    c2u_limit_ai_err
    c2u_exposure_ai
    c2u_exposure_ai_err
    c2u_ls_ai
    c2u_ls_ai_err
    c2u_client_master_ai
    c2u_client_master_ai_err
    c2u_control
    c2u_control_err
    c2u_upload_log
    c2m_client_ai
    c2m_client_master_ai
    c2m_limit_ai
    c2m_exposure_ai
    c2m_ls_ai
    c2u_irb_xr)

    Kindly help

    table_name is varchar, so keep the values in single quotes

    select * from c2s_tbl where tbl_name in ('c2m_client'
    ,'c2m_client_a'
    , 'c2m_client_p'
    , 'c2m_exp2lim'
    , 'c2m_exp2lim_diff'
    ...
    ....
    );
    
  • ERROR "ora-01422" during insertion in the table?

    Hello

    I have created the dynamic action of PL/SQL to insert data but founded by page_item

    
    
     declare 
    x_found_pages number;
    x_auth_id number;
    x_user_id number;
     begin
     x_user_id := :P41_USR_ID; -- this is my page_item _____ successful run When change it to number value .. !
    
    
    
    
          select count(V_APP_PAGES.PAGE_ID) into x_found_pages
          from V_AUTH_DTL V_AUTH_DTL,V_APP_PAGES V_APP_PAGES 
          where V_AUTH_DTL.PAGE_ID!=V_APP_PAGES.PAGE_ID
          and  V_AUTH_DTL.USR_ID = x_user_id;
       
          select T_AUTH.ID into x_auth_id 
          from T_AUTH_DTL T_AUTH_DTL,T_AUTH T_AUTH 
          where T_AUTH_DTL.AUTH_ID=T_AUTH.ID
          and T_AUTH.USR_ID = x_user_id;
    
    
    -- Checking...? 
      if x_found_pages > 0 then
    
            for i in (select V_APP_PAGES.PAGE_ID
               from V_AUTH_DTL V_AUTH_DTL,V_APP_PAGES V_APP_PAGES 
               where V_AUTH_DTL.PAGE_ID!=V_APP_PAGES.PAGE_ID
               and  V_AUTH_DTL.USR_ID = x_user_id)
        
      loop
      insert into T_AUTH_DTL (AUTH_ID,PAGE_ID) values (x_auth_id,i.PAGE_ID);
      end loop;
    
        end if;
    
     end;
    
    
    
    

    Please help me to avoid the ERROR "ora-01422" when running code in the dynamic action...

    Thank you...

    AMR Abdeen wrote:

    I have created the dynamic action of PL/SQL to insert data but founded by page_item

    1. declare
    2. number of x_found_pages;
    3. number of x_auth_id;
    4. number of x_user_id;
    5. Start
    6. x_user_id: =: P41_USR_ID; -It is my page_item _ successfully performed when change to value the number...!
    7. SELECT count (V_APP_PAGES. Page_id) in x_found_pages
    8. of V_AUTH_DTL V_AUTH_DTL, V_APP_PAGES V_APP_PAGES
    9. where V_AUTH_DTL. PAGE_ID! = V_APP_PAGES. PAGE_ID
    10. and V_AUTH_DTL. USR_ID = x_user_id;
    11. Select T_AUTH.ID from x_auth_id
    12. of T_AUTH_DTL T_AUTH_DTL, T_AUTH T_AUTH
    13. where T_AUTH_DTL. AUTH_ID = T_AUTH.ID
    14. and T_AUTH. USR_ID = x_user_id;
    15. -Checking...?
    16. If x_found_pages > 0 then
    17. I'm in (select V_APP_PAGES. PAGE_ID
    18. of V_AUTH_DTL V_AUTH_DTL, V_APP_PAGES V_APP_PAGES
    19. where V_AUTH_DTL. PAGE_ID! = V_APP_PAGES. PAGE_ID
    20. and V_AUTH_DTL. USR_ID = x_user_id)
    21. loop
    22. insert into T_AUTH_DTL (AUTH_ID, PAGE_ID) values (x_auth_id, i.PAGE_ID);
    23. end loop;
    24. end if;
    25. end;

    Please help me to avoid the ERROR "ora-01422" when running code in the dynamic action...

    The error is explicit:

    ORA-01422: exact fetch returns more than number of lines

    Cause: The exact extraction specified number is less than the rows returned.

    Action: Rewrite the query or change the number of rows requested

    This would imply the query in line 16 as County dissociated in the previous one will always return only one row.

    Run

    select T_AUTH.ID into x_auth_id
    from T_AUTH_DTL T_AUTH_DTL,T_AUTH T_AUTH
    where T_AUTH_DTL.AUTH_ID=T_AUTH.ID
    and T_AUTH.USR_ID = :x_user_id
    

    in the workshop of SQL by using the P41_USR_ID value in the variable link to find out how many rows it returns.

    It is likely that the entire block can be replaced by a single INSERT statement. If you provide instructions CREATE TABLE, INSERT statements to create sample data and a clear definition of the requirements that we try to do.

    What is the point of the inclusion of tables aliases that are exactly the same as the names of the tables?

  • ISSUES giving invalid identifier

    Hello

    Under query me gives error invalid identifier.

    Can someone please make an eyeball and let me know any correction on the underside of sql?

    SELECT case_id

    OF form_product A

    WHERE ud_text_12 LIKE '% % '.

    AND THERE ARE

    (

    SELECT case_id

    OF form_product B

    WHERE ud_text_12 LIKE ' % of DRUGS. "

    )

    AND A.CASE_ID = B.CASE_ID

    SQL error: ORA-00904: "B". "" CASE_ID ": invalid identifier

    00904, 00000 - '% s: invalid identifier '.

    * Cause:

    * Action:

    Thank you

    Ann

    I guess you mean:

    SELECT case_id

    OF form_product A

    WHERE ud_text_12 LIKE '% % '.

    AND THERE ARE

    (

    SELECT case_id

    OF form_product B

    WHERE ud_text_12 LIKE '% DRUG' AND A.CASE_ID = B.CASE_ID

    )

  • ORA-00904: "YEAR": invalid identifier

    Hello

    I'm getting ORA-00904: 'YEAR': Error invalid identifier when executing the following query.
    This application was written in MySQL and migrated to Oracle.
    The problem is in where clause as I am unable to migrate the YEAR MONTHNAME

    "diet_details.diet_date = July 1, 12.

    SELECT
    diet_details.diet_id AS diet_id,
    diet_details.diet_combination_id AS diet_combination_id,
    (diet_details.diet_details_id) be counted AS County,.
    mas_diet_combination.diet_combination_name AS mas_diet_combination_name,
    diet_details.diet_date AS diet_diet_date,
    diet_details.diet_details_id AS diet_diet_details_id,
    mas_department.department_name AS mas_department_name,
    mas_hospital.hospital_name AS mas_hospital_name
    Of
    mas_diet_combination RIGHT OUTER JOIN diet_details ON mas_diet_combination.diet_combination_id = diet_details.diet_combination_id
    LEFT OUTER JOIN mas_department ON diet_details.department_id = mas_department.department_id
    LEFT OUTER JOIN mas_hospital ON diet_details.hospital_id = mas_hospital.hospital_id

    WHERE
    MonthName (diet_details.diet_date) = JUL
    and year (diet_details.diet_date) = 12
    and diet_details.department_id = 11


    GROUP BY
    diet_details.diet_id,
    diet_details.diet_combination_id,
    diet_details.diet_details_id,
    mas_diet_combination.diet_combination_name,
    diet_details.diet_date,
    diet_details.diet_details_id,
    mas_department.department_name,
    mas_hospital.hospital_name
    order of mas_diet_combination.diet_combination_id

    Instead of the YEAR, MONTHNAME, use the function to_char.

    for example
    where to_char(diet_details.diet_date,'MON-YYYY') = ' JUL-2012'.

  • ORA-00904: string: invalid identifier

    Alert by noob, I try to use an identifier in a case statement to avoid have to write the statement twice. I know that there is a better way to do someone can help?

    below is the current code, that I inherited...

    Date1 - DATE_RCVD as DAYS_TO_REFERRAL,
    -case when DATE1 - > 15 DATE_RCVD can "FAIL".
    Another 'PASS '.
    finish as a REFERENCE
    DATE2,
    DATE3,




    Here's what I'm trying, so I can combine steps... but I get the error invalid identifier

    Date1 - DATE_RCVD as DAYS_TO_REFERRAL,
    When case DAYS_TO_REFERRAL > 15 can "FAIL".
    Another 'PASS '.
    finish as a REFERENCE
    DATE2,
    DATE3,


    I changed the names of fields btw. Thanks in advance.
    Rich

    You cannot reference alias on the same leveluse: see online:

    SELECT  DAYS_TO_REFERRAL,
            case
              when DAYS_TO_REFERRAL > 15 then 'FAIL'
              else 'PASS'
            end as REFERRAL
            DATE2,
            DATE3
      FROM  (
             SELECT  DATE1 - DATE_RCVD as DAYS_TO_REFERRAL
                     DATE2,
                     DATE3
               FROM  your_table
           )
    /
    

    SY.

  • ORA-00904: "RENEWED_FD." "' OLD_FDR_NO ': invalid identifier...... HOW table TO INSERT SEVERAL ROWS of ONE TABLE to ANOTHER.

    Hi all

    I have two tables RENEWED_FD and KEC_FDACCT_MSTR.

    In the RENEWED_FD table, there are columns namely OLD_FDR_NO, ACCT_CUST_CODE, ACCT_TYPE, QUANTITY.

    In the KEC_FDACCT_MSTR table, there are columns namely ACCT_FD_NO, ACCT_CUST_CODE, ACCT_TYPE, QUANTITY.

    In the RENEWED_FD table, OLD_FDR_NO is present and rest all columns are empty, so I want to insert all other values of column in table KEC_FDACCT_MSTR

    where RENEWED_FD. OLD_FDR_NO = KEC_FDACCT_MSTR. ACCT_FD_NO.

    How to do this in Toad for ORACLE FORMS 6i or Oracle?

    Help me

    Thank you.

    Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production


    I tried with the following code:

    Code:

    INSERT INTO RENEWED_FD

    (ACCT_CUST_CODE, ACCT_TYPE, SUM)

    SELECT ACCT_CUST_CODE, ACCT_TYPE, AMOUNT

    OF KEC_FDACCT_MSTR

    WHERE RENEWED_FD. OLD_FDR_NO = KEC_FDACCT_MSTR. ACCT_FD_NO;

    But I got this error:

    ORA-00904: "RENEWED_FD." "" OLD_FDR_NO ": invalid identifier

    Oh, you're on 9i db. In 9i the MATCHED and UNMATCHED aren't optional, and you must use both. FUSION has evolved through time, and it's a shame that you cannot make the most out of it because of your version.

    You use better UPDATE statement then.

    update of renewed_fd one

    Set)

    a.acct_cust_code

    a.acct_type

    a.amount

    ) =

    (

    Select b.acct_cust_code

    b.acct_type

    b.amount

    of kec_fdacct_mstr b

    where a.old_fdr_no = b.acct_fd_no

    )

    where

    There are)

    Select null

    of kec_fdacct_mstr b

    where a.old_fdr_no = b.acct_fd_no

    )

  • Why this error ORA-00904: invalid identifier

    Hi all
    Please advice me what is wronge with this
    ORA-00904: "NONE": invalid identifier


    create or replace trigger test_table2
    before inserting
    on Ta
    for each line
    declare
    v2_none_con varchar2 (20);
    v2_none_con2 varchar2 (20);
    I have number (10);
    TYPE v2_EmpCurTyp IS REF CURSOR;
    v2_emp_cursor v2_EmpCurTyp;
    v2_stmt_str VARCHAR2 (200);
    RECORD IS of TYPE v2_employee_type (v_rowid varchar (100));
    v2_emp_content v2_employee_type;
    Start

    v2_none_con2: = 'NONE ';

    v2_stmt_str: = 'select rowid from t1 where name =' v2_none_con2;
    I: = 0;
    V2_emp_cursor OPEN FOR v2_stmt_str;
    LOOP FETCH v2_emp_cursor INTO v2_emp_content;
    EXIT WHEN v2_emp_cursor % NOTFOUND;
    dbms_output.put_line (v2_emp_content.v_rowid);
    i: = i + 1;
    v2_none_con: = 'NO ' | TO_CHAR (i);

    END LOOP;
    end;




    SQL > /.
    Insert in your values (10, 'W')
    *
    ERROR on line 1:
    ORA-00904: "NONE": invalid identifier
    ORA-06512: in the 'END. TEST_TABLE2', line 15
    ORA-04088: error during execution of trigger ' FINAL. TEST_TABLE2'


    SQL >

    First of all:

    v2_stmt_str: = 'select rowid from t1 where name =' v2_none_con2;

    I would give you compilation errors. I guess the real code is:

    v2_stmt_str: = 'select rowid from t1 where name =' | v2_none_con2;

    Now that the text of the statement would be? V2_none_con2 is 'NONE', dynamic SQL would be:

    Select rowid from t1 where name = NONE

    It is obvious, it will trigger ORA-00904 (except a column named NONE t1). What you want is:

    Select rowid from t1 where name ='' NONE

    So change:

    v2_stmt_str: = 'select rowid from t1 where name =' | v2_none_con2;

    TO

    v2_stmt_str: = ' select rowid from t1, whose name =="' | v2_none_con2 | '''';

    SY.

  • ODI: Error loading the data of HFM: invalid dimension name

    Hello

    I am fairly new to ODI and I was wondering if any guru could help me overcome a question im facing. I try to load data from a csv file in HFM. I chose the good KM (LKM file SQL and SQL IKM to Hyperion Financial Management Data), with the Sunopsis Memory engine than the staging area.

    To facilitate the file csv has the exact structure as well as the dimensions of HFM applications and has been located in the interface, as shown below:

    Column of the source - target HFM column file

    -Scenario
    Year - year
    Display - display
    Entity - entity
    Value - value
    Account - account
    PIC - PIC
    CUSTOM1 - Custom1
    CUSTOM2 - Custom2
    Custom3 - Custom3
    Custom4 - Custom4
    -Period
    DataValue - Datavalue
    -Description (no column of the source, mapped as ")

    The csv file contains basic members only. I set the error log file path, and when running the interface I get an error. When I open the error log, I see the following messages:

    Line: 1, error: invalid dimension name
    ! Column_Order = C1_SCENARIO, C2_YEAR, C3_VIEW, C4_ENTITY, C5_VALUE, C6_ACCOUNT, C7_ICP, C8_CUSTOM1, C9_CUSTOM2, C10_CUSTOM3, C11_CUSTOM4, C12_PERIOD, C13_DATAVALUE
    C1_SCENARIO
    line: 3 error: a valid column order is not specified.
    Actual; 2007; YTD; 20043; < entity currency >; 13040; [ICP no]; [None]; 1000; [None]; [None]; Jan; 512000; » »
    > > > > > >



    I'm not sure how to solve, as it is based on the interface mapping match dimensions on a 1:1 basis. In addition, dimension in the target column names correspond to the dimension names of application of HFM (that this application has been deducted).

    Help, please!

    Thank you very much
    Jorge

    Published by: 993020 on March 11, 2013 05:06

    Dear Experts,

    ODI: 11.1.1.6.0
    HFM: 9.3.3

    I also met a similar error as OP.

    In my case, the error occurs when I use SUNOPSIS_MEMORY_ENGINE as the staging. If I simply change this staging to the Oracle schema, the Interface will load data successfully to HFM. So, I'm curious on what cause the SUNOPSIS cannot become the staging for the loading of HFM.

    This will show in the IKM SQL to the FM data log file:

    Load data started: 3/14/2013 13:41:11.
    Line: 1, Error: Invalid dimension name
    !Column_Order = C1_SCENARIO, C2_YEAR, C3_VIEW, C4_ENTITY, C5_VALUE, C6_ACCOUNT, C7_ICP, C8_PRODUCT, C9_CUSTOMERS, C10_CHANNEL, C11_UNITSFLOWS, C12_PERIOD, C13_DESCRIPTION
    
    
    C1_SCENARIO

    
    Line: 3, Error: A valid column order is not specified.
    Actual;2007;YTD;EastSales;;Sales;[ICP None];Comma_PDAs;Electronic_City;National_Accts;[None];February;;555
    >>>>>>
    
    Load data completed: 3/14/2013 13:41:11.
    

    It seems like the query generated is not picking up the Column Alias name, but this only happens if I use SUNOPSIS_MEMORY_ENGINE as the staging. With Oracle schema as staging, data load is successfully finished.

    This is the generated code from the KM

    Prepare for Loading (Using Oracle as Staging)

    from java.util import HashMap
    from java.lang import Boolean
    from java.lang import Integer
    from com.hyperion.odi.common import ODIConstants
    from com.hyperion.odi.hfm import ODIHFMConstants
    from com.hyperion.odi.connection import HypAppConnectionFactory
    
    # Target HFM connection properties
    clusterName   = "demo92"
    userName      = "admin"
    password      =  "<@=snpRef.getInfo("DEST_PASS") @>"
    application   = "COMMA"
    
    targetProps = HashMap()
    targetProps.put(ODIConstants.SERVER,clusterName)
    targetProps.put(ODIConstants.USER,userName)
    targetProps.put(ODIConstants.PASSWORD,password)
    targetProps.put(ODIConstants.APPLICATION_NAME,application)
    
    # Load options
    consolidateOnly    = 0
    importMode            = "Merge"
    accumulateWithinFile  = 0
    fileContainsShareData = 0
    consolidateAfterLoad  = 0
    consolidateParameters = ""
    logEnabled             = 1
    logFileName           = r"C:\Temp\ODI_HFM_Load.log"
    tableName             = r"HFMData"
    columnMap            = 'SCENARIO=Scenario , YEAR=Year , VIEW=View , ENTITY=Entity , VALUE=Value , ACCOUNT=Account , ICP=ICP , PRODUCT=Product , CUSTOMERS=Customers , CHANNEL=Channel , UNITSFLOWS=UnitsFlows , PERIOD=Period , DATAVALUE=DataValue , DESCRIPTION=Description '
    srcQuery= """select   C1_SCENARIO    "Scenario",C2_YEAR    "Year",C3_VIEW    "View",C4_ENTITY    "Entity",C5_VALUE    "Value",C6_ACCOUNT    "Account",C7_ICP    "ICP",C8_PRODUCT    "Product",C9_CUSTOMERS    "Customers",C10_CHANNEL    "Channel",C11_UNITSFLOWS    "UnitsFlows",C12_PERIOD    "Period",555    "DataValue",C13_DESCRIPTION    "Description" from ODI_TMP."C$_0HFMData"  where      (1=1)     """
    srcCx                    = odiRef.getJDBCConnection("SRC")
    srcQueryFetchSize=30
    
    loadOptions = HashMap()
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEONLY, Boolean(consolidateOnly))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_IMPORTMODE, importMode)
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_ACCUMULATEWITHINFILE, Boolean(accumulateWithinFile))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_FILECONTAINSSHAREDATA, Boolean(fileContainsShareData))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEAFTERLOAD, Boolean(consolidateAfterLoad))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEPARAMS, consolidateParameters)
    loadOptions.put(ODIConstants.LOG_ENABLED, Boolean(logEnabled))
    loadOptions.put(ODIConstants.LOG_FILE_NAME, logFileName)
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_TABLENAME, tableName);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_COLUMNMAP, columnMap);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCECONNECTION, srcCx);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCEQUERY, srcQuery);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCEQUERYFETCHSIZE, Integer(srcQueryFetchSize));
    
    # Get the writer
    hfmWriter = HypAppConnectionFactory.getAppWriter(HypAppConnectionFactory.APP_HFM, targetProps);
    
    # Begin load
    hfmWriter.beginLoad(loadOptions)
    

    Prepare for loading (using SUNOPSIS as staging)

    from java.util import HashMap
    from java.lang import Boolean
    from java.lang import Integer
    from com.hyperion.odi.common import ODIConstants
    from com.hyperion.odi.hfm import ODIHFMConstants
    from com.hyperion.odi.connection import HypAppConnectionFactory
    
    # Target HFM connection properties
    clusterName   = "demo92"
    userName      = "admin"
    password      =  "<@=snpRef.getInfo("DEST_PASS") @>"
    application   = "COMMA"
    
    targetProps = HashMap()
    targetProps.put(ODIConstants.SERVER,clusterName)
    targetProps.put(ODIConstants.USER,userName)
    targetProps.put(ODIConstants.PASSWORD,password)
    targetProps.put(ODIConstants.APPLICATION_NAME,application)
    
    # Load options
    consolidateOnly    = 0
    importMode            = "Merge"
    accumulateWithinFile  = 0
    fileContainsShareData = 0
    consolidateAfterLoad  = 0
    consolidateParameters = ""
    logEnabled             = 1
    logFileName           = r"C:\Temp\ODI_HFM_Load.log"
    tableName             = r"HFMData"
    columnMap            = 'SCENARIO=Scenario , YEAR=Year , VIEW=View , ENTITY=Entity , VALUE=Value , ACCOUNT=Account , ICP=ICP , PRODUCT=Product , CUSTOMERS=Customers , CHANNEL=Channel , UNITSFLOWS=UnitsFlows , PERIOD=Period , DATAVALUE=DataValue , DESCRIPTION=Description '
    srcQuery= """select   C1_SCENARIO    "Scenario",C2_YEAR    "Year",C3_VIEW    "View",C4_ENTITY    "Entity",C5_VALUE    "Value",C6_ACCOUNT    "Account",C7_ICP    "ICP",C8_PRODUCT    "Product",C9_CUSTOMERS    "Customers",C10_CHANNEL    "Channel",C11_UNITSFLOWS    "UnitsFlows",C12_PERIOD    "Period",555    "DataValue",C13_DESCRIPTION    "Description" from "C$_0HFMData"  where      (1=1)     """
    srcCx                    = odiRef.getJDBCConnection("SRC")
    srcQueryFetchSize=30
    
    loadOptions = HashMap()
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEONLY, Boolean(consolidateOnly))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_IMPORTMODE, importMode)
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_ACCUMULATEWITHINFILE, Boolean(accumulateWithinFile))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_FILECONTAINSSHAREDATA, Boolean(fileContainsShareData))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEAFTERLOAD, Boolean(consolidateAfterLoad))
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_IKMDATA_CONSOLIDATEPARAMS, consolidateParameters)
    loadOptions.put(ODIConstants.LOG_ENABLED, Boolean(logEnabled))
    loadOptions.put(ODIConstants.LOG_FILE_NAME, logFileName)
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_TABLENAME, tableName);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_COLUMNMAP, columnMap);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCECONNECTION, srcCx);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCEQUERY, srcQuery);
    loadOptions.put(ODIHFMConstants.OPTIONS_NAME_SOURCEQUERYFETCHSIZE, Integer(srcQueryFetchSize));
    
    # Get the writer
    hfmWriter = HypAppConnectionFactory.getAppWriter(HypAppConnectionFactory.APP_HFM, targetProps);
    
    # Begin load
    hfmWriter.beginLoad(loadOptions)
    

    If anyone can help on how to solve this?

    Thank you

    Published by: user10620897 on March 14, 2013 14:28

  • INVALID IDENTIFIER error in the statement ON

    I have problems with this SELECT statement in a report with the search items. The item sought in Question matches the string "Email". Any activity record that 'Email' in the field of the activity_type must be selected. The line of code is:

    Select user_name, total of (select user_name, count (*) total from eba_ver2_cust_activity where activity_type = group e-mail user_name)
    order by 2 desc, desc 2

    There are some substitutions here. The 'Email' value is: P23_ACTIVITY_TYPE on the page.

    The error I get is:

    Failed to parse the SQL query:
    ORA-00904: "EMAIL": invalid identifier

    The problem is that the string constant is interpreted as an identifier name. Some sbustitutions are made to the general SELECT statement that fails. The relevant part of the code generating the wrong SELECTION is:

    If: P23_ACTIVITY_TYPE! = 'null' and: P23_ACTIVITY_TYPE is not null then
    If: P23_START_DATE is not null or: P23_END_DATE is not null then
    l_sql: = l_sql | "and activity_type_id = ' |: P23_ACTIVITY_TYPE;"
    on the other
    l_sql: = l_sql | "where activity_type_id = ' |: P23_ACTIVITY_TYPE;
    end if;

    Anyway, the content of: P23_ACTIVITY_TYPE are treated as means of identification instead of a string. Help, please.

    Steve "n00b" to Raleigh NC

    Hi Steve,.

    COBOL! If you've actually seen the real life before dinosaurs? ;) They still teach the last College I've heard...

    What is the error you see? It can be as Tony said above, that you do not close your last statement. Here is what should look like this block of code:

    if :P23_ACTIVITY_TYPE != '%null%' and :P23_ACTIVITY_TYPE is not null then
    if :P23_START_DATE is not null or :P23_END_DATE is not null then
    l_sql := l_sql || ' and activity_type_id = ''' || :P23_ACTIVITY_TYPE || '''';
    else
    l_sql := l_sql || ' where activity_type_id = ''' || :P23_ACTIVITY_TYPE || '''';
    end if;
    end if;
    

    Note This is a series of simple "quotes.

    Aaron

Maybe you are looking for

  • Apple tv only works on the left speaker

    Through any HDMI input audio left is the only work, regardless of the selection of entries. Two audio channels running on all HDMI inputs when tested with a DVD player, had the same problem with Google Chrome and referred to the shop. Everyone knows

  • Can't see the video full screen Flickr fotostreem but with Safari it works

    If I want to see my fotostreem on Flickr as fullscreen video I get just a black screen with Firefox, but with Safari it works well. I have disabled hardware acceleration Flashplayer still doesent work

  • Windows installation 7 of 15 t-j100

    I recently took a Touchsmart from HP Envy 15 t-j100 with Windows 8, and while I see many stories to success on installing Windows 7, I was unable to do it myself.  I have a drive that has managed several times, so I do not suspect the media, but when

  • El sistema me indica error 5008

    Como corregir 'Error 5008'

  • DLL error at startup

    At the start, I had a DLL error. What it means? How should I do? (C:\WINDOWS\sdfodnvc.dll)