Urgent:: regarding purchase order group address
hi all.
i need to know in which table can i find the Purchase Order Group address details...
waiting for ur reply asap..
thank u.
hi this is me again ...
please let me know the tables that r required to fetch the address details for PO.Group
it's very urgent..
i have the tables adrc,t024,etc..
but they r not related to it....
waiting for ur reply...
bye.
Similar Messages
-
Changing the layout in sapscript based on purchase order group
Hi all,
My requirement is as follows:
I have a SAP script which prints the PO. Based on the purchase order group I need to add empty space on the top of the output.
Suppose if PO group(EKKO-EKGRP) is 'ABC' i need to add 6cm of space. Other than ABC I neednot add space.
Could you please tell me how to achieve this?
Thanks in advance.
Regards,
Aravind.Hi Prabhu,
Thanks for your reply.
If i create a window the space will always be present irrespective of PO group right?
For PO group ABC i need a space of 6cm on the top pf the output,it means i have to drag all the subsequent windows down by 6 cms. How is this possible dynamically? For other PO group it needs to be as it is.
IF i Create a window by callng different paragraph formats will the other windows size change dynamically? -
Urgent : Regarding Purchase Requsition Report
Hi,
I am making a report on Purchase Requisition in which i have to display that these are the persons who have released this requisition (i.e. If General Manager has released that should be displayed,if Director had released it should be displayed and if Managing Director had released it should display it and also the dates on which they released..)
In my report i am not allowed to displayed that these are released by MMCONS OR SDCONS BUT it should display General Manager,Director or Managing Director.. at these particular dates...
If anybody help me out in this report he or she will be definately rewarded with points as it is most urgent to me ,,so plz reply as fast as possible.
Regards,
Ric.s
Message was edited by:
ric .sHai ric,
i have done a pr tracking report. it will show the persons name, plant, and department, etc .i have added that program here. if u dnt mine u can take
with regards,
safiq
TYPE-POOLS slis.
TABLES: t024, ekko, lfa1, ekpo, ekkn, cdhdr, cdpos, t16fs,
eban, eket, ekbe, t024d.
DATA: repid LIKE sy-repid.
DATA: releasedat LIKE cdhdr-udate.
CONSTANTS: c_to(4) TYPE c VALUE ' to ',
c_vgabe_1 TYPE c VALUE '1',
c_vgabe_2 TYPE c VALUE '2',
c_object_banf LIKE cdpos-objectclas VALUE 'BANF',
c_fname_frgzu LIKE cdpos-fname VALUE 'FRGZU',
c_tcode like cdhdr-tcode value 'ME54',
c_tcode1 like cdhdr-tcode value 'ME55',
A1=add one more constant and value for ME55.
c_tcode2 like cdhdr-tcode value 'ME28',
CN 2 >> Addition
CN 2 Start
c_tcode3 like cdhdr-tcode value 'ME54N',
c_tcode4 like cdhdr-tcode value 'ME29N',
CN 2 End
c_object_eink LIKE cdpos-objectclas VALUE 'EINKBELEG',
c_fname_frgke LIKE cdpos-fname VALUE 'FRGKE'.
DATA: list_layout TYPE slis_layout_alv, "Layout
ist_fieldcat TYPE STANDARD TABLE OF "Field Catalog
slis_fieldcat_alv,
tmp_fieldcat TYPE slis_fieldcat_alv, "Temp. Field Cat.
gt_xevents TYPE slis_t_event, "Events Table
xs_event TYPE slis_alv_event. "Event Line
RANGES: tcode for cdhdr-tcode.
A1=Add range to store ME54 & ME55
*& To store Summary report information - added 30/5
data: begin of i_summary occurs 100,
PlantName1 LIKE T001W-Name1, "Plant Name
plant1 LIKE ekpo-werks, "Plant
Dept LIKE t024d-dsnam, "MRP Contrl Code
PRafIR type i,
PRbfIR type i,
Grandtotal type i,
PerPRafIR type p decimals 2,
PerPRbfIR type p decimals 2,
end of i_summary.
STRUCTURES
DATA: BEGIN OF t_ekko OCCURS 0.
INCLUDE STRUCTURE ekko.
DATA: END OF t_ekko.
DATA: BEGIN OF st_itab,
pur_grp(22) TYPE c,
vendor_name LIKE lfa1-name1,
po_num LIKE ekko-ebeln,
item_num LIKE ekpo-ebelp,
mat_num LIKE ekpo-matnr,
description LIKE ekpo-txz01,
qty_order LIKE ekpo-menge,
unit_price LIKE ekpo-netpr,
total_price LIKE ekpo-netwr,
plant LIKE ekpo-werks,
cost_center LIKE ekkn-kostl,
internal_order LIKE ekkn-aufnr,
gl_code LIKE ekkn-sakto,
dept LIKE t024d-dsnam,
po_release_dat LIKE cdhdr-udate,
delivery_dat LIKE eket-eindt,
* gr_dat like ekbe-budat, "MICH01- 24/04/03
gr_dat LIKE ekbe-bldat, "MICH01+ 24/04/03
on_time_delivery TYPE c,
gr_qty LIKE ekbe-menge,
gr_doc_num LIKE ekbe-belnr,
ir_posting_date LIKE ekbe-budat, "??? change to budat
ir_doc_num LIKE ekbe-belnr,
END OF st_itab.
DATA: BEGIN OF st_itab1,
aedat LIKE ekko-aedat, "PO creation date
lifnr LIKE ekko-lifnr,
ebeln LIKE ekko-ebeln, "PO number
ekgrp LIKE ekko-ekgrp,
matnr LIKE ekpo-matnr,
banfn LIKE ekpo-banfn, "PR number
werks LIKE ekpo-werks, "PO item number
ebelp LIKE ekpo-ebelp,
bnfpo like eban-bnfpo, "PR item number
txz01 LIKE ekpo-txz01,
menge LIKE ekpo-menge,
netpr LIKE ekpo-netpr,
netwr LIKE ekpo-netwr,
kostl LIKE ekkn-kostl,
aufnr LIKE ekkn-aufnr,
sakto LIKE ekkn-sakto,
prctr LIKE ekkn-prctr,
anln1 LIKE ekkn-anln1,
pstyp LIKE eban-pstyp,
badat LIKE eban-badat,
afnam LIKE eban-afnam,
dispo LIKE eban-dispo,
vgabe LIKE ekbe-vgabe,
belnr LIKE ekbe-belnr,
bldat LIKE ekbe-bldat, "GR Creation date
budat LIKE ekbe-budat, "IR Creation date
gr_qty LIKE ekbe-menge,
eindt LIKE eket-eindt,
udate LIKE cdhdr-udate,
beln1 LIKE ekbe-belnr, "IR Doc. No.
dsnam LIKE t024d-dsnam, "MRP Controller Desc
pur_grp LIKE t024-eknam, "Desc. of Purchasing Gp
name1 LIKE lfa1-name1, "Vendor Code
on_time_delivery TYPE c, "On-time-delivery
flag type c, "Flag
Added by @, 21.05.2007 >>
PRAFIR TYPE i,
PRBFIR TYPE i,
TOTPR TYPE i,
Added by @, 21.05.2007 <<
END OF st_itab1.
GR History Movements
DATA: BEGIN OF st_history,
bldat LIKE ekbe-bldat,
menge LIKE ekbe-menge,
belnr LIKE ekbe-belnr,
END OF st_history.
PO Release Data
DATA: BEGIN OF st_change,
changenr LIKE cdpos-changenr,
value_new LIKE cdpos-value_new,
END OF st_change.
data: begin of st_change1,
udate like cdhdr-udate,
end of st_change1.
INTERNAL TABLES
DATA: itab LIKE TABLE OF st_itab,
ist_history LIKE TABLE OF st_history,
wa_history LIKE st_history,
ist_change LIKE TABLE OF st_change,
wa_change LIKE st_change,
ist_change1 like table of st_change1,
wa_change1 like st_change1.
data: begin of ist_itab occurs 0.
include structure st_itab1.
DATA : vgabe LIKE ekbe-vgabe,
belnr LIKE ekbe-belnr,
bldat LIKE ekbe-bldat, "GR Creation date
budat LIKE ekbe-budat, "IR Creation date
beln1 LIKE ekbe-belnr, "IR Doc. No.
gr_qty like ekbe-menge, "GR Qty
gr_unres LIKE ekbe-menge, "GR to unrestricted
gr_inspec_stk like ekbe-menge, "GR to inspection stock
gr_blk_stk like ekbe-menge, "GR to blocked stock
gr_rejected_stk like ekbe-menge, "GR to rejected stock
relcode1 like t16fs-FRGC1, "Release code 1
reldate1 like cdhdr-udate, "Release date 1
relcode2 like t16fs-FRGC1, "Release code 2
reldate2 like cdhdr-udate, "Release date 2
relcode3 like t16fs-FRGC1, "Release code 3
reldate3 like cdhdr-udate, "Release date 3
relcode4 like t16fs-FRGC1, "Release code 4
reldate4 like cdhdr-udate, "Release date 4
relcode5 like t16fs-FRGC1, "Release code 5
reldate5 like cdhdr-udate, "Release date 5
po_rel_date like cdhdr-udate. "PO release date
data: end of ist_itab.
data: wa_itab LIKE ist_itab.
Added on 21.05.2007 >>
data: s_po Type C.
data: s_pr Type C.
SELECTION SCREEN
SELECTION-SCREEN BEGIN OF BLOCK screen1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
so_aedat FOR ekko-aedat no-display, "Purchase Order Creation Date
so_udate FOR cdhdr-udate no-display, "PO Release Date
so_eindt FOR eket-eindt no-display, "Delivery Date
so_ekgrp FOR t024-ekgrp no-display, "Purchasing Group
so_lifnr FOR ekko-lifnr no-display, "Vendor Code
so_ebeln FOR ekko-ebeln no-display, "PO Number
so_matnr FOR ekpo-matnr no-display, "Material No.
so_banfn FOR ekpo-banfn no-display, "PR No.
so_dispo for eban-dispo no-display, "MRP controller
so_pstyp FOR ekpo-pstyp no-display, "Item Category
so_badat FOR eban-badat OBLIGATORY, "PR Creation Date
so_afnam FOR eban-afnam no-display, "PR Requester Name
so_werks FOR ekpo-werks OBLIGATORY, "Plant
so_kostl FOR ekkn-kostl no-display, "Cost Center
so_aufnr FOR ekkn-aufnr no-display, "Internal Order
so_sakto FOR ekkn-sakto no-display, "G/L Account
so_prctr FOR ekkn-prctr no-display, "Profit Center
so_anln1 FOR ekkn-anln1 no-display, "Asset Number
so_belnr FOR ekbe-belnr no-display, "GR Doc. No.
so_bldat FOR ekbe-bldat no-display, "GR Creation Date
so_budat FOR ekbe-budat no-display, "IR Posting Date
so_beln1 FOR ekbe-belnr no-display, "IR Doc. No
so_frgkz for eban-frgkz no-display. "Release status of PR
SELECTION-SCREEN SKIP 1.
PARAMETERS:
p_pr_rel(1) TYPE C no-display, "PR Release Indicator
p_on_del(1) TYPE C no-display. "On-time-delivery
SELECTION-SCREEN END OF BLOCK screen1.
Selection Screen - add 30/5
selection-screen begin of block screen2 with frame title text-002.
selection-screen begin of line.
parameters: r_sum radiobutton group grp1.
selection-screen comment 2(20) text-003 for field r_sum.
selection-screen end of line.
selection-screen begin of line.
parameters: r_det radiobutton group grp1 default 'X'.
selection-screen comment 2(20) text-004 for field r_det.
selection-screen end of line.
selection-screen end of block screen2.
MAIN *
*s_pr = 'X'.
Added on 21.05.2007 <<
*repid = sy-repid.
Assign release indicator
*if p_pr_rel = 'Y'.
so_frgkz-low = '2'.
so_frgkz-option = 'EQ'.
so_frgkz-sign = 'I'.
append so_frgkz.
clear so_frgkz.
*elseif p_pr_rel = 'N'.
so_frgkz-low = 'X'.
so_frgkz-option = 'EQ'.
so_frgkz-sign = 'I'.
append so_frgkz.
clear so_frgkz.
*endif.
*tcode-low = 'ME54'.
*tcode-option = 'EQ'.
*tcode-sign = 'I'.
*append tcode.
CN 2 >> Addition
CN 2 Start
*tcode-low = 'ME54N'.
*tcode-option = 'EQ'.
*tcode-sign = 'I'.
*append tcode.
CN 2 End
*tcode-low = 'ME55'.
*tcode-option = 'EQ'.
*tcode-sign = 'I'.
*append tcode.
*PERFORM:
get_details,
get_data,
get_gr_ir_data,
get_other_data,
Setup events --> Top-of-page
setup_events,
Build up ALV field catalogue
setfieldcat,
Output the data
output_alv_report TABLES ist_fieldcat.
Perform print_data.
top-of-page.
perform print_heading.
END-OF-PAGE.
WRITE :/ SY-ULINE(126).
FORM Assign_Values *
FORM assign_values.
ENDFORM.
FORM setFieldCat *
FORM setfieldcat.
PERFORM:
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T024D'
'DSNAM'
'IST_ITAB'
'DSNAM'
'Dept'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'WERKS'
'IST_ITAB'
'WERKS'
'Plant'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EBAN'
'AFNAM'
'IST_ITAB'
'AFNAM'
'PR Requestor Name'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING ''
'IST_ITAB'
'PRBFIR'
'PRbfIR'
'6'
add_field_to_fieldcat TABLES ist_fieldcat
USING ''
'IST_ITAB'
'PRAFIR'
'PRafIR'
'6'
add_field_to_fieldcat TABLES ist_fieldcat
USING ''
'IST_ITAB'
'TOTPR'
'TotalPR'
'7'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EBAN'
'BADAT'
'IST_ITAB'
'BADAT'
'PR Creation Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EBAN'
'BANFN'
'IST_ITAB'
'BANFN'
'PR No'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKO'
'EBELN'
'IST_ITAB'
'EBELN'
'PO Number'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKO'
'EBELP'
'IST_ITAB'
'EBELP'
'PO Item'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKO'
'AEDAT'
'IST_ITAB'
'AEDAT'
'PO Creation Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'BLDAT'
'IST_ITAB'
'BLDAT'
'GR Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'BUDAT'
'IST_ITAB'
'BUDAT'
'IR Document Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'TXZ01'
'IST_ITAB'
'TXZ01'
'Description'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'MENGE'
'IST_ITAB'
'MENGE'
'Qty Ordered'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'NETPR'
'IST_ITAB'
'NETPR'
'Unit Price'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'NETWR'
'IST_ITAB'
'NETWR'
'Total Price'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T024'
'EKNAM'
'IST_ITAB'
'PUR_GRP'
'PO PurGrp'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'LFA1'
'NAME1'
'IST_ITAB'
'NAME1'
'Vendor Name'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKPO'
'MATNR'
'IST_ITAB'
'MATNR'
'Material Number'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKN'
'KOSTL'
'IST_ITAB'
'KOSTL'
'Cost Center'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKN'
'AUFNR'
'IST_ITAB'
'AUFNR'
'Internal Order'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKN'
'SAKTO'
'IST_ITAB'
'SAKTO'
'GL Code'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKN'
'ANLN1'
'IST_ITAB'
'ANLN1'
'Asset'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKKN'
'PRCTR'
'IST_ITAB'
'PRCTR'
'Profit Centre'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T16FS'
'FRGC1'
'IST_ITAB'
'RELCODE1'
'PR RelCode1'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'RELDATE1'
'PR RelDate1'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T16FS'
'FRGC2'
'IST_ITAB'
'RELCODE2'
'PR RelCode2'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'RELDATE2'
'PR RelDate2'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T16FS'
'FRGC3'
'IST_ITAB'
'RELCODE3'
'PR RelCode3'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'RELDATE3'
'PR RelDate3'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T16FS'
'FRGC4'
'IST_ITAB'
'RELCODE4'
'PR RelCode4'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'RELDATE4'
'PR RelDate4'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'T16FS'
'FRGC5'
'IST_ITAB'
'RELCODE5'
'PR RelCode5'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'RELDATE5'
'PR RelDate5'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'CDHDR'
'UDATE'
'IST_ITAB'
'PO_REL_DATE'
'PO Release Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKET'
'EINDT'
'IST_ITAB'
'EINDT'
'PO Dlv Date'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING ''
'IST_ITAB'
'ON_TIME_DELIVERY'
'On Time Delivery'
'16'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'MENGE'
'IST_ITAB'
'GR_QTY'
'GR Qty'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'BELNR'
'IST_ITAB'
'BELNR'
'GR Doc Num'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'MENGE'
'IST_ITAB'
'GR_UNRES'
'GR to Unrestricted'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'MENGE'
'IST_ITAB'
'GR_INSPEC_STK'
'GR to Inspection Stock'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'MENGE'
'IST_ITAB'
'GR_BLK_STK'
'GR to Blocked Stock'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'MENGE'
'IST_ITAB'
'GR_REJECTED_STK'
'GR to Rejected Stock'
'X'
Added by @, 21.05.2007 >>
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'BELNR'
'IST_ITAB'
'BELN1'
'IR Doc Num'
'X'
add_field_to_fieldcat TABLES ist_fieldcat
USING 'EKBE'
'BELNR'
'IST_ITAB'
'BELN1'
'IR Doc Num'
'X'
Added by @, 21.05.2007 <<
ENDFORM.
FORM XEVENTS *
FORM setup_events.
CLEAR xs_event.
xs_event-name = slis_ev_end_of_page.
xs_event-form = 'XEND_OF_PAGE'.
APPEND xs_event TO gt_xevents.
CLEAR xs_event.
xs_event-name = slis_ev_top_of_page.
xs_event-form = 'XTOP_OF_PAGE'.
APPEND xs_event TO gt_xevents.
CLEAR xs_event.
xs_event-name = slis_ev_top_of_list.
xs_event-form = 'XTOP_OF_LIST'.
APPEND xs_event TO gt_xevents.
CLEAR xs_event.
xs_event-name = slis_ev_end_of_list.
xs_event-form = 'XEND_OF_LIST'.
APPEND xs_event TO gt_xevents.
ENDFORM.
FORM XTOP_OF_PAGE *
FORM xtop_of_page.
Write at 117 sy-pagno right-justified.
WRITE: / 'PR Tracking Report (against Invoice Date)'.
WRITE:/(42) sy-uline.
PO Creation Date
IF NOT so_aedat-low IS INITIAL AND
so_aedat-high IS INITIAL.
WRITE:/ 'PO Creation Date:', so_aedat-low.
ELSEIF NOT so_aedat-low IS INITIAL AND
NOT so_aedat-high IS INITIAL.
WRITE:/ 'PO Creation Date:', so_aedat-low, c_to, so_aedat-high.
ENDIF.
PR Creation Date
IF NOT so_badat-low IS INITIAL AND
so_badat-high IS INITIAL.
WRITE:/ 'PR Creation Date: ', so_badat-low.
ELSEIF NOT so_badat-low IS INITIAL AND
NOT so_badat-high IS INITIAL.
WRITE:/ 'PR Creation Date: ', so_badat-low , c_to, so_badat-high.
ENDIF.
Plant
IF NOT so_werks-low IS INITIAL AND
so_werks-high IS INITIAL.
WRITE:/ 'Plant: ', so_werks-low.
ELSEIF NOT so_werks-low IS INITIAL AND
NOT so_werks-high IS INITIAL.
WRITE:/ 'Plant: ', so_werks-low , c_to, so_werks-high.
ENDIF.
Delivery Date
IF NOT so_eindt-low IS INITIAL AND
so_eindt-high IS INITIAL.
WRITE:/ 'Delivery Date: ', so_eindt-low.
ELSEIF NOT so_eindt-low IS INITIAL AND
NOT so_eindt-high IS INITIAL.
WRITE:/ 'Delivery Date: ', so_eindt-low , c_to, so_eindt-high.
ENDIF.
Purchasing Group
IF NOT so_ekgrp-low IS INITIAL AND
so_ekgrp-high IS INITIAL.
WRITE:/ 'Purchasing Group: ', so_ekgrp-low.
ELSEIF NOT so_ekgrp-low IS INITIAL AND
NOT so_ekgrp-high IS INITIAL.
WRITE:/ 'Purchasing Group: ', so_ekgrp-low , c_to, so_ekgrp-high.
ENDIF.
Vendor Code
IF NOT so_lifnr-low IS INITIAL AND
so_lifnr-high IS INITIAL.
WRITE:/ 'Vendor Code: ', so_lifnr-low.
ELSEIF NOT so_lifnr-low IS INITIAL AND
NOT so_lifnr-high IS INITIAL.
WRITE:/ 'Vendor Code: ', so_lifnr-low , c_to, so_lifnr-high.
ENDIF.
PO Number
IF NOT so_ebeln-low IS INITIAL AND
so_ebeln-high IS INITIAL.
WRITE:/ 'PO Number: ', so_ebeln-low.
ELSEIF NOT so_ebeln-low IS INITIAL AND
NOT so_ebeln-high IS INITIAL.
WRITE:/ 'PO Number: ', so_ebeln-low , c_to, so_ebeln-high.
ENDIF.
Material No
IF NOT so_matnr-low IS INITIAL AND
so_matnr-high IS INITIAL.
WRITE:/ 'PO Number: ', so_matnr-low.
ELSEIF NOT so_matnr-low IS INITIAL AND
NOT so_matnr-high IS INI -
Regarding Purchase order upload
Dear All,
I have to upload the Purchase orders in to the SAP using DTW.i have fillled the follwing fields in to the opor and POR1 template but it is showing application error.
OPOR
Record Key
Docentry
address
cardcode
docduedate
docdate
doctotal
POr1
Recordkey
linenum
accountcode
itemcode
price
quantity..........
I think am missing a manadatory field.......Pls give me a solution to this...............Also tell me what are the mandatory fields that has to be filled for uploading.Actually the datas are large so i cannot ask the client to type all of them......Uploading is the only way..........So pls help me out.
Regards,
ShyamHello ,
You dont need to fill thise field in OPOR
Record Key
address
doctotal
because these all field all system generated
Then try again upload it.
Thanks
Manvendra Singh Niranjan -
Regarding purchase order report in bw
Hi guys,
I have a requirement for report in bw. I am getting data form datasources from po header and item level. In the report i have to show Purchase order quantity,
Goods recived quantity, MRP and goods reciept value. Can u tell me what all the infoobjects i have to take for these fields in BW. Its urgent. I will definitley award points.Also tell me the fields from R/3 and from which tables they are coming from.
Regards,
Niranjan
[email protected]Hi Niranjan,
check this link u will know all fields in bw and r/3..if u have any concerns get back to me.
http://help.sap.com/saphelp_nw2004s/helpdata/en/ed/62073c44564d59e10000000a114084/frameset.htm(header level)
http://help.sap.com/saphelp_nw2004s/helpdata/en/ed/62073c44564d59e10000000a114084/frameset.htm ( Item level)
Regards anil. -
hi,
is there any standard report for open purchase order ?
what are the tables and field used for open purchase order report.
thank u
raviHi,
There is no Std report for this;
See the report for Open PO's
*& Report ZMM_PO_REPORT
REPORT ZMM_PO_REPORT message-Id yb
NO STANDARD PAGE HEADING
LINE-COUNT 60(1)
LINE-SIZE 230.
D A T A B A S E T A B L E S D E C L A R A T I O N
TABLES: lfa1, " Vendor Master
t161, " PO Doc Types
t024, " Purchase Groups
ekko. " PO Header
T Y P E S D E C L A R A T I O N S
Purchase Orders Main Structure
TYPES: BEGIN OF s_po,
ebeln TYPE ebeln, " PO No.
ebelp TYPE ebelp, " PO Item
bstyp TYPE bstyp, " PO Category
bukrs TYPE bukrs, " Company Code
bsart TYPE bbsrt, " PO Type
lifnr TYPE lifnr, " Vendor No
ekgrp TYPE bkgrp, " Purchase Group
waers TYPE waers, " Currency
bedat TYPE etbdt, " PO Date
txz01 TYPE txz01, " Material Text
werks TYPE ewerk, " Plant
lgort TYPE lgort_d, " Storage Location
matkl TYPE matkl, " Material Group
menge TYPE bamng, " PR Quantity
meins TYPE bamei, " UOM
bprme TYPE bbprm, " Price Unit
netpr TYPE netpr, " Net price
peinh TYPE peinh, " Price Unit UOM
pstyp TYPE pstyp, " Item Category
knttp TYPE knttp, " Account Assignment Category
END OF s_po.
Purchase Orders History Structure
TYPES: BEGIN OF s_account,
ebeln TYPE ebeln, " PO No.
ebelp TYPE ebelp, " PO Item
gjahr TYPE mjahr, " Fiscal Year
belnr TYPE mblnr, " PO Invoice No
menge TYPE menge_d, " PR Quantity
wrbtr TYPE wrbtr, " Price in Local Currency
dmbtr TYPE dmbtr, " Price in Foreign Currency
waers TYPE waers, " Currency
shkzg TYPE shkzg, " Dr/Cr Indicator
END OF s_account.
Purchase Orders History Structure(Item Sum)
TYPES: BEGIN OF s_inv_sum,
ebeln TYPE ebeln, " PO No.
ebelp TYPE ebelp, " PO Item
menge TYPE menge_d, " PR Quantity
wrbtr TYPE wrbtr, " Price in Foreign Currency
waers TYPE waers, " Currency
END OF s_inv_sum.
Purchase Orders Main Structure
TYPES: BEGIN OF s_rep,
lifnr TYPE lifnr, " Vendor No
ebeln TYPE ebeln, " PO No.
ebelp TYPE ebelp, " PO Item
bstyp TYPE bstyp, " PO Category
bsart TYPE bbsrt, " PO Type
ekgrp TYPE bkgrp, " Purchase Group
waers TYPE waers, " Currency
bedat TYPE etbdt, " PO Date
txz01 TYPE txz01, " Material Text
werks TYPE ewerk, " Plant
lgort TYPE lgort_d, " Storage Location
matkl TYPE matkl, " Material Group
menge TYPE bamng, " PR Quantity
meins TYPE bamei, " UOM
bprme TYPE bbprm, " Price Unit
netpr TYPE netpr, " Net price
peinh TYPE peinh, " Price Unit UOM
pstyp TYPE pstyp, " Item Category
knttp TYPE knttp, " Account Assignment Category
name1 TYPE name1, " Plant
orewr TYPE netpr, " To be Invoiced Price
curr TYPE waers, " Inv Doc Currency
END OF s_rep.
D A T A D E C L A R A T I O N S
DATA: gv_title1 TYPE sylisel, " Report title
gv_dial. " Color flag
C O N S T A N T S D E C L A R A T I O N S
CONSTANTS: c_x VALUE 'X', " Flag X
c_h VALUE 'H', " Debit
c_vgabe TYPE vgabe VALUE '2'. " Transaction Type
I N T E R N A L T A B L E S D E C L A R A T I O N S
DATA: i_po TYPE STANDARD TABLE OF s_po WITH HEADER LINE,
" Purchase Order
i_inv TYPE STANDARD TABLE OF s_inv_sum WITH HEADER LINE,
" PO Invoice Values
i_rep TYPE STANDARD TABLE OF s_rep WITH HEADER LINE,
" PO Invoice Values
i_ekbe TYPE STANDARD TABLE OF s_account WITH HEADER LINE.
" PO Invoice Values
S E L E C T I O N S C R E E N *
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr MATCHCODE OBJECT kred,
s_ebeln FOR ekko-ebeln MATCHCODE OBJECT mekk,
s_bsart FOR t161-bsart,
s_ekgrp FOR t024-ekgrp,
s_bedat FOR ekko-bedat.
SELECTION-SCREEN END OF BLOCK b1.
I N I T I A L I Z A T I O N *
INITIALIZATION.
A T S E L E C T I O N - S C R E E N *
AT SELECTION-SCREEN.
Validate the screen fields
PERFORM validate_screen.
S T A R T - O F - S E L E C T I O N *
START-OF-SELECTION.
Fetch main data
PERFORM fetch_data.
T O P - O F - P A G E *
TOP-OF-PAGE.
Header of the List
PERFORM header.
E N D - O F - P A G E *
Footer
END-OF-PAGE.
ULINE.
E N D - O F - S E L E C T I O N *
END-OF-SELECTION.
Display the Report Output data
PERFORM display_data.
At Line-Selection
AT LINE-SELECTION.
When double clicked on EBELN display the details of Purchase Doc
PERFORM line_sel.
*& Form validate_screen
Validation of Selection Screen fields
FORM validate_screen .
Validation of Vendor Number
CLEAR lfa1-lifnr.
IF NOT s_lifnr[] IS INITIAL.
SELECT lifnr UP TO 1 ROWS
INTO lfa1-lifnr
FROM lfa1
WHERE lifnr IN s_lifnr.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Vendor'(002).
ENDIF.
ENDIF.
Validation of PO Number
CLEAR ekko-ebeln.
IF NOT s_ebeln[] IS INITIAL.
SELECT ebeln UP TO 1 ROWS
INTO ekko-ebeln
FROM ekko
WHERE ebeln IN s_ebeln.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Document Number'(003).
ENDIF.
ENDIF.
Validation of PO Document Type
CLEAR t161-bsart.
IF NOT s_bsart[] IS INITIAL.
SELECT bsart UP TO 1 ROWS
INTO t161-bsart
FROM t161
WHERE bsart IN s_bsart.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Purchase Document Type'(004).
ENDIF.
ENDIF.
Validation of Purchasing Group
CLEAR t024-ekgrp.
IF NOT s_ekgrp[] IS INITIAL.
SELECT ekgrp UP TO 1 ROWS
INTO t024-ekgrp
FROM t024
WHERE ekgrp IN s_ekgrp.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Purchasing Group'(005).
ENDIF.
ENDIF.
ENDFORM. " validate_screen
*& Form fetch_data
Fetching the PO related data from Database Tables
FORM fetch_data .
CLEAR i_po.
REFRESH i_po.
SELECT a~ebeln " PO No.
b~ebelp " PO Item
a~bstyp " PO Category
a~bukrs " Company Code
a~bsart " PO Type
a~lifnr " Vendor No
a~ekgrp " Purchase Group
a~waers " Currency
a~bedat " PO Date
b~txz01 " Material Text
b~werks " Plant
b~lgort " Storage Location
b~matkl " Material Group
b~menge " PR Quantity
b~meins " UOM
b~bprme " Price Unit
b~netpr " Net price
b~peinh " Price Unit UOM
b~pstyp " Item Category
b~knttp " Account Assignment Category
INTO TABLE i_po
FROM ekko AS a JOIN ekpo AS b
ON a~ebeln = b~ebeln
WHERE a~ebeln IN s_ebeln AND
a~lifnr IN s_lifnr AND
a~ekgrp IN s_ekgrp AND
a~bsart IN s_bsart AND
a~bedat IN s_bedat.
SORT i_po BY ebeln ebelp.
break-point.
IF NOT i_po[] IS INITIAL.
Fetch the PO History/Invoice Details from EKBE Table
CLEAR i_ekbe.
REFRESH i_ekbe.
SELECT ebeln " PO No.
ebelp " PO Item
gjahr " Fiscal Year
belnr " PO Invoice No
menge " PR Quantity
wrbtr " Price in Local Currency
dmbtr " Price in Foreign Currency
waers " Currency
shkzg " Dr/Cr Indicator
INTO TABLE i_ekbe
FROM ekbe
FOR ALL ENTRIES IN i_po
WHERE ebeln = i_po-ebeln AND
ebelp = i_po-ebelp AND
vgabe = c_vgabe.
break-point.
IF sy-subrc = 0.
SORT i_ekbe BY ebeln ebelp.
LOOP AT i_ekbe.
IF i_ekbe-shkzg = c_h.
i_ekbe-wrbtr = i_ekbe-wrbtr * -1.
ENDIF.
MODIFY i_ekbe.
ENDLOOP.
break-point.
Sum up the Item wise Invoice totals
LOOP AT i_ekbe.
AT END OF ebelp.
READ TABLE i_ekbe INDEX sy-tabix.
SUM.
MOVE-CORRESPONDING i_ekbe TO i_inv.
APPEND i_inv.
ENDAT.
CLEAR i_inv.
ENDLOOP.
SORT i_inv BY ebeln ebelp.
break-point.
ENDIF.
ENDIF.
Move the Vendor Name and Invoice Values to I_rep Internal Table
LOOP AT i_po.
MOVE-CORRESPONDING i_po TO i_rep.
CLEAR i_inv.
READ TABLE i_inv WITH KEY ebeln = i_po-ebeln
ebelp = i_po-ebelp.
IF sy-subrc = 0.
i_rep-orewr = ( i_po-menge - i_inv-menge ) * i_po-netpr.
i_rep-curr = i_inv-waers.
ELSE.
i_rep-orewr = i_po-menge * i_po-netpr.
i_rep-curr = i_po-waers.
ENDIF.
break-point.
Get the Vendor Name
CLEAR lfa1-name1.
SELECT SINGLE name1 FROM lfa1 INTO lfa1-name1
WHERE lifnr = i_po-lifnr.
IF sy-subrc = 0.
i_rep-name1 = lfa1-name1.
ENDIF.
APPEND i_rep.
CLEAR i_rep.
break-point.
ENDLOOP.
SORT i_rep BY lifnr ebeln ebelp.
DELETE i_rep WHERE orewr LE 0.
break-point.
ENDFORM. " fetch_data
*& Form display_data
Display the Report Output data
FORM display_data .
DATA: lv_flag, " New Flag
lv_rec TYPE i. " No of Records
CLEAR lv_rec.
IF i_rep[] IS INITIAL.
MESSAGE e000 WITH 'No Data found'(022).
ELSE.
LOOP AT i_rep.
Toggle Color
PERFORM toggle_color.
IF lv_flag <> space.
NEW-LINE.
ENDIF.
At New Purchase Document
AT NEW ebeln.
WRITE:/1 sy-vline, 2(10) i_rep-ebeln INTENSIFIED OFF.
lv_flag = c_x.
lv_rec = lv_rec + 1.
ENDAT.
WRITE: 1 sy-vline,
12 sy-vline,13(4) i_rep-bsart,
17 sy-vline,18(10) i_rep-lifnr,
28 sy-vline,29(35) i_rep-name1,
64 sy-vline,65(4) i_rep-ekgrp,
69 sy-vline,70(10) i_rep-bedat,
80 sy-vline,81(5) i_rep-ebelp,
86 sy-vline,87(40) i_rep-txz01,
127 sy-vline,128(9) i_rep-matkl,
137 sy-vline,138(1) i_rep-pstyp,
139 sy-vline,140(1) i_rep-knttp,
141 sy-vline,142(4) i_rep-werks,
146 sy-vline,147(4) i_rep-lgort,
151 sy-vline,152(13) i_rep-menge UNIT i_rep-meins,
165 sy-vline,166(3) i_rep-meins,
169 sy-vline,170(15) i_rep-netpr CURRENCY i_rep-waers,
185 sy-vline,186(4) i_rep-waers,
190 sy-vline,191(5) i_rep-peinh,
196 sy-vline,197(4) i_rep-bprme,
201 sy-vline,202(15) i_rep-orewr CURRENCY i_rep-curr,
217 sy-vline,218(4) i_rep-curr,
222 sy-vline,223(7) i_rep-bstyp centered,
230 sy-vline.
NEW-LINE.
hide: i_rep-ebeln.
ENDLOOP.
ULINE.
FORMAT COLOR OFF.
WRITE : /2 'Total Number of Purchasing Documents:'(025) COLOR 3,
lv_rec COLOR 3.
ENDIF.
ENDFORM. " display_data
*& Form header
Write the Report Header
FORM header .
FORMAT RESET.
header
WRITE:/1(230) 'LIST OF PURCHASE DOCUMENTS PER VENDOR'(006) CENTERED.
SKIP.
FORMAT COLOR COL_HEADING.
ULINE.
WRITE:/1 sy-vline,2(10) 'Pur.Doc.No'(006) CENTERED,
12 sy-vline,13(4) 'Type'(007),
17 sy-vline,18(10) 'Vendor'(008) CENTERED,
28 sy-vline,29(35) 'Name'(009) CENTERED,
64 sy-vline,65(4) 'PGrp'(010) CENTERED,
69 sy-vline,70(10) 'Doc.Date'(012) CENTERED,
80 sy-vline,81(5) 'Item'(011),
86 sy-vline,87(40) 'Material Short Text'(024) CENTERED,
127 sy-vline,128(9) 'Mat.Group'(013),
137 sy-vline,138(1) 'I',
139 sy-vline,140(1) 'A',
141 sy-vline,142(4) 'Plnt'(014),
146 sy-vline,147(4) 'SLoc'(015),
151 sy-vline,152(13) 'Quantity'(016) CENTERED,
165 sy-vline,166(3) 'UoM'(017),
169 sy-vline,170(15) 'Net Value'(018) CENTERED,
185 sy-vline,186(4) 'Curr'(019),
190 sy-vline,191(5) 'Per'(020),
196 sy-vline,197(4) 'Unit'(021),
201 sy-vline,202(15) 'To be Invoiced'(023) CENTERED,
217 sy-vline,218(4) 'Curr'(019),
222 sy-vline,223(7) 'Doc.Cat'(026),
230 sy-vline.
ULINE.
ENDFORM. " header
*& Form toggle_color
This routine alters the color of the records in the list
FORM toggle_color.
IF gv_dial = space.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
gv_dial = c_x.
ELSE.
FORMAT COLOR 1 INTENSIFIED OFF.
CLEAR gv_dial.
ENDIF.
ENDFORM. " toggle_color
*& Form LINE_SEL
*When double clicked on EBELN field display the details of Purchase Doc
FORM line_sel.
CASE sy-lsind.
WHEN '1'.
DATA: lv_field(20),
lv_value(10),
lv_bstyp like i_rep-bstyp.
clear: lv_bstyp,lv_value, lv_field.
GET CURSOR FIELD lv_field VALUE lv_value.
IF lv_field = 'I_REP-EBELN'.
IF NOT lv_value IS INITIAL.
READ LINE sy-index FIELD VALUE i_rep-bstyp
INTO lv_bstyp.
READ CURRENT LINE FIELD VALUE i_rep-bstyp INTO lv_bstyp.
if lv_bstyp = 'F'.
SET PARAMETER ID 'BES' FIELD lv_value.
CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
elseif ( lv_bstyp = 'K' or lv_bstyp = 'L' ).
SET PARAMETER ID 'VRT' FIELD lv_value.
CALL TRANSACTION 'ME33' AND SKIP FIRST SCREEN.
elseif lv_bstyp = 'A'.
SET PARAMETER ID 'ANF' FIELD lv_value.
CALL TRANSACTION 'ME43' AND SKIP FIRST SCREEN.
endif.
ENDIF.
ENDIF.
ENDCASE.
ENDFORM. " line_sel
<b>reward points if useful</b>
regards,
Anji
Message was edited by:
Anji Reddy Vangala -
Urgent:regarding purchase requsitions
HI,
i am making purchase requsition report in which i have to display that these are the person who released the purchase requsition at dese dates.
plzzzz help me out as i am able to display only release requsitions but not the person who had released it. i am using table eban.
IF ANYBODY HELP ME OUT HE OR SHE WILL BE DEFINATELY REWARDED.
Regards,
ric.sHi,
Go through this program, you have answer
It is possible to generate a complete list of purchase document releases with the purchase document number (requisitions and orders), releaser, release date and release time. * First, create an Infoset using transaction SQ02 directly reading from table CDPOS and create an additional table: CDHDR. If you are releasing purchase requsitions at the item level, it is convenient to create an additional field (PURPS LIKE EBAN-BNFPO) to capture the item number.
GO THROUGH THIS CODE
Mass Display of Purchase Orders
Submitted by webmaster at www.sap-img.com
Mass display or print Purchase Order History
You can request report by :
1. Change date
2. User Name
3. Purchase Order Number
4. Vendor Code
Written by : SAP Basis, ABAP Programming and Other IMG Stuff
www.sap-img.com
REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING
LINE-COUNT 065(001)
MESSAGE-ID VR.
TABLES: DD04T,
CDHDR,
CDPOS,
DD03L,
DD41V,
T685T,
VBPA,
TPART,
KONVC,
EKKO.
SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,
XNAME FOR CDHDR-USERNAME,
XEBELN FOR EKKO-EBELN,
XLIFNR FOR EKKO-LIFNR.
SELECTION-SCREEN SKIP.
TEXT-001 - Sorting Sequence
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
PARAMETERS: SUDATE RADIOBUTTON GROUP R1,
SNAME RADIOBUTTON GROUP R1,
SOBID RADIOBUTTON GROUP R1.
SELECTION-SCREEN END OF BLOCK BLK1.
DATA: WFLAG,
WCHANGENR LIKE CDHDR-CHANGENR.
DATA: INDTEXT(60) TYPE C.
DATA: BEGIN OF ICDHDR OCCURS 50.
INCLUDE STRUCTURE CDHDR.
DATA: END OF ICDHDR.
DATA: BEGIN OF ICDSHW OCCURS 50.
INCLUDE STRUCTURE CDSHW.
DATA: END OF ICDSHW.
DATA: BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY.
DATA: BEGIN OF ITAB OCCURS 50,
BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY,
CHANGENR LIKE CDHDR-CHANGENR,
UDATE LIKE CDHDR-UDATE,
UTIME LIKE CDHDR-UTIME,
USERNAME LIKE CDHDR-USERNAME,
CHNGIND LIKE CDSHW-CHNGIND,
FTEXT LIKE CDSHW-FTEXT,
OUTLEN LIKE CDSHW-OUTLEN,
F_OLD LIKE CDSHW-F_OLD,
F_NEW LIKE CDSHW-F_NEW,
END OF ITAB.
DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.
FIELD-SYMBOLS: <F_OLD>, <F_NEW>.
SELECT * FROM EKKO WHERE EBELN IN XEBELN AND
LIFNR IN XLIFNR.
CLEAR CDHDR.
CLEAR CDPOS.
CDHDR-OBJECTCLAS = 'EINKBELEG'.
CDHDR-OBJECTID = EKKO-EBELN.
PERFORM GETCHGDOCS.
ENDSELECT.
IF SUDATE = 'X'.
SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP
EKKEY-ETENR.
ELSEIF SNAME = 'X'.
SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP
EKKEY-ETENR.
ELSE.
SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.
ENDIF.
LOOP AT ITAB.
CLEAR: INDTEXT, EKKEY.
CASE ITAB-CHNGIND.
WHEN 'U'.
INDTEXT(50) = ITAB-FTEXT.
INDTEXT+51 = TEXT-020.
CONDENSE INDTEXT.
WHEN 'D'.
INDTEXT = TEXT-021.
WHEN 'E'.
INDTEXT(5) = ITAB-FTEXT.
INDTEXT+51 = TEXT-021.
CONDENSE INDTEXT.
WHEN 'I'.
INDTEXT = TEXT-022.
ENDCASE.
RESERVE 4 LINES.
IF WCHANGENR NE ITAB-CHANGENR.
WCHANGENR = ITAB-CHANGENR.
EKKEY = ITAB-EKKEY.
WRITE:/ ITAB-UDATE UNDER 'Change Date',
ITAB-UTIME UNDER 'Time',
ITAB-USERNAME UNDER 'User Name',
ITAB-EKKEY-EBELN UNDER 'PO No',
ITAB-EKKEY-EBELP UNDER 'Item',
ITAB-EKKEY-ETENR UNDER 'Sch No',
INDTEXT UNDER 'Changes'.
ELSEIF ITAB-EKKEY NE EKKEY.
WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',
ITAB-EKKEY-ETENR UNDER 'Sch No',
INDTEXT UNDER 'Changes'.
ENDIF.
CASE ITAB-CHNGIND.
WHEN 'U'.
ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO <F_NEW>.
WRITE: / TEXT-023 UNDER 'Changes',
<F_OLD>.
WRITE: / TEXT-024 UNDER 'Changes',
<F_NEW>.
WHEN 'E'.
ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
WRITE: TEXT-023 UNDER 'Changes',
<F_OLD>.
ENDCASE.
SKIP.
ENDLOOP.
TOP-OF-PAGE.
WRITE:/ SY-DATUM,SY-UZEIT,
50 'P U R C H A S E O R D E R H I S T O R Y',
120 'Page', SY-PAGNO.
WRITE: / SY-REPID,
60 'Purchase Orders Changes'.
SKIP.
ULINE.
IF SUDATE = 'X'.
WRITE:/001 'Change Date',
014 'Time',
024 'User Name',
038 'PO No',
050 'Item',
057 'Sch No',
065 'Changes'.
ELSEIF SOBID = 'X'.
WRITE:/001 'PO No',
013 'Item',
020 'Sch No',
028 'Change Date',
041 'Time',
051 'User Name',
065 'Changes'.
ELSE.
WRITE:/001 'User Name',
015 'Change Date',
028 'Time',
038 'PO No',
050 'Item',
057 'Sch No',
065 'Changes'.
ENDIF.
ULINE.
FORM GETCHGDOCS.
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
DATE_OF_CHANGE = CDHDR-UDATE
OBJECTCLASS = CDHDR-OBJECTCLAS
OBJECTID = CDHDR-OBJECTID
TIME_OF_CHANGE = CDHDR-UTIME
USERNAME = CDHDR-USERNAME
TABLES
I_CDHDR = ICDHDR
EXCEPTIONS
NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.
CHECK NOT ICDHDR[] IS INITIAL.
LOOP AT ICDHDR.
CHECK ICDHDR-UDATE IN XUDATE.
CHECK ICDHDR-USERNAME IN XNAME.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING CHANGENUMBER = ICDHDR-CHANGENR
IMPORTING HEADER = CDHDR
TABLES EDITPOS = ICDSHW
EXCEPTIONS NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
LOOP AT ICDSHW.
CHECK ICDSHW-TEXT_CASE EQ SPACE.
MOVE-CORRESPONDING ICDSHW TO ITAB.
MOVE-CORRESPONDING ICDHDR TO ITAB.
MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.
APPEND ITAB.
ENDLOOP.
ENDLOOP.
ENDFORM.
END OF PROGRAM
Regards,
Satish -
Purchase order - multiple address
Hi
We have a plant in Canada for which we are procuring materials from vendors. In the PO we send to the vendors, we have to mention the ship to address as the Freight forwarders address in the US border and the final destination in Canada. What is the best way to show & print these 2 addresses in the PO?
Regards,
PujaHi,
Thanks for replying. My purchasing department does not want to enter Canadian plant address/Forwarding agent address in every purchase order manually? Is there a place where I can save this address and display it at the PO header level whenever a PO is created for the Canadian plant?
We do not maintain plant specific info records.
Regards,
Sandeep -
Problem regarding Purchase Order with Free of Cost Material
Dear Xperts,
I am facing problems while doing Goods Receipt of a Purchase Order having all the materials we are going to receive Free of Cost from the Vendor.
This case is happening with Doemstic and as well as Importer Vendors also.
Problems to be solved:
1. If we are using Tax Code(with excise conditions) ,excise duty calculation does not take pace automatically at Goods Receipt as the Material Value is Zero on which the duties will be calculated for a Manufactuing Plant.
2. This case seems very problammatic if that Purchase Order is having almost thousand line items.The user has to enter all the Excise duties manually for each & every line item during Goods receipt in a manufacturing Plant.
3. In case of Importer Purchase Order also, the CVD portion & CESS on CVD portion user has to enter manually.
4. To solve this problem we are not using Free Goods Indicator in PO, we are entering 0.01 paisa , but during the MIRO of Planned Delivery Costs , the system is not showing or providing POP-ups of those relevant condition types to the user to enter the actual amount.
Please advice, how can we proceed in this case.
Regards,
SoumickFirst you are putting 0.01 value . So the planned delivery cost is not showing coz if say tax is 8% then 0.01 x 0.08 will be 0.0008. It will take first two digit after decimal and hence its 0.00 and hence plannded delivery cost is not showing.
If you put 0.5 you will be able to put planned delivery cost in MIRO
Now regarding value is zero and how will the import duty be calculated. May be make a pricing routine where in the custom duty is not calculated on this base price 0.5 or 0.01 but on the actual value if it was not free of cost and that value you can maintain through MEK1 transaction code.
And while posting MIRO or MIGO you need to identify that these are free of cost material and use BADI fi_ac_document
and may be replace the actual GL with some other GL so that 0.5 or 0.01 does not add to your inventory cost and you could knock off later.
Regards
Sangeeta
Edited by: Sangeeta Khurana on Feb 6, 2012 1:37 PM -
Regarding Purchase order MEDRUCK
Hi gurus,
What actual my doubt is when i saved purchase order that time i need to fetch . For example on 10/01/2008 at 1.00 pm they created purchase order.may be tomorrow they will send that purchase order to vendor.so if they take print out on tomorrow, it needs to show todays ate time.But by default in satndard purcahes order MEDRUCK the date will be displayed,So the total problem with the time field only.When i consult my functional people they told there is no time field in tables so you have to fetch that on . Please guide for this query.
Thanks in advance.
Regards
Srihari.Hi,
You cannot enable the Copy From button on the purchase order window. This is because there is no originating document for a purchase order (which is the first document in the chain on the purchasing side).
Perhaps if you explain your reasons for needing this functionality someone can come up with a suitable workaround.
Kind Regards,
Owen -
Regarding Purchase order fetching
Hi All,
I have retrived Sales order items in my program.
<b>Based on Sales orders Data[VBELN,VBELP etc] i need to fetch Purchase Order Data [EBELN, EBELP etc].</b>.
How we can achieve this.
What will be the logic!
Thanks in advance.
Thanks & Regards,
Deep.<b>VBAK-VBELN --. SALES ORDER
VBAK-BSTNK --> PURCHASE ORDER</b>
<b>VBAK-BSTNK = EKKO-EBELN </b>
EKKO-EBELN = EKPO-EBELN.
EKPO-EBELN,
EKPO-EBELP.
this is the sequence ,,
regards,
VIjay -
Regarding Purchase order ME21N
Hi gurus,
My requirement is i need to place the time field in ME21N transaction.When ever i created purchase order on that time the time is recorded and it stored in database.Please can any one help me out this.
Thanks in Advance.
Regards
Srihari.Hi,
Use the enhancement 'MM06E005'.
First Create one project in CMOD then assign this enhancement and activate it.
Then add a new field in the custom include(CI_EKKODB) of
EKKO table.then in 'EXIT_SAPMM06E_018' pass the system time to ur new field,system will automatically update database(table).
rewards points if helpful.
Regards,
Srinivas Ch -
Regarding Purchase Order Smartform
hi all,
Can you send the logic for Calculating Taxes(Local Tax and Central Tax) for Purchase Order .
Regards
Rami ReddyHi TNQs for ur responce.
i want to get the item text in the main window beside to material description column .
i think u got my point actually we'll have item texts for each item , i want to get the text of each item in that row only
i used include text and i gave following attributes
Text Object : EKPO
Text ID : A03
Language : EN
just tell me ,should i need to give any code for this.
thanks and regards, -
Regarding purchase order number
Hi
Just basic question in Sales document.
While creating Sales order, we are giving purchase order number in header.
why its required.
Can somebody explain me...
Regards
ChandraHi Chandra,
It is customer's reference number. Using this reference customer order can be tracked. For example if customer has any query regarding the order he placed, he can just refer the PO number and based on which customer service track the order of customer.
If you look an EDI order, Order is created in some legacy system and Data flows to SAP and an SAP order is created through an inbound IDOC. Then wat is the way to track the legacy system's order? It is through the purchase order number,based on which customer service can track the order information. This is just an example for your understanding of the field of order.
Hope this explains.
Edited by: mokirala tilak on Aug 12, 2011 10:51 AM -
Regarding Purchase order Confirmation
Hi,
I have a flat file from which we have to update the Purchase Order Confirmations at item level.
Is there any Function Module for this ? Because right now i am using BDC for this ?Hi Manju,
i have got the requirement to change the PO items at confirmation tab, i tried with bapi but it is not working, can u please forward the piece of code if u have.
Regards,
D. Raghu Ram.
Maybe you are looking for
-
Prompting username and password
Dear All, after I have install new SharePoint 2013 server, I was able to create new web application and new site collection under that without any problems. But I cant access newly created site collection. it's keep prompting username and password.
-
Max is not working in infopath form 2010
Hi, I have created one form in infopath 2010. I want to get maximum id of a table when i click on new record. I am trying to use max() function for the same. But its not working for me. Please help to solve the issue. Thanks in advance! Regards Rajni
-
Hello, I have a PB 12.5 app deployed on Windows 7. One of the users has set the default windows zoom to 125%. The issue is that a part of the right side of all windows gets chopped off and scrollbars are not visible. Any ideas how to correct it? Than
-
Change default display profile (colors are horrible)
Hi there, A few weeks ago I baught a 15" Macbook Pro, but then I noticed the colors were horrible. Way too much brown/gray. I'm not exaggerating. Compared to my normal monitor it look's awfull, and compared to other Macbooks too! So I tried to make m
-
Can I use Firefox sync on a pc that is not mine?
can Firefox sync be used on public computers, i.e. university computers that I have a user account available to use? Or would other people be able to access my bookmarks etc because its a public computer?