Skip to Content
avatar image
Former Member

DBIF_RSQL_INVALID_RSQL|CX_SY_OPEN_SQL_DB

Hi All,

We are trying to create quotations thru [va21] t.code and when we save these quotations ,the system generates numbers for the quotations(ex:9100001251,9100001253).Now when we go in the change mode to check the above document thru [va22],message is ''the quotation 9100001251 is not created'.This case is not repeated every time.

__Technical information is given below_:_

Found in table SE16 / vbak that

document 9100001251and -53 were not created.

We noticed that this error happened several times lately, and may have caused loss of CBOL orders.

Short dump generated is

DBIF_RSQL_INVALID_RSQL|CX_SY_OPEN_SQL_DB

Please help me resolving this issue.

Thanks in Advance,

Malti

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

3 Answers

  • Best Answer
    Jan 11, 2008 at 07:33 PM

    Please let the basis team know of this error. They should be able to analyze the reason using transactions SM13, ST22 or SM21.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      ANALYSIS:

      The SQL statement generated from the SAP open SQL statement violates a restriction of the underlying database system.

      (i)Either the conversion is not supported for the type of the target field,

      (ii)the target field is too small to include the value, or

      (iii)the data does not have the format required for the target field

      The errro is generated at the following point of code :

      |>>>>>|select single kbetr from konv

      | 2460| into (ZMP2_EACH)

      | 2461| where knumv = IS_VBDKA-knumv and

      | 2462| KPOSN = WS_VBDPA-posnr and

      | 2463| kappl = 'V' and

      | 2464| kschl = 'ZMP2'.

      Implies....

      The field value KBETR(Rate : (condition amount or percentage))is selected from table KONV(:Conditions (Transaction Data)) and is placed into (variable)ZMP2_EACH.

      Here ,

      (i)the format of KBETR and that of ZMP2_EACH may be mismatched,

      (ii)either the conversion is not supported for the type of the target field (ZMP2_EACH),

      (iii)the target field (ZMP2_EACH) is too small to include the value, or

      (iv)the data does not have the format required for the target field(ZMP2_EACH).

      CAUSE:

      The ZMP2_EACH's length is not big enough to hold the amount of data coming from object KBETR

      (This truncation triggers an error for the MSSQL implementation of DbSl (central database interface) which finally results in the ABAP runtime error DBIF_RSQL_INVALID_RSQL)

      For to analysis this in more detail we need the declaration details(Domain ,Data element) of ZMP2_EACH

      Source Code Extract

      -


      Line

      SourceCde

      -


      2429

      DATA: wrk_fees LIKE komp-kzwi6.

      2430

      CLEAR:wrk_fees.

      2431

      Select single KZWI6 into wrk_fees

      2432

      from VBAP

      2433

      where vbeln = is_vbdka-vbeln

      2434

      and posnr = ws_vbdpa-posnr.

      2435

      WS_VBDPA-NETWR = WS_VBDPA-NETWR - wrk_fees.

      2436

      WS_VBDPA-NETPR = WS_VBDPA-NETWR / WS_VBDPA-KWMENG.

      2437

      FEES_TOTAL = FEES_TOTAL + wrk_fees.

      2438

      2439

      ENDFORM. " %CO13

      2440

      2441

      *----


      2442

      • FORM %CO14

      2443

      • NODE PRICING_CONDITIONS

      2444

      *----


      2445

      2446

      FORM %CO14.

      2447

      2448

      *----


      2449

      • kbetr = condition rate (each)

      2450

      • kwert = condition value (total

      2451

      *----


      2452

      clear: ZLP2_EACH, ZMP2_EACH, ZCOM_EACH.

      2453

      select single kbetr from konv

      2454

      into (ZLP2_EACH)

      2455

      where knumv = IS_VBDKA-knumv and

      2456

      KPOSN = WS_VBDPA-posnr and

      2457

      kappl = 'V' and

      2458

      kschl = 'ZLP2'.

      |>>>>>|select single kbetr from konv |For to analysis this in more detail we need the declaration details of ZMP2_EACH

      2460

      into (ZMP2_EACH)

      | 2461| where knumv = IS_VBDKA-knumv and |The ZMP2_EACH's length is not big enough to hold the amount of data coming from object KBETR

      2462

      KPOSN = WS_VBDPA-posnr and

      2463

      kappl = 'V' and

      2464

      kschl = 'ZMP2'.

      2465

      select single kbetr from konv

      2466

      into (ZCOM_EACH)

      2467

      where knumv = IS_VBDKA-knumv and

      2468

      KPOSN = WS_VBDPA-posnr and

      2469

      kappl = 'V' and

      2470

      kschl = 'ZCOM'.

      2471

      *----


      | 2472|* Reformat the commission condition types |The Commision condition type ZMP2_EACH format is being changed in Tcode CO14

      | 2473|*----


      |where Tcode C014 (Display confirmation of prod. Order)which might be used in Smartforms throws

      | 2474|ZCOM_EACH = ZCOM_EACH / 10. |the smartform /1BCDWB/SAPLSF00000022

      2475

      ZMP2_EACH = ZMP2_EACH / 1000.

      2476

      2477

      ENDFORM. " %CO14

      2478

      .

      ACTION:

      Verify that the number of bytes/characters specified in the input

      amount parameter is not bigger than the number of bytes specified in the input buffer length parameter. Allocate more space for the input buffer if necessary.

      Hence the Error Analysis

      An exception occurred that is explained in detail below. |

      The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caught

      in

      procedure "%CO14" "(FORM)", nor was it propagated by a RAISING clause.

      Since the caller of the procedure could not have anticipated that the

      exception would occur, the current program is terminated.

      The reason for the exception is:

      In a SELECT access, the read file could not be placed in the target

      field provided.

      Either the conversion is not supported for the type of the target field,

      the target field is too small to include the value, or the data does not

      | have the format required for the target field.

      Justified.

      Issue Resolved

  • avatar image
    Former Member
    Jan 11, 2008 at 03:57 PM

    Hi Malti,

    This looks like a functional issue and not a system problem..

    Found in table SE16 / vbak that

    document 9100001251and -53 were not created.

    We noticed that this error happened several times lately, and may have caused loss of CBOL orders.

    Please check with your functional consultant, if you don't have one, please open a message with SAP.

    Regards,

    Siddhesh

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Feb 28, 2008 at 01:52 PM

    Cheers

    Add comment
    10|10000 characters needed characters exceeded