Datastage SAP ABAP stage

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
shreya27
Participant
Posts: 23
Joined: Thu Jan 29, 2009 7:47 am

Datastage SAP ABAP stage

Post by shreya27 »

Hi All,

I have SAP ABAP stage as source and sequential file as target.I gave all SAP logon credentials.The job was running fine.I renamed the job according to my requirement,I did not do any changes in code level.The job is getting aborted.I tried hardcoding the SAP credentials but still I am not able to succeed.Please find below the error message.

ABAP_EINA_EINE_MARC_MBEW_A017_KONP: When processing argument -outlinkpropsWhen processing output link property list: {


Please let me know If any body has faced this problem and resolved it.

Many thanks in advance,
vjonnala1516
Participant
Posts: 18
Joined: Fri Jan 04, 2008 5:28 am
Location: Bangalore

Post by vjonnala1516 »

Hi,

the posted info insufficient for the analysis, can u place some more info on abort message or logs.

thanks
VJ
shreya27
Participant
Posts: 23
Joined: Thu Jan 29, 2009 7:47 am

Post by shreya27 »

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"
Post Reply