IBM Support

PI74509: DSQ17010 NEEDS AN END QUOTE AFTER QMF V11

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Query fails with DSQ17010 ''/ FOR FET' ... needs an end quote
    after QMF V11 upgrade even with PTF for APAR PI19265 APPLIED.
    
    But the query runs successfully in prior QMF releases.
    
    In the customer example.
    The problem was caused by the first 5 characters in the
    following line of the query.
    
    '//*'||SUBSTR(T1.DBNAME,1,8)
    
    The QMF code sees the 3rd and 4th characters /* as a comment
    delimiter. As such it is being removed from the string along
    with the rest of the line.
    
    The comment delimiter is allowed in some cases for SQL such as
    an XMLQUERY expression. QMF got around this in the case of SQL
    by allowing the /* if it is enclosed in parens. ()
    
    The following workaround allowed the query to work in QMF v11.
    Add parentheses around the literal that contains the //*.
    So, in the customer case case, change the following:
       '//*'
    to the following:
      ('//*')
    
    Therefore in this case if the line is changed to the following:
    
       '(//*)'||SUBSTR(T1.DBNAME,1,8)
    
    The query will run successfully.
    
    MESSAGE NUMBER: DSQ17010.
     MESSAGE TEXT:.
     Value beginning ''/ FOR FET'  (line 2, position 1) needs
            an end quote.
      &O1:   (line 2, position 1).
      &O2:  '/ FOR FET.
      &O9:  -010 (42603)    SQLCA: SQLCODE: -010   SQLERRP:
     SQLERRD1/SQLERRD2/SQLERRD3: 00000006 00000000 00000000
     SQLERRD4/SQLERRD5/SQLERRD6: FFFFFFFF 00000008 00000325
     SQLSTATE: 42603 SQLERRM: '/ FOR FET.
    

Local fix

  • Add parentheses around the literal that contains the //*.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All QMF for TSO/CICS V11.1, V11.2 and V12.1  *
    *                 users.                                       *
    ****************************************************************
    * PROBLEM DESCRIPTION: When running an SQL query that contains *
    *                      a character string constant containing  *
    *                      the characters 'slash asterisk' or      *
    *                      'slash slash asterisk' (Jcl comment     *
    *                      indicator), users may get a             *
    *                      DSQ17010 (SQLCODE010) with text similar *
    *                      to                                      *
    *                      'Value beginning ''/ FOR FET'           *
    *                      (line 2, position 1) needs an end       *
    *                      quote.'                                 *
    *                                                              *
    *                      Example query (replace the word slash   *
    *                                     with the '/' character)  *
    *                      SELECT                                  *
    *                      'slash slash *'||SUBSTR(T1.DBNAME,1,8)  *
    *                      FROM SYSIBM.SYSTABLES T1                *
    *                      WHERE                                   *
    *                      T1.CREATOR = 'Q'                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    DSQCRCMT was erroneously determining the character string
    constant as aSQL comment and removing the text.
    

Problem conclusion

  • DSQCRCMT has been corrected.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI74509

  • Reported component name

    QMF-QUERY MGMT

  • Reported component ID

    566872101

  • Reported release

    B10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-01-06

  • Closed date

    2017-02-15

  • Last modified date

    2017-03-02

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UI44700 UI44701 UI44702

Modules/Macros

  •    DSQCRCMT
    

Fix information

  • Fixed component name

    QMF-QUERY MGMT

  • Fixed component ID

    566872101

Applicable component levels

  • RB10 PSY UI44700

       UP17/02/16 P F702

  • RB20 PSY UI44701

       UP17/02/16 P F702

  • RC10 PSY UI44702

       UP17/02/16 P F702

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSCWRCK","label":"QMF for TSO\/CICS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"11.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
02 March 2017