vjonnala1516 wrote:Hi,
the posted info insufficient for the analysis, can u place some more info on abort message or logs.
thanks
Hi,
Please find below the error :
ABAP_EINA_EINE_MARC_MBEW_A017_KONP: When processing argument -outlinkpropsWhen processing output link property list: {
CONNECTION_NAME='#$SAP_CONNECTION#',
BACKGROUNDPROCESS='FALSE',
SAPSN='03',
SAPCN='#$SAP_CLNT_NUM#',
SAPUID='#$SAP_USER#',
SAPPWD='NVY2B73U',
SAPLANG='#$SAP_LANG#',
SAPPROGID='ZGFCOZ_3',
UPLOADMODE='2',
DELETEMODE='2',
ABAPCODE='*-------------------------------------------------------------------*
* Report Name: ZGFCD1
* Generated At: Sunday, May 24, 2009 19:00:01
* CPI-C Special Notes:
* 1) To execute this job, user type must be CPI-c.
* 2) Add communication partner in TXCOM using SM54.
*-------------------------------------------------------------------*
REPORT ZGFCD1.
* Step 1. Declare Table
TABLES:
EINA,
EINE,
MARC,
CDHDR,
MBEW,
A017,
KONP.
* Step 2. Declare Structure
DATA: BEGIN OF ST_1 OCCURS 1,
F_1(18) TYPE C, " For EINA~MATNR,
F_2(10) TYPE C, " For EINA~LIFNR,
F_3(10) TYPE C, " For EINA~INFNR,
F_4(4) TYPE C, " For EINE~EKORG,
F_5(4) TYPE C, " For EINE~WERKS,
F_6(5) TYPE C, " For EINE~WAERS,
F_7(3) TYPE C, " For EINE~EKGRP,
F_8(18) TYPE C, " For MARC~MATNR,
F_9(3) TYPE C, " For MARC~EKGRP,
F_10(11) TYPE C, " For MBEW~VERPR,
F_11(10) TYPE C, " For A017~KNUMH,
F_12(10) TYPE C, " For A017~LIFNR,
F_13(4) TYPE C, " For A017~EKORG,
F_14(8) TYPE C, " For A017~DATBI,
F_15(11) TYPE C, " For KONP~KBETR,
F_16(8) TYPE C, " For A017~DATAB,
F_17(4) TYPE C, " For KONP~KSCHL
END OF ST_1.
DATA: IT_1 LIKE ST_1 OCCURS 0 WITH HEADER LINE.
* Declare Structure for INTO clause
DATA: BEGIN OF ST_2 OCCURS 1,
F_1 LIKE EINA-MATNR, " For EINA~MATNR,
F_2 LIKE EINA-LIFNR, " For EINA~LIFNR,
F_3 LIKE EINA-INFNR, " For EINA~INFNR,
F_4 LIKE EINE-EKORG, " For EINE~EKORG,
F_5 LIKE EINE-WERKS, " For EINE~WERKS,
F_6 LIKE EINE-WAERS, " For EINE~WAERS,
F_7 LIKE EINE-EKGRP, " For EINE~EKGRP,
F_8 LIKE MARC-MATNR, " For MARC~MATNR,
F_9 LIKE MARC-EKGRP, " For MARC~EKGRP,
F_10 LIKE MBEW-VERPR, " For MBEW~VERPR,
F_11 LIKE A017-KNUMH, " For A017~KNUMH,
F_12 LIKE A017-LIFNR, " For A017~LIFNR,
F_13 LIKE A017-EKORG, " For A017~EKORG,
F_14 LIKE A017-DATBI, " For A017~DATBI,
F_15 LIKE KONP-KBETR, " For KONP~KBETR,
F_16 LIKE A017-DATAB, " For A017~DATAB,
F_17 LIKE KONP-KSCHL, " For KONP~KSCHL,
END OF ST_2.
DATA: BEGIN OF ST_3 OCCURS 1,
F_1 LIKE CDHDR-OBJECTID, " For CDHDR~OBJECTID,
F_2 LIKE CDHDR-OBJECTCLAS, " For CDHDR~OBJECTCLAS,
F_3 LIKE CDHDR-CHANGENR, " For CDHDR~CHANGENR,
F_4 LIKE CDHDR-TCODE, " For CDHDR~TCODE,
END OF ST_3.
DATA: BEGIN OF ST_4 OCCURS 1,
F_1 LIKE CDPOS-OBJECTCLAS, " For CDPOS~OBJECTCLAS,
F_2 LIKE CDPOS-OBJECTID, " For CDPOS~OBJECTID,
F_3 LIKE CDPOS-CHANGENR, " For CDPOS~CHANGENR,
F_4 LIKE CDPOS-FNAME, " For CDPOS~FNAME,
F_5 LIKE CDPOS-CHNGIND, " For CDPOS~CHNGIND,
END OF ST_4.
* Step 3. Table and structure for CPI-C
TABLES: TCPIC.
INCLUDE: RSCPICDF.
* Step 4. Declare CPI-C communication variables
DATA: COM_ID(8) TYPE C, " Communication ID
COM_IN(100) TYPE C, " Init signal buffer
COM_D(4) TYPE X, " Dataset Info
COM_S(4) TYPE X, " Status Info
COM_L(4) TYPE X, " Buffer Length
D_PACK(32000) TYPE C, " CPI-C Data Pack
D_OFFSET TYPE I, " Offset
D_LEN TYPE I. " Next Pack Length
DATA: PARAM_1 LIKE CDHDR-UDATE. " For DS_JOB_PARAM@LAST_RUN_DATE
DATA: PARAM_2 LIKE CDHDR-UDATE. " For DS_JOB_PARAM@CURRENT_DATE
DATA: PARAM_3 LIKE CDHDR-UTIME. " For DS_JOB_PARAM@LAST_RUN_TIME
DATA: PARAM_4 LIKE CDHDR-UTIME. " For DS_JOB_PARAM@CURRENT_TIME
DATA: PARAM_5 LIKE CDHDR-UTIME.
DATA: PARAM_6 LIKE CDHDR-UTIME.
EXIT.
*-------------------------------------------------------------------*
* Form CPIC is a dynamic call and will be used by
* communication partner like DataStage.
*-------------------------------------------------------------------*
FORM CPIC.
* Step 5. CPI-C Initialization
*-------------------------------------------------------------------*
* Establish communication, get communication ID
*-------------------------------------------------------------------*
COMMUNICATION ACCEPT ID COM_ID.
IF SY-SUBRC <> 0.
EXIT.
ENDIF.
PERFORM RECEIVE_PARAMETER.
D_PACK = \'\'.
D_OFFSET = 0.
D_LEN = D_OFFSET + 141.
CLEAR IT_1.
REFRESH IT_1.
IF PARAM_1 <= PARAM_2.
IF PARAM_2 > PARAM_1.
PARAM_5 = \'000000\'.
PARAM_6 = \'235959\'.
ELSE.
PARAM_5 = PARAM_3.
PARAM_6 = PARAM_4.
ENDIF.
ENDIF.
SELECT
CDHDR~OBJECTID
CDHDR~OBJECTCLAS
CDHDR~CHANGENR
CDHDR~TCODE
INTO (ST_3-F_1,
ST_3-F_2,
ST_3-F_3,
ST_3-F_4)
FROM
CDHDR AS CDHDR
WHERE
CDHDR~MANDANT = \'100\' AND
CDHDR~OBJECTCLAS = \'MATERIAL\' AND
( ( CDHDR~UDATE = PARAM_1 AND
CDHDR~UTIME >= PARAM_3 AND CDHDR~UTIME <= PARAM_6 ) OR
( CDHDR~UDATE > PARAM_1 AND CDHDR~UDATE < PARAM_2 ) OR
( CDHDR~UDATE = PARAM_2 AND
CDHDR~UTIME <= PARAM_4 AND CDHDR~UTIME >= PARAM_5 ) ) AND
CDHDR~TCODE IN (\'MM01\',\'MM02\') AND
CDHDR~CHANGE_IND IN (\'I\',\'U\').
SELECT
CDPOS~OBJECTCLAS
CDPOS~OBJECTID
CDPOS~CHANGENR
CDPOS~FNAME
CDPOS~CHNGIND
INTO (ST_4-F_1,
ST_4-F_2,
ST_4-F_3,
ST_4-F_4,
ST_4-F_5)
FROM
CDPOS AS CDPOS
WHERE
CDPOS~MANDANT = \'100\' AND
CDPOS~OBJECTCLAS = ST_3-F_2 AND
CDPOS~OBJECTID = ST_3-F_1 AND
CDPOS~CHANGENR = ST_3-F_3.
CASE ST_4-F_5 .
WHEN \'U\' OR \'I\'.
WHEN OTHERS.
CONTINUE.
ENDCASE.
CASE ST_4-F_4 .
WHEN \'EKGRP\' OR \'KEY\' OR \'PRDAT\' .
WHEN OTHERS.
CONTINUE.
ENDCASE.
SELECT
EINA~MATNR
EINA~LIFNR
EINA~INFNR
EINE~EKORG
EINE~WERKS
EINE~WAERS
EINE~EKGRP
MARC~MATNR
MARC~EKGRP
INTO (ST_2-F_1,
ST_2-F_2,
ST_2-F_3,
ST_2-F_4,
ST_2-F_5,
ST_2-F_6,
ST_2-F_7,
ST_2-F_8,
ST_2-F_9)
FROM
EINA AS EINA
INNER JOIN
EINE AS EINE
ON EINA~INFNR = EINE~INFNR
INNER JOIN
MARC AS MARC
ON EINA~MATNR = MARC~MATNR
*AND EINE~EKGRP = MARC~EKGRP
WHERE
EINE~EKORG = \'01AE\' AND
EINE~WERKS = \'AE99\' AND
MARC~WERKS =\'AE99\' AND
MARC~MATNR = ST_4-F_2 AND
*EINA~INFNR = ST_4-F_2 AND
EINA~LOEKZ <> \'X\'.
SELECT
MBEW~VERPR
INTO (ST_2-F_10)
FROM
MBEW AS MBEW
WHERE
MBEW~MATNR = ST_2-F_1 AND
MBEW~BWKEY = ST_2-F_5 .
SELECT
A017~KNUMH
A017~LIFNR
A017~EKORG
A017~DATBI
A017~DATAB
INTO (ST_2-F_11,
ST_2-F_12,
ST_2-F_13,
ST_2-F_14,
ST_2-F_16)
FROM
A017 AS A017 WHERE
A017~KAPPL =\'M\' AND
A017~LIFNR = ST_2-F_2 AND
A017~MATNR = ST_2-F_1 AND
A017~EKORG = ST_2-F_4 AND
*A017~DATBI > SY-DATUM AND
A017~KSCHL = \'PB00\' .
*A017~KSCHL IN (\'PB00\',\'ZCVC\').
SELECT
KONP~KBETR
KONP~KSCHL
INTO (ST_2-F_15,
ST_2-F_17)
FROM KONP AS KONP
WHERE
KONP~KNUMH = ST_2-F_11 AND
KONP~KSCHL = \'ZCVC\'.
*KONP~KSCHL IN (\'PB00\',\'ZCVC\').
IT_1-F_1 = ST_2-F_1.
IT_1-F_2 = ST_2-F_2.
IT_1-F_3 = ST_2-F_3.
IT_1-F_4 = ST_2-F_4.
IT_1-F_5 = ST_2-F_5.
IT_1-F_6 = ST_2-F_6.
IT_1-F_7 = ST_2-F_7.
IT_1-F_8 = ST_2-F_8.
IT_1-F_9 = ST_2-F_9.
IT_1-F_10 = ST_2-F_10.
IT_1-F_11 = ST_2-F_11.
IT_1-F_12 = ST_2-F_12.
IT_1-F_13 = ST_2-F_13.
IT_1-F_14 = ST_2-F_14.
IT_1-F_15 = ST_2-F_15.
IT_1-F_16 = ST_2-F_16.
IT_1-F_17 = ST_2-F_17.
IF D_LEN < 32000.
D_PACK+D_OFFSET(141) = IT_1.
D_OFFSET = D_OFFSET + 141.
D_LEN = D_OFFSET + 141.
CLEAR IT_1.
REFRESH IT_1.
ELSE.
PERFORM SEND_RECORD USING D_PACK.
D_PACK = IT_1.
D_OFFSET = 141.
D_LEN = D_OFFSET + 141.
ENDIF.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
PERFORM SEND_RECORD USING D_PACK.
DELETE REPORT \'ZGFCD1\'.
ENDFORM.
*-------------------------------------------------------------------*
* Send one record to communication partner
*-------------------------------------------------------------------*
FORM SEND_RECORD USING P_REC_BUF.
COMMUNICATION SEND ID COM_ID BUFFER P_REC_BUF LENGTH D_OFFSET.
IF SY-SUBRC <> 0.
COMMUNICATION DEALLOCATE ID COM_ID.
EXIT.
ENDIF.
ENDFORM.
*-------------------------------------------------------------------*
* Receive parameter sent from DataStage side
*-------------------------------------------------------------------*
FORM RECEIVE_PARAMETER.
DATA: PARAM(10) TYPE C.
DATA: VALUE(100) TYPE C.
DATA: POS TYPE I.
COM_S = 0.
WHILE COM_S = 0.
COM_IN = \'\'.
COMMUNICATION RECEIVE ID COM_ID BUFFER COM_IN DATAINFO COM_D
STATUSINFO COM_S
RECEIVED COM_L.
IF SY-SUBRC <> CM_OK AND SY-SUBRC <> CM_DEALLOCATED_NORMAL.
EXIT.
ENDIF.
SEARCH COM_IN FOR \'=\'.
IF SY-SUBRC = 0.
POS = SY-FDPOS.
PARAM = COM_IN+0(POS).
POS = POS + 1.
VALUE = COM_IN+POS.
IF PARAM = \'PARAM_1\' OR PARAM = \'PARAM_1 \'.
PARAM_1 = VALUE.
ENDIF.
IF PARAM = \'PARAM_2\' OR PARAM = \'PARAM_2 \'.
PARAM_2 = VALUE.
ENDIF.
IF PARAM = \'PARAM_3\' OR PARAM = \'PARAM_3 \'.
PARAM_3 = VALUE.
ENDIF.
IF PARAM = \'PARAM_4\' OR PARAM = \'PARAM_4 \'.
PARAM_4 = VALUE.
ENDIF.
ENDIF.
ENDWHILE.
ENDFORM.
',
RUNTIMEMODE='0',
FILEACCESS='2',
DS_JOB_PARAM_COUNT='4',
QUERYDEF='SCOLS=<B>;<B>;D=Material number;DEF=<B>;X=EINA.MATNR;T=9;<E>;F=18;G=CHAR;Z=Yes;K=18;M=0;N=FALSE;SID=MATNR;TID=EINA;ID=MATNR;b=;A=EINA_MATNR;S=0;B=;<E>;<B>;D=Vendor\'s account number;DEF=<B>;X=EINA.LIFNR;T=9;<E>;F=10;G=CHAR;Z=Yes;K=10;M=0;N=FALSE;SID=LIFNR;TID=EINA;ID=LIFNR;b=;A=EINA_LIFNR;S=0;B=;<E>;<B>;D=Number of purchasing info record;DEF=<B>;X=EINA.INFNR;T=9;<E>;F=10;G=CHAR;Z=No;K=10;M=0;N=FALSE;SID=INFNR;TID=EINA;ID=INFNR;b=;A=EINA_INFNR;S=1;B=;<E>;<B>;D=Purchasing organization;DEF=<B>;X=EINE.EKORG;T=9;<E>;F=4;G=CHAR;Z=No;K=4;M=0;N=FALSE;SID=EKORG;TID=EINE;ID=EKORG;b=;A=EINE_EKORG;S=1;B=;<E>;<B>;D=Plant;DEF=<B>;X=EINE.WERKS;T=9;<E>;F=4;G=CHAR;Z=No;K=4;M=0;N=FALSE;SID=WERKS;TID=EINE;ID=WERKS;b=;A=EINE_WERKS;S=1;B=;<E>;<B>;D=Currency Key;DEF=<B>;X=EINE.WAERS;T=9;<E>;F=5;G=CUKY;Z=Yes;K=5;M=0;N=FALSE;SID=WAERS;TID=EINE;ID=WAERS;b=;A=EINE_WAERS;S=0;B=;<E>;<B>;D=Purchasing group;DEF=<B>;X=EINE.EKGRP;T=9;<E>;F=3;G=CHAR;Z=Yes;K=3;M=0;N=FALSE;SID=EKGRP;TID=EINE;ID=EKGRP;b=;A=EINE_EKGRP;S=0;B=;<E>;<B>;D=Material number;DEF=<B>;X=MARC.MATNR;T=9;<E>;F=18;G=CHAR;Z=No;K=18;M=0;N=FALSE;SID=MATNR;TID=MARC;ID=MATNR2;b=;A=MARC_MATNR;S=1;B=;<E>;<B>;D=Purchasing group;DEF=<B>;X=MARC.EKGRP;T=9;<E>;F=3;G=CHAR;Z=Yes;K=3;M=0;N=FALSE;SID=EKGRP;TID=MARC;ID=EKGRP2;b=;A=MARC_EKGRP;S=0;B=;<E>;<B>;D=Moving average price/periodic unit price;DEF=<B>;X=MBEW.VERPR;T=9;<E>;F=11;G=CURR;Z=Yes;K=6;M=2;N=FALSE;SID=VERPR;TID=MBEW;ID=VERPR;b=;A=MBEW_VERPR;S=0;B=;<E>;<B>;D=Condition record number;DEF=<B>;X=A017.KNUMH;T=9;<E>;F=10;G=CHAR;Z=Yes;K=10;M=0;N=FALSE;SID=KNUMH;TID=A017;ID=KNUMH;b=;A=A017_KNUMH;S=0;B=;<E>;<B>;D=Vendor\'s account number;DEF=<B>;X=A017.LIFNR;T=9;<E>;F=10;G=CHAR;Z=Yes;K=10;M=0;N=FALSE;SID=LIFNR;TID=A017;ID=LIFNR2;b=;A=A017_LIFNR;S=1;B=;<E>;<B>;D=Purchasing organization;DEF=<B>;X=A017.EKORG;T=9;<E>;F=4;G=CHAR;Z=Yes;K=4;M=0;N=FALSE;SID=EKORG;TID=A017;ID=EKORG2;b=;A=A017_EKORG;S=1;B=;<E>;<B>;D=Validity end date of the condition record;DEF=<B>;X=A017.DATBI;T=9;<E>;F=8;G=DATS;Z=Yes;K=8;M=0;N=FALSE;SID=DATBI;TID=A017;ID=DATBI;b=;A=A017_DATBI;S=1;B=;<E>;<B>;D=Rate (condition amount or percentage) where no scale exists;DEF=<B>;X=KONP.KBETR;T=9;<E>;F=11;G=CURR;Z=Yes;K=6;M=2;N=FALSE;SID=KBETR;TID=KONP;ID=KBETR;b=;A=KONP_KBETR;S=0;B=;<E>;<E>;WCONC=<B>;<B>;LP=0;L=<B>;X=CDHDR.UDATE;T=-1;<E>;R=<B>;X=20091123 AND 20091123;T=-1;<E>;B=0;RP=0;C=<B>;X=BETWEEN;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=CDHDR.UTIME;T=-1;<E>;R=<B>;X=055022 AND 101108;T=-1;<E>;B=-1;RP=0;C=<B>;X=BETWEEN;T=-1;<E>;<E>;<E>;HCONC=<B>;<E>;GCOLS=<B>;<E>;JNODES=<B>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<E>;OTYP=OP;<E>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<E>;OTYP=OP;<E>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<E>;OTYP=OP;<E>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<E>;OTYP=OP;<E>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<E>;OTYP=OP;<E>;<B>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=OP;<E>;<B>;TAB=<B>;D=Purchasing Info Record: General Data;F=EINA;G=EINA;N=EINA;O=;ID=EINA;S=EINA;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Purchasing Info Record: Purchasing Organization Data;F=EINE;G=EINE;N=EINE;O=;ID=EINE;S=EINE;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Plant Data for Material;F=MARC;G=MARC;N=MARC;O=;ID=MARC;S=MARC;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Change document header;F=CDHDR;G=CDHDR;N=CDHDR;O=;ID=CDHDR;S=CDHDR;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Material Valuation;F=MBEW;G=MBEW;N=MBEW;O=;ID=MBEW;S=MBEW;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Material Info Record (Plant-Specific);F=A017;G=A017;N=A017;O=;ID=A017;S=A017;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<B>;TAB=<B>;D=Conditions (Item);F=KONP;G=KONP;N=KONP;O=;ID=KONP;S=KONP;<E>;JTYPE=0;CNT=2;JCONC=<B>;<B>;LP=0;L=<B>;X=EINA.MANDT;T=-1;<E>;R=<B>;X=EINE.MANDT;T=-1;<E>;B=0;RP=0;C=<B>;X==;T=-1;<E>;<E>;<B>;LP=0;L=<B>;X=EINA.INFNR;T=-1;<E>;R=<B>;X=EINE.INFNR;T=-1;<E>;B=-1;RP=0;C=<B>;X==;T=-1;<E>;<E>;<E>;OTYP=TAB;<E>;<E>;VERSION=2;OCOLS=<B>;<E>;TABS=<B>;<B>;D=Purchasing Info Record: General Data;F=EINA;G=EINA;N=EINA;O=;ID=EINA;S=EINA;<E>;<B>;D=Purchasing Info Record: Purchasing Organization Data;F=EINE;G=EINE;N=EINE;O=;ID=EINE;S=EINE;<E>;<B>;D=Plant Data for Material;F=MARC;G=MARC;N=MARC;O=;ID=MARC;S=MARC;<E>;<B>;D=Change document header;F=CDHDR;G=CDHDR;N=CDHDR;O=;ID=CDHDR;S=CDHDR;<E>;<B>;D=Material Valuation;F=MBEW;G=MBEW;N=MBEW;O=;ID=MBEW;S=MBEW;<E>;<B>;D=Material Info Record (Plant-Specific);F=A017;G=A017;N=A017;O=;ID=A017;S=A017;<E>;<B>;D=Conditions (Item);F=KONP;G=KONP;N=KONP;O=;ID=KONP;S=KONP;<E>;<E>;',
TABLE='EINA, EINE, MARC, CDHDR, MBEW, A017, KONP',
DSSAPCONNECTION='DSPASSWORD={l~{r.-,
RFCSERVERCOUNT=1
SAPROUTERSTRING=
ACKNOWLEDGEIDOCRECEIPT=FALSE
DEFAULTLANGUAGE=EN
DATAFILESPATH=
SAPSYSNUM=03
DEFAULTUSERNAME=DATSTG_CPIC
DESCRIPTION=MEDC Preprod
SAPGROUP=
DSUSERNAME=dsadm
METADATAFILE=
SAPMESSERVER=
IDOCPORTVERSION=3
DEFAULTCLIENT=100
READMETADATAFROMFILE=FALSE
ALLOWSAPTORUNJOBS=TRUE
SAPAPPSERVER=130.178.250.213
EXISTS=TRUE
LISTENFORIDOCS=FALSE
NAME=PLR
MSGSVRROUTERSTRING=
SAPSYSID=
REFSERVERPROGID=
USELOADBALANCING=FALSE
DEFAULTPASSWORD=J+LL[\\-F
',
DSSAPCONNECTIONPARAMETER='$SAP_CONNECTION',
DESCRIPTION='$SAP_CONNECTION
USEDEFAULTSAPLOGON='0',
USELOGONDETAILS='1',
GENMODE='3',
PROGDEVELSTATUS='9',
UPLOADEDABAP='*-------------------------------------------------------------------*
* Report Name: ZGFCD1
* Generated At: Sunday, May 24, 2009 19:00:01
* CPI-C Special Notes:
* 1) To execute this job, user type must be CPI-c.
* 2) Add communication partner in TXCOM using SM54.
*-------------------------------------------------------------------*
REPORT ZGFCD1.
* Step 1. Declare Table
TABLES:
EINA,
EINE,
MARC,
CDHDR,
MBEW,
A017,
KONP.
* Step 2. Declare Structure
DATA: BEGIN OF ST_1 OCCURS 1,
F_1(18) TYPE C, " For EINA~MATNR,
F_2(10) TYPE C, " For EINA~LIFNR,
F_3(10) TYPE C, " For EINA~INFNR,
F_4(4) TYPE C, " For EINE~EKORG,
F_5(4) TYPE C, " For EINE~WERKS,
F_6(5) TYPE C, " For EINE~WAERS,
F_7(3) TYPE C, " For EINE~EKGRP,
F_8(18) TYPE C, " For MARC~MATNR,
F_9(3) TYPE C, " For MARC~EKGRP,
F_10(11) TYPE C, " For MBEW~VERPR,
F_11(10) TYPE C, " For A017~KNUMH,
F_12(10) TYPE C, " For A017~LIFNR,
F_13(4) TYPE C, " For A017~EKORG,
F_14(8) TYPE C, " For A017~DATBI,
F_15(11) TYPE C, " For KONP~KBETR,
F_16(8) TYPE C, " For A017~DATAB,
F_17(4) TYPE C, " For KONP~KSCHL
END OF ST_1.
DATA: IT_1 LIKE ST_1 OCCURS 0 WITH HEADER LINE.
* Declare Structure for INTO clause
DATA: BEGIN OF ST_2 OCCURS 1,
F_1 LIKE EINA-MATNR, " For EINA~MATNR,
F_2 LIKE EINA-LIFNR, " For EINA~LIFNR,
F_3 LIKE EINA-INFNR, " For EINA~INFNR,
F_4 LIKE EINE-EKORG, " For EINE~EKORG,
F_5 LIKE EINE-WERKS, " For EINE~WERKS,
F_6 LIKE EINE-WAERS, " For EINE~WAERS,
F_7 LIKE EINE-EKGRP, " For EINE~EKGRP,
F_8 LIKE MARC-MATNR, " For MARC~MATNR,
F_9 LIKE MARC-EKGRP, " For MARC~EKGRP,
F_10 LIKE MBEW-VERPR, " For MBEW~VERPR,
F_11 LIKE A017-KNUMH, " For A017~KNUMH,
F_12 LIKE A017-LIFNR, " For A017~LIFNR,
F_13 LIKE A017-EKORG, " For A017~EKORG,
F_14 LIKE A017-DATBI, " For A017~DATBI,
F_15 LIKE KONP-KBETR, " For KONP~KBETR,
F_16 LIKE A017-DATAB, " For A017~DATAB,
F_17 LIKE KONP-KSCHL, " For KONP~KSCHL,
END OF ST_2.
DATA: BEGIN OF ST_3 OCCURS 1,
F_1 LIKE CDHDR-OBJECTID, " For CDHDR~OBJECTID,
F_2 LIKE CDHDR-OBJECTCLAS, " For CDHDR~OBJECTCLAS,
F_3 LIKE CDHDR-CHANGENR, " For CDHDR~CHANGENR,
F_4 LIKE CDHDR-TCODE, " For CDHDR~TCODE,
END OF ST_3.
DATA: BEGIN OF ST_4 OCCURS 1,
F_1 LIKE CDPOS-OBJECTCLAS, " For CDPOS~OBJECTCLAS,
F_2 LIKE CDPOS-OBJECTID, " For CDPOS~OBJECTID,
F_3 LIKE CDPOS-CHANGENR, " For CDPOS~CHANGENR,
F_4 LIKE CDPOS-FNAME, " For CDPOS~FNAME,
F_5 LIKE CDPOS-CHNGIND, " For CDPOS~CHNGIND,
END OF ST_4.
* Step 3. Table and structure for CPI-C
TABLES: TCPIC.
INCLUDE: RSCPICDF.
* Step 4. Declare CPI-C communication variables
DATA: COM_ID(8) TYPE C, " Communication ID
COM_IN(100) TYPE C, " Init signal buffer
COM_D(4) TYPE X, " Dataset Info
COM_S(4) TYPE X, " Status Info
COM_L(4) TYPE X, " Buffer Length
D_PACK(32000) TYPE C, " CPI-C Data Pack
D_OFFSET TYPE I, " Offset
D_LEN TYPE I. " Next Pack Length
DATA: PARAM_1 LIKE CDHDR-UDATE. " For DS_JOB_PARAM@LAST_RUN_DATE
DATA: PARAM_2 LIKE CDHDR-UDATE. " For DS_JOB_PARAM@CURRENT_DATE
DATA: PARAM_3 LIKE CDHDR-UTIME. " For DS_JOB_PARAM@LAST_RUN_TIME
DATA: PARAM_4 LIKE CDHDR-UTIME. " For DS_JOB_PARAM@CURRENT_TIME
DATA: PARAM_5 LIKE CDHDR-UTIME.
DATA: PARAM_6 LIKE CDHDR-UTIME.
EXIT.
*-------------------------------------------------------------------*
* Form CPIC is a dynamic call and will be used by
* communication partner like DataStage.
*-------------------------------------------------------------------*
FORM CPIC.
* Step 5. CPI-C Initialization
*-------------------------------------------------------------------*
* Establish communication, get communication ID
*-------------------------------------------------------------------*
COMMUNICATION ACCEPT ID COM_ID.
IF SY-SUBRC <> 0.
EXIT.
ENDIF.
PERFORM RECEIVE_PARAMETER.
D_PACK = \'\'.
D_OFFSET = 0.
D_LEN = D_OFFSET + 141.
CLEAR IT_1.
REFRESH IT_1.
IF PARAM_1 <= PARAM_2.
IF PARAM_2 > PARAM_1.
PARAM_5 = \'000000\'.
PARAM_6 = \'235959\'.
ELSE.
PARAM_5 = PARAM_3.
PARAM_6 = PARAM_4.
ENDIF.
ENDIF.
SELECT
CDHDR~OBJECTID
CDHDR~OBJECTCLAS
CDHDR~CHANGENR
CDHDR~TCODE
INTO (ST_3-F_1,
ST_3-F_2,
ST_3-F_3,
ST_3-F_4)
FROM
CDHDR AS CDHDR
WHERE
CDHDR~MANDANT = \'100\' AND
CDHDR~OBJECTCLAS = \'MATERIAL\' AND
( ( CDHDR~UDATE = PARAM_1 AND
CDHDR~UTIME >= PARAM_3 AND CDHDR~UTIME <= PARAM_6 ) OR
( CDHDR~UDATE > PARAM_1 AND CDHDR~UDATE < PARAM_2 ) OR
( CDHDR~UDATE = PARAM_2 AND
CDHDR~UTIME <= PARAM_4 AND CDHDR~UTIME >= PARAM_5 ) ) AND
CDHDR~TCODE IN (\'MM01\',\'MM02\') AND
CDHDR~CHANGE_IND IN (\'I\',\'U\').
SELECT
CDPOS~OBJECTCLAS
CDPOS~OBJECTID
CDPOS~CHANGENR
CDPOS~FNAME
CDPOS~CHNGIND
INTO (ST_4-F_1,
ST_4-F_2,
ST_4-F_3,
ST_4-F_4,
ST_4-F_5)
FROM
CDPOS AS CDPOS
WHERE
CDPOS~MANDANT = \'100\' AND
CDPOS~OBJECTCLAS = ST_3-F_2 AND
CDPOS~OBJECTID = ST_3-F_1 AND
CDPOS~CHANGENR = ST_3-F_3.
CASE ST_4-F_5 .
WHEN \'U\' OR \'I\'.
WHEN OTHERS.
CONTINUE.
ENDCASE.
CASE ST_4-F_4 .
WHEN \'EKGRP\' OR \'KEY\' OR \'PRDAT\' .
WHEN OTHERS.
CONTINUE.
ENDCASE.
SELECT
EINA~MATNR
EINA~LIFNR
EINA~INFNR
EINE~EKORG
EINE~WERKS
EINE~WAERS
EINE~EKGRP
MARC~MATNR
MARC~EKGRP
INTO (ST_2-F_1,
ST_2-F_2,
ST_2-F_3,
ST_2-F_4,
ST_2-F_5,
ST_2-F_6,
ST_2-F_7,
ST_2-F_8,
ST_2-F_9)
FROM
EINA AS EINA
INNER JOIN
EINE AS EINE
ON EINA~INFNR = EINE~INFNR
INNER JOIN
MARC AS MARC
ON EINA~MATNR = MARC~MATNR
*AND EINE~EKGRP = MARC~EKGRP
WHERE
EINE~EKORG = \'01AE\' AND
EINE~WERKS = \'AE99\' AND
MARC~WERKS =\'AE99\' AND
MARC~MATNR = ST_4-F_2 AND
*EINA~INFNR = ST_4-F_2 AND
EINA~LOEKZ <> \'X\'.
SELECT
MBEW~VERPR
INTO (ST_2-F_10)
FROM
MBEW AS MBEW
WHERE
MBEW~MATNR = ST_2-F_1 AND
MBEW~BWKEY = ST_2-F_5 .
SELECT
A017~KNUMH
A017~LIFNR
A017~EKORG
A017~DATBI
A017~DATAB
INTO (ST_2-F_11,
ST_2-F_12,
ST_2-F_13,
ST_2-F_14,
ST_2-F_16)
FROM
A017 AS A017 WHERE
A017~KAPPL =\'M\' AND
A017~LIFNR = ST_2-F_2 AND
A017~MATNR = ST_2-F_1 AND
A017~EKORG = ST_2-F_4 AND
*A017~DATBI > SY-DATUM AND
A017~KSCHL = \'PB00\' .
*A017~KSCHL IN (\'PB00\',\'ZCVC\').
SELECT
KONP~KBETR
KONP~KSCHL
INTO (ST_2-F_15,
ST_2-F_17)
FROM KONP AS KONP
WHERE
KONP~KNUMH = ST_2-F_11 AND
KONP~KSCHL = \'ZCVC\'.
*KONP~KSCHL IN (\'PB00\',\'ZCVC\').
IT_1-F_1 = ST_2-F_1.
IT_1-F_2 = ST_2-F_2.
IT_1-F_3 = ST_2-F_3.
IT_1-F_4 = ST_2-F_4.
IT_1-F_5 = ST_2-F_5.
IT_1-F_6 = ST_2-F_6.
IT_1-F_7 = ST_2-F_7.
IT_1-F_8 = ST_2-F_8.
IT_1-F_9 = ST_2-F_9.
IT_1-F_10 = ST_2-F_10.
IT_1-F_11 = ST_2-F_11.
IT_1-F_12 = ST_2-F_12.
IT_1-F_13 = ST_2-F_13.
IT_1-F_14 = ST_2-F_14.
IT_1-F_15 = ST_2-F_15.
IT_1-F_16 = ST_2-F_16.
IT_1-F_17 = ST_2-F_17.
IF D_LEN < 32000.
D_PACK+D_OFFSET(141) = IT_1.
D_OFFSET = D_OFFSET + 141.
D_LEN = D_OFFSET + 141.
CLEAR IT_1.
REFRESH IT_1.
ELSE.
PERFORM SEND_RECORD USING D_PACK.
D_PACK = IT_1.
D_OFFSET = 141.
D_LEN = D_OFFSET + 141.
ENDIF.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
ENDSELECT.
PERFORM SEND_RECORD USING D_PACK.
DELETE REPORT \'ZGFCD1\'.
ENDFORM.
*-------------------------------------------------------------------*
* Send one record to communication partner
*-------------------------------------------------------------------*
FORM SEND_RECORD USING P_REC_BUF.
COMMUNICATION SEND ID COM_ID BUFFER P_REC_BUF LENGTH D_OFFSET.
IF SY-SUBRC <> 0.
COMMUNICATION DEALLOCATE ID COM_ID.
EXIT.
ENDIF.
ENDFORM.
*-------------------------------------------------------------------*
* Receive parameter sent from DataStage side
*-------------------------------------------------------------------*
FORM RECEIVE_PARAMETER.
DATA: PARAM(10) TYPE C.
DATA: VALUE(100) TYPE C.
DATA: POS TYPE I.
COM_S = 0.
WHILE COM_S = 0.
COM_IN = \'\'.
COMMUNICATION RECEIVE ID COM_ID BUFFER COM_IN DATAINFO COM_D
STATUSINFO COM_S
RECEIVED COM_L.
IF SY-SUBRC <> CM_OK AND SY-SUBRC <> CM_DEALLOCATED_NORMAL.
EXIT.
ENDIF.
SEARCH COM_IN FOR \'=\'.
IF SY-SUBRC = 0.
POS = SY-FDPOS.
PARAM = COM_IN+0(POS).
POS = POS + 1.
VALUE = COM_IN+POS.
IF PARAM = \'PARAM_1\' OR PARAM = \'PARAM_1 \'.
PARAM_1 = VALUE.
ENDIF.
IF PARAM = \'PARAM_2\' OR PARAM = \'PARAM_2 \'.
PARAM_2 = VALUE.
ENDIF.
IF PARAM = \'PARAM_3\' OR PARAM = \'PARAM_3 \'.
PARAM_3 = VALUE.
ENDIF.
IF PARAM = \'PARAM_4\' OR PARAM = \'PARAM_4 \'.
PARAM_4 = VALUE.
ENDIF.
ENDIF.
ENDWHILE.
ENDFORM.
',
FULLYGENSQL='SELECT
EINA~MATNR
EINA~LIFNR
EINA~INFNR
EINE~EKORG
EINE~WERKS
EINE~WAERS
EINE~EKGRP
MARC~MATNR
MARC~EKGRP
MBEW~VERPR
A017~KNUMH
A017~LIFNR
A017~EKORG
A017~DATBI
KONP~KBETR
FROM
( ( ( ( ( EINA AS EINA
INNER JOIN
EINE AS EINE
ON EINA~MANDT = EINE~MANDT AND
EINA~INFNR = EINE~INFNR )
INNER JOIN
MARC AS MARC
ON <<missing join condition>> )
INNER JOIN
CDHDR AS CDHDR
ON <<missing join condition>> )
INNER JOIN
MBEW AS MBEW
ON <<missing join condition>> )
INNER JOIN
A017 AS A017
ON <<missing join condition>> )
INNER JOIN
KONP AS KONP
ON <<missing join condition>>
WHERE
CDHDR~UDATE BETWEEN DS_JOB_PARAM@LAST_RUN_DATE AND DS_JOB_PARAM@CURRENT_DATE AND
CDHDR~UTIME BETWEEN DS_JOB_PARAM@LAST_RUN_TIME AND DS_JOB_PARAM@CURRENT_TIME',
ABAPOPTINIT='1',
LNKPROPSVER='001',
SAPAPPNAME='130.178.250.213',
FTPPORT=21,
DBACCESS=',
TRLEVEL=0,
RETRIES=3,
RINTERVAL=15,
TRANSTYPE='ascii',
OBEYMETADATA='No',
LINETERMINATION_OUTLINK='[CR][LF] (DOS Style Termination)',
LINETERMINATION_INLINK='[CR][LF] (DOS Style Termination)',
ROWTERMCHARS='[CR][LF] (DOS Style Termination)',
ROWTERMCOUNT='0',
FIXWIDCOLS='No',
SPACES=0,
COLDELIMITER=',',
QUOTECHAR='"',
ESCCHAR='\\',
FLCOLNAMES='No',
OMITLASTLINE='No',
APPENDFILE='No',
ISACTIVEOUTLINK='active',
ISACTIVEINLINK='passive',
LINKTRLEVEL=0,
DS_JOB_PARAM_NAME_0='PARAM_1',
DS_JOB_PARAM_VALUE_0='20091123',
DS_JOB_PARAM_NAME_1='PARAM_2',
DS_JOB_PARAM_VALUE_1='20091123',
DS_JOB_PARAM_NAME_2='PARAM_3',
DS_JOB_PARAM_VALUE_2='055022',
DS_JOB_PARAM_NAME_3='PARAM_4',
DS_JOB_PARAM_VALUE_3='101108',
DSDescription={EINA_MATNR='Material number', EINA_LIFNR='Vendor\'s account number', EINA_INFNR='Number of purchasing info record', EINE_EKORG='Purchasing organization', EINE_WERKS='Plant', EINE_WAERS='Currency Key', EINE_EKGRP='Purchasing group', MARC_MATNR='Material number', MARC_EKGRP='Purchasing group', MBEW_VERPR='Moving average price/periodic unit price', A017_KNUMH='Condition record number', A017_LIFNR='Vendor\'s account number', A017_EKORG='Purchasing organization', A017_DATBI='Validity end date of the condition record', KONP_KBETR='Rate (condition amount or percentage) where no scale exists', A017_DATAB='Validity start date of the condition record'},
DSIsKey={EINA_INFNR=1, EINE_EKORG=1, EINE_WERKS=1, MARC_MATNR=1, A017_LIFNR=1, A017_EKORG=1, A017_DATBI=1},
DSDisplayWidth={EINA_MATNR=18, EINA_LIFNR=10, EINA_INFNR=10, EINE_EKORG=4, EINE_WERKS=4, EINE_WAERS=5, EINE_EKGRP=3, MARC_MATNR=18, MARC_EKGRP=3, MBEW_VERPR=11, A017_KNUMH=10, A017_LIFNR=10, A017_EKORG=4, A017_DATBI=8, KONP_KBETR=11, A017_DATAB=8, KONP_KSCHL=4},
DSSQLType={EINA_MATNR=1, EINA_LIFNR=1, EINA_INFNR=1, EINE_EKORG=1, EINE_WERKS=1, EINE_WAERS=1, EINE_EKGRP=1, MARC_MATNR=1, MARC_EKGRP=1, MBEW_VERPR=3, A017_KNUMH=1, A017_LIFNR=1, A017_EKORG=1, A017_DATBI=1, KONP_KBETR=3, A017_DATAB=1, KONP_KSCHL=1},
DSDerivation={EINA_MATNR='EINA~MATNR', EINA_LIFNR='EINA~LIFNR', EINA_INFNR='EINA~INFNR', EINE_EKORG='EINE~EKORG', EINE_WERKS='EINE~WERKS', EINE_WAERS='EINE~WAERS', EINE_EKGRP='EINE~EKGRP', MARC_MATNR='MARC~MATNR', MARC_EKGRP='MARC~EKGRP', MBEW_VERPR='MBEW~VERPR', A017_KNUMH='A017~KNUMH', A017_LIFNR='A017~LIFNR', A017_EKORG='A017~EKORG', A017_DATBI='A017~DATBI', KONP_KBETR='KONP~KBETR', A017_DATAB='A017~DATAB', KONP_KSCHL='KONP~KSCHL'},
DSSchema='record
(
EINA_MATNR:nullable string[18];
EINA_LIFNR:nullable string[10];
EINA_INFNR:string[10];
EINE_EKORG:string[4];
EINE_WERKS:string[4];
EINE_WAERS:nullable string[5];
EINE_EKGRP:nullable string[3];
MARC_MATNR:string[18];
MARC_EKGRP:nullable string[3];
MBEW_VERPR:nullable decimal[11,2];
A017_KNUMH:nullable string[10];
A017_LIFNR:nullable string[10];
A017_EKORG:nullable string[4];
A017_DATBI:nullable string[8];
KONP_KBETR:nullable decimal[11,2];
A017_DATAB:nullable string[8];
KONP_KSCHL:nullable string[4];
)'
} is not a valid property list: Expected "," or "}", got: "0"
Expected "," or "}", got: "24"
Expected "," or "}", got: "19"
Expected "," or "}", got: "type"
Expected "," or "}", got: "."
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "("
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "OF"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "OF"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "For"
Expected "," or "}", got: "LIKE"
Expected "," or "}", got: "Communication"
Expected "," or "}", got: "Dataset"
Expected "," or "}", got: "Buffer"
Expected "," or "}", got: "Offset"