To solve ORA-1008,set cursor_sharing parameter to EXACT

Per Bug 7154579 customer, to solve ORA-1008,set cursor_sharing parameter to EXACT but still see the error on the application.
One of the instance in our 4 node RAC USED to have cursor_sharing=similar, and the rest set to exact. Customer changed it to 'exact' longtime back. but still found some background process using cursor_sharing=similar ( and still see the error 1008) .
After the bounce of the above-mentioned node, but absent a clean restart of the whole RAC database, the customer still experienced the 1008 error. Session level is showing,INSTEAD OF "SIMILAR" for the background processes,the entries of "uninitialized". See query below:
SYS@ptmpnew4 >select inst_id,id,name,value from gV$SYS_OPTIMIZER_ENV where name like 'cursor%' ;
INST_ID ID NAME VALUE
4 48 cursor_sharing exact
3 48 cursor_sharing exact
2 48 cursor_sharing exact
1 48 cursor_sharing exact
SYS@ptmpnew4 >
SYS@ptmpnew4 >select inst_id,name,value,count(1) from gV$ses_OPTIMIZER_ENV where name like 'cursor%'
group by inst_id,name,value; 2
INST_ID NAME VALUE COUNT(1)
1 cursor_sharing exact 599
1 cursor_sharing uninit 20
2 cursor_sharing exact 590
2 cursor_sharing uninit 18
3 cursor_sharing exact 583
3 cursor_sharing uninit 19
4 cursor_sharing exact 600
4 cursor_sharing uninit 18
what could be the possible reason

cursor_sharing parameter in the init. ora allows you to change the shared pool's default behaviour when parsing and caching SQL statements.
force - allows two SQL statements, which differ only by a literal value, to share parsed code cached in the shared pool. the difference in literal values must not change the meaning of the statement.
similar - allows two sql statements, which differ only by a literal value, to share parsed code cached in the shared pool. the difference in literal values must not change the meaning of the statement or its cached execution plan.
exact - two sql statements must match exactly in order to share the parse code cached in shared pool.
refer the link given below , you will get answer for all your questions.
http://www.oracle.com/technology/oramag/oracle/06-jan/o16asktom.html
to know Parsing in Oracle, refer.
http://www.databasejournal.com/features/oracle/article.php/3341851/Parsing-in-Oracle.htm
Edited by: rajeysh on Jun 19, 2010 12:40 PM

Similar Messages

  • How to set UTL_FILE parameter in the INIT.ORA file

    Dear all,
    How can i set UTL_FILE parameter in the INIT.ORA file.
    Also let me know how to create a directory over there.I am new to this area.
    Where exactly i can locate these details and create directory.
    Regards,
    Bala.

    post this in database forum

  • ORA-07202 sltln: invalid parameter to sltln.using

    OS:Red Hat Linux 5
    DB :11.2.0.2
    i am getting this error while creating 11g DB using DBCA ORA-07202 sltln: invalid parameter to sltln.using dbca to create

    Please check this thread (response from PavanG):
    ORA-07202 while creating DB
    Even though your DB version is 11g but this thread may help solve your problem.

  • ORA-02095: specified initialization parameter cannot be modified

    Oracle : 10.2.0.4
    I am getiing below error while setting this parameter in one of teh RAC instance.
    ORA-02095: specified initialization parameter cannot be modified
    Is there any solution for that ?
    Thx.

    Have a look here:
    http://download.oracle.com/docs/cd/E11882_01/server.112/e10820/initparams262.htm#REFRN10230
    If you query the V$SYSTEM_PARAMETERS you can get a "quick help" because the columns are self documenting.
    I don't use RAC, but in single instance server you must stop the DB, modify the utl_file_dir, and restart.
    I think it's the same for a RAC...
    Bye,
    Antonio

  • Set cursor_sharing=force not work

    SUNDOG315>show parameter cursor_sharing
    NAME TYPE
    VALUE
    cursor_sharing string
    EXACT
    SUNDOG315>select count(*) from dba_objects where object_id=1;
    COUNT(*)
    0
    SUNDOG315>select count(*) from dba_objects where object_id=2;
    COUNT(*)
    1
    SUNDOG315>select count(*) from dba_objects where object_id=3;
    COUNT(*)
    1
    SUNDOG315>select sql_text from v$sql where sql_text like 'select count(*) from d
    ba_objects%';
    SQL_TEXT
    select count(*) from dba_objects where object_id=1
    select count(*) from dba_objects where object_id=3
    select count(*) from dba_objects where object_id=2
    SUNDOG315>alter system set cursor_sharing=force;
    系统已更改。
    SUNDOG315>alter system flush shared_pool;
    系统已更改。
    SUNDOG315>select sql_text from v$sql where sql_text like 'select count(*) from d
    ba_objects%';
    未选定行
    SUNDOG315>select count(*) from dba_objects where object_id=1;
    COUNT(*)
    0
    SUNDOG315>select count(*) from dba_objects where object_id=2;
    COUNT(*)
    1
    SUNDOG315>select count(*) from dba_objects where object_id=3;
    COUNT(*)
    1
    SUNDOG315>select sql_text from v$sql where sql_text like 'select count(*) from d
    ba_objects%';
    SQL_TEXT
    select count(*) from dba_objects where object_id=1
    select count(*) from dba_objects where object_id=3
    select count(*) from dba_objects where object_id=2
    SUNDOG315>show parameter cursor_sharing
    NAME TYPE
    VALUE
    cursor_sharing string
    FORCE
    Edited by: Lei Liu on Oct 20, 2010 4:44 PM
    Edited by: Lei Liu on Oct 20, 2010 4:44 PM

    What is your 4 digits Oracle version ?
    I cannot reproduce this even with Oracle XE:
    SQL> show parameter cursor_sharing
    NAME                                 TYPE
    VALUE
    cursor_sharing                       string
    FORCE
    SQL>
    select sql_text from v$sql where sql_text like '%dba_objects%';
    SQL_TEXT
    select sql_text from v$sql where sql_text like '%dba_objects%'
    select count(*) from dba_objects where object_id=:"SYS_B_0"
    select count(*) from dba_objects where object_id=3

  • Cursor_Sharing parameter

    Hi All,
    On one of our db the CURSOR_SHARING parameter is set to SIMILAR (non default value) coz I think the developers are not using the Bind variables in their queries, so literals will be replaced with bind variables as this parameter is set.
    I remember this parameter can also be set to FORCE to do the same. So what is the exact difference between these two.
    Please clarify me on the same.
    Thanks in Advanced
    - Bhupinder

    When using FORCE, the literals are exchanged with bind variables whenever the meaning (sematnics) of the SQL will not be changed by the bind variables.
    When using SIMILAR, literals will be replaced by bind variables whenever the meaning and the optimizer plan will not be chnaged by the bind variables.
    So this means that when using FORCE, by using the bind variable the optimzier plan can be changed for example:
    select * from big_table where id = 12345
    if there is a index on the column ID and the percent of rows having ID = 12345 is small index will be used (the table is analyzed).
    but if Oracle replaces 12345 by :b1 the optimzier will not know what is the percebnt od rows with that ID until run time, sothe execution plan might be changed and full table scan can be done. If using cursor_sharing = SIMILAR Oracle in this case will not change the literal with bind variable.
    Gorjan Todorovski
    Oracle DBA
    MOBIMAK

  • Attempt to set a parameter name that does not occur in the SQL: vc_temp_1

    I have query view object build on the following sql
    select
    nvl(u.full_name,e.arabic_first_name||' '||e.arabic_family_name) as empName,
    (select sc.general_specialty from ta_scientific_certificate sc where sc.user_id=u.user_id
    group by sc.general_specialty
    Having Max(sc.qualification_kind)>= All (select max(sc1.qualification_kind) from ta_scientific_certificate sc1 where sc1.user_id=u.user_id group by sc1.qualification_kind ) )as general_specialty
    , u.*,ur.default_role,ur.role_1,ur.role_2,ur.role_3,ur.role_4,ur.role_5,ur.role_6,ur.role_7
    from ta_user u,employee e,TA_USER_ROLES ur
    where u.account_enabled='1' and u.emp_id = e.empl_code(+) and ur.user_id=u.user_id(+)
    with this query
    ( (EMP_ID IS NULL ) ) AND (( ( (DEFAULT_ROLE = 4 ) ) OR ( (DEFAULT_ROLE = 6 ) ) )OR( ( (ROLE_1 = 4 ) ) OR ( (ROLE_1 = 6 ) ) )OR( ( (ROLE_2 = 4 ) ) OR ( (ROLE_2 = 6 ) ) )OR( ( (ROLE_3 = 4 ) ) OR ( (ROLE_3 = 6 ) ) )OR( ( (ROLE_4 = 4 ) ) OR ( (ROLE_4 = 6 ) ) )OR( ( (ROLE_5 = 4 ) ) OR ( (ROLE_5 = 6 ) ) )OR( ( (ROLE_6 = 4 ) ) OR ( (ROLE_6 = 6 ) ) )OR( ( (ROLE_7 = 4 ) ) OR ( (ROLE_7 = 6 ) ) ))
    I created search page by dragging this view object from MyApplicationModule->NamedCriteria
    but i don't want to show all the fields that their names start with ROLE in my search option so I unChecked the attribute queryalbe
    no when I press button search the error Attempt to set a parameter name that does not occur in the SQL: vc_temp_1 is shown
    if i press OK on error message and click search again it works
    how can I make this error disappear

    no I don't think that i have
    this is my source ( I will divide it into two parts)
    <?xml version="1.0" encoding="windows-1252" ?>
    <!DOCTYPE ViewObject SYSTEM "jbo_03_01.dtd">
    <!---->
    <ViewObject
    xmlns="http://xmlns.oracle.com/bc4j"
    Name="SciQualMgtVO"
    Version="11.1.2.60.17"
    OrderBy='"EMPNAME"'
    BindingStyle="OracleName"
    CustomQuery="true"
    PageIterMode="Full"
    UseGlueCode="false">
    <DesignTime>
    <Attr Name="_isExpertMode" Value="true"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    <ViewAccessor
    Name="LookupAM_IpaCodesVO_GeneralSpecialityVA"
    ViewObjectName="ta.common.lookup.IpaCodesVO"
    AMUsageName="LookupAM"
    ViewInstanceName="IpaCodesVO_GeneralSpecialityDC"
    RowLevelBinds="true"/>
    <ViewAccessor
    Name="CountryVA"
    ViewObjectName="ta.common.lookup.CountryVO"
    RowLevelBinds="true"/>
    <ViewAccessor
    Name="DegreeVA"
    ViewObjectName="ta.common.lookup.DegreeVO"
    RowLevelBinds="true"/>
    <ViewAccessor
    Name="LookupAM_IpaCodesVO_ScientificQualificationVA"
    ViewObjectName="ta.common.lookup.IpaCodesVO"
    AMUsageName="LookupAM"
    ViewInstanceName="IpaCodesVO_ScientificQualificationDC"
    RowLevelBinds="true"/>
    <ViewAccessor
    Name="YesNoVA"
    ViewObjectName="ta.common.constants.YesNoVO"
    RowLevelBinds="true"/>
    <ViewAccessor
    Name="IpaCodesVO_GeneralSpecialityVA"
    ViewObjectName="ta.common.lookup.IpaCodesVO"
    RowLevelBinds="true">
    <ViewCriteriaUsage
    Name="IpaCodesVO_GeneralSpecialityCriteria"
    FullName="ta.common.lookup.IpaCodesVO.IpaCodesVO_GeneralSpecialityCriteria"/>
    </ViewAccessor>
    <ViewAccessor
    Name="IpaCodesVO_ScientificQualificationVA"
    ViewObjectName="ta.common.lookup.IpaCodesVO"
    AMUsageName="LookupAM"
    ViewInstanceName="IpaCodesVO_ScientificQualificationDC"
    RowLevelBinds="true">
    <ViewCriteriaUsage
    Name="IpaCodesVO_ScientificQualificationCriteria"
    FullName="ta.common.lookup.IpaCodesVO.IpaCodesVO_ScientificQualificationCriteria"/>
    </ViewAccessor>
    <ListBinding
    Name="ar_LOV_GeneralSpecialty"
    ListVOName="IpaCodesVO_GeneralSpecialityVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="GeneralSpecialty"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="ArabicDescription"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="en_LOV_GeneralSpecialty"
    ListVOName="IpaCodesVO_GeneralSpecialityVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="GeneralSpecialty"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="EnglishDescription"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="ar_male_LOV_Nationality"
    ListVOName="CountryVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="Nationality"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="CountryCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="MaleNational"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="ar_female_LOV_Nationality"
    ListVOName="CountryVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="Nationality"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="CountryCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="FemaleNational"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="en_LOV_Nationality"
    ListVOName="CountryVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="Nationality"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="CountryCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="EnglishNational"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="ar_LOV_ScientificDegree"
    ListVOName="IpaCodesVO_ScientificQualificationVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="ScientificDegree"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="ArabicDescription"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="en_LOV_ScientificDegree"
    ListVOName="IpaCodesVO_ScientificQualificationVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="ScientificDegree"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="EnglishDescription"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="en_LOV_ScientificQualification"
    ListVOName="DegreeVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="ScientificQualification"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="DegreeCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="EnglishName"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="ar_LOV_Country"
    ListVOName="CountryVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="Country"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="CountryCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="ArabicName"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="en_LOV_Country"
    ListVOName="CountryVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="Country"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="CountryCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="EnglishName"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="LOV_PastArbitration"
    ListVOName="YesNoVA"
    ListRangeSize="-1"
    NullValueFlag="none"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="PastArbitration"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="Name"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="LOV_PastCooperation"
    ListVOName="YesNoVA"
    ListRangeSize="-1"
    NullValueFlag="none"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="PastCooperation"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="Name"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="LOV_FutureCooperation"
    ListVOName="YesNoVA"
    ListRangeSize="-1"
    NullValueFlag="none"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="FutureCooperation"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="Code"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="Name"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <ListBinding
    Name="ar_LOV_ScientificQualification"
    ListVOName="DegreeVA"
    ListRangeSize="-1"
    NullValueFlag="start"
    NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
    MRUCount="0">
    <AttrArray Name="AttrNames">
    <Item Value="ScientificQualification"/>
    </AttrArray>
    <AttrArray Name="ListAttrNames">
    <Item Value="DegreeCode"/>
    </AttrArray>
    <AttrArray Name="ListDisplayAttrNames">
    <Item Value="ArabicName"/>
    </AttrArray>
    <DisplayCriteria/>
    </ListBinding>
    <SQLQuery><![CDATA[select 
      nvl(u.full_name,e.arabic_first_name||' '||e.arabic_family_name) as empName,
    (select sc.general_specialty from ta_scientific_certificate sc   where sc.user_id=u.user_id
    group by sc.general_specialty
    Having Max(sc.qualification_kind)>= All (select max(sc1.qualification_kind) from ta_scientific_certificate sc1 where sc1.user_id=u.user_id group by sc1.qualification_kind )  )as general_specialty
    , u.*,ur.default_role,ur.role_1,ur.role_2,ur.role_3,ur.role_4,ur.role_5,ur.role_6,ur.role_7
      from ta_user u,employee e,TA_USER_ROLES ur
    where u.account_enabled='1' and u.emp_id = e.empl_code(+)  and ur.user_id=u.user_id(+)]]></SQLQuery>
    <ViewAttribute
    Name="Empname"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="255"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="EMPNAME"
    Expression="EMPNAME"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Empname_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="GeneralSpecialty"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="GENERAL_SPECIALTY"
    Expression="GENERAL_SPECIALTY"
    SQLType="VARCHAR"
    LOVName="ar_LOV_GeneralSpecialty"
    LOVFinder="GeneralSpecialtySwitcher">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="choice"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.GeneralSpecialty_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="UserId"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Type="java.lang.Integer"
    ColumnType="NUMBER"
    AliasName="USER_ID"
    Expression="USER_ID"
    SQLType="INTEGER"/>
    <ViewAttribute
    Name="FullName"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="FULL_NAME"
    Expression="FULL_NAME"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.FullName_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="FullNameEn"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="FULL_NAME_EN"
    Expression="FULL_NAME_EN"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.FullNameEn_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="TitleSalutation"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="TITLE_SALUTATION"
    Expression="TITLE_SALUTATION"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.TitleSalutation_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Nationality"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="3"
    Scale="0"
    Type="java.lang.Integer"
    ColumnType="NUMBER"
    AliasName="NATIONALITY"
    Expression="NATIONALITY"
    SQLType="INTEGER"
    LOVName="ar_male_LOV_Nationality"
    LOVFinder="NationalitySwitcher">
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="choice"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Nationality_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Gender"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="1"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="GENDER"
    Expression="GENDER"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="1"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Gender_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Employer"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="100"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="EMPLOYER"
    Expression="EMPLOYER"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="100"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Employer_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="CurrentJob"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="CURRENT_JOB"
    Expression="CURRENT_JOB"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.CurrentJob_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Degree"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="DEGREE"
    Expression="DEGREE"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Degree_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Department"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="DEPARTMENT"
    Expression="DEPARTMENT"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Department_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="ScientificDegree"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="4"
    Scale="0"
    Type="java.lang.Integer"
    ColumnType="NUMBER"
    AliasName="SCIENTIFIC_DEGREE"
    Expression="SCIENTIFIC_DEGREE"
    SQLType="INTEGER"
    LOVName="ar_LOV_ScientificDegree"
    LOVFinder="ScientificDegreeSwitcher">
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.ScientificDegree_LABEL"/>
    <CONTROLTYPE
    Value="choice"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="ScientificQualification"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="SCIENTIFIC_QUALIFICATION"
    Expression="SCIENTIFIC_QUALIFICATION"
    SQLType="VARCHAR"
    LOVName="ar_LOV_ScientificQualification"
    LOVFinder="ScientificQualificationSwitcher">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.ScientificQualification_LABEL"/>
    <CONTROLTYPE
    Value="choice"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Country"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="3"
    Scale="0"
    Type="java.lang.Integer"
    ColumnType="NUMBER"
    AliasName="COUNTRY"
    Expression="COUNTRY"
    SQLType="INTEGER"
    LOVName="ar_LOV_Country"
    LOVFinder="CountrySwitcher">
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="choice"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Country_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="City"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="CITY"
    Expression="CITY"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.City_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="ZipCode"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="ZIP_CODE"
    Expression="ZIP_CODE"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.ZipCode_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="POBox"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="P_O_BOX"
    Expression="P_O_BOX"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.POBox_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="CurrentAddress"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="100"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="CURRENT_ADDRESS"
    Expression="CURRENT_ADDRESS"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="100"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.CurrentAddress_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="WorkPhone"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="WORK_PHONE"
    Expression="WORK_PHONE"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.WorkPhone_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="HomePhone"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="HOME_PHONE"
    Expression="HOME_PHONE"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.HomePhone_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="CellPhone"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="CELL_PHONE"
    Expression="CELL_PHONE"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.CellPhone_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Fax"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="FAX"
    Expression="FAX"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Fax_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="PermanentAddress"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="100"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="PERMANENT_ADDRESS"
    Expression="PERMANENT_ADDRESS"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="100"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.PermanentAddress_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Email"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="EMAIL"
    Expression="EMAIL"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.Email_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="Password"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="PASSWORD"
    Expression="PASSWORD"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    </ViewAttribute>
    <ViewAttribute
    Name="PastArbitration"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="1"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="PAST_ARBITRATION"
    Expression="PAST_ARBITRATION"
    SQLType="VARCHAR"
    LOVName="LOV_PastArbitration">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="1"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="radio"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.PastArbitration_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="PastCooperation"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="1"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="PAST_COOPERATION"
    Expression="PAST_COOPERATION"
    SQLType="VARCHAR"
    LOVName="LOV_PastCooperation">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="1"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="radio"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.PastCooperation_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="FutureCooperation"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="1"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="FUTURE_COOPERATION"
    Expression="FUTURE_COOPERATION"
    SQLType="VARCHAR"
    LOVName="LOV_FutureCooperation">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="1"/>
    </DesignTime>
    <Properties>
    <SchemaBasedProperties>
    <CONTROLTYPE
    Value="radio"/>
    <LABEL
    ResId="ta.model.ro.SciQualMgtVO.FutureCooperation_LABEL"/>
    </SchemaBasedProperties>
    </Properties>
    </ViewAttribute>
    <ViewAttribute
    Name="EmpId"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="20"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="EMP_ID"
    Expression="EMP_ID"
    SQLType="VARCHAR"
    IsQueriable="false">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="20"/>
    </DesignTime>
    </ViewAttribute>
    <ViewAttribute
    Name="LoginName"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="50"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="LOGIN_NAME"
    Expression="LOGIN_NAME"
    SQLType="VARCHAR">
    <DesignTime>
    <Attr Name="_DisplaySize" Value="50"/>
    </DesignTime>
    </ViewAttribute>

  • Set get parameter but free memory id is not working

    Hi All,
    I am using set get parameter  to transfer data from one module to another .
    But when i am trying to clear the memory id using Free memory id .
    it is not doing that.
    Does it work with import export.
    What method i should use to clear this memory id ..
    Thanks in advance
    ANit gautam

    Clears the memory:
    SET PARAMETER ID pid FIELD space.

  • SET GET Parameter working fine but no entery in table TPARA

    Hi Experts,
    I am using SET/GET Parameter.
    All is working fine but no entery is created in table TPARA for this ID beacuse of this i am not able to use DELETE FROM MEMORY ID 'ZID' .It always returns 4 since there is no entry in table TPARA.
    Why there is no entery created in TPARA and how can i delete this ID from SAP memory?
    Thanks,
    Anubhav

    >
    Anubhav Jain wrote:
    > Why there is no entery created in TPARA and how can i delete this ID from SAP memory?
    > Anubhav
    Entry in TPARA automatically gets created when you assign PID to data element.
    Check if ZID is assigned to any data element.
    To clear the content of PID from memory use SET PARAMETER statement with empty field.
    DATA lv_blank type char10 .
    CLEAR lv_blank.
    SET PARAMETER ID ZID FIELD lv_blank.

  • Crystal reports 2008 Set optional parameter value

    Hi,
    I'm working with .net Visual Studio 2008 C# and Crystal reports 2008 (Crystal.Decisions) and when I try to set a parameter to optional and set its value to no value, it returns the error: "Invalid parameter name", here is my code:
    foreach (CrystalDecisions.Shared.ParameterField param in Report.ParameterFields)
                            if (!param.HasCurrentValue &&
                                !Report.DataDefinition.ParameterFields[param.Name].IsLinked())
                                switch (param.ParameterValueType)
                                    case ParameterValueKind.NumberParameter:                                  
                                        param.IsOptionalPrompt = true;
                                        param.CurrentValues.IsNoValue = true;                                  
                                        break;
    I'm doing this because some of the parameters can be left null, and in this case I don't want to show the parameter prompt.
    In past versions of Crystal (such as Crystal Reports 11.5) we had the chance to left the parameter value null and did not showed the parameter prompt dialog, and this behavior repeats in a lot of reports.
    thanks in advanced

    Please don't post the same question more than once. This is a public forum so be patient.
    Install SP4 and test again.
    Try these samples:
    http://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsSDKSampleApplications
    Don

  • How to set the parameter selection *optional* for each subreport?

    Hi,
    I am using Crystal Reprots 11.
    I create 10 subreports, and each subreport contains a Parameters Field.
    The 10 subreports are put in 10 footer sections in increasing order, i.e. subreport1, subreport2, subreport3, ..., subreport10.
    When I use "Print Preview" to take a look at the whole report, CR prompts a "Edit Values" window for selecting parameter values for all 10 subreports.
    For example, if I only select parameter values for subreport1 and click "OK", 9 error messages on the "Edit Values" window come out above the selection list box of every other subreports (i.e. subreport2 ~ subreport10) showing that: 'The value is not valid'.
    Sometimes, I just want to review some specific subreports but not all.
    How should I do to set the parameter selection optional (not mandatory) for each subreport?
    Thank you in adavance.
    Edited by: Holdup on Feb 17, 2012 3:44 PM

    Hi,
    Here's how you can make the prompts optional (Assuming you're using CR 2008 or higher):
    1) Go into each subreport
    2) You should see the parameter in the Field Explorer. Right-click the name and select Edit > Look for an option called 'Optional Prompt'. Set it to true
    3) If you have a record selection in the subreport, then you need to modify the selection formula to something like this:
    if not(hasvalue({?Parameter_Name})) then True else = {?Parameter_Name}
    Hope this helps!
    -Abhilash

  • SUBMIT program VIA JOB and SET/GET parameter

    Hi All
    I need to pass the content of a variable from the program 'A' to program 'B'.
    Program A uses JOB_OPEN , SUBMIT program VIA JOB jobname NUMBER jobnumber AND return, JOB_CLOSE.
    I tried to use import/export memory but it didn't work. Then I am trying to use set/get parameters but it also did not work.
    Program A is going to run in any server and program B will run in the central instance (it is determined in the FM JOB_CLOSE, parameter target_server).
    Program does not have selection-screen.
    Is it possible use set/get parameter with submit via job?
    Could you please advise?
    Thanks in advance.
    João Gaia

    Here a simple code
    *Submit report as job(i.e. in background)
    data: jobname like tbtcjob-jobname value
                                 'TRANSFER DATA'.
    data: jobcount like tbtcjob-jobcount,
          host like msxxlist-host.
    data: begin of starttime.
            include structure tbtcstrt.
    data: end of starttime.
    data: starttimeimmediate like btch0000-char1 value 'X'.
    * Job open
      call function 'JOB_OPEN'
           exporting
                delanfrep        = ' '
                jobgroup         = ' '
                jobname          = jobname
                sdlstrtdt        = sy-datum
                sdlstrttm        = sy-uzeit
           importing
                jobcount         = jobcount
           exceptions
                cant_create_job  = 01
                invalid_job_data = 02
                jobname_missing  = 03.
      if sy-subrc ne 0.
                                           "error processing
      endif.
    * Insert process into job
    SUBMIT zreport and return
                    with p_param1 = 'value'
                    with p_param2 = 'value'
                    user sy-uname
                    via job jobname
                    number jobcount.
      if sy-subrc > 0.
                                           "error processing
      endif.
    * Close job
      starttime-sdlstrtdt = sy-datum + 1.
      starttime-sdlstrttm = '220000'.
      call function 'JOB_CLOSE'
           exporting
    "            event_id             = starttime-eventid
    "            event_param          = starttime-eventparm
    "            event_periodic       = starttime-periodic
                jobcount             = jobcount
                jobname              = jobname
    "            laststrtdt           = starttime-laststrtdt
    "            laststrttm           = starttime-laststrttm
    "            prddays              = 1
    "            prdhours             = 0
    "            prdmins              = 0
    "            prdmonths            = 0
    "            prdweeks             = 0
    "            sdlstrtdt            = starttime-sdlstrtdt
    "            sdlstrttm            = starttime-sdlstrttm
                strtimmed            = starttimeimmediate
    "            targetsystem         = host
           exceptions
                cant_start_immediate = 01
                invalid_startdate    = 02
                jobname_missing      = 03
                job_close_failed     = 04
                job_nosteps          = 05
                job_notex            = 06
                lock_failed          = 07
                others               = 99.
      if sy-subrc eq 0.
                                           "error processing
      endif.
    Then... for import/export of a variable, you can use Import Memory and Export Memory function.
    Like this:
    REPORT A:
      IF NOT it_dlist_out IS INITIAL.
        EXPORT it_dlist_out TO MEMORY ID 'TEST1234'.
      ELSE.
    * Clearing memory
        FREE MEMORY ID 'TEST1234'.
      ENDIF.
    REPORT B:
    IMPORT it_dlist_out TO lt_dlist_out FROM MEMORY ID 'TEST1234'.
    Edited by: spantaleoni on Jan 11, 2011 3:21 PM
    Edited by: spantaleoni on Jan 11, 2011 3:23 PM

  • Error : The value is not set for parameter number"

    Hello All,
    I am getting an error message when I tried modifying a program by adding a new ID column to a database table.
    All DML is working except the Delete. So to look at the delete method, I am setting the parameter correctly as can be seen in the code belwo.
    Can someone please take a quick look and let me know where I need to tweak the code further.
    Thanks
    Fm
    The piece of code is given below.
    /* File Modified */
    /* EmailSetupDao.java
    * Generated by the MDK DAO Code Generator
    package com.harris.mercury.setups.standard.emailsetup;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Vector;
    import org.apache.log4j.Logger;
    import com.harris.mercury.dao.CreateException;
    import com.harris.mercury.dao.DAO;
    import com.harris.mercury.dao.DataField;
    import com.harris.mercury.dao.Holder;
    import com.harris.mercury.dao.LocalResultProxy;
    import com.harris.mercury.dao.RemoveException;
    import com.harris.mercury.dao.ResultProxy;
    import com.harris.mercury.system.DatabaseHelper;
    import com.harris.mercury.system.database.dialect.Dialect;
    * The EmailSetupDao class
    public class EmailSetupDao implements DAO
    protected static Logger logger = Logger.getLogger(EmailSetupDao.class);
    /* This method is called by ResultProxies when they need
    * the data they have retrieved in a ResultSet mapped
    * to a holder.
    public Holder createHolder(ResultSet rs) throws SQLException
    EmailSetupHolder holder = new EmailSetupHolder(); // THE CODE GENERATOR NEEDS THIS VARIABLE
    try
    /* Assign the data into the new holder */
    // $$START_CREATEHOLDER_CONVERSIONS
    holder.setEmail_address( rs.getString("email_address") );
    holder.setLogin_id( rs.getString("login_id") );
    holder.setUser_name( rs.getString("user_name") );
    holder.setSmtp( rs.getString("smtp") );
    holder.setId(rs.getString("id") );
    // $$END_CREATEHOLDER_CONVERSIONS
    catch(SQLException sqle)
    logger.error(sqle, sqle);
    throw sqle;
    return holder;
    /* The findAll method returns a ResultProxy containing all the
    * records in the pucemailr table, unless an extended where clause
    * has been defined.
    public ResultProxy findAll(Connection con) throws SQLException
    LocalResultProxy result = null; // THE CODE GENERATOR NEEDS THIS VARIABLE
    // $$START_ALLFIND
    result = new LocalResultProxy(this,con, "select email_address, login_id, user_name, smtp, id from pucemailr"+makeOrderBy());
    // $$END_ALLFIND
    return result;
    /* Inserts a record into the pucemailr table using a EmailSetupHolder.
    * An exception is thrown if it is not sucessful.
    public void insert(Connection con, EmailSetupHolder holder) throws CreateException
    CreateException ce = null;
    PreparedStatement ps = null; // THE CODE GENERATOR NEEDS THIS VARIABLE
    try
    // Insert into the data base
    // $$START_INSERT_PS
         ps = con.prepareStatement("insert into pucemailr (email_address, login_id, user_name, smtp) values(?, ?, ?, ?) ");
    // $$END_INSERT_PS
    /* Assign the variables in the holder to their corresponding
    * indexes in the prepared statement
    ps = assignPreparedStatementValues(ps, holder, true) ;
    // Try the insert
    ps.executeUpdate();
    catch (SQLException se)
    ce = new CreateException(se.getMessage());
    catch (Exception ex)
    ce = new CreateException(ex.getMessage());
    } finally {
    DatabaseHelper.close(ps);
    // Throw exception if error occurred
    if (ce != null) {
    throw ce;
    /* This method will update a pucemailr record using the
    * supplied EmailSetupHolder. If an error occurs, an exception
    * is thrown.
    public void update(Connection con, EmailSetupHolder holder) throws Exception
    RuntimeException re = null;
    PreparedStatement ps = null; // THE CODE GENERATOR NEEDS THIS VARIABLE
    try
    // $$START_UPDATE_PS
         ps = con.prepareStatement("update pucemailr set email_address=?, login_id=?, user_name=?,smtp=? where id=?");
    // $$END_UPDATE_PS
    /* Assign the variables in the holder to their corresponding
    * indexes in the prepared statement
    ps = assignPreparedStatementValues(ps, holder, false) ;
    // Try the insert
    int ret = ps.executeUpdate();
    if (ret != 1)
    re = new RuntimeException("Update failed on table pucemailr in EmailSetupDao");
    catch (SQLException se)
    re = new CreateException(se.getMessage());
    catch (Exception ex)
    re = new RuntimeException(ex.getMessage());
    } finally {
    DatabaseHelper.close(ps);
    // Throw exception if error occurred
    if (re != null) {
    throw re;
    /* Using the EmailSetupHolder, this method locates records in the pucemailr table.
    * Null values found in the holder are not used in the search.
    * An exception is thrown if an error occurs.
    public ResultProxy find(Connection con, EmailSetupHolder holder) throws SQLException
    // THE CODE GENERATOR NEEDS THESE VARIABLES
    ResultProxy result = null;
    int needAnd = 0;
    StringBuffer selectStatement = new StringBuffer();
    // $$START_FIND
    selectStatement.append("select email_address, login_id, user_name, smtp, id from pucemailr ");
    if(holder.getId() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("id like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getId())+"%'");
    if(holder.getEmail_address() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("email_address like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getEmail_address())+"%'");
    if(holder.getLogin_id() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("login_id like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getLogin_id())+"%'");
    if(holder.getUser_name() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("user_name like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getUser_name())+"%'");
    if(holder.getSmtp() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("smtp like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getSmtp())+"%'");
    // $$END_FIND
    result = new LocalResultProxy(this, con, selectStatement.toString()+makeOrderBy());
    return result;
    /* Creates an Order by clause */
    public String makeOrderBy()
    String result = "";
    // $$START_ORDERBY
    result = " order by smtp";
    // $$END_ORDERBY
    return result ;
    /* This method deltes a single record that matches all the
    * variables found in the EmailSetupHolder.
    * An exception is thrown if an error occurs.
    public void delete(Connection con, EmailSetupHolder holder) throws RemoveException
    RemoveException re = null;
    PreparedStatement ps = null; // THE CODE GENERATOR NEEDS THIS VARIABLE
    boolean hasVars = false;
    StringBuffer deleteSQL = new StringBuffer();
    deleteSQL.append( "delete from pucemailr where " );
    // $$START_DELETE_SQL
    if (hasVars)
    deleteSQL.append(" and ");
    if (holder.getEmail_address() != null) {
    deleteSQL.append("email_address=?") ;
    } else {
    deleteSQL.append("email_address is null");
    hasVars = true;
    if (hasVars)
    deleteSQL.append(" and ");
    if (holder.getLogin_id() != null) {
    deleteSQL.append("login_id=?") ;
    } else {
    deleteSQL.append("login_id is null");
    hasVars = true;
    if (hasVars)
    deleteSQL.append(" and ");
    if (holder.getUser_name() != null) {
    deleteSQL.append("user_name=?") ;
    } else {
    deleteSQL.append("user_name is null");
    hasVars = true;
    if (hasVars)
    deleteSQL.append(" and ");
    if (holder.getSmtp() != null) {
    deleteSQL.append("smtp=?") ;
    } else {
    deleteSQL.append("smtp is null");
    hasVars = true;
    if (hasVars)
    deleteSQL.append(" and ");
    if (holder.getSmtp() != null) {
    deleteSQL.append("id=?") ;
    } else {
    deleteSQL.append("id is null");
    hasVars = true;
    // $$END_DELETE_SQL
    try
         ps = con.prepareStatement(deleteSQL.toString());
    /* Assign the variables in the holder to their corresponding
    * indexes in the prepared statement
    int index = 1 ;
    // $$START_DELETE_VARS
    /* if( holder.getEmail_address() != null) {
    ps.setString(index, holder.getEmail_address() );
    index ++;
    if( holder.getLogin_id() != null) {
    ps.setString(index, holder.getLogin_id() );
    index ++;
    if( holder.getUser_name() != null) {
    ps.setString(index, holder.getUser_name() );
    index ++;
    if( holder.getSmtp() != null) {
    ps.setString(index, holder.getSmtp() );
    index ++;
    if( holder.getId() != null) {
    ps.setString(index, holder.getId() );
    index ++;
    // $$END_DELETE_VARS
    // Try the insert
    int ret = ps.executeUpdate();
    if (ret != 1)
    re = new RemoveException("Delete failed on table pucemailr in EmailSetupDao");
    catch (SQLException se)
    re = new RemoveException(se.getMessage());
    catch (Exception ex) {
    re = new RemoveException(ex.getMessage());
    } finally {
    DatabaseHelper.close(ps);
    // Throw exception if error occurred
    if (re != null)
    throw re;
    /* This method finds records in pucemailr table that match the
    * supplied where clause.
    * An exception is thrown if an error occurs.
    public ResultProxy advancedFind(Connection con, String whereclause) throws SQLException
    // THE CODE GENERATOR NEEDS THIS VARIABLE AND THE PARAMETER VARIABLE 'whereclause'
    StringBuffer selectStatement = new StringBuffer();
    // $$START_ADVANCEDFIND
    selectStatement.append("select email_address, login_id, user_name, smtp, id from pucemailr ");
    // $$END_ADVANCEDFIND
    selectStatement.append(" where ");
    selectStatement.append(whereclause);
    return new LocalResultProxy(this,con, selectStatement.toString()+makeOrderBy());
    /* This methods returns a Vector of DataField objects that
    * map the columns in the pucemailr table for the
    * advanced find Where Clause Generator in the client. The extended
    * where clause will be applied if one exists for this DAO.
    public Vector<DataField> getQueryFields() {
    Vector<DataField> v = new Vector<DataField>() ; // THE CODE GENERATOR NEEDS THIS VARIABLE
    // $$START_QUERYFIELDS
    v.addElement( new DataField( "email_address", "Email address", DataField.STRING ) ) ;
    v.addElement( new DataField( "login_id", "Login id", DataField.STRING ) ) ;
    v.addElement( new DataField( "user_name", "User name", DataField.STRING ) ) ;
    v.addElement( new DataField( "smtp", "Smtp", DataField.STRING ) ) ;
    v.addElement( new DataField( "id", "Id", DataField.STRING ) ) ;
    // $$END_QUERYFIELDS
    return v;
         * Jira Issue NS 30679 - Faiz Qureshi March 7, 2013
         * @param ps
         * @param holder
         * @param isInsert - Added Boolean parameter so the id parameter does not get passed for Insert DML statements
         * @return
         * @throws Exception
    public PreparedStatement assignPreparedStatementValues(PreparedStatement ps, EmailSetupHolder holder, boolean isInsert)
    throws Exception
    // $$START_PS_SETS
    if( holder.getEmail_address() != null)
    ps.setString(1, holder.getEmail_address() );
    else
    ps.setNull(1, java.sql.Types.VARCHAR);
    if( holder.getLogin_id() != null)
    ps.setString(2, holder.getLogin_id() );
    else
    ps.setNull(2, java.sql.Types.VARCHAR);
    if( holder.getUser_name() != null)
    ps.setString(3, holder.getUser_name() );
    else
    ps.setNull(3, java.sql.Types.VARCHAR);
    if( holder.getSmtp() != null)
    ps.setString(4, holder.getSmtp() );
    else
    ps.setNull(4, java.sql.Types.VARCHAR);
    if (!isInsert){
         if( holder.getId() != null)
         ps.setString(5, holder.getId() );
         else
         ps.setNull(5, java.sql.Types.VARCHAR);
    // $$END_PS_SETS
    return ps;
    /* Do not delete this tag, it is reserved for adding new methods to the DAO */
    // $$ START_MDK_RESERVED
    // $$START_EDITABLE_SUB_TABLE_NAME
    * Returns the table names used in this DAO
    * @return the table names used in this DAO
    public String[] getTableNames() {
    // $$START_UNEDITABLE_SUB_TABLE_NAME
    String[] tableNames = new String[] {"pucemailr"};
    // $$END_UNEDITABLE_SUB_TABLE_NAME
    return tableNames;
    // $$END_EDITABLE_SUB_TABLE_NAME
    // $$START_EDITABLE_SUB_FIND
    * Using the EmailSetupHolder, this method locates records in the pucemailr table.
    * Null values found in the holder are not used in the search.
    * An exception is thrown if an error occurs.
    * @param con The database connection
    * @param holder holder containing the values to generate a query upon
    * @param orderBy The order by clause. Note, you must specify the "ORDER BY". If you forget to add a
    * space in front of the order by, it will be automatically handled. Specify null to use the default
    * or empty string for no ordering.
    * @return The result of the search
    * @throws SQLException if an error occurs in the search.
    public ResultProxy find(Connection con, EmailSetupHolder holder, String orderBy) throws SQLException
    // THE CODE GENERATOR NEEDS THESE VARIABLES
    ResultProxy result = null;
    int needAnd = 0;
    StringBuffer selectStatement = new StringBuffer();
    // $$START_FIND
    selectStatement.append("select email_address, login_id, user_name, smtp, id from pucemailr ");
    if(holder.getEmail_address() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("email_address like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getEmail_address())+"%'");
    if(holder.getLogin_id() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("login_id like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getLogin_id())+"%'");
    if(holder.getUser_name() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("user_name like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getUser_name())+"%'");
    if(holder.getSmtp() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("smtp like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getSmtp())+"%'");
    if(holder.getId() != null)
    if ( needAnd > 0)
    selectStatement.append(" and ");
    else
    selectStatement.append(" where ");
    needAnd++;
    selectStatement.append("Id like ");
    selectStatement.append("'"+ Dialect.getSafeDialect(con).escape(holder.getId())+"%'"); }
    // $$END_FIND
    result = new LocalResultProxy(this, con, selectStatement.toString() + (orderBy == null ? makeOrderBy() : com.harris.mercury.system.utils.StringUtils.padLeft(orderBy)));
    return result;
    // $$END_EDITABLE_SUB_FIND
    // $$START_EDITABLE_SUB_FINDALL
    * The findAll method returns a ResultProxy containing all the records in the pucemailr table,
    * unless an extended where clause has been defined.
    * @param con The database connection
    * @param orderBy The order by clause. Note, you must specify the "ORDER BY". If you forget to add a
    * space in front of the order by, it will be automatically handled. Specify null to use the default
    * or empty string for no ordering.
    * @return The result of the search
    * @throws SQLException if an error occurs in the search.
    public ResultProxy findAll(Connection con, String orderBy) throws SQLException
    LocalResultProxy result = null; // THE CODE GENERATOR NEEDS THIS VARIABLE
    // $$START_UNEDITABLE_SUB_FINDALL
    result = new LocalResultProxy(this,con, "select email_address, login_id, user_name, smtp, id from pucemailr" + (orderBy == null ? makeOrderBy() : com.harris.mercury.system.utils.StringUtils.padLeft(orderBy)));
    // $$END_UNEDITABLE_SUB_FINDALL
    return result;
    // $$END_EDITABLE_SUB_FINDALL
    // $$START_EDITABLE_SUB_ADVANCEDFIND
    * This method finds records in pucemailr table that match the supplied where clause.
    * @param con The database connection
    * @param whereclause The where clause for the select statement - do not include the "where" - it
    * will be automatically prepended
    * @param orderBy The order by clause. Note, you must specify the "ORDER BY". If you forget to add a
    * space in front of the order by, it will be automatically handled. Specify null to use the default
    * or empty string for no ordering.
    * @return The result of the search
    * @throws SQLException if an error occurs in the search.
    public ResultProxy advancedFind(Connection con, String whereclause, String orderBy) throws SQLException
    // THE CODE GENERATOR NEEDS THIS VARIABLE AND THE PARAMETER VARIABLE 'whereclause'
    StringBuffer selectStatement = new StringBuffer();
    // $$START_ADVANCEDFIND
    selectStatement.append("select email_address, login_id, user_name, smtp, id from pucemailr ");
    // $$END_ADVANCEDFIND
    selectStatement.append(" where ");
    selectStatement.append(whereclause);
    selectStatement.append((orderBy == null ? makeOrderBy() : com.harris.mercury.system.utils.StringUtils.padLeft(orderBy)));
    return new LocalResultProxy(this,con, selectStatement.toString());
    // $$END_EDITABLE_SUB_ADVANCEDFIND
    // $$ END_MDK_RESERVED
    }

    First thing to do is to edit the post and use some tags to format the code as it is unreadable and too much!
    Read the FAQ (https://forums.oracle.com/forums/help.jspa) to find out how to do this.
    Next we need to know the jdev version you are using!
    As the code is generated I would first try to generate it again after the db change.
    Timo

  • Error while setting date parameter to an RFC

    Hi,
    I am getting the following error when i am setting a parameter od Date type to an RFC
    java.lang.ArrayIndexOutOfBoundsException: -1
         at com.sap.mw.jco.JCO$MetaData.getType(JCO.java:9201)
         at com.sap.aii.proxy.framework.core.JcoBaseTypeData.setElementValue(JcoBaseTypeData.java:731)
         at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClass.setAttributeValueAsDate(DynamicRFCModelClass.java:568)
         at com.telstra.ctawa.models.mainmodel.Zct_Wd_Demcat_Details_Input.setI_Tsk_Compldte(Zct_Wd_Demcat_Details_Input.java:387)
         at com.telstra.ctawa.apps.wdp.IPublicAddWorkCustomController$IZct_Wd_Demcat_Details_InputElement.setI_Tsk_Compldte(IPublicAddWorkCustomController.java:1759)
         at com.telstra.ctawa.apps.AddWorkCustomController.executeZct_Wd_Demcat_Details_Input(AddWorkCustomController.java:208)
         at com.telstra.ctawa.apps.wdp.InternalAddWorkCustomController.executeZct_Wd_Demcat_Details_Input(InternalAddWorkCustomController.java:367)
         at com.telstra.ctawa.apps.AddWorkAppView.executeGetDetails(AddWorkAppView.java:172)
         at com.telstra.ctawa.apps.AddWorkAppView.wdDoInit(AddWorkAppView.java:101)
         at com.telstra.ctawa.apps.wdp.InternalAddWorkAppView.wdDoInit(InternalAddWorkAppView.java:172)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doInit(DelegatingView.java:61)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
         at com.sap.tc.webdynpro.progmodel.view.View.initController(View.java:274)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:540)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
         at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:540)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:422)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.doOpen(WebDynproWindow.java:198)
         at com.sap.tc.webdynpro.clientserver.window.InternalWindow.open(InternalWindow.java:45)
         at com.telstra.ctawa.apps.TaskListView.onActionAddWork(TaskListView.java:402)
         at com.telstra.ctawa.apps.wdp.InternalTaskListView.wdInvokeEventHandler(InternalTaskListView.java:369)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleAction(WebDynproMainTask.java:100)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:299)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:635)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
         at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:249)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:55)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
    Regards
    Prakash

    Hi Rohit,
      public void executeZct_Wd_Demcat_Details_Input( java.lang.String indicator )
        //@@begin executeZct_Wd_Demcat_Details_Input()
         //$$begin Service Controller(145786950)
         if(indicator.equals("CNTR"))
          wdContext.nodeTemp_DemCat().invalidate();
           if(indicator.equals("CNTR") || indicator.equals("DEMCAT"))
              wdContext.nodeTemp_WorkType().invalidate();
              if(indicator.equals("CNTR") || indicator.equals("DEMCAT") || indicator.equals("WRKTYP"))
               wdContext.nodeTemp_ProdSkill().invalidate();
                if(indicator.equals("CNTR") || indicator.equals("DEMCAT") || indicator.equals("WRKTYP") || indicator.equals("PRDSK"))
                 wdContext.nodeTemp_CsgLoc().invalidate();
         IWDMessageManager manager = wdComponentAPI.getMessageManager();
         try{
              String contractType = wdContext.currentContextElement().getContractType();
              String demCat = wdContext.currentContextElement().getDemcat();
              String wrkType = wdContext.currentContextElement().getWorktype();
              String prodSkill = wdContext.currentContextElement().getProdskill();
              String csgLoc = wdContext.currentContextElement().getCsgcat();
              //setting all to null first
              wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type("");
              wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Demand_Cat("");
              wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Work_Type("");
              wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Product_Skill("");
              wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Csg_Loc("");
              //wdContext.currentContextElement().get
              if(indicator.equals("CNTR")){
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type(contractType);
              if(indicator.equals("DEMCAT")){
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type(contractType);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Demand_Cat(demCat);
                   wdContext.currentContextElement().setProdskill("");
                   wdContext.currentContextElement().setWorktype("");
                   wdContext.currentContextElement().setCsgcat("");
                   wdContext.currentContextElement().setPoints(new BigDecimal("0.00"));
            if(indicator.equals("PRDSK")){
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type(contractType);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Demand_Cat(demCat);
                  wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Product_Skill(prodSkill);
                   wdContext.currentContextElement().setWorktype("");
                   wdContext.currentContextElement().setCsgcat("");
                   wdContext.currentContextElement().setPoints(new BigDecimal("0.00"));               
              if(indicator.equals("WRKTYP")){
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type(contractType);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Demand_Cat(demCat);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Product_Skill(prodSkill);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Work_Type(wrkType);
                   wdContext.currentContextElement().setCsgcat("");
                   wdContext.currentContextElement().setPoints(new BigDecimal("0.00"));
              if(indicator.equals("CSGCT")){
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Contract_Type(contractType);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Demand_Cat(demCat);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Work_Type(wrkType);
                   wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Product_Skill(prodSkill);
                  wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Csg_Loc(csgLoc);
    wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Task_Complte(new Date(System.currentTimeMillis()));     
              wdContext.currentZct_Wd_Demcat_Details_InputElement().modelObject().execute();
              wdContext.nodeOutput().invalidate();
             if(indicator.equals("CNTR")){
                   //copy data from CSG_DEM_CAT to nodeTempDemCat
                   for(int i=0;i<wdContext.nodeDem_Cat_Output().size();i++){
                   IPublicAddWorkCustomController.ITemp_DemCatElement demCatElem = wdContext.createTemp_DemCatElement();
                   WDCopyService.copyCorresponding(wdContext.nodeDem_Cat_Output().getDem_Cat_OutputElementAt(i) ,demCatElem);
                   wdContext.nodeTemp_DemCat().addElement(demCatElem);
                   IPublicAddWorkCustomController.ITemp_DemCatElement demCatElem = wdContext.createTemp_DemCatElement();
                   demCatElem.setDemand_Cat("Select");
                   wdContext.nodeTemp_DemCat().addElement(demCatElem);
                   wdContext.currentContextElement().setDemcat("Select");
              if(indicator.equals("DEMCAT")){
                 for(int i=0;i<wdContext.nodeProduct_Skill_Output().size();i++){
                 IPublicAddWorkCustomController.ITemp_ProdSkillElement prdSkillElem = wdContext.createTemp_ProdSkillElement();
                 WDCopyService.copyCorresponding(wdContext.nodeProduct_Skill_Output().getProduct_Skill_OutputElementAt(i) ,prdSkillElem);
                 wdContext.nodeTemp_ProdSkill().addElement(prdSkillElem);
                 IPublicAddWorkCustomController.ITemp_ProdSkillElement prdSkillElem = wdContext.createTemp_ProdSkillElement();
                 prdSkillElem.setProduct_Skill("Select");
                 wdContext.nodeTemp_ProdSkill().addElement(prdSkillElem);
                 wdContext.currentContextElement().setProdskill("Select");            
              if(indicator.equals("WRKTYP")){
                   //copy data from CSG_LOC to nodeCsgloc
                   for(int i=0;i<wdContext.nodeCsg_Cat_Output().size();i++){
                   IPublicAddWorkCustomController.ITemp_CsgLocElement csgLocElem = wdContext.createTemp_CsgLocElement();
                   WDCopyService.copyCorresponding(wdContext.nodeCsg_Cat_Output().getCsg_Cat_OutputElementAt(i) ,csgLocElem);
                   wdContext.nodeTemp_CsgLoc().addElement(csgLocElem);
                   IPublicAddWorkCustomController.ITemp_CsgLocElement csgLocElem = wdContext.createTemp_CsgLocElement();
                   csgLocElem.setCsg_Loc("Select");
                   wdContext.nodeTemp_CsgLoc().addElement(csgLocElem);
                   wdContext.currentContextElement().setCsgcat("Select");
              if(indicator.equals("PRDSK")){
                 //copy data from WRK_TYPE to nodeTempWrkTyp
                 for(int i=0;i<wdContext.nodeWork_Type_Output().size();i++){
                 IPublicAddWorkCustomController.ITemp_WorkTypeElement wrkTypElem = wdContext.createTemp_WorkTypeElement();
                 WDCopyService.copyCorresponding(wdContext.nodeWork_Type_Output().getWork_Type_OutputElementAt(i) ,wrkTypElem);
                 wdContext.nodeTemp_WorkType().addElement(wrkTypElem);
                 IPublicAddWorkCustomController.ITemp_WorkTypeElement wrkTypElem = wdContext.createTemp_WorkTypeElement();
                 wrkTypElem.setWork_Type("Select");
                 wdContext.nodeTemp_WorkType().addElement(wrkTypElem);
                 wdContext.currentContextElement().setWorktype("Select");            
              if(indicator.equals("CSGCT")){
                   BigDecimal points = wdContext.currentOutputElement().getPay_Points();
                   if(points.equals(new BigDecimal("0")))
                   wdContext.currentContextElement().setChkPointsInp(false);
                   else{
                   wdContext.currentContextElement().setChkPointsInp(true);
                   wdContext.currentContextElement().setPoints(wdContext.currentOutputElement().getPay_Points());
              ISimpleTypeModifiable demCatSimpleType = wdThis.wdGetAPI().getContext().getModifiableTypeOf("demcat");
              IModifiableSimpleValueSet demCatList = demCatSimpleType.getSVServices().getModifiableSimpleValueSet();
              //wdContext.nodeDem_Cat_Output()
              for(int i = 0 ;i < wdContext.nodeTemp_DemCat().size();i++){
                   String demCatListElem = wdContext.nodeTemp_DemCat().getTemp_DemCatElementAt(i).getDemand_Cat();
                   demCatList.put(demCatListElem, demCatListElem);
              ISimpleTypeModifiable wrkTypSimpleType = wdThis.wdGetAPI().getContext().getModifiableTypeOf("worktype");
              IModifiableSimpleValueSet wrkTypList = wrkTypSimpleType.getSVServices().getModifiableSimpleValueSet();
              //wdContext.nodeDem_Cat_Output()
              wrkTypList.clear();
              for(int i = 0 ;i < wdContext.nodeTemp_WorkType().size();i++){
                   String wrkTypListElem = wdContext.nodeTemp_WorkType().getTemp_WorkTypeElementAt(i).getWork_Type();
                   wrkTypList.put(wrkTypListElem, wrkTypListElem);
              }//for
              ISimpleTypeModifiable prodSkillSimpleType = wdThis.wdGetAPI().getContext().getModifiableTypeOf("prodskill");
              IModifiableSimpleValueSet prodSkillList = prodSkillSimpleType.getSVServices().getModifiableSimpleValueSet();
              prodSkillList.clear();
              //wdContext.nodeDem_Cat_Output()
              for(int i = 0 ;i < wdContext.nodeTemp_ProdSkill().size();i++){
                   String prodSkillListElem = wdContext.nodeTemp_ProdSkill().getTemp_ProdSkillElementAt(i).getProduct_Skill();
                   prodSkillList.put(prodSkillListElem, prodSkillListElem);
              ISimpleTypeModifiable csgCatSimpleType = wdThis.wdGetAPI().getContext().getModifiableTypeOf("csgcat");
              IModifiableSimpleValueSet csgCatList = csgCatSimpleType.getSVServices().getModifiableSimpleValueSet();
              csgCatList.clear();
              //wdContext.nodeDem_Cat_Output()
              for(int i = 0 ;i < wdContext.nodeTemp_CsgLoc().size();i++){
                   String csgCatListElem = wdContext.nodeTemp_CsgLoc().getTemp_CsgLocElementAt(i).getCsg_Loc();
                   csgCatList.put(csgCatListElem, csgCatListElem);
         } catch(WDDynamicRFCExecuteException ce) {
              manager.reportException(ce.getMessage(), false);
         //$$end
        //@@end
    this line
    wdContext.currentZct_Wd_Demcat_Details_InputElement().setI_Task_Complte(new Date(System.currentTimeMillis()));
    before the modelobject is executed is giving error.
    Regards
    Prakash

  • How solve  ORA-04030: out of process memory when trying to allocate

    i am facing problems in oracle 10g and after establishing 250 sessions
    an error ocure
    how solve ORA-04030: out of process memory when trying to allocate
    how i can solve it.

    The Oracle version and if Oracle and the OS are 32 or 64 bit versions affect whether or not the /3GB or /PAE flags come into play.
    Also if pga_aggregate_target is not in use then the error generally means the userload is too large for available memory which could be because the previously mentioned switches are needed, because the user load is just to large for available resources, or that memory is being wasted by an excessive number of "dead" sessions. Again depending on the versions of the OS, Oracle, and the application space leaks could be an issue.
    Bouncing will reclaim space lost to space leaks and clean up dead sessions but it is best to know why the problem exists before bouncing cause once you reboot you lose most of the information that will tell you what the cause of the problem is unless you make it a point to capture debugging information first.
    HTH -- Mark D Powell --

Maybe you are looking for