Unable to verify data store

Hi All,

I was wondering if you could help, i have taken over a mini project from experienced Appian dev's to make minor adjustments to the application before re-testing. Part of this i needed to create a record type and save it into a data entity. I have gone into the data entity and added the new data entity and hit verify and it is coming up with an error. Not to do with the work i have personally completed but with the data someone else has completed and as such it won't let me save. The part that is throwing me out is the part about it expecting double??? it's a number and i am not sure what to do but now i am stuck with what i am doing.... 

any advise would be gratefully appreciated as my training was over 2 months ago and this is really the first time i have had a chance to start some in depth work....

thank you

sarah  

  Discussion posts and replies are publicly visible

Parents
  • Hi Sarah,

    1) I think by seeing your DDL script, The datatype for the field in DB and CDT are different, first you need to make them same.

    2) For Integer -- CDT type should be INT and in DB keep it as NUMBER( ORACLE DB) or int (Mysql ). If it is different you cannot edit directly and publish, it will throw error, (a) create CDT again from DB or b) download XSD and modify and create new version of CDT)

    3) Below is a image, where you can download XSD file from Appian Designer (CDT) as shown here

    4) Once downloaded, open it and modify properly like 

    example if DB is oracle using NUMBER:

    <xsd:annotation>
    <xsd:appinfo source="appian.jpa">@Table(name="DB TABLE NAME IN CAPS")</xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
    <xsd:element name="cdtColumnName" nillable="true" type="xsd:int">
    <xsd:annotation>
    <xsd:appinfo source="appian.jpa">@Id @SequenceGenerator(name="TABLE_SQ", sequenceName="TABLE_SQ") @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="TABLE_SQ") @Column(name="DB COLUMN NAME", nullable=false, columnDefinition="NUMBER")</xsd:appinfo>
    </xsd:annotation>
    </xsd:element>

    5) If in DB created sequence then use @sequence....

    6) once modified, save it and in CDT designer security button, select "create New version from XSD". 

    7) later verify and publish it.

    8) For your View also you need to do same thing. check properly all columns with data type matching or not. DB and CDT should match.

    9) still you cannot download your XSD, then again create your CDT from database table or view with same name and namespace (before doing this you need to delete). This will create new UUID and later you need to map for your objects which are referring. Don't choose this option if you have more dependencies. It should be a last option.

    10) Make sure DB schema is correct before attempting any approach, if not correct in DB, later in Appian

    Hope Sarah this document will helpful for you.

     

Reply
  • Hi Sarah,

    1) I think by seeing your DDL script, The datatype for the field in DB and CDT are different, first you need to make them same.

    2) For Integer -- CDT type should be INT and in DB keep it as NUMBER( ORACLE DB) or int (Mysql ). If it is different you cannot edit directly and publish, it will throw error, (a) create CDT again from DB or b) download XSD and modify and create new version of CDT)

    3) Below is a image, where you can download XSD file from Appian Designer (CDT) as shown here

    4) Once downloaded, open it and modify properly like 

    example if DB is oracle using NUMBER:

    <xsd:annotation>
    <xsd:appinfo source="appian.jpa">@Table(name="DB TABLE NAME IN CAPS")</xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
    <xsd:element name="cdtColumnName" nillable="true" type="xsd:int">
    <xsd:annotation>
    <xsd:appinfo source="appian.jpa">@Id @SequenceGenerator(name="TABLE_SQ", sequenceName="TABLE_SQ") @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="TABLE_SQ") @Column(name="DB COLUMN NAME", nullable=false, columnDefinition="NUMBER")</xsd:appinfo>
    </xsd:annotation>
    </xsd:element>

    5) If in DB created sequence then use @sequence....

    6) once modified, save it and in CDT designer security button, select "create New version from XSD". 

    7) later verify and publish it.

    8) For your View also you need to do same thing. check properly all columns with data type matching or not. DB and CDT should match.

    9) still you cannot download your XSD, then again create your CDT from database table or view with same name and namespace (before doing this you need to delete). This will create new UUID and later you need to map for your objects which are referring. Don't choose this option if you have more dependencies. It should be a last option.

    10) Make sure DB schema is correct before attempting any approach, if not correct in DB, later in Appian

    Hope Sarah this document will helpful for you.

     

Children
No Data