Skip to Content
0
Feb 15, 2016 at 07:22 AM

AMDP: SQLSCRIPT message: return type mismatch error

7655 Views

Dear Colleagues,

I am getting the mismatch error for the AMDP that I am trying to write.

Can you help me here?

Error Message:

SQLSCRIPT message: return type mismatch: GT_DTAB2[ PLTYP:NVARCHAR(2) VBELN:NVARCHAR(10) FKDAT:NVARCHAR(8) KNUMV:NVARCHAR(10) FKART:NVARCHAR(4) KDGRP:NVARCHAR(2) MVGR3:NVARCHAR(3) POSNR:NVARCHAR(6) AUBEL:NVARCHAR(10) FKIMG:DECIMAL(13,3) ZZAM

AMDP Code stack

CLASS zcl_get_itab_value DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .


PUBLIC SECTION.


INTERFACES if_amdp_marker_hdb.


TYPES: BEGIN OF ty_dtab1,
        pltyp    TYPE vbrk-pltyp,
        kunnr    TYPE vbpa-kunnr,
        mvgr3    TYPE vbrp-mvgr3,
        zzamatkl TYPE vbrp-zzamatkl,
        matnr    TYPE vbrp-matnr,
        arktx    TYPE vbrp-arktx,
        kondm    TYPE vbrp-kondm,
        auart    TYPE vbak-auart,
        vbeln    TYPE vbrk-vbeln,
        posnr    TYPE vbrp-posnr,
        aubel    TYPE vbrp-aubel,
        fkdat    TYPE vbrk-fkdat,
        fkart    TYPE vbrk-fkart,
        fkimg    TYPE vbrp-fkimg,
        knumv    TYPE vbak-knumv,
        werks    TYPE vbrp-werks,
       END OF ty_dtab1.


TYPES gt_dtab1 TYPE STANDARD TABLE OF ty_dtab1.


CLASS-METHODS GET_DTAB_DATA_SAMPLE
      IMPORTING
          VALUE(gv_value) TYPE mandt
      EXPORTING
          VALUE(gt_dtab2) TYPE gt_dtab1.


PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.

CLASS zcl_get_itab_value IMPLEMENTATION.
  METHOD get_dtab_data_sample
  by database procedure for hdb language
  SQLSCRIPT OPTIONS READ-ONLY USING VBRP VBRK VBAK VBPA.


    gt_dtab2 = SELECT T1."PLTYP", T1."VBELN", T1."FKDAT",    T1."KNUMV",
                      T1."FKART", T1."KDGRP", T2."MVGR3",    T2."POSNR",
                      T2."AUBEL", T2."FKIMG", T2."ZZAMATKL", T2."MATNR",
                      T2."ARKTX", T2."WERKS", T2."KONDM",    T3."AUART",
                      T2."VKBUR", T4."KUNNR"
                 FROM "VBRP" AS T2
                INNER JOIN "VBRK" AS T1
                   ON T1."VBELN" = T2."VBELN"
                INNER JOIN "VBAK" AS T3
                   ON T2."AUBEL" = T3."VBELN"
                INNER JOIN "VBPA" AS T4
                   ON T4."VBELN" = T2."VBELN"
                WHERE T1."FKART" IN ('F2','RE','S1','S2','ZS','ZVAT','RVAT','ZIFR')
                  AND T1."VKORG" = 'IN01';




  ENDMETHOD.


ENDCLASS.

Appreciate your time and inputs.

Thank you.

Warm Regards,

Harshad Mishrikotkar.