@oneToMany issues

CREATE TABLE `stats` (
`stats_id` bigint(20) unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
CREATE TABLE 'custom_fields'(
`stats_id` bigint(20) unsigned NOT NULL,
CONSTRAINT `FK_stats_id` FOREIGN KEY (`stats_id`) REFERENCES `stats` (`stats_id`)
@Entity
@Table(name = "stats")
public class Stats implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "stats_id")
private Long statsId;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "stats")
private Collection<CustomFields> customFieldsCollection;
@Entity
@Table(name = "custom_fields")
public class CustomFields implements Serializable {
@JoinColumn(name = "stats_id", referencedColumnName = "stats_id")
@ManyToOne(optional = false)
private Stats stats;
Exception Description: The attribute [customFields] in entity class [class com.soleo.flexiq.statsmanager.persistence.entity.Stats] has a mappedBy value of [statsId] which does not exist in its owning entity class [class com.soleo.flexiq.statsmanager.persistence.entity.CustomFields]. If the owning entity class is a @MappedSuperclass, this is invalid, and your attribute should reference the correct subclass.
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.predeploy(EntityManagerSetupImpl.java:809)
Have spent several days on it.. Any help would be appreciated!

wlin wrote:
If I change "private Long statsId" to "private Long stats_id", also change get and set methods, it works. But it is not the right way to do it.I'd agree with you there, this smells like a bug in EclipseLink (or at least the version provided by Glassfish). If you want to make the effort, I'd check here if a bug report that matches your description already exists, and if not file a new one:
https://bugs.eclipse.org/bugs/

Similar Messages

  • Couldn't persist OneToMany JoinColumn/JoinTable (Unidir) using TopLink JPA

    Hi All,
    I am having a lot of difficulty deploying a OneToMany Unidirectional (Zipcode) record which consist of multiple Zipnames using TopLink on Glassfish v2r2, JDK1.6.0_06, MySQL 5.0, Netbeans 6.1 and Windows XP platform.
    Below are the relevant EJBs snippets:
    Zipcode class
    @Entity
    @Table(name="ZIPCODE")
    public class Zipcode implements Serializable {
    @OneToMany(cascade={CascadeType.ALL}, fetch=FetchType.EAGER)
    @JoinColumn(name="ZIPCODE_ID")    
                 or
        @JoinTable(name="ZIPCODE_ZIPNAME",          
                   joinColumns={@JoinColumn(name="ZIPCODE_ID")},
                   inverseJoinColumns={@JoinColumn(name="ZIPNAME_ID")})
        private Collection<Zipname> zipnames = new ArrayList<Zipname>();
        public Collection<Zipname> getNames()
         return zipnames;
        public void setZipnames(Collection<Zipname> zipnames)
         this.zipnames = zipnames;
    Zipname class does not maintain relationship back to Zipcode.
    public class ZipcodeApplicationClient {
    @PersistenceContext(unitName="GeographicalDB-PU")
    private static EntityManager manager;
        public ZipcodeApplicationClient() {
        public static void main(String[] args) {
            try {
                Zipcode zipcode_1 = new Zipcode();
                zipcode_1.setcode(9001);
                Zipname zipname_1 = new Zipname();
                zipname_1.setName("Harbour Cove");
                zipcode_1.getNames().add(zipname_1);
                // Can add one Zipname record with JoinTable but not JoinColumn
                Zipname zipname_2 = new Zipname();
                zipname_2.setName("Wonderland");
                zipcode_1.getNames().add(zipname_2);
                manager.persist(zipcode_1);   // line 45
    The same deployment error message below was generated from both JoinColumn and JoinTable methods:
    run-deploy:
    run-display-browser:
    run-ac:
    Copying 1 file to C:\Documents and Settings\Jack\GeographicalBean\dist
    Caught an unexpected exception!
    java.lang.NullPointerException
            at client.ZipcodeApplicationClient.main(ZipcodeApplicationClient.java:45)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at com.sun.enterprise.util.Utility.invokeApplicationMain(Utility.java:266)
            at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithModuleSupport.java:449)
            at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithModuleSupport.java:259)
            at com.sun.enterprise.appclient.Main.main(Main.java:200)
    run-InvestmentBean-app-client:The JoinColumn method would not work for one Zipname record. On the other hand, JoinTable approach would allow us to add a single Zipname record without error out.
    Q1. Can you confirm whether TopLink JPA 1.0 (Glassfish v2r2) support OneToMany JoinColumn Unidirectional at all?
    Q2. Does TopLink JPA 1.0 (Glassfish v2r2) support OneToMany JoinTable Unidirectional? If so, what is the cause of this issue? Otherwise, please make appropriate recommendation steps to take.
    This question has been posted on http://forums.sun.com/thread.jspa?threadID=5330670&tstart=0 and http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=78&t=004489&p=1 earlier in the hope a quicker response.
    Your guidance would be very much appreciated.
    Many thanks,
    Jack

    Hi,
    Below are some more error output from the OneToMany JoinTable Unidirectional approach:
    pre-run-deploy:
    Initial deploying InvestmentBean to C:\Documents and Settings\abc\InvestmentBean\dist\gfdeploy
    Completed initial distribution of InvestmentBean
    Start registering the project's server resources
    Finished registering server resources
    moduleID=InvestmentBean
    deployment started : 0%
    deployment finished : 100%
    Deploying application in domain completed successfully
    Trying to create reference for application in target server completed successfully
    Trying to start application in target server completed successfully
    WARNING:
    JDO76614: Deployment encountered SQL Exceptions:
    JDO76609: Got SQLException executing statement "CREATE TABLE ZIPCODE (ID INTEGER NOT NULL, DIALING_CODE VARCHAR(255), TIME_ZONE VARCHAR(255), CODE INTEGER, NEAREST_AIRPORT VARCHAR(255), LONGITUDE VARCHAR(255), NEAREST_TRAIN_STATION VARCHAR(255), NEAREST_URBAN_CENTRE VARCHAR(255), HOTELS VARCHAR(255), LATITUDE VARCHAR(255), NEARBY_FEATURES VARCHAR(255), COUNCIL VARCHAR(255), LOCALITY VARCHAR(255), PRIMARY KEY (ID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'zipcode' already exists
    JDO76609: Got SQLException executing statement "CREATE TABLE ZIPCODE_ZIPNAME (ZIPCODE_ID INTEGER NOT NULL, ZIPNAME_ID INTEGER NOT NULL, PRIMARY KEY (ZIPCODE_ID, ZIPNAME_ID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'zipcode_zipname' already exists
    JDO76609: Got SQLException executing statement "CREATE TABLE ZIPNAME (ID INTEGER NOT NULL, NAME VARCHAR(255), PRIMARY KEY (ID))": com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'zipname' already exists
    JDO76609: Got SQLException executing statement "ALTER TABLE ZIPCODE_ZIPNAME ADD CONSTRAINT FK_ZIPCODE_ZIPNAME_ZIPCODE_ID FOREIGN KEY (ZIPCODE_ID) REFERENCES ZIPCODE (ID)": java.sql.SQLException: Can't create table '.\geographicaldb\#sql-434_4.frm' (errno: 121)
    JDO76609: Got SQLException executing statement "ALTER TABLE ZIPCODE_ZIPNAME ADD CONSTRAINT FK_ZIPCODE_ZIPNAME_ZIPNAME_ID FOREIGN KEY (ZIPNAME_ID) REFERENCES ZIPNAME (ID)": java.sql.SQLException: Can't create table '.\geographicaldb\#sql-434_4.frm' (errno: 121)Enable of InvestmentBean in target server completed successfully
    Enable of application in all targets completed successfully
    All operations completed successfully
    post-run-deploy:
    run-deploy:
    run-display-browser:
    run-ac:
    Copying 1 file to C:\Documents and Settings\Jack\GeographicalBean\dist
    Caught an unexpected exception!
    java.lang.NullPointerException
    at client.ZipcodeApplicationClient.main(ZipcodeApplicationClient.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.sun.enterprise.util.Utility.invokeApplicationMain(Utility.java:266)
    at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithModuleSupport.java:449)
    at com.sun.enterprise.appclient.MainWithModuleSupport.<init>(MainWithModuleSupport.java:259)
    at com.sun.enterprise.appclient.Main.main(Main.java:200)
    run-GeographicalBean-app-client:
    run:
    I would like to correct an earleir comment where I stated that this method did work when adding a single Zipname record. This is no true.
    Thanks,
    Jack

  • Issue while mapping two entity column into one entity column

    Not able to succeed with when trying to join 2 entity columns to an entity.
    Entity A Id, AName, ADesc, AQty
    Entity B Id, AName, BQty
    Entity C Id, AName, CQty
    Mapping Entity A to Entity B & Entity C with column reference, not able to succeed with two joins.
    EntityA
    @OneToMany
    @Column(name = "ANAME")
    private List<EntityB> bName = new ArrayList();
    private List<EntityC> cName = new ArrayList();
    EntityB
    @ManyToOne
    @JoinColumn(name = "ANAME")
    private EntityA enitityA;
    EntityC
    @ManyToOne
    @JoinColumn(name = "ANAME")
    private EntityA enitityA;
    Join work only for EntityB, not for EntityC...
    Please, give me your suggestions.

    A few issues:
    - You need the @OneToMany on both fields, not just the first one
    - A @OneToMany cannot use an @Column, it should use a mappedBy="entityA"
    See,
    http://en.wikibooks.org/wiki/Java_Persistence/OneToMany

  • JPA - One to Many persistence issue

    Hi All,
    We are facing an issue with one to many relationship persistence using JPA.
    We have a one to many relationship between Company and Personnel. When A personnel is created, the company(the parent in the relationship) is selected and that needs to be persisted along with the new Personnel Entity
    Find below the Entity Definitions and the code snippet to persist the Entity into the database.
    Entity - Company:
    @OneToMany(mappedBy = "company", cascade=CascadeType.ALL, fetch = javax.persistence.FetchType.EAGER)
    private Collection<Personnel> personnelCollection;
    Entity Personnel:
    @ManyToOne(optional = true)
    private Company company;
    public ErrorCode createAndAssignPersonnel(String personnelName, String company, String email, String title, String user)
    PersonnelPK personnelPK = new PersonnelPK(personnelName, this.appInfoEJB.getSiteId());
    Personnel personnel = new Personnel(personnelPK);
    personnel.setEmail(email);
    personnel.setTitle(title);
    CompanyPK companyPK = new CompanyPK(company, this.appInfoEJB.getSiteId());
    Company companyObj = this.companyEJB.find(companyPK);
    //Double Wiring the personnel and company records
    companyObj.getPersonnelCollection().add(personnel);
    personnel.setCompany(companyObj);
    //Running merge on the parent entity
    em.merge(companyObj);
    return ErrorCode.OK;
    The personnel entity is being persisted into the database but the company is not getting associated with it. (The company value remains blank)
    We are using the Toplink JPA Implementation with Glassfish application server. Any pointers would be greatly appreciated.
    Thanks and Regards,
    GK
    Edited by: user12055063 on Oct 13, 2009 10:05 AM
    Edited by: user12055063 on Oct 13, 2009 10:05 AM

    Hi All,
    Since PERSONNEL and COMPANY both had the SITEID column, we renamed the column in both tables to check if that solves the issue. However, a null company value is still being persisted into the database.
    Find below the altered schema:
    CREATE TABLE COMPANY
    COMPANYNAME VARCHAR(255) NOT NULL,
    COMPANYSITEID VARCHAR (255) NOT NULL,
    PARENTNAME VARCHAR(255),
    PARENTSITEID VARCHAR(255),
    ADDRESS VARCHAR(255),
    PRIMARY KEY (COMPANYNAME, COMPANYSITEID),
    FOREIGN KEY (PARENTNAME, PARENTSITEID) REFERENCES COMPANY (COMPANYNAME, COMPANYSITEID)
    CREATE TABLE PERSONNEL
    PERSONNELNAME VARCHAR(255) NOT NULL,
    PERSONNELSITEID VARCHAR(255) NOT NULL,
    COMPANY VARCHAR(255),
    EMAIL VARCHAR(255),
    TITLE VARCHAR(255),
    PRIMARY KEY (PERSONNELNAME, PERSONNELSITEID)
    ALTER TABLE PERSONNEL
    ADD CONSTRAINT PERCOMPANYCONS FOREIGN KEY (COMPANY, PERSONNELSITEID) REFERENCES COMPANY (COMPANYNAME, COMPANYSITEID);
    The corresponding entity classes are as follows:
    Personnel:
    public class Personnel implements Serializable {
        private static final long serialVersionUID = 1L;
        @EmbeddedId
        protected PersonnelPK personnelPK;
        @Column(name = "EMAIL")
        private String email;
        @Column(name = "TITLE")
        private String title;
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "personnel", fetch = FetchType.EAGER)
        private Collection<Deliverynote> deliverynoteCollection;
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "personnel", fetch = FetchType.EAGER)
        private Collection<Microreader> microreaderCollection;
        @JoinColumns({@JoinColumn(name = "COMPANY", referencedColumnName = "COMPANYNAME"), @JoinColumn(name = "PERSONNELSITEID", referencedColumnName = "COMPANYSITEID", insertable = false, updatable = false)})
        @ManyToOne
        private Company company;
        public Personnel() {
    Company:
    public class Company implements Serializable {
        private static final long serialVersionUID = 1L;
        @EmbeddedId
        protected CompanyPK companyPK;
        @Column(name = "ADDRESS")
        private String address;
        @OneToMany(mappedBy = "company", fetch = FetchType.EAGER)
        private Collection<Company> companyCollection;
        @JoinColumns({@JoinColumn(name = "PARENTNAME", referencedColumnName = "COMPANYNAME"), @JoinColumn(name = "PARENTSITEID", referencedColumnName = "COMPANYSITEID")})
        @ManyToOne(fetch = FetchType.EAGER)
        private Company company;
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "company", fetch = FetchType.EAGER)
        private Collection<Credential> credentialCollection;
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "company", fetch = FetchType.EAGER)
        private Collection<Personnel> personnelCollection;
        @OneToMany(cascade = CascadeType.ALL, mappedBy = "company", fetch = FetchType.EAGER)
        private Collection<Entityobject> entityobjectCollection;
        public Company() {
        }...The code for persisting the personnel record is as follows:
      public ErrorCode createAndAssignPersonnel(String personnelName, String company, String email, String title, String user)
            Personnel personnel = new Personnel(new PersonnelPK(personnelName, this.appInfoEJB.getSiteId()));
            personnel.setEmail(email);
            personnel.setTitle(title);
            Company companyObj = this.companyEJB.find(new CompanyPK(company, this.appInfoEJB.getSiteId()));
            personnel.setCompany(companyObj);
            companyObj.getPersonnelCollection().add(personnel);
            //em.merge(companyObj);
            em.persist(personnel);
            em.flush();
            return ErrorCode.OK;
        }The SQL queries internally generated as as follows:
    INSERT INTO PERSONNEL (TITLE, EMAIL, PERSONNELSITEID, PERSONNELNAME) VALUES (?, ?, ?, ?)
    bind => [, , JackOnSite, Tester]
    In this case, the company field is not even added in the query.
    On deleting the updatable, insertable attributes from the JoinColumns annotation as follows:
    @JoinColumns({@JoinColumn(name = "COMPANY", referencedColumnName = "COMPANYNAME"), @JoinColumn(name = "PERSONNELSITEID", referencedColumnName = "COMPANYSITEID" )})
    @ManyToOne
    private Company company;The following query is generated:
    Local Exception Stack:
    Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b58g-fcs (09/07/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: java.sql.SQLSyntaxErrorException: Column name 'PERSONNELSITEID' appears more than once times in the column list of an INSERT statement.
    Error Code: -1
    Call: INSERT INTO PERSONNEL (TITLE, EMAIL, COMPANY, PERSONNELSITEID, PERSONNELSITEID, PERSONNELNAME) VALUES (?, ?, ?, ?, ?, ?)
    bind => [, , Test New, JackOnSite, JackOnSite, Sesi]
    Note that in this case, the company is being inserted into the query. However, the PERSONNELSITEID appears twice.
    The company table has a foreign key reference to itself and we have tried testing this use case by dropping that constraint without any success.
    We would greatly appreciate any pointers/suggestions.
    Thanks and Regards,
    GK

  • (Kodo 4.1); DELETE issued even with @ForeignKey cascade delete?

    I'm wondering if anyone has seen this.
    I'm using Kodo 4.1, and MySQL, and I basically have the following situation (default generated IDs omitted):
    Code:
    @Entity
    public class A {
      @OneToMany(mappedBy="a", cascade=CascadeType.ALL, fetch=FetchType.EAGER)
      private Set<BB> bMany = new HashSet<BB>();
    @Entity
    public class BB {
    @ManyToOne(cascade={CascadeType.PERSIST, CascadeType.REFRESH })
    @JoinColumn(name = "A_ID")
    @ForeignKey(deleteAction=ForeignKeyAction.CASCADE)
    private A a;
    Schema:
    CREATE TABLE BB(
      A_ID BIGINT NOT NULL,
      CONSTRAINT FOREIGN KEY (A_ID) REFERENCES A(ID) ON DELETE CASCADE
    ) ENGINE=InnoDB;OK. I create an A with a couple of BBs in it, and persist it. Everything's fine. Now I call entityManager.remove() on the A instance I persisted, and I can see it issuing DELETE commands for BB after the DELETE for A, which produces an OptimisticLockException. I'd have hoped that the above @ForeignKey would have told Kodo not to issue such commands, knowing that the DB would do it.
    Any insight? Have I used @ForeignKey correctly (examples seem sparse in the documentation)? Is there a workaround, other than removing the cascade delete and doing deletions manually from code?
    Thanks,
    -- Bryan Loofbourrow

    1. Kodo needs to know the constraints set on mapped columns.
    Set the following properties in your configuration
    kodo.jdbc.SchemaFactory:native(ForeignKeys=true)
    2. Are you explictly setting kodo.jdbc.UpdateManager property?

  • Facing issue with EntityManager

    Hi Friends,
    I have a Person entity and Address entity and there is @OneToMany relation b/w Person and address.
    See below mapping
    ===================
    @Entity
    @Table(name="Person")
    public class Person {
         @Id
         @GeneratedValue
         @Column(name = "p_id")
         private Long id;
         @OneToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE,
                   CascadeType.REMOVE, CascadeType.REFRESH })
         @JoinColumn(name = "p_id")
         private List<Address> addressList = new ArrayList<Address>();
    setters and getters...
    ==========================================
    @Entity
    @Table(name="ADDRESS")
    public class Address implements Serializable{
         private static final long serialVersionUID = 1L;
         @Id
         @Column(name="ADD_ID")
         @GeneratedValue
         private Long id;
         @Column(name="p_id")
         private Long addId;
    setter and getter
    ====================
    I am creating Person object and Address objects and adding Address object to Person object like below
    Person p1=new Person();
    Address a1= new Address();
    Address a1= new Address();
    p1.getAddressList().add(a1);
    p1.getAddressList().add(a1);
    em.persist(a1);
    em.flush();
    Person person1 = em.find(Person.class, 1L);
    System.out.println(person1.getAddressList(0).getAddId()); // getting addId value as null. here i am not closing entity manager and using same for find operation
    // if close entity manager and open new entity manager then i am getting addId like 1,2
    em.close();
    em = entityManagerFactory().createEntityManager();
    Person person1 = em.find(Person.class, 1L);
    System.out.println(person1.getAddressList(0).getAddId()); // here i am getting 1
    System.out.println(person1.getAddressList(1).getAddId()); // here i am getting 2
    If I use same entitymanager to retrive address list from person entity addId is coming as null.
    If close entity manager and open new entity manager then i am getting addId like 1,2...
    Can you guys explain why jpa has implemented in this way?
    Thanks in Advance.... Sud

    This should not be working at all as you have the 1:m using the "p_id" within the Address table as the foreign key, but this field is also mapped using a basic mapping within the Address entity - effectively mapping it twice. One of the mappings needs to be marked as insertable=false, updatable=false so that it is not writable. Since EclipseLink would throw an exception, the provider you must not be caching the Person entity and be using the value from the Address.addId when persisting the A1 entity. So when it reads back from the database, the foreign keys are null and so it creates an empty collection.
    You will probably need to set the addId mapping to be read-only using:
    @Column(name="p_id", insertable=false, updatable=false)
    private Long addId;
    Or populate this with the correct value from Person yourself.
    That said, why are you not using a ManyToOne relation from Address to Person instead?
    Ie:
    Class Person...
    @OneToMany(cascade = { CascadeType.PERSIST, CascadeType.MERGE,
    CascadeType.REMOVE, CascadeType.REFRESH, mappedby="person" })
    private List<Address> addressList = new ArrayList<Address>();
    Class Address ..
    @Id
    @Column(name="ADD_ID")
    @GeneratedValue
    private Long id;
    //@Column(name="p_id", insertable=false, updatable=false)
    //private Long addId;
    @ManyToOne
    @JoinColumn(name="p_id")
    Person person;
    The addId can still be used in either case, if it is marked as insertable=false, updatable=false. Having a bidirectional relationship (Address also reference Person) might resolve your issue as your code snippet shows you calling persist on Address, so the new Person and a2 would not end up being persisted.
    Best Regards,
    Chris

  • OneToMany resulting in null field.

    I'm attempting to implement the code example from the NetBeans magazine (Nov 2006) using NetBeans 6.0 beta 2 with glassfish-v2 -b58g. It's using a simple db structure with 3 tables:
    [Platform] ---- [JSR] 1----* [Package]
    I'm running into a problem with the 1 to many between JSR and Package.
    The end result is that the jsr field in the inserted Package row is null.
    Here's the JSR class (relevant pieces only, hopefully)
    @Entity
    public class JSR implements Serializable
    private List<Package> packages;
    @OneToMany(fetch=FetchType.EAGER, cascade=CascadeType.ALL,
    mappedBy="jsr")
    public List<Package> getPackages()
    return packages;
    public void setPackages(List<Package> packages)
    this.packages = packages;
    Here's the Package class
    @Entity
    public class Package implements Serializable
    private JSR jsr;
    @ManyToOne
    public JSR getJsr()
    return jsr;
    public void setJsr(JSR jsr)
    this.jsr = jsr;
    Here's the code from a session bean that enters the data:
    @Stateless
    public class JavaPlatformManagerBean
    implements JavaPlatformManagerRemote,
    JavaPlatformManagerLocal
    @PersistenceContext
    private EntityManager em;
    public void createPlatform(Platform platform)
    em.merge(platform);
    The code that calls the session bean (from a jsp backing bean)
    public class JPMClient
    @EJB
    private JavaPlatformManagerRemote jpm;
    public void createJavaSE()
    JSR jsr1 = new JSR(176,
    "Java SE 5 Release Contents",
    new Package ("java.lang"),
    new Package ("java.util"),
    new Package ("java.sql"));
    JSR jsr2 = new JSR(166,
    "Concurrency Utilities",
    new Package ("java.util.concurrent"));
    Platform platform = new Platform ("Java SE 5", jsr1, jsr2);
    jpm.createPlatform(platform);
    And the results of quering the table (in Derby)
    PACKAGE JSR_NUM
    java.util.concurrent NULL
    java.sql NULL
    java.lang NULL
    java.util NULL
    I know this is long winded, but what am I missing in the JSR/Package classes such that the relationship back to the JSR is null?
    Thanks for any insight.
    GregM

    Unfortunately, AMF serialization is something of a black art. I'd run into multiple issues in the past (working with Granite DS, rather than Blaze--but it's essentially the same thing). I'm not sure about Blaze, but Granite has very verbose logging available if you configure log4j to DEBUG level for org.granite. The other alternative is to attach to your Java process with a debugger (Eclipse makes this fairly automagical), download the Blaze source and configure Blaze as a project in Eclipse, add it to source lookup for your project, and step through the actual serialization to see what's going on. This is moderately complicated to set up, but priceless when it comes to debugging.

  • OneToMany Unidirectional strange behavior ?

    I am implementing hibernate with JPA annotations and trying to do a very simple thing but seeing very different behavior in oracleAS.
    I have an Order object which has many OrderLineItems and i want a unidirectional relationship NOT A BIDIRECTIONAL.
    When i try the following code with a main method, it does work perfectly fine, but the same code when deploying to Oracle Application server in a session bean it fails with the following exception
    Exception Description: @OneToMany for attribute name [orderLineItemsList] in entity class [class com.thoughtclicks.domains.Orders] should not have @JoinColumn(s) specified. In the case where the @OneToMany is not mapped by another entity (that is, it is the owning side and is uni-directional), it should specify (optional through defaulting) a @JoinTable.
    Below is the defination of Order Object: and as it is unidirection there is no code for order in orderlineitems
    @OneToMany(cascade={CascadeType.ALL}, fetch=FetchType.EAGER)
    @JoinColumn(name="ORD_ID")
    public List<OrderLineItems> getOrderLineItemsList() {
    return orderLineItemsList;
    Does anybody know what can be the issue with the oracle as deployment ?
    Message was edited by:
    rahul_juneja

    Guys,
    Any Clues about this ?
    Thanks,
    Rahul

  • OneToMany relation over composite PK query error

    We have two classes with composite PK's on both sides. The classes are related via OneToMany relation (and ManyToOne vice versa). The mapping basically works, but if a simple query is issued like
    "select stp from Teilstp stp"
    we get the strange error message "Exception Description: The parameter name [tstnr2] in the query's selection criteria does not match any parameter name defined in the query." Query: ReadAllQuery(lager.model.Teillgp)
    As there are no parameters defined in the query above, this seems to be some kind of internal TopLink JPA error.
    We are unsure whether our mapping is the problem or if the error could be caused by a TopLink JPA bug? Please have a look at the code snippets below and verify the mappings!
    regards,
    Hans
    @IdClass(TeilstpPK.class)
    @Entity
    @Table(name = "teilstp", schema = "jws")
    public class Teilstp {
         @Id
         private String tstnr1;
         @Id
         private String tstnr2;
         @Id
         private String tstnr3;
         @Id
         private String tstnr4;
         @Id
         private String tstnr5;
         @Basic
         @Column(name = "tsmeh")
         private String tsmeh;
         @Basic
         @Column(name = "tsdekp")
         private Double tsdekp;
         @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY,mappedBy="stp")
         private Set<Teillgp> lgps;
    @IdClass(TeillgpPK.class)
    @Entity
    @Table(schema = "jws")
    public class Teillgp {
         @Id
         private String tltnr1;
         @Id
         private String tltnr2;
         @Id
         private String tltnr3;
         @Id
         private String tltnr4;
         @Id
         private String tltnr5;
         @Id
         private Long tllgnr;
         @Basic
         private Double tllgbs;
         @ManyToOne(cascade = CascadeType.MERGE, fetch = FetchType.EAGER)
         @JoinColumns( {
                   @JoinColumn(name = "tltnr1", referencedColumnName = "tstnr1"),
                   @JoinColumn(name = "tltnr2", referencedColumnName = "tstnr2"),
                   @JoinColumn(name = "tltnr3", referencedColumnName = "tstnr3"),
                   @JoinColumn(name = "tltnr4", referencedColumnName = "tstnr4"),
                   @JoinColumn(name = "tltnr5", referencedColumnName = "tstnr5") })
         private Teilstp stp;
    The PrimaryKey @IdClasses are just plain pojo's with hashCode and equals implemented.
    Invoking Teilstp.getLgps() fails with:
    [TopLink Warning]: 2007.06.11 03:48:50.640--ServerSession(11582167)--Exception [TOPLINK-6094] (Oracle TopLink Essentials - 2.0 (Build b38-rc (03/07/2007))): oracle.toplink.essentials.exceptions.QueryException
    Exception Description: The parameter name [tstnr2] in the query's selection criteria does not match any parameter name defined in the query.
    Query: ReadAllQuery(lager.model.Teillgp)
    Any ideas?

    I have this same error, except mine occurs when I make use of the @OneToMany Set.
    This problem seems to be related to connecting Entity Relationships (Specifically ManyToOne) to Id fields.
    (And I have the most recent version as of June 2007)
    (Also, I know this post is five years old, but it was the sole result on Google)
    I bet your stack trace looks somewhat like this:
         oracle.toplink.essentials.exceptions.QueryException.parameterNameMismatch(QueryException.java:983)
         oracle.toplink.essentials.internal.expressions.ParameterExpression.getValue(ParameterExpression.java:231)
         oracle.toplink.essentials.internal.databaseaccess.DatabaseCall.translate(DatabaseCall.java:837)
         oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:228)
         oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:215)
         oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeSelectCall(DatasourceCallQueryMechanism.java:286)
         oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.selectAllRows(DatasourceCallQueryMechanism.java:616)
         oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRowsFromTable(ExpressionQueryMechanism.java:2417)
         oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRows(ExpressionQueryMechanism.java:2395)
         oracle.toplink.essentials.queryframework.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:339)
         oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:725)
         oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery.java:629)
         oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:693)
         oracle.toplink.essentials.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:1831)
         oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:953)
         oracle.toplink.essentials.internal.indirection.QueryBasedValueHolder.instantiate(QueryBasedValueHolder.java:102)
         oracle.toplink.essentials.internal.indirection.QueryBasedValueHolder.instantiate(QueryBasedValueHolder.java:92)
         oracle.toplink.essentials.internal.indirection.DatabaseValueHolder.getValue(DatabaseValueHolder.java:106)
         oracle.toplink.essentials.internal.indirection.UnitOfWorkValueHolder.instantiateImpl(UnitOfWorkValueHolder.java:176)
         oracle.toplink.essentials.internal.indirection.UnitOfWorkValueHolder.instantiate(UnitOfWorkValueHolder.java:248)
         oracle.toplink.essentials.internal.indirection.DatabaseValueHolder.getValue(DatabaseValueHolder.java:106)
         oracle.toplink.essentials.indirection.IndirectSet.buildDelegate(IndirectSet.java:194)
         oracle.toplink.essentials.indirection.IndirectSet.getDelegate(IndirectSet.java:309)
         oracle.toplink.essentials.indirection.IndirectSet$1.<init>(IndirectSet.java:360)
         oracle.toplink.essentials.indirection.IndirectSet.iterator(IndirectSet.java:359)

  • Can't Persist Child of @OneToMany

    Have parent Entity that can be persisted just fine.
    However, when I attach children to it that have been declared as OneToMany I get an exception. I've never had a problem with this issue before, have plenty of related tables that work just fine.
    I can query what's there just fine so I know the relationship works.
    If it matters, all this is being done with remote static bean facades.
    Help would be appreciated.
    snippet:
    @Entity
    @SequenceGenerator(name = "alm_sequence", sequenceName = "alm_seq")
    @Table( name = "ALM", schema = "MCMPGE", uniqueConstraints = {})
    public class Alm implements java.io.Serializable {
    private static final long serialVersionUID = 1L;
         public Long almPk;
         public Set<AlmRecord> almRecords = new HashSet<AlmRecord>( 0);
    @OneToMany( cascade = { CascadeType.ALL}, fetch = FetchType.LAZY, mappedBy = "alm")
         public Set<AlmRecord> getAlmRecords() {
              return this.almRecords;
         public void setAlmRecords( Set<AlmRecord> almRecords) {
              this.almRecords = almRecords;
    @Entity
    @SequenceGenerator(name = "alm_record_sequence", sequenceName = "alm_record_seq")
    @Table( name = "ALM_RECORD", schema = "MCMPGE", uniqueConstraints = {})
    public class AlmRecord implements java.io.Serializable {
         private static final long serialVersionUID = 1L;
         public Long almRecordPk;
         public Alm alm;
         @ManyToOne( cascade = {}, fetch = FetchType.LAZY)
         @JoinColumn( name = "ALM_FK", unique = false, nullable = true, insertable = true, updatable = true)
         public Alm getAlm() {
              return this.alm;
         public void setAlm( Alm alm) {
              this.alm = alm;
    Exception:
    May 15, 2008 2:04:41 PM oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER
    WARNING: Exception returned by remote server: {0}
    javax.ejb.EJBException: Exception [TOPLINK-99] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: The method [_toplink_getalm_vh] on the object [com.navsys.dal.AlmRecord] triggered an exception.
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.essentials.mappings.OneToOneMapping[alm]
    Descriptor: RelationalDescriptor(com.navsys.dal.AlmRecord --> [DatabaseTable(MCMPGE.ALM_RECORD)]); nested exception is:
         Exception [TOPLINK-99] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: The method [_toplink_getalm_vh] on the object [com.navsys.dal.AlmRecord] triggered an exception.
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.essentials.mappings.OneToOneMapping[alm]
    Descriptor: RelationalDescriptor(com.navsys.dal.AlmRecord --> [DatabaseTable(MCMPGE.ALM_RECORD)]); nested exception is: oracle.oc4j.rmi.OracleRemoteException: Exception [TOPLINK-99] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: The method [_toplink_getalm_vh] on the object [com.navsys.dal.AlmRecord] triggered an exception.
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.essentials.mappings.OneToOneMapping[alm]
    Descriptor: RelationalDescriptor(com.navsys.dal.AlmRecord --> [DatabaseTable(MCMPGE.ALM_RECORD)]); nested exception is:
         Exception [TOPLINK-99] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: The method [_toplink_getalm_vh] on the object [com.navsys.dal.AlmRecord] triggered an exception.
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    oracle.oc4j.rmi.OracleRemoteException: Exception [TOPLINK-99] (Oracle TopLink Essentials - 2.0 (Build b41-beta2 (03/30/2007))): oracle.toplink.essentials.exceptions.DescriptorException
    Exception Description: The method [_toplink_getalm_vh] on the object [com.navsys.dal.AlmRecord] triggered an exception.
    Internal Exception: java.lang.reflect.InvocationTargetException
    Target Invocation Exception: java.lang.NullPointerException
    Mapping: oracle.toplink.essentials.mappings.OneToOneMapping[alm]
    Descriptor: RelationalDescriptor(com.navsys.dal.AlmRecord --> [DatabaseTable(MCMPGE.ALM_RECORD)])
         at com.evermind.server.ejb.EJBUtils.getUserException(EJBUtils.java:346)
         at com.evermind.server.ejb.interceptor.system.AbstractTxInterceptor.convertAndHandleMethodException(AbstractTxInterceptor.java:75)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at AlmFacade_RemoteProxy_5jopb7j.update(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.rmi.RmiMethodCall.run(RmiMethodCall.java:53)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)

    There was a bug for a particular case when the weaved valueholder was not present, and I don't recall exactly what it was, but you might start by upgrading to the latest essentials build to make sure you are not hitting that one case. If you are still encountering the same problem then we can find out more about what you are doing differently that causes this to happen, and if it has to do with the serialization of the entity.

  • EclipseLink - oneToMany in lazy + join fetch

    Hi,
    I have a little problem with use a "join fetch".
    How use join fetch with @OneToMany lazy relations ?
    I have two objetcs : Object A has a list of objects B.
    A
    @oneToMany (Lazy relation)
    List<B> listB
    Now, I want load these 2 objects.
    I write a jpql like "select a from A a left join fetch a.listB where a.id=?"
    The sql generated is fine, I see the join between table A and B.
    BUT, when I try to access listB (outside session), I have a lazy exception.
    Why ?
    If (inside session) I access to listB, it's ok (with no more sql).
    So, I have wrote a method like that :
    public A findA(lond id){
    Query q = createQuery(select a from A a left join fetch a.listB where a.id=id");
    A = q.getSingleResult();
    A.getListB().size() -> to initialize relation (but non sql generated)
    return A;
    Someone has an idea ?
    Thanks for your responses.

    Hi,
    In fact my method findA... is inside a stateless bean.
    Outside session means that I call my method by a client application like that :
    Service service= (Service )context.lookup("xxxxx");
    A = service.findA();
    A.getListB().size;
    Exception is
    Exception [EclipseLink-7242] (Eclipse Persistence Services - 2.0.2.v20100323-r6872): org.eclipse.persistence.exceptions.ValidationException
    Exception Description: An attempt was made to traverse a relationship using indirection that had a null Session. This often occurs when an entity with an uninstantiated LAZY relationship is serialized and that lazy relationship is traversed after serialization. To avoid this issue, instantiate the LAZY relationship prior to serialization.
    For the version of eclipseLink, it's an ejb deployed on embedded weblogic with jdeveloper Studio Edition Version 11.1.1.3.0.
    It's JPA 1.0.
    Thanks for your response.
    Hope this help.
    Nicolas
    Edited by: 865770 on 15-juin-2011 8:12

  • JPA Merge Issue

    class A
    @OneToMany(cascade = CascadeType.ALL)
    List<B> Bs;
    B
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    long id;
    Scenario :
    I Saved A. Then Added an Item to list Bs. Then merged A. The new B is saved in the database, but the id of new B is still 0. so when i try to merge A again, B gets overwritten.

    Same issue is discussed on the EclipseLink forum at:
    http://www.eclipse.org/forums/index.php?t=msg&th=172394&start=0&

  • New DVR Issues (First Run, Channel Switching, etc.)

    I've spent the last 30 minutes trying to find answers through the search with no luck, so sorry if I missed something.
    I recently switched to FIOS from RCN cable in New York.  I've gone through trying to setup my DVR and am running into issues and was hoping for some answers.
    1.  I setup two programs to record at 8PM, I was watching another channel at the time and only half paying attention.  Around 8:02 I noticed a message had popped up asking if I would like to switch channels to start recording.  I was expecting it to force it to switch like my old DVR, but in this case it didn't switch and I missed the first two minutes of one of the shows.  I typically leave my DVR on all day and just turn off the TV, this dual show handling will cause issues with that if I forget to turn off the DVR.  Is there a setting I can change that will force the DVR to choose one of the recording channels?
    2.  I setup all my recordings for "First Run" because I only want to see the new episodes.  One show I setup was The Daily Show on comedy central, which is shown weeknights at 11pm and repeated 3-4 times throughout the day.  My scheduled recordings is showing all these as planned recordings even though only the 11pm show is really "new".  Most of the shows I've setup are once a week so they aren't a problem, but this seems like it will quickly fill my DVR.  Any fixes?
    Thanks for the help.
    Solved!
    Go to Solution.

    I came from RCN about a year ago.  Fios is different in several ways, not all of them desirable.  Here are several ways to get--and fix--unwanted recordings from a series recording setup.
    Some general principles. 
    Saving changes.  When you originally create a series with options, or if you go back to edit the options for an existing series, You MUST save the Series Options changes.  Pretty much everywhere else in the user interface, when you change an option, the change takes effect immediately--but not in Series Options.  Look at the Series Options window.  Look at the far right side.  There is a vertical "Save" bar, which you must navigate to and click OK on to actually save your changes.  Exiting the Series Options window without having first saved your changes loses all your attempted changes--immediately.
    Default Series Options.  This is accessed  from [Menu]--DVR--Settings--Default Series Options.  This will bring up the series options that will automatically be applied to the creation of a NEW series. The options for every previously created series will not be affected by a subsequent modification of the Default Series Options.  You should set these options to the way you would like them to be for the majority of series recordings that you are likely to create.  Be sure to SAVE your changes.  This is what you will get when you select "Create Series Recording" from the Guide.  When creating a new series recording where you think that you may want options different from the default, select "Create Series with Options" instead.  Series Options can always be changed for any individual series set up later--but not for all series at once.
    Non-series recordings.  With Fios you have no directly available options for these.  With RCN and most other DVRs, you can change the start and end times for individual episodes, including individual episodes that are also in a series.  With Fios, your workarounds are to create a series with options for a single program, then delete the series later;  change the series options if the program is already in a series, then undo the changes you made to the series options later; or schedule recordings of the preceding and/or following shows as needed.
    And now, to the unwanted repeats. 
    First, make sure your series options for the specific series in question--and not just the series default options--include "First Run Only".  If not, fix that and SAVE.  Then check you results by viewing the current options using the Series Manager app under the DVR menu.
    Second, and most annoying, the Guide can have repeat programs on your channel tagged as "New".  It happens.  Set the series option "Air Time" to "Selected Time".  To make this work correctly, you must have set up the original series recording after selecting the program in the Guide at the exact time of a first run showing (11pm, in your case), and not on a repeat entry in the Guide.  Then, even it The Daily Show is tagged as New for repeat showings, these will be ignored. 
    Third, another channel may air reruns of the program in your series recording, and the first showing of a rerun episode on the other channel may be tagged as "New".  These can be ignored in your series if you set the series option "Channel" to "Selected Channel".  Related to this, if there is both an SD and HD channel broadcasting you series program, you will record them both if the series option "Duplicates" is set to "Yes".  However, when the Channel option is set to "Selected Channel", the Duplicates Option is always effectively "No", regardless of what shows up on the options screen.  
    As for you missing two minutes,  I have sereral instances in which two programs start recording at the same time.  To the best of my recollection, whenever the warning message has appeared, ignoring it has not caused a loss of recording time.  You might have an older software version.  Newest is v.1.8.  Look at Menu--Settings--System Info.  Or, I might not have noticed the loss of minutes.  I regularly see up to a minute of previous programming at the start of a recording, or a few missing seconds at the beginning or end of a recording.  There are a lot of possibilities for that, but the DVR clock being incorrect is not one of them.  With RCN, the DVR clocks occasionally drifted off by as much as a minute and a half.

  • Pension issue Mid Month Leaving

    Dear All,
    As per rule sustem should deduct mid month joining/leaving/absences or transfer scenarios, the Pension/PF Basis will be correspondingly prorated. But our system is not doing this. In RT table i have found 3FC Pension Basis for Er c 01/2010                    0.00           6,500.00.
    Employee leaving date is 14.04.2010. system is picking pension amout as 541. Last year it was coming right.
    Please suggest.
    Ashwani

    Dear Jayanti,
    We required prorata basis pension in case of left employees and system is not doing this. This is the issue. As per our PF experts Pension amount should come on prorata basis for left employees in case they left mid of month.System is doing prorata basis last year but from this year it is deducting 541. I am giving two RT cases of different years.
    RT table for year 2010. DOL 26.04.2010
    /111 EPF Basis              01/2010                    0.00           8,750.00 
    /139 VPF Basis              01/2010                    0.00           8,750.00 
    /3F1 Ee PF contribution     01/2010                    0.00           1,050.00 
    /3F3 Er PF contribution     01/2010                    0.00             509.00 
    /3F5 Ee Mon PF contribution 01/2010                    0.00           1,050.00 
    /3F6 Ee Ann PF contribution 01/2010                    0.00          12,600.00 
    /3F9 PF adm chrgs * 1,00,00 01/2010                    0.00              96.25 
    /3FA PF basis for Ee contri 01/2010                    0.00           8,750.00 
    /3FB PF Basis for Er Contri 01/2010                    0.00           8,750.00 
    /3FJ VPF basis for Ee contr 01/2010                    0.00           8,750.00 
    /3FL PF Basis for Er Contri 01/2010                    0.00           6,500.00 
    /3F4 Er Pension contributio 01/2010                    0.00             541.00
    /3FC Pension Basis for Er c 01/2010                    0.00           6,500.00
    /3FB PF Basis for Er Contri 01/2010                    0.00           8,750.00
    /3FC Pension Basis for Er c 01/2010                    0.00           6,500.00
    /3FJ VPF basis for Ee contr 01/2010                    0.00           8,750.00
    /3FL PF Basis for Er Contri 01/2010                    0.00           6,500.00
    /3R3 Metro HRA Basis Amount 01/2010                    0.00           8,750.00
    1BAS Basic Salary           01/2010                    0.00           8,750.00
    RT table for year 2009. DOL 27.10.2009
                                                                                    /111 EPF Basis              07/2009                    0.00           9,016.13
    /139 VPF Basis              07/2009                    0.00           9,016.13
    /3F1 Ee PF contribution     07/2009                    0.00           1,082.00
    /3F3 Er PF contribution     07/2009                    0.00             628.00
    /3F5 Ee Mon PF contribution 07/2009                    0.00           1,082.00
    /3F6 Ee Ann PF contribution 07/2009                    0.00           8,822.00
    /3F9 PF adm chrgs * 1,00,00 07/2009                    0.00              99.18
    /3FA PF basis for Ee contri 07/2009                    0.00           9,016.00
    /3FB PF Basis for Er Contri 07/2009                    0.00           9,016.00
    /3FJ VPF basis for Ee contr 07/2009                    0.00           9,016.00
    /3FL PF Basis for Er Contri 07/2009                    0.00           5,452.00
    /3FB PF Basis for Er Contri 07/2009                    0.00           9,016.00 
    /3FC Pension Basis for Er c 07/2009                    0.00           5,452.00 
    /3FJ VPF basis for Ee contr 07/2009                    0.00           9,016.00 
    /3FL PF Basis for Er Contri 07/2009                    0.00           5,452.00 
    /3R4 Non-metro HRA Basis Am 07/2009                    0.00           9,016.13 
    1BAS Basic Salary           07/2009                    0.00           9,016.13 
    Now please suggest what to do. where is the problem  ? If have also checked EXIT_HINCALC0_002 but nothing written in it.
    With Regards
    Ashwani

  • Open PO Analysis - BW report issue

    Hello Friends
    I constructed a query in BW in order to show Open Purchase Orders. We have custom DSO populated with standard
    datasource 2lis_02_itm (Purcahse Order Item). In this DSO we mapped the field ELIKZ to the infoobject 0COMP_DEL
    (Delivery completed).
    We loaded the data from ECC system for all POs and found the following issue for Stock Transport Purchase orders (DocType = UB).
    We have a PO with 4 line items. For line items 10 and 20, Goods issued, Goods received and both the flags "Delivery
    complete" and "Final delivery" checked. For line items 30 and 40, only delivery indicator note is issued for zero
    quantity and Delivery complete flag is checked (Final delivery flag is not checked) in ECC system. For this PO, the
    delivery completion indicator is not properly updated in the DSO for line items 30 and 40. The data looks like the
    following:
    DOC_NUM     DOC_ITEM       DOCTYPE     COMP_DEL
    650000001       10     UB        X
    650000001       20     UB        X
    650000001       30     UB
    650000001       40     UB      
    When we run the Open PO analysis report on BW side this PO is appearing in the report but the same is closed in ECC
    system.
    Any help is appreciated in this regard.
    Thanks and Regards
    sampath

    Hi Priya and Reddy
       Thanks for your response.
                         Yes the indicator is checked in EKPO table for items 30 and 40 and delta is running regularly for more than 1 year and no issues with other POs. This is happening only for few POs of type Stock Transport (UB).
                        I already checked the changes in ME23N and the Delivery completed indicator was changed and it reflected in EKPO table. Further, i checked the PSA records for this PO and i am getting the records with the Delivery completed flag but when i update from PSA to DSO the delivery completed indicator is not updating properly.
                       In PSA, for item 30 i have the following entries. Record number 42 is capturing the value X for ELIKZ but after that i am getting two more records 43 and 44 with process key 10 and without X for ELIKZ. I think this is causing the problem.
    Record No.    Doc.No.                    Item              Processkey         Rocancel     Elikz
        41               6500000001            30                    11                            X           ---    
        42               6500000001            30                    11                            ---           X
        43               6500000001            30                    10                            X           ---
        44               6500000001            30                    10                            ---         ---
    (Here --- means blank)        
    Thanks and Regards
    sampath

Maybe you are looking for

  • ITunes installation error on Windows 7 PC

    We just purchased a new iPad and are trying to load iTunes onto our 64-bit Windows 7 Dell PC to transfer some songs.  Before it completes the download I receive the following error: "The installer encountered errors before iTunes could be configured.

  • How to track a Material Code in MM with a Fixed Asset number?

    Hello Gurus! is there any t-code or way to track or link a material code generated in MM with its related fixed asset nummber? < removed by moderator - anybodies discussion is equally important > Thanks Message was edited by: Jürgen L

  • XMB2DB_XML queries with join

    Using XMB2DB_XML I have done some simple queries like select, insert, update in SAP XI 2.0. Now i want to do the queries involving joins... Any idea about the XML Document Format for the Mode XMB2DB_XML??? Abhijeet [email protected]

  • Itunes quits unexpectedly with error

    I installed my Itunes software on my new computer (old computer died), and everything went fine. But when I am importing songs onto Itunes from CDs, it imports one or two songs successfully and then I get the "Error: Itunes must close. Do you want to

  • Screen has zoomed in and will not zoom out

    Suddenly my screen has zoomed itself in to max zoom and the screen no longer responds to my touches to zoom it back out. I can manage to make the screen wiggle a little left or right, but not up or down. I tried to manually reset the phone (sleep/hom