Help -  Error -13282: ORA-13282:

Error -13282: ORA-13282: failure on initialization of coordinate transformation
Getting this error when trying to Insert some spatial data. Totally new to spatial data processing. Had to look at this after the original developer quit the company.
Here is the Insert statment
INSERT INTO table1 VALUES(seq.NextVal, t_rec.ID, 0, 'CompanyABCD', SDO_GEOM.SDO_BUFFER(p_geod, 100, 0.5,'unit=foot'), SDO_GEOM.SDO_BUFFER(p_proj, 100, 0.5,'unit=foot'));
P_geod and p_proj values were derived earlier..
p_geod := MDSYS.SDO_GEOMETRY(2001, 8265, MDSYS.SDO_POINT_TYPE(lon,lat,NULL), NULL, NULL);
p_proj := sdo_cs.transform(p_geod, 9990001);
and here is the table structure
ID NUMBER(11) NOT NULL,
TICKET_ID NUMBER(11) NOT NULL,
REVISION NUMBER(11) NOT NULL,
COMPANY VARCHAR2(30 BYTE),
EXTENT_GEOD MDSYS.SDO_GEOMETRY,
EXTENT_PROJ MDSYS.SDO_GEOMETRY
I also ran this
select sdo_cs.validate_wkt(9990001) from dual
and received this error
ORA-13249: SRID 9990001 does not exist in MDSYS.CS_SRS table
ORA-29400: data cartridge error
Error - OCI_NODATA
ORA-06512: at "MDSYS.SDO_CS", line 452
Greatly appreciate your help..

Thanks for the reply. Sorry I was out of town for a couple of weeks and this issue is still out there pending.
What's the procedure for defining a non-standard coordinate system number? Does it have to be done by the DBA or a developer could do it himself?
Thanks in advance

Similar Messages

  • Help: Error message "ORA-12560 TNS:Protocol Adapter Error "

    I tried to install Oracle 8i EE version 8.1.7 on Windows 2000. Everything is OK until the installation proceeded to installing "Oracle Database Configuration Assistant". At that point, I got an error message "ORA-12560 TNS:Protocol Adapter Error (network not loaded)". I looked up the error message. The cause of the error said: "This error occurs when the SQL*Net driver cannot find the JSB driver because you may have either forgotten to load the JSB driver (for instance MFTP) or used an incorrect TCP_VENDOR key (for example, TCP_VENDOR=NOVLWP).". And the suggested action said: "Load the JSB driver or use the correct TCP_VENDOR key.". I am using a standalone PC with Windows 2000 at home, and the PC does not connect to any network(except that I can dialup to internet via modem). What should I do? I can't understand the error message. Any expert to help me overcome the error?
    null

    database tnsnames.ora
    =========
    # TNSNAMES.ORA Network Configuration File: D:\Oracle\network\admin\tnsnames.ora
    # Generated by Oracle configuration tools.
    ORCL =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = mohsin-pc)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = ORCL)
    INST1_HTTP =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = mohsin-pc)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = SHARED)
    (SERVICE_NAME = MODOSE)
    (PRESENTATION = http://HRService)
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    developer 10g tnsnames.ora
    ==============
    # tnsnames.ora Network Configuration File: D:\Forms\network\admin\tnsnames.ora
    # Generated by Oracle configuration tools.
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.132)(PORT = 1521))
    (CONNECT_DATA =
    (SERVICE_NAME = Dedicated)
    ORCL =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = mohsin-pc)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = ORCL)
    Please tell me what changes I needed
    database serivice name is "ORCL'
    and my pc name is "mohsin-pc"

  • The dreaded ORA-13282 error

    Hi all,
    I have a custom coordinate system created in 10g that otherwise seems to work fine (SRID=9000001).
    When I try this simple conversion:
    SELECT sdo_cs.transform(sdo_geometry(2001,8192,sdo_point_type(13.6,52.4,null),null,null),9000001)
    from dual;
    I am getting:
    ORA-13282: failure on initialization of coordinate transformation
    ORA-06512: at "MDSYS.SDO_CS", line 75
    ORA-06512: at "MDSYS.SDO_CS", line 112
    ORA-06512: at "MDSYS.SDO_CS", line 2678
    So I do:
    SELECT SDO_CS.VALIDATE_WKT(9000001) FROM DUAL;
    And that comes back true. (As does 8192, but I would hope that would!)
    Scanning this forum, none of the other threads seems to help me. Anybody have any idea what I'm doing wrong?? I'm including the WKT for my custom coordinate system.
    PROJCS["BC Hydro Lambert Conformal Conic", GEOGCS["North_American_Datum_1983", DATUM["North_American_Datum_1983", SPHEROID["Geodetic Reference System of 1980",6378137,298.2572221009113]], PRIMEM["Greenwich",0], UNIT["Decimal Degree",0.0174532925199433]], PROJECTION["Lambert_Conformal_Conic_2SP"], PARAMETER["standard_parallel_1",50], PARAMETER["standard_parallel_2",56], PARAMETER["latitude_of_origin",53], PARAMETER["central_meridian",-123], PARAMETER["false_easting",0], PARAMETER["false_northing",0], UNIT["METER",1]]

    Huzzah! I was right.
    New, working WKT:
    PROJCS["BC Hydro Lambert Conformal Conic", GEOGCS["North American Datum 1983", DATUM["North American Datum 1983", SPHEROID["GRS 1980",6378137,298.2572221009113]], PRIMEM["Greenwich",0], UNIT["Decimal Degree",0.0174532925199433]], PROJECTION["Lambert Conformal Conic"], PARAMETER["Standard_Parallel_1",50], PARAMETER["Standard_Parallel_2",56], PARAMETER["Latitude_of_Origin",53], PARAMETER["Central_Meridian",-123], PARAMETER["False_Easting",0], PARAMETER["False_Northing",0], UNIT["METER",1]]
    Turns out that VALIDATE_WKT doesn't do a good job of validating WKTs. The names I used for spheroids were not what Oracle used, so when I converted them to be the same, coordinate conversion works!

  • Spatial query index creation fails with ORA-13282: failure on initializatio

    Hi,
    I have an Oracle 10g 10.2.0.5.0 database newly installed. Spatial index creation fails:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-13282: failure on initialization of coordinate transformation
    ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
    The script I am trying to run is:
    Insert into USER_SDO_GEOM_METADATA
    (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
    Values
    ('SOME_TABLE', 'geo',
    "SDO_DIM_ARRAY"(
    "SDO_DIM_ELEMENT"('X',600000,900000,0.001),
    "SDO_DIM_ELEMENT"('Y',150000,400000,0.001)), 23700);
    CREATE INDEX IX_GEO_SOME_TABLE ON SOME_TABLE (GEO) INDEXTYPE IS MDSYS.SPATIAL_INDEX ;
    Earlier I had some issues with NLS settings in relation to Spatial, but in this particular case setting the NLS_LANG for AMERICAN_AMERICA does not help. I found this comment http://www.orafaq.com/forum/t/127312/2/ but would not like to hack around with MDSYS table content. Any help is highly appreciated.
    Regards, Tamas

    Tamas,
    1 . . .Are you indexing a table that already has geometries or an empty table?
    . . . .If the former, do all the geometries in that table have the same (not NULL) SRID (23700)?
    2 . .The link you posted suggests a parsing problem since in Hungarian (23700), the decimal seperator is a comma (not a period). Accordingly, I believe the edit to mdsys.sdo_cs_srs.WKTEXT would be:
    PROJCS["HD72 / EOV", GEOGCS [ "HD72", DATUM ["Hungarian Datum 1972 (EPSG ID 6237)", SPHEROID ["GRS 1967 (EPSG ID 7036)", 6378160, 298,247167427]], PRIMEM [ "Greenwich", 0,000000 ], UNIT ["Decimal Degree", 0,01745329251994328]], PROJECTION ["Egyseges Orszagos Vetuleti (EPSG OP 19931)"], UNIT ["Meter", 1]]
                                                                                                                                         ^                                    ^                                   ^                                                                                                  Regards,
    Noel

  • ORA-13282: failure on initialization of coordinate transformation

    Hi all,
    I try to create an index with type spatial_index and get this errormessage:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-13282: failure on initialization of coordinate transformation
    ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 10
    ORA-06512: at line 1
    The WKTEXT ist this one (if it has something to do with it):
    PROJCS["Thueringen 4",GEOGCS["GCS_Deutsche_Hauptdreiecksnetz", DATUM["D_DHDN",SPHEROID["Bessel_1841",6377397.155,299.1528128]], PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199433]], PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",4500000], PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",12], PARAMETER["Scale_Factor",1],PARAMETER["Latitude_Of_Origin",0],
    UNIT["Meter",1]]
    Does anybody have any idea, what the problem could be?
    Thanks in advance
    Alex

    Hi Udo,
    This worked for me in 10g R1:
    insert into cs_srs values (
    'DHDN Soldner Berlin (EPSG 3068)',
    81989002,
    81989002,
    NULL,
    'PROJCS ["DHDN / Soldner Berlin",
    GEOGCS ["",
    DATUM ["",
    SPHEROID ["Bessel 1841", 6377397.155000, 299.152813],
    582.000000, 105.000000, 414.000000, -1.040000, -0.350000, 3.080000, 8.300000],
    PRIMEM [ "Greenwich", 0.000000 ],
    UNIT ["Decimal Degree", 0.01745329251994330]],
    PROJECTION ["Transverse Mercator"],
    PARAMETER ["Central_Meridian", 13.6272037],
    PARAMETER ["Latitude_Of_Origin", 52.41864828],
    PARAMETER ["False_Easting", 40000.00],
    PARAMETER ["False_Northing", 10000.00],
    UNIT ["Meter",1.000000000000]
    null);
    select sdo_cs.validate_wkt(81989002) from dual;
    select sdo_cs.transform(sdo_geometry(2001,8192,sdo_point_type(13.6,52.4,null),null,null),81989002)
    from dual;
    select sdo_cs.transform(SDO_GEOMETRY(2001,81989002,SDO_POINT_TYPE(38098.5904,8073.54076,NULL),NULL,NULL),8192)
    from dual;
    In 10gR2, you'll have to follow the new requirements for coordinate systems.

  • ORA-13282 on creating spatial index

    Hello
    I want to create a Spatial Index on a GeoRaster Table.
    First i updated the USER_GEOM_METADATA table:
    Insert Into MDSYS.USER_SDO_GEOM_METADATA
    Values ('LGVHH05', 'GEORASTER.SPATIALEXTENT', SDO_DIM_ARRAY(
         SDO_DIM_ELEMENT('Rechtswert',3500000,3600000,1),
         SDO_DIM_ELEMENT('Hochwert',5900000,6000000,1) ) , 31467);
    Then creating the index:
    CREATE INDEX LGVHH05_geor_ix ON LGVHH05(GEORASTER.SPATIALEXTENT) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
    And it gets me these Errors: ORA-29855, ORA-13282, ORA-06512
    WKT for 31467:
    PROJCS["DHDN / Gauss-Kruger zone 3", GEOGCS [ "DHDN", DATUM ["Deutsches Hauptdreiecksnetz (EPSG ID 6314)", SPHEROID ["Bessel 1841 (EPSG ID 7004)", 6377397,155,299,1528128], 598,1, 73,7, 418,2, ,2019999999999997917713955639905056624381, ,0449999999999999536124396058394690832164, -2,4549999999999974693008718296865910954
    7, ,9999933], PRIMEM [ "Greenwich", 0.000000 ], UNIT ["Decimal Degree", 0.017453
    29251994328]], PROJECTION ["3-degree Gauss-Kruger zone 3 (EPSG OP 16263)"], PARAMETER ["Latitude_Of_Origin", 0], PARAMETER ["Central_Meridian", 9], PARAMETER ["Scale_Factor", 1], PARAMETER ["False_Easting", 3500000], PARAMETER ["False_Northing", 0], UNIT ["Meter", 1]]
    The funktion sdo_cs.validate_wkt(31467) gets me FALSE(160);
    Now the question. Where is the failure?

    It looks like you have a problem with the decimal "delimeter" point vs comma.
    at position 160 in the WKTEXT, details on speroid
    this is how this SRID looks like (returning TRUE on validation):
    PROJCS["DHDN / Gauss-Kruger zone 3", GEOGCS [ "DHDN", DATUM ["Deutsches Hauptdreiecksnetz (EPSG ID 6314)", SPHEROID ["Bessel 1841 (EPSG ID 7004)", 6377397.155, 299.1528128], 598.1, 73.7, 418.2, .2019999999999997917713955639905056624381, .0449999999999999536124396058394690832164, -2.45499999999999746930087182968659109547, .9999933], PRIMEM [ "Greenwich", 0.000000 ], UNIT ["Decimal Degree", 0.01745329251994328]], PROJECTION ["3-degree Gauss-Kruger zone 3 (EPSG OP 16263)"], PARAMETER ["Latitude_Of_Origin", 0], PARAMETER ["Central_Meridian", 9], PARAMETER ["Scale_Factor", 1], PARAMETER ["False_Easting", 3500000], PARAMETER ["False_Northing", 0], UNIT ["Meter", 1]]
    Luc

  • Please Help, Error:ORA-06550

    I am calling a stored procedure in a package LDAP_AUTH ,this SP will take 3 input arguments which are varchar2.when I am calling the SP I am getting error.The SP is running fine in SQL * Plus. Pls help me on this.Pls mail me at [email protected]
    I used cmd.ExecuteNonQuery() i am getting the following error.
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'LOGIN'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    ************ Procedure Code Start *****************
    procedure login(p_user_id in varchar2, p_password in varchar2, p_client_identifier in Varchar2)
    as
    retval PLS_INTEGER;
    ldap_host varchar2(255):=get_host;
    ldap_port number:=get_port;
    user_id varchar2(100):=p_user_id;
    password varchar2(255) := p_password;
    base_dn cmm_preference_map_entry.preference_value_1%type := get_base_dn;
    username_filter cmm_preference_map_entry.preference_value_1%type := replace(get_ldap_username_filter,'%u',user_id);
    group_filter cmm_preference_map_entry.preference_value_1%type := get_ldap_group_member_filter;
    my_session DBMS_LDAP.session;
    res_message DBMS_LDAP.MESSAGE;
    res_attrs DBMS_LDAP.STRING_COLLECTION;
    temp_dn VARCHAR2(512);
    temp_entry DBMS_LDAP.MESSAGE;
    entry_index PLS_INTEGER;
    v_string_table v_string_table_ty;
    i number:=1;
    m number:=1;
    v_user_session_id number;
    pragma autonomous_transaction;
    begin
    DBMS_LDAP.USE_EXCEPTION := TRUE;
    retval := -1;
    -- Initialize the LDAP session
    my_session := DBMS_LDAP.init(ldap_host,ldap_port);
    --Authenticate to the directory
    --retval :=DBMS_LDAP.simple_bind_s(my_session, 'uid=wayyen,ou=people,o=Enterprise Company,dc=smartchain','wayyen');
    retval :=DBMS_LDAP.simple_bind_s(my_session, '','');
    --res_attrs(1):='cn';
    retval := DBMS_LDAP.SEARCH_S(
    ld => my_session
    , base => base_dn
    , scope => DBMS_LDAP.SCOPE_SUBTREE
    , filter => username_filter
    , attrs => res_attrs
    , attronly => 0
    , res => res_message
    temp_entry := DBMS_LDAP.FIRST_ENTRY(my_session, res_message);
    temp_dn := DBMS_LDAP.GET_DN(my_session, temp_entry);
    -- dbms_output.put_line('User DN: '||temp_dn);
    retval :=DBMS_LDAP.simple_bind_s(my_session, TEMP_DN, p_password);
    res_attrs.delete;
    res_attrs(1):='*';
    retval := DBMS_LDAP.SEARCH_S(
    ld => my_session
    , base => base_dn
    , scope => DBMS_LDAP.SCOPE_SUBTREE
    , filter => replace(get_ldap_group_member_filter,'%M',temp_dn)
    , attrs => res_attrs
    , attronly => 0
    , res => res_message
    -- retval := DBMS_LDAP.COUNT_ENTRIES(my_session, res_message);
    -- DBMS_OUTPUT.PUT_LINE(
    -- RPAD('Number of Entries ', 25, ' ') || ': ' || TO_CHAR(retval)
    temp_entry := DBMS_LDAP.FIRST_ENTRY(my_session, res_message);
    entry_index := 1;
    while temp_entry is not null
    loop
    -- dbms_output.put_line('***Group DN**** '||DBMS_LDAP.get_dn(my_session, temp_entry));
    v_string_table(i):=DBMS_LDAP.get_dn(my_session, temp_entry);
    i := i + 1;
    temp_entry := DBMS_LDAP.NEXT_ENTRY(my_session, temp_entry);
    -- DBMS_OUTPUT.PUT_LINE('===================================================');
    entry_index := entry_index + 1;
    END LOOP;
    create_user_session(p_user_id, v_string_table, v_user_session_id);
    ldap_ctx_pkg.set_session_id(v_user_session_id, p_client_identifier);
    dbms_output.put_line('user_session_id: '||v_user_session_id);
    commit;
    retval := DBMS_LDAP.UNBIND_S(my_session);
    end login;
    ************ Procedure Code End*****************
    Web.config
    <appSettings>
    <!--<add key="BaseURLSite" value="http://localhost/SaviReportsWebSite"/>
    <add key="DataSource" value="SRIRAMA-D620"/>
    <add key="UID" value="sa"/>
    <add key="PWD" value="satyam"/>
    <add key="DatabaseName" value="Employee"/>-->
    <add key="BaseURLSite" value="http://localhost/SaviReportsWebSite"/>
    <add key="UID" value="rpt$928$syn"/>
    <add key="PWD" value="rpt$928$syn"/>
    <add key="Data Source" value="AURORA"/>
    <add key="ReportService2005WebService.ReportService2005" value="http://localhost/ReportServer/ReportService2005.asmx"/>
    </appSettings>
    Public Function check_Login(ByVal strLoginIDDesc As String, ByVal strPasswordDesc As String, ByVal strSessionIDDesc As String) As Boolean
    Dim strSQL As String
    'Dim dsHomePage As DataSet
    Dim OracleParam(2) As OracleParameter
    Dim blnStatus As Boolean = False
    Dim gStrConnection As String = Nothing
    gStrConnection = "Persist Security Info=False;"
    gStrConnection += "Integrated Security=False;"
    gStrConnection += "User ID=" + ConfigurationManager.AppSettings("UID") + ";"
    gStrConnection += "pwd=" + ConfigurationManager.AppSettings("PWD") + ";"
    gStrConnection += "Data Source=" + ConfigurationManager.AppSettings("Data Source")
    Dim OracleConnection1 As New OracleConnection(gStrConnection)
    Dim cmd As New OracleCommand
    Dim rowsAffected As Integer
    Dim index As Integer
    cmd.CommandText = "ldap_auth.login"
    cmd.CommandType = CommandType.StoredProcedure
    cmd.Connection = OracleConnection1
    OracleConnection1.Open()
    OracleParam(0) = New OracleParameter("LoginIDDesc", OracleType.LongVarChar)
    OracleParam(0).Direction = ParameterDirection.Input
    OracleParam(0).Value = strLoginIDDesc
    OracleParam(1) = New OracleParameter("PasswordDesc", OracleType.LongVarChar)
    OracleParam(1).Direction = ParameterDirection.Input
    OracleParam(1).Value = strPasswordDesc
    OracleParam(2) = New OracleParameter("SessionIDDesc", OracleType.LongVarChar)
    OracleParam(2).Direction = ParameterDirection.Input
    OracleParam(2).Value = strSessionIDDesc
    Dim UBound As Integer = OracleParam.Length
    For index = 0 To UBound - 1
    cmd.Parameters.Add(OracleParam(index))
    Next
    rowsAffected = cmd.ExecuteNonQuery()
    OracleConnection1.Close()
    If rowsAffected = -1 Then
    blnStatus = True
    End If
    Return blnStatus
    End Function
    Regards,
    SriRam.

    alter table tableName drop constraint constraintName ;
    You cannot drop an index being used to enforce uniqueness. You must drop the constraint - which will also drop the index. You also cannot drop a unique constraint being used as a reference of a foreign key. Adding the keyword CASCADE will allow you to get around that, but it will destroy the FK references.
    alter table tableName drop constraint constraintName CASCADE ;

  • REP-1401:'cf_1formula': Fatal PL/SQL error occured, ORA-01403: no data fou

    hi,
    my report is giving error REP-1401:'cf_1formula': Fatal PL/SQL error occured,
    ORA-01403: no data found
    There are two table emp1 and emp2 created from employees table from HR schema
    I have deleted some records from table emp2 where department id is 110
    main query is
    select employee_id, first_name, department_id from emp1
    now i created a foumula column
    function CF_1Formula return Number is
    dept number;
    begin
    select department_id into dept from emp2 where employee_id = :employee_id;
    return(dept);
    end;
    the above error is given when report is run. i tried
    exception
    when_no_data_found then
    dept:=000
    but problem is not solved
    i want to disply any number in this foumula column if the record is not found

    M. Khurram Khurshid wrote:
    exception
    when_no_data_found then
    dept:=000try this code in formula
    function CF_1Formula return Number is
    dept number;
    begin
    select department_id into dept from emp2 where employee_id = :employee_id;
    if dept is not null then
    return(dept);
    else
    return 0;
    end if;
    end; Hope this will help you...
    If someone response is helpful or correct please, mark is accordingly.

  • Error Message - ORA-01722 Invalid Number

    Hello:
    I have the following situation. When I create an organization, a record is inserted into the following table, AGREEMENTS, and populates four fields.
    I have an update form which selects the organization from the AGREEMENTS table so the user can populate the rest of the table. In addition, on this form, there is a drop-down box which allows the user to select the name of a legal document along with the version of the document in which the user needs to select. This select list is created via an LOV joining three tables. The item name for this select list is :P6_DOCUMENT.
    The code for the LOV is:
    SELECT S.DOC_NAME||' - '|| O.VERSION_NO AS DOC, O.ORG_DOC_CURR_KEY
    FROM SUPPORTING_DOCS S,
         ORG_DOC_CURR_VER O,
         AGREEMENTS H
    WHERE
        S.DOC_TYPE = 'HISA'
    AND S.SUPPORTING_DOC_KEY = O.SUPPORTING_DOC_KEY
    AND H.ORG_KEY_LE = O.ORG_KEY
    AND O.ORG_KEY=:P6_ORG_KEY_LEWhen the user completes the form, the SUBMIT process is a PL/SQL block consisting of an UPDATE statement to update the AGREEMENTS table based on the selected organization and an INSERT statement to insert a record into the AGREEMENTS_DOC table to store the value stored in :P7_DOCUMENT.
    Ok, now here is where my problem starts.
    When I first bring up the form and I select the organization I want to update, I click the Search button to find the organization and I receive the following error message: ORA-01722 Invalid Number.
    At this point all I'm doing is a basic search. There is no insert/update or anything going on. I'm not understanding why I would be receiving this error message.
    The search is based on the database column ORG_KEY_LE whose datatype is NUMBER.
    In my application, the item assigned to ORG_KEY_LE is P6_ORG_KEY_LE.
    I have a PL/SQL block process created (On Load-Before Header) in the Page Rendering area of my page definition. The PL/SQL code that is written is:
    BEGIN
    IF :P6_SEARCH_ORG != '0' THEN
    :P6_ORG_KEY_LE := :P6_SEARCH_ORG;
    END IF;
    END;I then have an Item created, :P6_SEARCH_ORG, which is a Select List. In the LOV portion of the page for this item, I have the following:
    select ORG_KEY_LE display_value, ORG_KEY_LE return_value
    from AGREEMENTS
    order by 1The reason for using this table is because this table contains the newly created organization which needs to be updated with the remaining columns of data.
    I then have a Search button in the Button area which has the following settings:
    Button Position: Region Template Position #CHANGE#.
    Condition Type: Value of Item in Express 1 is NULL.
    Expression 1: :P6_ORG_KEY_LE.
    To troubleshoot this problem, I created two pages, one page to do the UPDATE and the second page to do the INSERT.
    The SEARCH functionality in both pages are identical.
    When I run my UPDATE page, which only involves updating the missing fields, the process works. I have my search box, I'm able to search for the organization, make my updates, and I'm good.
    When I run my INSERT page, which involves inserting the record with the assigned document, I receive the error message after I click the SEARCH button. In order to INSERT the record into this table, I first need to SELECT the organization that was UPDATED in the AGREEMENTS table (using the UPDATE page described in above paragraph). When I select the organization, the user can then assign the appropriate legal document to the organization and insert the record into the AGREEMENTS_DOC table.
    Can someone help me with this error message? I'm not sure why I am able to perform my SEARCH on a page with the UPDATE statement, not able to perform the SEARCH on the page with my INSERT statement, and not be able to perform the SEARCH on the page that combines the UPDATE and INSERT statements.
    I did some more troubleshooting and I do believe my SUBMIT process which contains the INSERT statement is the issue. I created a fourth page which doesn't have a SUBMIT process. I brought up the form, searched for my organization and the information for that organization appeared. The problem is definately with my UPDATE/INSERT process.
    The PL/SQL block for the Submit process is the following:
    BEGIN
    update
        MDD.HISA_AGREEMENTS
         set
           LAST_UPDATED_BY=V('APP_USER'),
           APPROVER_SALUTATION=:P6_APPROVER_SALUTATION,
           APPROVER_FIRST_NAME=:P6_APPROVER_FIRST_NAME,
           APPROVER_MIDDLE_INITIAL=:P6_APPROVER_MIDDLE_INITIAL,
           APPROVER_LAST_NAME=:P6_APPROVER_LAST_NAME,
           APPROVER_NAME_SUFFIX=:P6_APPROVER_NAME_SUFFIX,
           APPROVER_EMAIL_ADDR=:P6_APPROVER_EMAIL_ADDR,
           SPONSOR_EMAIL_ADDR=:P6_SPONSOR_EMAIL_ADDR,
           APPROVER_TITLE=:P6_APPROVER_TITLE
    where
          ORG_KEY_LE=:P6_ORG_KEY_LE
    INSERT INTO
        HISA_AGREEMENT_DOCS
          (HISA_AGREEMENT_DOC_KEY,
           ORG_KEY_LE,
           APPLICATION_KEY,
           STATUS,
           STATUS_DATE,
           CREATED_BY,
           ORG_DOC_CURR_KEY)
    VALUES
          (HISA_AGREEMENT_DOC_KEY_SEQ.NEXTVAL,
           :P6_ORG_KEY_LE,
           :P6_APPLICATION_KEY,
           'C',
           SYSDATE,
           V('APP_USER'),
           :P6_DOCUMENT)
    END;There is something wrong with the above statement and I do not understand what it could be. Can someone help?
    Thanks for the help.

    Hi,
    I believe you are on to something.
    The select list for item :P6_DOCUMENT appears when I first bring up the form. When I select my organization and receive the error message, I clicked on the Session in the Developer's bar. The value in item/field :P6_DOCUMENT shows %null%.
    This is the path in which my user would like to accomplish her task:
    1. Select an organization
    2. Display the information for that organization from the AGREEMENTS table
    3. Enter the data for the remaining fields in the AGREEMENTS table
    4. Select the document (:P6_DOCUMENT) from the drop-down.
    5. Click Submit
    6. Update the AGREEMENTS table with data entered in #3.
    7. Insert a record into the AGREEMENTS_DOC table with the selection from #4.
    Somehow I need the :P6_DOCUMENT field not to show the %null% during the SEARCH functionality. I think that is causing the problem.
    How do I fix this?

  • REP-1401 Fatal PL/SQL error occur ORA-06502 numeric or value error

    Hi,
    I am getting following error in reports 6i
    REP-1401 Fatal PL/SQL error occur ORA-06502 numeric or value error.
    I have added a formula column based on other formula column
    function CF_1FORMULA0005 return varchar2 is
    CF_CREDIT varchar2(38);
    begin
    :CF_CREDIT:= :D_CARRY_F_CR+:D_HD_SUM_REP_CR;
    RETURN (:CF_CREDIT);
    end;
    Oracle Standard formula coulmn:
    function D_CARRY_F_DRFormula return VARCHAR2 is
    l_dr VARCHAR2(38);
    l_dr_disp VARCHAR2(38);
    begin
    SRW.REFERENCE(:C_FUNC_CURRENCY);
    SRW.REFERENCE(:C_CARRY_F_DR);
    if (:C_CARRY_F_DR = 0) THEN
    ax_globe_package.g_dr_cf := TRUE;
    --l_dr:= '0.00';
    l_dr_disp := '0.00';
    l_dr := ax_currency_pkg.display_char(:C_FUNC_CURRENCY,l_dr_disp,38);
    else
    -- return(ax_currency_pkg.display_char(:C_FUNC_CURRENCY,:C_CARRY_F_DR,ax_page_pkg.f_maxlength));
    -- Bug2239881. Setting the carried forward totals.
    IF (:P_GLOBAL_ATTR_CAT = 'JE.GR.GLXSTBKS.BOOKS' AND ax_globe_package.g_dr_cf = FALSE) THEN
    ax_globe_package.g_dr_cf := TRUE;
    ax_globe_package.g_dr_total := :C_CARRY_F_DR;
    END IF;
    srw.message(999,'G_DR_TOTAL = ' || ax_globe_package.g_dr_total );
    l_dr := ax_currency_pkg.display_char(:C_FUNC_CURRENCY,to_char(ax_globe_package.g_dr_total),38);
    /*select to_number(l_dr, '999G999G999G999G990D00')
    into l_dr_disp
    from dual;
    end if;
    srw.message(999,'l_dr = ' || l_dr );
    return l_dr;
    --return ltrim(to_char(l_dr_disp,'999G999G999G999G990D00','nls_numeric_characters=,.'));
    end;
    both formula column return types are character.Please help me ASAP.
    Thanks,
    sriharsha.

    Hi,
    First of all: when you should use concatenation operator (||) instead of plus sign when working with strings. So, instead of
    :CF_CREDIT:= :D_CARRY_F_CR+:D_HD_SUM_REP_CR; you should use
    :CF_CREDIT:= :D_CARRY_F_CR||:D_HD_SUM_REP_CR; If :D_CARRY_F_CR and :D_HD_SUM_REP_CR are both numbers then consider to use to_char function before you assign value to :CF_CREDIT.
    I wonder, why your CF's returns varchar's if they operates on numbers?
    regards
    kikolus
    Edited by: kikolus on 2012-11-30 08:03

  • Getting Error - CREATE_CASH : ORA-01403: no data found

    When i use api AR_RECEIPT_API_PUB.CREATE_CASH in loop then i get error 'CREATE_CASH : ORA-01403: no data found' for second record.
    AR_RECEIPT_API_PUB.CREATE_CASH(p_api_version => 1.0
    ,p_init_msg_list => fnd_api.g_true
    ,p_commit => fnd_api.g_true
    ,p_receipt_number => i_receipt_number
    ,p_receipt_date => TRUNC(SYSDATE)
    ,p_gl_date => TRUNC(SYSDATE)
    ,p_amount => i_receipt_amount
    ,p_currency_code => g_currency_code
    ,p_receipt_method_id => i_receipt_method_id
    ,p_customer_id => i_customer_id
    ,p_cr_id => l_cr_id
    ,p_org_id => i_org_id
    ,x_return_status => l_return_status
    ,x_msg_count => l_msg_count
    ,x_msg_data => l_msg_data
    I run it for different org. First org it's running fine but for second it's fail -
    Here is output -
    Start, Org ID - 84
    l_receipt_number - 43164
    l_receipt_amount - 74.55
    g_currency_code - USD
    l_receipt_method_id - 4000
    l_customer_id - 7040
    l_cr_id -
    l_return_status -
    l_msg_count -
    l_msg_data -
    Status - S
    Start, Org ID - 81
    l_receipt_number - 43166
    l_receipt_amount - 30
    g_currency_code - USD
    l_receipt_method_id - 4000
    l_customer_id - 7047
    l_cr_id -
    l_return_status -
    l_msg_count -
    l_msg_data -
    Error count/msg - 2-
    Error msg - CREATE_CASH : ORA-01403: no data found
    Error msg - ORA-01403: no data found in Package AR_RECEIPT_API_PUB Procedure Create_cash
    PLease help it's urgent

    Here is code which i am using...
    IF l_ar_pay_rec > 0 THEN
    l_receipt_number := ar_cash_receipts_s.NEXTVAL;
    FOR r_ar_org_records IN cr_ar_org_records
    LOOP
    IF r_ar_org_records.org_id = 81 THEN
    l_resp_id := 50677;
    ELSE
    l_resp_id := 50681;
    END IF;
    MO_GLOBAL.INIT('AR');
    MO_GLOBAL.SET_POLICY_CONTEXT('S',r_ar_org_records.org_id);
    FND_GLOBAL.APPS_INITIALIZE(g_user_id,l_resp_id,l_appl_id,0);
    DBMS_OUTPUT.PUT_LINE('User,Resp,App,Org - '||g_user_id||','||l_resp_id||','||l_appl_id||','||r_ar_org_records.org_id);
    -- Derive Receipt Method ID
    BEGIN
    SELECT receipt_method_id
    INTO l_receipt_method_id
    FROM ar_receipt_methods
    WHERE name = g_receipt_method;
    EXCEPTION
    WHEN OTHERS THEN
    g_ar_error := 'Y';
    g_ar_error_msg := g_ar_error_msg||'Receipet Method Not Found, ';
    FND_FILE.PUT_LINE(FND_FILE.LOG,'Error While Derive Receipt Method ID');
    END;
    -- Derive Customer ID
    BEGIN
    SELECT customer_id
    ,SUM(AMOUNT_PAID)
    INTO l_customer_id
    ,l_receipt_amount
    FROM xxar_third_party_validation
    WHERE raf_code = i_raf
    AND receipt_date = i_date_paid
    AND org_id = r_ar_org_records.org_id
    AND customer_id is not null
    GROUP BY customer_id;
    EXCEPTION
    WHEN OTHERS THEN
    g_ar_error := 'Y';
    g_ar_error_msg := g_ar_error_msg||' Customer ID Not Found, ';
    FND_FILE.PUT_LINE(FND_FILE.LOG,'Error While Customer ID');
    END;
    fnd_msg_pub.initialize;
    l_return_status := NULL;
    l_msg_count := NULL;
    l_msg_data := NULL;
    l_cr_id := NULL;
    g_currency_code := 'USD';
    DBMS_OUTPUT.PUT_LINE('Start, Org ID - '||r_ar_org_records.org_id);
    -- Create Cash for Customer
    DBMS_OUTPUT.PUT_LINE('l_receipt_number - '||l_receipt_number);
    DBMS_OUTPUT.PUT_LINE('l_receipt_amount - '||l_receipt_amount);
    DBMS_OUTPUT.PUT_LINE('g_currency_code - '||g_currency_code);
    DBMS_OUTPUT.PUT_LINE('l_receipt_method_id - '||l_receipt_method_id);
    DBMS_OUTPUT.PUT_LINE('l_customer_id - '||l_customer_id);
    DBMS_OUTPUT.PUT_LINE('l_cr_id - '||l_cr_id);
    DBMS_OUTPUT.PUT_LINE('l_return_status - '||l_return_status);
    DBMS_OUTPUT.PUT_LINE('l_msg_count - '||l_msg_count);
    DBMS_OUTPUT.PUT_LINE('l_msg_data - '||l_msg_data);
    AR_RECEIPT_API_PUB.CREATE_CASH(p_api_version => 1.0
    ,p_init_msg_list => fnd_api.g_true
    ,p_receipt_number => l_receipt_number
    ,p_receipt_date => TRUNC(SYSDATE)
    ,p_gl_date => TRUNC(SYSDATE)
    ,p_amount => l_receipt_amount
    ,p_currency_code => g_currency_code
    ,p_receipt_method_id => l_receipt_method_id
    ,p_customer_id => l_customer_id
    ,p_cr_id => l_cr_id
    ,p_org_id => r_ar_org_records.org_id
    ,x_return_status => l_return_status
    ,x_msg_count => l_msg_count
    ,x_msg_data => l_msg_data
    DBMS_OUTPUT.PUT_LINE('Status - '||l_return_status);
    IF l_return_status <> 'S' THEN
    g_ar_error := 'Y';
    DBMS_OUTPUT.PUT_LINE('Error count/msg - '||l_msg_count||'-'||l_msg_data);
    IF l_msg_count = 1 THEN
    g_ar_error_msg := g_ar_error_msg||l_msg_data;
    DBMS_OUTPUT.PUT_LINE('Error msg - '||l_msg_data);
    ELSIF l_msg_count > 1 THEN
    LOOP
    l_msg_data := fnd_msg_pub.get (fnd_msg_pub.g_next
    ,fnd_api.g_false);
    IF l_msg_data IS NULL THEN
    EXIT;
    END IF;
    g_ar_error_msg := g_ar_error_msg||l_msg_data;
    DBMS_OUTPUT.PUT_LINE('Error msg - '||l_msg_data);
    END LOOP;
    END IF;
    xxar_log_error(r_ar_org_records.record_id,SUBSTR(g_ar_error_msg,1,120));
    ELSE
    DBMS_OUTPUT.PUT_LINE('Status - '||l_return_status);
    FOR r_ar_records IN cr_ar_records(r_ar_org_records.org_id)
    LOOP
    fnd_msg_pub.initialize;
    l_return_status := NULL;
    l_msg_count := NULL;
    l_msg_data := NULL;
    l_cr_id := NULL;
    l_receipt_amount := r_ar_records.amount_paid;
    l_trx_number := r_ar_records.transaction_number;
    g_currency_code := r_ar_records.currency_code;
    l_receipt_date := SYSDATE;
    l_gl_date := SYSDATE;
    -- Apply payments for the RAF and Date Paid
    AR_RECEIPT_API_PUB.APPLY(p_api_version => 1.0
    ,p_init_msg_list => fnd_api.g_true
    ,p_commit => fnd_api.g_false
    ,x_return_status => l_return_status
    ,x_msg_count => l_msg_count
    ,x_msg_data => l_msg_data
    ,p_receipt_number => l_receipt_number
    ,p_trx_number => l_trx_number
    ,p_amount_applied => l_receipt_amount
    ,p_org_id => r_ar_org_records.org_id
    IF l_return_status <> 'S' THEN
    g_ar_error := 'Y';
    IF l_msg_count = 1 THEN
    g_ar_error_msg := g_ar_error_msg||l_msg_data;
    ELSIF l_msg_count > 1 THEN
    LOOP
    l_msg_data := fnd_msg_pub.get (fnd_msg_pub.g_next
    ,fnd_api.g_false);
    IF l_msg_data IS NULL THEN
    EXIT;
    END IF;
    g_ar_error_msg := g_ar_error_msg||l_msg_data;
    END LOOP;
    END IF;
    xxar_log_error(r_ar_records.record_id,SUBSTR(g_ar_error_msg,1,240));
    ELSE
    DBMS_OUTPUT.PUT_LINE('Sucess 2 - ');
    NULL;
    /* -- Call Adjustment API for Contractual Allowance
    IF NVL(r_ar_records.contractual_allowance_amt,0) > 0 THEN
    xxar_third_party_rcpt_adj(r_ar_records.record_id
    ,r_ar_records.transaction_number
    ,r_ar_records.contractual_allowance_amt
    ,i_user_id
    END IF; */
    END IF;
    END LOOP;
    END IF;
    DBMS_OUTPUT.PUT_LINE('Error Flag AR - '||g_ar_error);
    IF g_ar_error = 'Y' THEN
    xxar_log_error(r_ar_org_records.record_id,SUBSTR(g_ar_error_msg,1,240));
    END IF;
    END LOOP;

  • I am getting this error message "ORA-01006: bind variable does not exist.

    My code works fine like this:
    DECLARE
    v_JOBTYPE varchar2(8);
    v_STATUS varchar2(8);
    v_FAILURE varchar2(8);
    v_CAUSE varchar2(8);
    v_ACTION varchar2(8);
    BEGIN
    SELECT EVT_STATUS, EVT_FAILURE, EVT_CAUSE, EVT_ACTION, EVT_JOBTYPE
    INTO v_STATUS, v_FAILURE, v_CAUSE, v_ACTION, v_JOBTYPE
    FROM R5EVENTS WHERE ROWID = :ROWID;
    IF NVL(v_STATUS, 'X') = 'C' AND NVL(v_JOBTYPE , 'X') IN ('BRKD','UNPLBRKD','FILTRA', 'LUB', 'FAC') AND (v_FAILURE IS NULL OR v_CAUSE IS NULL OR v_ACTION IS NULL) THEN
    RAISE_APPLICATION_ERROR( -20001, 'FAILURE, CAUSE AND ACTION FIELDS MUST BE POPULATED');
    END IF;
    END;
    But I want to change the code to include a record (ACT_TRADE) from another table(R5ACTIVITIES). I am getting this error message "ORA-01006: bind variable does not exist - POST-UPDATE 200Before Binding". Any help would be appreciated.
    DECLARE
    v_STATUS varchar2(8);
    v_FAILURE varchar2(8);
    v_CAUSE varchar2(8);
    v_ACTION varchar2(8);
    V_CODE varchar2(8);
    V_EVENT varchar2(8);
    V_TRADE varchar2(8);
    BEGIN
    SELECT R5EVENTS.EVT_STATUS, R5EVENTS.EVT_FAILURE, R5EVENTS.EVT_CAUSE, R5EVENTS.EVT_ACTION, R5EVENTS.EVT_CODE, R5ACTIVITIES.ACT_EVENT, R5ACTIVITIES.ACT_TRADE
    INTO v_STATUS, v_FAILURE, v_CAUSE, v_ACTION, V_CODE, V_EVENT, V_TRADE
    FROM R5EVENTS, R5ACTIVITIES WHERE V_CODE = :V_EVENT;
    IF NVL(v_STATUS, 'X') = 'C' AND NVL(v_TRADE , 'X') IN ('MTM','MTL','MTMGT', 'FTM', 'FTL', 'FTMGT', 'R5') AND (v_FAILURE IS NULL OR v_CAUSE IS NULL OR v_ACTION IS NULL) THEN
    RAISE_APPLICATION_ERROR( -20001, 'FAILURE, CAUSE AND ACTION FIELDS MUST BE POPULATED');
    END IF;
    END;

    Thank you for your responses. Your feedback was helpful. This is what I ended up doing for a solution:
    DECLARE
    v_JOBTYPE varchar2(8);
    v_STATUS varchar2(8);
    v_FAILURE varchar2(8);
    v_CAUSE varchar2(8);
    v_ACTION varchar2(8);
    v_GROUP varchar2(30);
    BEGIN
    SELECT EVT_STATUS, EVT_FAILURE, EVT_CAUSE, EVT_ACTION, EVT_JOBTYPE, USR_GROUP
    INTO v_STATUS, v_FAILURE, v_CAUSE, v_ACTION, v_JOBTYPE, v_GROUP
    FROM R5EVENTS, R5USERS WHERE R5EVENTS.ROWID = :ROWID
    AND USR_CODE = O7SESS.CUR_USER;
    IF NVL(v_STATUS, 'X') = 'C' AND NVL(V_GROUP,'X') IN ('MTM','MTL','MTMGT','FTL','FTMGTS','PLANNER','DISPATCH','PMCOOR','R5') AND (v_FAILURE IS NULL OR v_CAUSE IS NULL OR v_ACTION IS NULL) THEN
    RAISE_APPLICATION_ERROR( -20001, 'FAILURE, CAUSE AND ACTION FIELDS MUST BE POPULATED');
    END IF;
    END;

  • Persistent Layer Error Message: ORA-01729 database link name expected

    Hi,
    I've done a series of loads from DB2 into Oracle, initially importing the database objects from DB2 and Oracle, then creating the mappings, deploying and executing. It all worked and I had no problems. For some reason now whenever I tried to import a new Database Object (table) from the DB2 I enter the password, test it and it successfully connects but then I get the error message on a popup box:
    SQL Exception
    Persistent Layer Error: SQL Exception
    Class Name: CacheMediator
    Method Name: getSQLResult
    Persistent Layer Error Message: ORA-01729 database link name expected
    If I create a new location for the same database it works and I can import new objects. The only difference I can think from the initial imports is that I’ve moved the repository from one server to another. Might be the case where some information got corrupted in the metadata.
    Has anyone seen this kind of problem before? Can you please help me out with this issue?
    Thanks in advance for your help.
    Regards,
    Leo

    I found it.When I look at the db links there is something missing.When I correct it everything works fine.

  • Need help in resolving ORA-06502: PL/SQL: related to WF objects

    Hi,
    We are getting the following error "Oracle error -6502: ORA-06502: PL/SQL: numeric or value error: character string buffer too small has been detected in FND_USER_RESP_GROUPS_API.UPDATE_ASSIGNMENT" when we add a new user or make changes to the existing user or anything associated with Workflow process. We have an SR open for over a week, but no resolution yet...!
    We ran autoconfig few times, complied Invalid objects etc ...but no luck!
    This is ERP 11.5.10.2 on Red Hat Linux 4.0 on a 2-node RAC cluster and 2-node Apps Cluster (PCP) ---; thanks in advance..!
    Subroto

    Did this work successfully before ? If so, what has changed ? Can this error be reproduced consistently on all instances ? Can you pl provide the navigation path to reproduce the error ?
    Are you using the Internal Controls Manager module ? If so, MOS Doc 456950.1 (Preventive Segregation of Duties Constraints On Users Form Fails With Ora-6512, Ora-4088) may help.
    HTH
    Srini

  • How to update more than 5 million records without error message ORA-00257:

    Hi ,
    I need to update some columns in my table which is contains about 5 million records
    I 've already tried this
    Update AAA_CDR
    Set RoamFload = Null ;
    but the problem is I've got the error message ("ORA-00257: archiver error. Connect internal only,until freed.) and the update consuming about 6 hours with no results ,
    then I do the commands ( Alter system set db_recovery_file_dest_size=50G) and the problem solved .
    but I need to update about 15 columns of this table to be null ,what I should do to overcome this message and update the table in reasonable time
    Please Help Me ,

    The best way would be to allocate sufficient disk space for your archive log destination. Your database is not sized properly. NOLOGGING option will not do much for you because it' only applies to direct load operations when the data inserted into nologging table is selected from another table. UPDATE will be be logged, regardless of the NOLOGGING status. Here is the quote from the manual:
    <quote>
    LOGGING|NOLOGGING
    LOGGING|NOLOGGING specifies that subsequent Direct Loader (SQL*Loader) and direct-load
    INSERT operations against a nonpartitioned index, a range or hash index partition, or
    all partitions or subpartitions of a composite-partitioned index will be logged (LOGGING)
    or not logged (NOLOGGING) in the redo log file.
    In NOLOGGING mode, data is modified with minimal logging (to mark new extents invalid
    and to record dictionary changes). When applied during media recovery, the extent
    invalidation records mark a range of blocks as logically corrupt, because the redo data
    is not logged. Therefore, if you cannot afford to lose this index, you must take a backup
    after the operation in NOLOGGING mode.
    If the database is run in ARCHIVELOG mode, media recovery from a backup taken before an
    operation in LOGGING mode will re-create the index. However, media recovery from a backup
    taken before an operation in NOLOGGING mode will not re-create the index.
    An index segment can have logging attributes different from those of the base table and
    different from those of other index segments for the same base table.
    </quote>
    If you are really desperate, you can try the following undocumented/unsupported command:
    ALTER DATABASE ARCHIVELOG COMPRESS ENABLE;
    That will cause database to compress your archive logs and consume less space. This command is not documented or supported, not even in the version 11.2.0.3 and causes the database to start spewing ORA-0600 in version 10G. DO NOT USE IN A PRODUCTION ENVIRONMENT!!!!

Maybe you are looking for