How to insert value for composed foreign key?

My problem when I update or insert to table Ffclient which has link 1-1 with other table ClientLoan by composes primary key loanId and clienId (break table). I auto mapping by Jdeveloper 10g version 10.1.2. In FfClient table has two fields compose foreign key of ClientLoan as loanId and clienId not nullable. In toplink object Ffclient it only has one reference ClientLoan object by clientLoan field, not has two fields loanId and clienId . When I insert or update to database, I can't set value for these two fields direct so I have created new ClientLoan object and set value for composed primary key loanId and clienId, after that set it to object Ffclient. But when I update or insert to database it occurs exception about insert null for two not nullable fields: loanId and clienId.
Any one has error as mime? Any one help me correct my error.
Thanks in advance.
Mapping is:
….
<database-mapping>
<attribute-name>ffclientCollection</attribute-name>
<read-only>false</read-only>
<get-method-name>getFfclientCollection</get-method-name>
<set-method-name>setFfclientCollection</set-method-name>
<reference-class>uk.co.lsb.elb.toplink.Ffclient</reference-class>
<relationship-partner-attribute-name>clientLoan</relationship-partner-attribute-name>
<is-private-owned>false</is-private-owned>
<uses-batch-reading>false</uses-batch-reading>
<indirection-policy>
<mapping-indirection-policy>
<type>oracle.toplink.internal.indirection.TransparentIndirectionPolicy</type>
</mapping-indirection-policy>
</indirection-policy>
<container-policy>
<mapping-container-policy>
<container-class>oracle.toplink.indirection.IndirectList</container-class>
<type>oracle.toplink.internal.queryframework.ListContainerPolicy</type>
</mapping-container-policy>
</container-policy>
<source-key-fields>
<field>LSB.CLIENT_LOAN.CLIENT_ID</field>
<field>LSB.CLIENT_LOAN.LOAN_ID</field>
</source-key-fields>
<target-foreign-key-fields>
<field>LSB.FFCLIENT.CLIENT_ID</field>
<field>LSB.FFCLIENT.LOAN_ID</field>
</target-foreign-key-fields>
<type>oracle.toplink.mappings.OneToManyMapping</type>
</database-mapping>
…..
<database-mapping>
<attribute-name>clientLoan</attribute-name>
<read-only>false</read-only>
<reference-class>uk.co.lsb.elb.toplink.ClientLoan</reference-class>
<relationship-partner-attribute-name>ffclientCollection</relationship-partner-attribute-name>
<is-private-owned>false</is-private-owned>
<uses-batch-reading>false</uses-batch-reading>
<indirection-policy>
<mapping-indirection-policy>
<type>oracle.toplink.internal.indirection.BasicIndirectionPolicy</type>
</mapping-indirection-policy>
</indirection-policy>
<uses-joining>false</uses-joining>
<foreign-key-fields>
<field>LSB.FFCLIENT.CLIENT_ID</field>
<field>LSB.FFCLIENT.LOAN_ID</field>
</foreign-key-fields>
<source-to-target-key-field-associations>
<association>
<association-key>LSB.FFCLIENT.LOAN_ID</association-key>
<association-value>LSB.CLIENT_LOAN.LOAN_ID</association-value>
</association>
<association>
<association-key>LSB.FFCLIENT.CLIENT_ID</association-key>
<association-value>LSB.CLIENT_LOAN.CLIENT_ID</association-value>
</association>
</source-to-target-key-field-associations>
<type>oracle.toplink.mappings.OneToOneMapping</type>
</database-mapping>

Yes, many thanks for you reply.
My project has many layer (include DAO + EJB + BO + WEB).
Toplink objects which are auto created by TopLink has only using in DAO and EJB layer, then toplink objects are transfer to Bean objects (valueObject) which are contain primitive java type as int, long, double... not java wrapper object as Integer, Long, Double... Bean objects are using from EJB to WEB layer. So when set value to bean object from toplink object I sometime don't set all reference toplink object to reference object of bean (although bean has references bean object as toplink object) because there are too big. So when I update data from WEB layer to EJB layer, before update to database, I must get fill all data for foreign key of update object by create new reference toplink object, add reference_id to this object and set it to update object. I waste a lot of time, its very handwork and tire. Are you has any solution about this problem?
Thank in advanced.
ThangNQ

Similar Messages

  • How to pass values for compound primary keys for updating the record in db.

    i have a entity bean in my ejb with two primary keys to it...eg. roleid,rolename...
    when iam retriving the record i use only one primary key ...so again to modify and update he same record which i retrived is a pbm..
    i cannot set the values for the compoundpk,,,
    but i can do the update for the bean with single primary key..
    i need to know how to pass the values/parameters for the coumpound primary key in my update method...
    thanx in advance...
    Arjun.G

    I istantiated a object for the pk class and assign the values for the primary key fields...
    Arjun.G

  • How to assign the two values for constant (same key)

    How to assign the two values for constant (same key)
    CONSTANTS: c_pstkey TYPE  bschl VALUE '09',
               c_splgl  TYPE  umskz VALUE 'I',
               c_buzei  TYPE  buzei VALUE '001'.
    using BSCH1 again i have two asign vaue
    can you just let me know
    Edited by: sravya_se38 on Nov 23, 2010 12:14 AM

    You can create a structure for that constant .
    You can define in this way
    CONSTANTS : BEGIN OF c_pstkey,
                             01 TYPE bschl VALUE '01',
                             02 TYPE bschl VALUE '02',
                          END OF c_pstkey.
    and can access using...
    c_pstkey-01, c_pstkey-02 ........

  • How can I arrange for the Enter key to just drop d...

    How can I arrange for the Enter key to just drop down a line instead of posting the message?

    In Skype go to Tools -> Options -> IM settings -> Show advanced options. In the section “Pressing Enter will” select the option: Insert line break.
    Note that this option is only available with Skype version newer than 6.1. The currently latest Skype version is 6.3.0.107.

  • How to populate values for a new field in target infoprovider

    Hi Experts,
    am new to BI. i would like to know on how to populate values for a new field in the target cube with start rotuine.In my case,  i have a source infoprovider, which has 3 fields and a target infoprovider, which has 5 fields. i need to populate the new 2 fields in start routine. i dont want to populate using Field routine and am using 3.5 version. please assist with code on how to solve this issue.
    Thank you,
    Chitra.
    Edited by: Chitra_BI on Jun 13, 2011 10:23 AM

    Debug the standard code and see where the other fields are getting update. you can use the similar approach and area to code for the new field.
    Regards,
    Lalit Mohan Gupta.

  • How to set value for trim and bleed using jsx script?

    I have tried using bleedoffsetRect but somehow it is not working. Can anybody please help me on how to set value for trim and bleed using jsx script? Any example will be highly appreciated.
    Following is the code I am trying with:
    var _saveName = new File ( root_path +_strFileName+".pdf");
        var _saveOpts = new PDFSaveOptions();
        _saveOpts.printerResolution = 300; 
        var bleedarray = new Array();
         bleedarray[0] =9.00;
         bleedarray[1]=9.00;
         bleedarray[2]=9.00;
         bleedarray[3]=9.00;    
        _saveOpts.bleedOffsetRect = bleedarray;

    I would expect although I've not actually tried this for the bleed off set box to be larger than the artbaord and the first two values to be negative or 0…
    var bleedarray = new Array(-9,-9,artboard.width+9,artboard.height+9);
    Where 'artboard.width' & 'artboard.height' you will have calculated from your file. An Array(9,9,9,9); would not constitute any boxes bounds.

  • How to assign values for more than one field

    Hi,
    I have written following code
    constants: fieldname(30) value '(SAPMF02D)KNA1-AUFSD'.
    constants: fieldname1(30) value '(SAPMF02D)KNA1-LISFD'.
    constants: fieldname2(30) value '(SAPMF02D)KNA1-FAKSD'.
    field-symbols: <L_FIELD>  TYPE ANY.
    field-symbols: <L_FIELD1> TYPE ANY.
    field-symbols: <L_FIELD2> TYPE ANY.
          Assign (fieldname) to <l_field>.
          <L_FIELD> = 'ZB'. " value according to your requirement
          Assign (fieldname1) to <l_field1>.
          <L_FIELD1> = 'ZB'.
    while debugging <l_field1> is not assinging (fieldname1).
    Im able to assing for (fieldname).
    how to assign value for (fieldname1).
    plz suggest me to assign values for more than one field.
    Regards,
    Brahmaji

    Hello,
    Because there is no field name called LISFD in KNA1. Actually you misspelled the field name.
    It is KNA1-LIFSD

  • How to insert entities for a role and retrofit single trigger from DB

    Hi,
    before Oracle Designer replacement I would like to clarify these 2 issues:
    - how to insert entities for a role?
    - how to retrofit just a single trigger from database?
    Could somebody give a step by step advice, how to do these 2 things? Thanks!

    > um.. i don't think you could use 'create table'
    inside a pl/sql procedure.
    You are wrong. You can create table inside a PL/SQL using execute immediate. But, this is not a good practise. I think you should reconsider the logic and then use such programming code. Please read the Oracle documentation regarding execute immediate.
    Regards.
    Satyaki De.

  • How to bind values for input parameters from an adf table?

    Hi,
    The version I am using is
    Jdev TP4 11.1.1.0.0
    I need to know how to bind values for input parameters to methods.
    I have created an af:table and I have a button created using a method which is outside the af:table. This method needs to take input parameter values from the column values in the table.
    When I have an adf form instead of the table the binding works.
    Any help?
    Thanks.

    Hi Balaji,
    you need to bind you table to a backing bean and call a method in the backing bean when you hit the button. In the method you get the selected row from the table and have access to the columns of it. Then call the the method with the parameters.
    To bind the table to a bean select the properties of the table, go to behavior section and look for the advanced section 'Binding' property.
    Select the small down arrow at the right side and click edit. In the dialog select or create a bean and property for the table.
    Go to the button properties, look for 'Action', again select the small down arrow and click 'Edit'. Select the bean which holds the table property and create a method for the button.
    The method look like    public void bearbeitenQuelle(ActionEvent actionEvent)
            // Add event code here...
            RichTable lTable = getYourTable();
            Object lData = lTable.getSelectedRowData();
            FacesCtrlHierNodeBinding lNB = (FacesCtrlHierNodeBinding) lData;
            YourViewRow lRow = (YourViewRow ) lNB.getCurrentRow();
        }Hope the get you started
    Timo

  • How to set value for radio button in sap crm survey suite

    Hi ,
    I created a survey in CRM Service, in which I added a question with answer as '10 Selection Button Group ('radio button'). And answer has 11 answer options (which means 11 radio buttions). Now when we test the survey, the value for the radio buttons is appearing like 'id_0050569b03091ee480a29d8ee61e953c'. But i want to set a specific value for each radion button (from 1 to 11). So, how to set value for radio button in sap crm survey suite???.
    Thanks & Regards,
    Seshu

    Hi,
    I found solution myself. Click on Goto -> Editing Mode -> Expert Mode. Now you can set value for radio button.
    Regards,
    Seshu

  • How to set value for selectOneChoice

    Hello,
    How to set value for selectOneChoice defined as:
    <af:selectOneChoice label="Label" id="soc1" binding="#{DepositorMergingBean.socSurnameComponent}">
    <f:selectItems id="si1" value="#{DepositorMergingBean.socSurnames}"/>
    </af:selectOneChoice>
    where socSurnames is List<SelectItem> - manually filled list of SelectItem(SomeObject, (String)text_description), so - SOC is filled manually (no binded iterators, etc..)
    Neither socSurnameComponent.setValue( new Integer(0) ) nor socSurnameComponent.setValue( socSurnames.get(0) ) do not help.
    Thanks in advance.

    this.selectOneChoice.setValue(selectItems.get(2).getValue());Try as per the following sample:
    SelectOneChoiceTest.JSPX:
    <af:form id="f1">
    <af:selectOneChoice label="Select One Choice" id="soc1"
    binding="#{SelectOneChoiceTestBean.selectOneChoice}">
    <f:selectItems value="#{SelectOneChoiceTestBean.selectItems}"
    id="si1"/>
    </af:selectOneChoice>
    <af:commandButton text="Set Selected Value" id="cb1"
    actionListener="#{SelectOneChoiceTestBean.onClick}"/>
    </af:form>
    SelectOneChoiceTestBean.java:
    import java.util.ArrayList;
    import java.util.List;
    import javax.faces.event.ActionEvent;
    import javax.faces.model.SelectItem;
    import oracle.adf.view.rich.component.rich.input.RichSelectOneChoice;
    public class SelectOneChoiceTestBean {
    private RichSelectOneChoice selectOneChoice;
    public SelectOneChoiceTestBean() {
    super();
    private List<SelectItem> selectItems;
    public void setSelectItems(List<SelectItem> selectItems) {
    this.selectItems = selectItems;
    public List<SelectItem> getSelectItems() {
    selectItems = new ArrayList<SelectItem>();
    selectItems.add(new SelectItem("One", "One"));
    selectItems.add(new SelectItem("Two", "Two"));
    selectItems.add(new SelectItem("Three", "Three"));
    return selectItems;
    public void setSelectOneChoice(RichSelectOneChoice selectOneChoice) {
    this.selectOneChoice = selectOneChoice;
    public RichSelectOneChoice getSelectOneChoice() {
    return selectOneChoice;
    public void onClick(ActionEvent actionEvent) {
    this.selectOneChoice.setValue(selectItems.get(2).getValue());
    Thanks,
    Navaneeth

  • Inserting values for all records except 1 or 2 column ,without specify column names.,?

    Hi,
    for example, in student table i am having 1000 columns,  column names like(id ,name,class, dept,etc,.).
    i want to insert 998 fields to department table from student tables except(id,class).
    i don't want to mention all column names in the insert command,
    is there any possibilities to filter the column names in insert command like (EXCEPT, NOT IN).
    Thanks in advance..

    duplicate of
    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/b31fa034-5b8f-42e4-b4e1-592a632ca6a5/inserting-values-for-all-records-except-1-or-2-column-without-specify-column-names?forum=sqlce
    please dont cross post
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • How to estimate value for LogBufParallelism

    how to estimate value for LogBufParallelism.
    Are there any dependencies between LogBufParallelism and LogFlushMethod ?

    If you are going to use logbufparallelism
    please make sure to use a release >= 11.2.1.7.0, as there was a bug related to using logbufparellelism in previous releases:
    In previous releases, the replication agent could crash and invalidate the database when the replication agent was reading close to the end of the in-memory logs. This problem could occur when the value of the connection attribute LogBufParallelism was greater than 1. In that case, one particular log record could cause a log strand reader to block and cause other strand-readers to read records in an incorrect order. This problem has been fixed. (BugDB 10174319 and 10176689)
    The suggestion is that you can set to any value up to the number of processors or cores that you have.
    Most people though I usually choose to set it something slightly lower than that if they want cpu(s) to be used other processes on the machine.
    There is no dependency with LogFlushMethod, but there is one for LogBufMb:
    If you change the value of LogBufParallelism, you also may need to change the value of LogBufMB to
    satisfy the constraint that LogBufMB/LogBufParallelism >=8
    Jim

  • How to enter values for newly inserted field for maintenace view table

    Hi ,
    I have inserted new field for custom table which consits of maintance view..
    I want to put some values in to this newly inserted field..
    When i try to insert values bu useing se16,iam unable to view this newely inserted field..
    Can you please let me know how can i insert values to this newely created field
    Thanx,
    Parnith

    Hi Parnith,
    It is easy to use a table maintainance to enter values to a database table....
    if you have a table maintainace generator and you are not able to see the newly added field here is the reason
    Everytime you add a new field , the table maintainance needs to be regenerated..The reason is that the screen you are using in the table maintainance is created within a program with respect to the fucntion group and not directly linked to the table..whenever you change the table,the function group is not affected and changes are not reflected in the table maintainance , so you have to regenerate by utilities-> table maintainance generator in sell for that table..once you do it , the function group assigned to the table automatically creates a new one with the latest fields added
    Reward if helpful
    Regards
    Byju

  • How to set a 3 default values for a dependent key flexfield

    hi,
    I have an inquiry in oracle applications 11i - Oracle General Ledger module, Accounting Key flexfield structure.
    we have an independent key segment PROJECT and a dependent key segment SUB-PROJECT.
    Can we define 3 dependent value for the SUB-PROJECT to be the default for any new entered value in the PROJECT segment??
    e.g creating 3 default SUB-PROJECT values: X, Y, and Z. Any new value entered to the PROJECT key segment will have X, Y and Z by default as it's SUB-PROJECTS.
    If the above scenario is possible, please guide me to the best solution...
    Thank you...

    I can find that the value set of any dependent value set has only one room for a default value.
    What are the implications of creating a new Independent value set and assign it to the SubProject segment, on historical data and reports?
    thank you...

Maybe you are looking for