Remove PDC Block Program
Remove PDC Block Program
TABLES: vbap,vbak,tvlst.
TYPE-POOLS: slis.
DATA int_fcat TYPE slis_t_fieldcat_alv.
DATA wa_int TYPE slis_fieldcat_alv.
DATA i_lines LIKE sy-tabix.
DATA: rpt_title TYPE lvc_title VALUE 'Pending Sales Orders'.
TYPES: BEGIN OF ty_pdc,
kunnr TYPE kunnr,
belnr TYPE belnr_d,
zfbdt TYPE dzfbdt,
zbd1t TYPE dzbd1t,
END OF ty_pdc.
DATA: it_pdc TYPE TABLE OF ty_pdc,
wa_pdc TYPE ty_pdc.
*&-------------------------------------------------------------------*
*& Basic Informatio of Customer Orders
*&-------------------------------------------------------------------*
DATA:
BEGIN OF basic_info OCCURS 0,
flag TYPE c,
db LIKE tvlst-vtext,
vbeln LIKE vbak-vbeln,
audat LIKE vbak-audat,
customername LIKE kna1-name1,
auart LIKE vbak-auart,
vkorg LIKE vbak-vkorg,
vtweg LIKE vbak-vtweg,
spart LIKE vbak-spart,
vkbur LIKE vbak-vkbur,
kunnr LIKE vbak-kunnr,
netwr like vbak-netwr,
*
grupp LIKE vbak-grupp,
*
cmfre LIKE vbak-cmfre,
erdat LIKE vbak-erdat,
erzet LIKE vbak-erzet,
END OF basic_info,
*&---------------------------------------------------------------------*
*& Basic Informatio of Customer Orders
*&---------------------------------------------------------------------*
t LIKE basic_info.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETER: customer TYPE vbak-kunnr.
SELECTION-SCREEN END OF BLOCK b1.
*&--------------------------------------------------------------------INITIALIZATION.
*&--------------------------------------------------------------------*&---------------------------------------------------------------------*
*& Select Basic Informatio of Customer from KNA1,ADRC,STATE
*&---------------------------------------------------------------------*
START-OF-SELECTION.
SELECT
vbak~vbeln
vbak~audat
vbak~vbtyp
vbak~auart
tvlst~vtext AS db
vbak~vkorg
vbak~vtweg
vbak~spart
vbak~vkbur
vbak~kunnr
kna1~name1 AS customername
vbak~netwr
*
vbak~grupp
*
vbak~cmfre
vbak~erdat
vbak~erzet
INTO CORRESPONDING FIELDS OF TABLE basic_info
FROM ( vbak
LEFT JOIN tvlst
ON tvlst~mandt = sy-mandt
AND tvlst~spras = 'EN'
AND tvlst~lifsp = vbak~lifsk
LEFT JOIN tvfst
ON tvfst~mandt = sy-mandt
AND tvfst~spras = 'EN'
AND tvfst~faksp = vbak~faksk
INNER JOIN kna1 ON
kna1~mandt = sy-mandt
AND vbak~kunnr = kna1~kunnr
)
WHERE vbak~mandt = sy-mandt
AND vbak~lifsk = '10'
AND vbak~kunnr = customer.
CLEAR i_lines.
DESCRIBE TABLE basic_info LINES i_lines.
IF i_lines LT 1.
*
WRITE: /
*
'No Customer found for Selected Criteria.'.
*
EXIT.
MESSAGE 'No Sales Order found for Selected Customer' TYPE 'I'.
STOP.
EXIT.
ENDIF.
END-OF-SELECTION.
IF basic_info[] IS NOT INITIAL.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name
= sy-repid
i_internal_tabname
= 'BASIC_INFO' "capital letters!
i_inclname
= sy-repid
CHANGING
ct_fieldcat
= int_fcat
"I_GRID_TITLE = RPT_TITLE
EXCEPTIONS
inconsistent_interface = 1
program_error
= 2
OTHERS
= 3.
READ TABLE int_fcat INTO wa_int INDEX 1.
"user_command