[DM_QUERY_E_BAD_EQUAL]error:"The attribute qualifier, b23, for attribute string_value is not a valid

Options
changeiscoming
edited September 8, 2017 in Documentum #1

Hello,

I got the below error in my browser when I want to launch a statefull process containing more than 19 variables developped in xCP Designer 2.3 (Documentum 7.2)

[DM_QUERY_E_BAD_EQUAL]error:"The attribute qualifier, b23, for attribute string_value is not a valid qualifier

Thank you in advance

Tagged:

Best Answer

  • PanfilovAB
    edited September 8, 2017 #2 Answer ✓
    Options

    But i'm wondering, is that what is happening after a statefull process launch ?

    XCP generates odd queries, try to execute something like:


    select s1.r_object_id from dm_sysobject s1
    left join dm_sysobject s2 on s1.r_object_id=s2.r_object_id
    left join dm_sysobject s3 on s1.r_object_id=s3.r_object_id
    left join dm_sysobject s4 on s1.r_object_id=s4.r_object_id
    left join dm_sysobject s5 on s1.r_object_id=s5.r_object_id
    left join dm_sysobject s6 on s1.r_object_id=s6.r_object_id
    left join dm_sysobject s7 on s1.r_object_id=s7.r_object_id
    left join dm_sysobject s8 on s1.r_object_id=s8.r_object_id
    left join dm_sysobject s9 on s1.r_object_id=s9.r_object_id
    left join dm_sysobject s10 on s1.r_object_id=s10.r_object_id
    left join dm_sysobject s11 on s1.r_object_id=s11.r_object_id
    left join dm_sysobject s12 on s1.r_object_id=s12.r_object_id
    left join dm_sysobject s13 on s1.r_object_id=s13.r_object_id
    left join dm_sysobject s14 on s1.r_object_id=s14.r_object_id
    left join dm_sysobject s15 on s1.r_object_id=s15.r_object_id
    left join dm_sysobject s16 on s1.r_object_id=s16.r_object_id
    left join dm_sysobject s17 on s1.r_object_id=s17.r_object_id
    left join dm_sysobject s18 on s1.r_object_id=s18.r_object_id
    left join dm_sysobject s19 on s1.r_object_id=s19.r_object_id
    left join dm_sysobject s21 on s1.r_object_id=s20.r_object_id
    left join dm_sysobject s22 on s1.r_object_id=s21.r_object_id
    left join dm_sysobject s23 on s1.r_object_id=s22.r_object_id
    go

    you will get the same error.

Answers

  • PanfilovAB
    edited September 8, 2017 #3
    Options

    According to DQL reference guide:


    A source list defines which object types and which RDBMS tables to search. The source list for a standard query can include:
    • One or more object types, to a maximum of 20 types. (In releases prior to 6.6, the maximum was 10.) Any object type except those internal object types that represent aspect properties may be specified.
    • One or more RDBMS table names
    • One or more inline views

    you have defined to much process variables.

  • changeiscoming
    edited September 8, 2017 #4
    Options

    Thank you for your help,

    I understand that generaly we cannot execute a select querry which contain more than 20 attributes in the FROM clause.

    But i'm wondering, is that what is happening after a statefull process launch ?

  • PanfilovAB
    edited September 8, 2017 #5 Answer ✓
    Options

    But i'm wondering, is that what is happening after a statefull process launch ?

    XCP generates odd queries, try to execute something like:


    select s1.r_object_id from dm_sysobject s1
    left join dm_sysobject s2 on s1.r_object_id=s2.r_object_id
    left join dm_sysobject s3 on s1.r_object_id=s3.r_object_id
    left join dm_sysobject s4 on s1.r_object_id=s4.r_object_id
    left join dm_sysobject s5 on s1.r_object_id=s5.r_object_id
    left join dm_sysobject s6 on s1.r_object_id=s6.r_object_id
    left join dm_sysobject s7 on s1.r_object_id=s7.r_object_id
    left join dm_sysobject s8 on s1.r_object_id=s8.r_object_id
    left join dm_sysobject s9 on s1.r_object_id=s9.r_object_id
    left join dm_sysobject s10 on s1.r_object_id=s10.r_object_id
    left join dm_sysobject s11 on s1.r_object_id=s11.r_object_id
    left join dm_sysobject s12 on s1.r_object_id=s12.r_object_id
    left join dm_sysobject s13 on s1.r_object_id=s13.r_object_id
    left join dm_sysobject s14 on s1.r_object_id=s14.r_object_id
    left join dm_sysobject s15 on s1.r_object_id=s15.r_object_id
    left join dm_sysobject s16 on s1.r_object_id=s16.r_object_id
    left join dm_sysobject s17 on s1.r_object_id=s17.r_object_id
    left join dm_sysobject s18 on s1.r_object_id=s18.r_object_id
    left join dm_sysobject s19 on s1.r_object_id=s19.r_object_id
    left join dm_sysobject s21 on s1.r_object_id=s20.r_object_id
    left join dm_sysobject s22 on s1.r_object_id=s21.r_object_id
    left join dm_sysobject s23 on s1.r_object_id=s22.r_object_id
    go

    you will get the same error.

  • changeiscoming
    edited September 8, 2017 #6
    Options

    You're totally right.

    Do you hve any workaround ?

    Thank you in advance

  • PanfilovAB
    edited September 8, 2017 #7
    Options

    user guide suggests following:


    If a process has a large number of process variables, improve performance by replacing your process variables with a single business object package.
  • Add this line to server.ini
    max_types_in_from_clause=300  (Don't know the upper limit)