[OS-JIRA] Created: (WOL-711) Entity Modeler missing attributes from EOModeler created model

From: Simon McLean (JIRA) ("Simon)
Date: Fri Jan 18 2008 - 03:46:38 EST

  • Next message: Simon McLean (JIRA): "[OS-JIRA] Created: (WOL-712) Entity Modeler output XML format plist's"

    Entity Modeler missing attributes from EOModeler created model
    --------------------------------------------------------------

                     Key: WOL-711
                     URL: http://issues.objectstyle.org/jira/browse/WOL-711
                 Project: WOProject/WOLips
              Issue Type: Bug
              Components: wolips
             Environment: Mac OS X Tiger, WOLips 3.3.4750, Eclipse 3.3.0
                Reporter: Simon McLean

    EOModel created originally with EOModeler, now being maintained in Entity Modeler. We have an example of an entity that has a couple of attributes that Entity Model is not seeing. They are not displayed in the Entity Modeler perspective and not included in the generated SQL.

    Here is the plist file for the entity AbstractLedgerItem:

    {
        attributes = (
            {
                allowsNull = Y;
                columnName = "ACCOUNT_REFERENCE";
                externalType = VARCHAR;
                name = accountReference;
                serverTimeZone = "Europe/London";
                valueClassName = NSString;
                valueType = S;
                width = 100;
            },
            {
                allowsNull = Y;
                columnName = APPCODE;
                externalType = VARCHAR;
                name = appCode;
                serverTimeZone = "Europe/London";
                valueClassName = NSString;
                valueType = S;
                width = 100;
            },
            {
                columnName = DATE;
                externalType = DATE;
                name = date;
                serverTimeZone = "Europe/London";
                valueClassName = NSCalendarDate;
                valueType = D;
            },
            {
                allowsNull = Y;
                columnName = "ID_ABSTRACT_FOP";
                externalType = INTEGER;
                name = "id_abstractFOP";
                serverTimeZone = "Europe/London";
                valueClassName = NSNumber;
                valueType = i;
            },
            {
                columnName = "ID_AGENCY";
                externalType = INTEGER;
                name = "id_agency";
                serverTimeZone = "Europe/London";
                valueClassName = NSNumber;
                valueType = i;
            },
            {
                columnName = NET;
                externalType = DECIMAL;
                name = net;
                precision = 10;
                scale = 2;
                serverTimeZone = "Europe/London";
                valueClassName = NSDecimalNumber;
                valueType = B;
            },
            {
                columnName = "O_ID";
                externalType = INTEGER;
                name = oID;
                serverTimeZone = "Europe/London";
                valueClassName = NSNumber;
                valueType = i;
            },
            {
                allowsNull = Y;
                columnName = REFERENCE;
                externalType = VARCHAR;
                name = reference;
                serverTimeZone = "Europe/London";
                valueClassName = NSString;
                valueType = S;
                width = 100;
            },
            {
                columnName = TOTAL;
                externalType = DECIMAL;
                name = total;
                precision = 10;
                scale = 2;
                serverTimeZone = "Europe/London";
                valueClassName = NSDecimalNumber;
                valueType = B;
            },
            {
                allowsNull = Y;
                columnName = TRANSACTIONID;
                externalType = VARCHAR;
                name = transactionID;
                serverTimeZone = "Europe/London";
                valueClassName = NSString;
                valueType = S;
                width = 100;
            },
            {
                columnName = TYPE;
                externalType = INT;
                name = type;
                serverTimeZone = "Europe/London";
                valueClassName = NSNumber;
                valueType = i;
            },
            {
                columnName = VAT;
                externalType = DECIMAL;
                name = vat;
                precision = 10;
                scale = 2;
                serverTimeZone = "Europe/London";
                valueClassName = NSDecimalNumber;
                valueType = B;
            }
        );
        attributesUsedForLocking = (oID);
        className = "com.clicktravel.travelsystem.AbstractLedgerItem";
        classProperties = (
            accountReference,
            agency,
            appCode,
            date,
            fop,
            net,
            reference,
            splits,
            total,
            transactionID,
            type,
            vat
        );
        externalName = "ABSTRACT_LEDGER_ITEM";
        fetchSpecificationDictionary = {};
        internalInfo = {"_clientClassPropertyNames" = (agency, date, total); uniqueID = 157917386; };
        isAbstractEntity = Y;
        name = AbstractLedgerItem;
        primaryKeyAttributes = (oID);
        relationships = (
            {
                destination = Agency;
                internalInfo = {uniqueID = 157911918; };
                isMandatory = Y;
                isToMany = N;
                joinSemantic = EOInnerJoin;
                joins = ({destinationAttribute = oID; sourceAttribute = "id_agency"; });
                name = agency;
            },
            {
                destination = AbstractFOP;
                internalInfo = {uniqueID = 157912399; };
                isToMany = N;
                joinSemantic = EOInnerJoin;
                joins = ({destinationAttribute = oID; sourceAttribute = "id_abstractFOP"; });
                name = fop;
            },
            {
                deleteRule = EODeleteRuleCascade;
                destination = AbstractSplit;
                isMandatory = Y;
                isToMany = Y;
                joinSemantic = EOInnerJoin;
                joins = ({destinationAttribute = "id_item"; sourceAttribute = oID; });
                name = splits;
            }
        );
        restrictingQualifier = "(type = 0)";
        userInfo = {fetchSpecificationDictionary = {}; };
    }

    Here is the generated SQL:

    DROP TABLE ABSTRACT_LEDGER_ITEM CASCADE;

    DROP TABLE EO_PK_TABLE CASCADE;

    CREATE TABLE ABSTRACT_LEDGER_ITEM (ACCOUNT_REFERENCE VARCHAR(100) , DATE DATE NOT NULL, ID_ABSTRACT_FOP INTEGER , ID_AGENCY INTEGER NOT NULL, NET DECIMAL(10,2) NOT NULL, O_ID INTEGER NOT NULL, REFERENCE VARCHAR(100) , TOTAL DECIMAL(10,2) NOT NULL, TYPE INT NOT NULL, VAT DECIMAL(10,2) NOT NULL, ADDRESS VARCHAR(1000) , AUTH_CODE VARCHAR(15) , DATE_DUE DATE , PAID_BY_CREDIT_CARD BOOL );

    CREATE TABLE EO_PK_TABLE (NAME CHAR(40) PRIMARY KEY, PK INT);

    ALTER TABLE ABSTRACT_LEDGER_ITEM ADD PRIMARY KEY (O_ID);

    -- 
    This message is automatically generated by JIRA.
    -
    If you think it was sent incorrectly contact one of the administrators: http://issues.objectstyle.org/jira/secure/Administrators.jspa
    -
    For more information on JIRA, see: http://www.atlassian.com/software/jira
    



    This archive was generated by hypermail 2.0.0 : Fri Jan 18 2008 - 03:47:40 EST