2011 Jul 16 10:58 AM
some times you need to read data from non sap tables for example SQL server.I read SQL server tables as input tables in PP barcode.
to do this i'v created a new database connection via st04 tcode.
in abap i'v created code like bellow:
DATA: wa_barcode TYPE zpp_barcode ,
lt_barcode TYPE TABLE OF zpp_barcode ,
wa_wrk TYPE ZPP_WORKCENTER ,
stTime TYPE c LENGTH 10 ,
edTime TYPE c LENGTH 10 .
data: WRKCNTR TYPE zpp_barcode-ARBPL ,
BEGDA TYPE zpp_barcode-BEGDA ,
BEGTM TYPE zpp_barcode-BEGTM ,
MLD_BEGDA TYPE ZPP_MB-INITDATE ,
READ_DELETED TYPE c LENGTH 1 ,
E_rows TYPE i .
data: BEGIN OF wa_mld ,
MBID TYPE ZPP_MB-MBID ,
MNUMBER TYPE ZPP_MB-MNUMBER ,
INITDATE TYPE ZPP_MB-INITDATE ,
INITTM TYPE ZPP_MB-INITTM ,
DELETETAG TYPE ZPP_MB-DELETETAG ,
END OF wa_mld , it_mld like TABLE OF wa_mld .
data: BEGIN OF wa_mld_DET ,
MBDETAILID TYPE ZPP_MBDETAIL-MBDETAILID,
MBID TYPE ZPP_MB-MBID ,
PRODUCTID TYPE ZPP_MBDETAIL-PRODUCTID,
END OF wa_mld_det , it_mld_det like TABLE OF wa_mld_det .
.
.
.
EXEC SQL.
CONNECT TO 'ZSH'
ENDEXEC.
IF sy-subrc <> 0.
MESSAGE 'Unable to connect to ZSH' TYPE 'E' DISPLAY LIKE 'I'.
RETURN.
ENDIF.
exec SQl.
OPEN dbcur FOR
SELECT GMDId , WorkStationId , OperationID, ToolID, FirstOp, SecondOp,
ThirdOp , startdate, StartTime, ENDDate, ENDTime, DeviceID,
ProductID ,OperationFinished ,IsDamage , ISMOULD
FROM [dbo].[FM_Read_GMD1] ( :WRKCNTR , :BEGDA, :BEGTM , :READ_DELETED )
ENDEXEC.
Fill customer itab
DO.
EXEC SQL.
FETCH NEXT dbcur INTO :wa_barcode-GMDID,
:wa_barcode-ARBPL,
:wa_barcode-EVENT ,
:wa_barcode-TOOLID ,
:wa_barcode-OPERATOR1 ,
:wa_barcode-OPERATOR2 ,
:wa_barcode-OPERATOR3 ,
:wa_barcode-BEGDA ,
:stTime ,
:wa_barcode-ENDDA ,
:edTime ,
:wa_barcode-DEVICEID ,
:wa_barcode-FNLCONFRM ,
:wa_barcode-ISDAMAGE ,
:wa_barcode-CONF_NO ,
:wa_barcode-ISMOULD
ENDEXEC.
APPEND wa_barcode to lt_barcode .
ENDDO.
EXEC SQL .
UPDATE GMD SET DeleteTag = 'true' WHERE (DeleteTag IS NULL)
ENDEXEC.
EXEC SQL.
CLOSE dbcur
ENDEXEC.
some times you need to read data from non sap tables for example SQL server.I read SQL server tables as input tables in PP barcode.
to do this i'v created a new database connection via st04 tcode.
in abap i'v created code like bellow:
DATA: wa_barcode TYPE zpp_barcode ,
lt_barcode TYPE TABLE OF zpp_barcode ,
wa_wrk TYPE ZPP_WORKCENTER ,
stTime TYPE c LENGTH 10 ,
edTime TYPE c LENGTH 10 .
data: WRKCNTR TYPE zpp_barcode-ARBPL ,
BEGDA TYPE zpp_barcode-BEGDA ,
BEGTM TYPE zpp_barcode-BEGTM ,
MLD_BEGDA TYPE ZPP_MB-INITDATE ,
READ_DELETED TYPE c LENGTH 1 ,
E_rows TYPE i .
data: BEGIN OF wa_mld ,
MBID TYPE ZPP_MB-MBID ,
MNUMBER TYPE ZPP_MB-MNUMBER ,
INITDATE TYPE ZPP_MB-INITDATE ,
INITTM TYPE ZPP_MB-INITTM ,
DELETETAG TYPE ZPP_MB-DELETETAG ,
END OF wa_mld , it_mld like TABLE OF wa_mld .
data: BEGIN OF wa_mld_DET ,
MBDETAILID TYPE ZPP_MBDETAIL-MBDETAILID,
MBID TYPE ZPP_MB-MBID ,
PRODUCTID TYPE ZPP_MBDETAIL-PRODUCTID,
END OF wa_mld_det , it_mld_det like TABLE OF wa_mld_det .
.
.
.
EXEC SQL.
CONNECT TO 'ZSH'
ENDEXEC.
IF sy-subrc <> 0.
MESSAGE 'Unable to connect to ZSH' TYPE 'E' DISPLAY LIKE 'I'.
RETURN.
ENDIF.
exec SQl.
OPEN dbcur FOR
SELECT GMDId , WorkStationId , OperationID, ToolID, FirstOp, SecondOp,
ThirdOp , startdate, StartTime, ENDDate, ENDTime, DeviceID,
ProductID ,OperationFinished ,IsDamage , ISMOULD
FROM [dbo].[FM_Read_GMD1] ( :WRKCNTR , :BEGDA, :BEGTM , :READ_DELETED )
ENDEXEC.
Fill customer itab
DO.
EXEC SQL.
FETCH NEXT dbcur INTO :wa_barcode-GMDID,
:wa_barcode-ARBPL,
:wa_barcode-EVENT ,
:wa_barcode-TOOLID ,
:wa_barcode-OPERATOR1 ,
:wa_barcode-OPERATOR2 ,
:wa_barcode-OPERATOR3 ,
:wa_barcode-BEGDA ,
:stTime ,
:wa_barcode-ENDDA ,
:edTime ,
:wa_barcode-DEVICEID ,
:wa_barcode-FNLCONFRM ,
:wa_barcode-ISDAMAGE ,
:wa_barcode-CONF_NO ,
:wa_barcode-ISMOULD
ENDEXEC.
APPEND wa_barcode to lt_barcode .
ENDDO.
EXEC SQL .
UPDATE GMD SET DeleteTag = 'true' WHERE (DeleteTag IS NULL)
ENDEXEC.
EXEC SQL.
CLOSE dbcur
ENDEXEC.
2011 Jul 18 6:30 AM
Hi Reza,
It is fine. What is the business requirement.
Regards,
Madhu.
| User | Count |
|---|---|
| 6 | |
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |