ALV output for Purchase reports
Hi Friends,
How can I have ALV output for my Purchase reports like ME2L, ME2N, ME2M. My scope of Lists do not have ALV output as yet. How do we configure it..?
Thanks in advance.
Sarvesh
which ECC version are you working on? I think versions below 4.7 didnt have ALV (im not sure though)
Try this path :
SPRO->Materials mgmt->purchasing->Reportng->Maintain Purchasing lists->Scope of lists->Define scope of list.
check if ALV is maintained here. if not , create ZALV by Copying from ALLES or make your own new one ZALV , and inside ZALV , make sure to Tick the "Use ALV grid Control" in the last tab "settings for ALV grid control"
Similar Messages
-
Excel Output For Standard Report In R12
Hi Experts,
My Client wants Excel Output for Standard Reports ( ex:-Open Purchase Order Report (by cost center)_xml)
I changed the default output to Excel in Template of xml publisher administrator Responsibility.
Now it is showing the Excel output, but The layout of report is not same as layout which in text output of standard report.
Please guide me is there any solution to develop the reports layout in ms-excel using xml file rather than rtf template.
Thanks
Durga.Hi Alex,
Thanks for your replay.
Generating the new rtf template which is same as standard layout is difficult task for us. Actually we have 120 reports which have same requirement.
Is there any other solution for this . please guide me
Thanks
Durga
Edited by: 805567 on Jan 23, 2012 12:33 PM -
Cancel_flag in PO Output for Communication report
I'm trying to build logic into an RTF template for the "PO Output for Communication" report to handle cancelled lines. The cancel_flag can be set to "Y" at any of 3 levels - PO Header, PO Line and PO shipment. The field is called the same thing (cancel_flag) at all 3 levels but it doesn't always exist at all 3 levels. What do I call the field in my "IF" statement, so that it is looking at the correct field? Right now, if I am at the line level and I want to check the cancel_flag, if it doesn't exist, it looks at the cancel_flag at the shipment level.
have to see your for-each statements.
and you can do it, by using .. to go up one level
example from current level to go up4 level up ../../../../CUSTOM_FLAG
../../../CUSTOM_FLAG three lvl up.
Need to know the cancel_flag element you said, i can see only one :) in the given xml. -
Add new font to PO Output for Communication Report
I'm trying to add a new font (Edwardian Script ITC) to the PO Output Communication report. I have added the font file through XML Publisher Administrator, and I have an RTF template report and a test XSL-FO report both correctly displaying the font. The PO Output for Communication report is not displaying the font and I believe it has something to do with the fact that it is a java concurrent program.
Any ideas on what additional steps need to be done to get this font to show up on the PO Output for Communication? Has anyone been successful in adding a different font to this report?
Thanks,
SuzanneMy RTF template is showing the font, and my test XSL-FO template is showing the font. The PO Output for Communication XSL-FO template is NOT showing the font.
I even tested by replacing the PO Output for Communication template file with my test template file. When I do that the font not applied in the PO Output for Communication report, even though it was applied using the same template in a test report. -
How to define PO Output for Communication Report
Hi,
I want to edit and add some features in the PO Output for Communication Report with 'POXPOPDF' short name by the xml publisher is there a way i read some where i found a document id Note:387670.1 but i found nothing but i want a detailed description to what i do exactly.
Any Advice Will Be Approtiated.
ThanksHi,
Depends on what you want to "edit and add".
The document on note 387670.1 https://metalink.oracle.com/metalink/plsql/docs/Document_Printing_White_Paper.pdf has detailed instructions on what you need to do, plus examples.
Please advise what you are trying to achieve.
Regards,
Gareth
Blog: http://garethroberts.blogspot.com/ -
PO Output For Communication Report Customization
Hi All,
I'm working on R12 'PO Output For Communication' report, it's xml report with executable as Java Concurrent program. I want to add additional fields to the report, since it's java concurrent program, how can i customize the report. Please help to customize the query of the report, where can i find the query, how to proceed.
Kindly help at the earliest.
ThanksThe program is based on 4 views as below:
PO_HEADERS_XML
PO_LINES_XML
PO_LINE_LOCATIONS_XML
PO_DISTRIBUTIONS_XML
for relases you may refer to:
PO_RELEASES_XML
You need to modify the above mentioned views to add new fields.
Actually the field names in the views are converted to XML tag with the same name.
Thanks,
PS. -
Default ALV format for MB5T Report
Dear Experts ,
I want to have a defalut selection of ALV format for MB5T report .
How can I do this .
Regards
AnisHi Chakrapani ,
Please suggest if there is any other way to tackle it without the intervention of ABAPer .
Regards
Anis -
At line selection b/w normal output and alv output in 1 report
hi,
i had developed a report in which its starting output is normal out put and when i click on the itemid i should display the alv which i had developed. i dont know how to display the functionality in my report.
plzz provide me guideliens as help will be deifnately rewarded.its a interactive report.
execute this sample report.
*& Report Z_ALVREPORT *
report z_alvreport .
tables:vbak,vbap,mara.
type-pools: slis.
*PARAMETERS:P_VBELN TYPE VBAK-VBELN.
types: begin of i_vbak,
vbeln like vbak-vbeln,
erdat like vbak-erdat,
erzet like vbak-erzet,
ernam like vbak-ernam,
LINE_COLOR(4) TYPE C, "ROW COLOR
end of i_vbak.
data: it_vbak type standard table of i_vbak initial size 0,
wa_vbak type i_vbak.
*DATA:wa_sort1 TYPE slis_t_sortinfo_alv.
*TYPES:BEGIN OF I_MARA,
MATNR LIKE MARA-MATNR,
MTART LIKE MARA-MTART,
END OF I_MARA.
*DATA: IT_MARA TYPE STANDARD TABLE OF I_MARA INITIAL SIZE 0,
WA_MARA TYPE I_MARA.
*DATA: WA_COLOR TYPE LVC_S_SCOL. "FOR ROW COLOR
*DATA: IT_COLOR TYPE TABLE OF LVC_S_SCOL.
types: begin of i_vbap,
vbeln like vbap-vbeln,
posnr like vbap-posnr,
matnr like vbap-matnr,
matwa like vbap-matwa,
end of i_vbap.
data: it_vbap type standard table of i_vbap initial size 0,
wa_vbap type i_vbap .
*variable for current report ID
data: v_repid like sy-repid .
*declaration for fieldcatalog
data: i_fieldcat type slis_t_fieldcat_alv,
wa_fieldcat type slis_fieldcat_alv.
data: it_listheader type slis_t_listheader.
declaration for events table where user comand or set PF status will be defined
data: v_events type slis_t_event,
wa_event type slis_alv_event.
declartion for layout
data: alv_layout type slis_layout_alv.
declaration for variant(type of display we want)
data: i_variant type disvariant,
i_variant1 type disvariant,
i_save(1) type c,
col_pos type i.
*Title displayed when the alv list is displayed
data: i_title_vbak type lvc_title value 'FIRST LIST DISPLAYED'.
data: i_title_vbap type lvc_title value 'SECONDRY LIST DISPLAYED'.
initialization.
v_repid = sy-repid.
perform build_fieldcatlog.
PERFORM BUILD_LAYOUT. "FOR COLOR
perform event_call.
perform populate_event.
start-of-selection.
perform data_retrieval.
perform build_listheader using it_listheader.
perform display_alv_report.
*& Form BUILD_FIELDCATLOG
Fieldcatalog has all the field details from vbak
form build_fieldcatlog.
wa_fieldcat-tabname = 'IT_VBAK'.
wa_fieldcat-fieldname = 'VBELN'.
wa_fieldcat-seltext_m = 'SALES DOCUMENT NUMBER.'.
wa_fieldcat-hotspot = 'X'.
WA_FIELDCAT-COL_POS = 1.
wa_fieldcat-emphasize = 'C110'.
wa_fieldcat-edit = 'X'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAK'.
wa_fieldcat-fieldname = 'ERDAT'.
wa_fieldcat-seltext_m = 'DATE.'.
WA_FIELDCAT-COL_POS = 2.
wa_fieldcat-emphasize = 'C210'.
wa_fieldcat-edit = 'X'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAK'.
wa_fieldcat-fieldname = 'ERZET'.
wa_fieldcat-seltext_m = 'ENTRY TIME'.
WA_FIELDCAT-COL_POS = 3.
wa_fieldcat-emphasize = 'C310'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAK'.
wa_fieldcat-fieldname = 'ERNAM'.
wa_fieldcat-seltext_m = 'NAME'.
WA_FIELDCAT-COL_POS = 4.
wa_fieldcat-emphasize = 'C410'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAK'.
wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-seltext_m = 'MATERIAL NUMBER'.
WA_FIELDCAT-COL_POS = 4.
wa_fieldcat-emphasize = 'C510'.
wa_fieldcat-hotspot = 'X'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
endform. "BUILD_FIELDCATLOG
*form build_layout
*FORM BUILD_LAYOUT.
*ALV_LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.
*ENDFORM. "END BUILD_LAYOUT.
*& Form EVENT_CALL
we get all events - TOP OF PAGE or USER COMMAND in table v_events
form event_call.
call function 'REUSE_ALV_EVENTS_GET'
exporting
i_list_type = 0
importing
et_events = v_events
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform. "EVENT_CALL
*& Form POPULATE_EVENT
Events populated for TOP OF PAGE & USER COMAND
form populate_event.
read table v_events into wa_event with key name = 'TOP_OF_PAGE'.
if sy-subrc eq 0.
wa_event-form = 'TOP_OF_PAGE'.
modify v_events from wa_event transporting form where name =
wa_event-form.
endif.
read table v_events into wa_event with key name = 'USER_COMMAND'.
if sy-subrc eq 0.
wa_event-form = 'USER_COMMAND'.
modify v_events from wa_event transporting form where name =
wa_event-name.
endif.
endform. "POPULATE_EVENT
*& Form data_retrieval
retreiving values from the database table vbak
form data_retrieval.
*DATA:ID_COLOR(1) TYPE C.
select vbeln erdat erzet ernam from vbak into table it_vbak .
SELECT MATNR FROM MARA INTO TABLE IT_MARA.
LOOP AT IT_VBAK INTO WA_VBAK.
WA_VBAK-LINE_COLOR = 'C410'.
ID_COLOR = ID_COLOR + 1.
IF ID_COLOR = 7.
ID_COLOR = 1.
ENDIF.
CONCATENATE 'C' ID_COLOR '10' INTO WA_VBAK-LINE_COLOR.
MODIFY IT_VBAK FROM WA_VBAK.
ENDLOOP.
endform. "data_retrieval
*& Form bUild_listheader
text
-->I_LISTHEADEtext
form build_listheader using i_listheader type slis_t_listheader.
data hline type slis_listheader.
hline-info = 'THIS IS INTERACTIVE ALV'.
hline-typ = 'H'.
endform. "build_listheader
*& Form Status
using the PF-Status enable the SAVE, UPDATE, BACK, CANCEL and EXIT
button and give some OKCODE has been give to each of these Button
and this is handled in USER_COMMAND
form status using p_extab type slis_t_extab.
*----PF Status -
set pf-status 'STATUS'.
endform. " status
*& Form display_alv_report
text
form display_alv_report.
v_repid = sy-repid.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = v_repid
i_callback_pf_status_set = 'STATUS'
i_callback_user_command = 'USER_COMMAND'
i_callback_top_of_page = 'TOP_OF_PAGE'
i_grid_title = i_title_vbak
I_GRID_SETTINGS =
is_layout = alv_layout
it_fieldcat = i_fieldcat[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT = wa_sort1
IT_FILTER =
IS_SEL_HIDE =
i_default = 'ZLAY1'
i_save = 'A'
is_variant = i_variant
it_events = v_events
tables
t_outtab = it_vbak
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform. "display_alv_report
*& Form TOP_OF_PAGE
text
form top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = it_listheader
i_logo = 'ENJOYSAP_LOGO'
I_END_OF_LIST_GRID = 'TOP_OF_PAGE'.
endform. "TOP_OF_PAGE
*& Form USER_COMMAND
form user_command using r_ucomm like sy-ucomm
rs_selfield type slis_selfield.
case r_ucomm.
when '&IC1'.
if rs_selfield-fieldname = 'VBELN'.
read table it_vbak into wa_vbak index rs_selfield-tabindex.
refresh i_fieldcat.
perform build_fieldcatlog_vbap.
perform event_call_vbap.
perform populate_event_vbap.
perform data_retrieval_vbap.
perform build_listheader using it_listheader.
perform display_alv_vbap.
elseif rs_selfield-fieldname = 'MATNR'.
set parameter id 'MAT' field mara-matnr.
call transaction 'ZCHANG' and skip first screen.
endif.
when 'SAVE'.
loop at it_vbak into wa_vbak.
modify it_vbak from wa_vbak.
endloop.
endcase.
endform. "user_command
*& Form BUILD_FIELDCATLOG_VBAP
text
form build_fieldcatlog_vbap.
wa_fieldcat-tabname = 'IT_VBAP'.
wa_fieldcat-fieldname = 'VBELN'.
wa_fieldcat-seltext_m = 'SALES DNO.'.
wa_fieldcat-emphasize = 'C110'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAP'.
wa_fieldcat-fieldname = 'POSNR'.
wa_fieldcat-seltext_m = 'ITEM'.
wa_fieldcat-emphasize = 'C210'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAP'.
wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-seltext_m = 'MATERIAL NO.'.
wa_fieldcat-emphasize = 'C310'.
wa_fieldcat-edit = 'X'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
wa_fieldcat-tabname = 'IT_VBAP'.
wa_fieldcat-fieldname = 'MATWA'.
wa_fieldcat-seltext_m = 'MATERIAL'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-edit = 'X'.
append wa_fieldcat to i_fieldcat.
clear wa_fieldcat.
endform. "BUILD_FIELDCATLOG_VBAP
*& Form event_call_vbap
we get all events - TOP OF PAGE or USER COMMAND in table v_events
form event_call_vbap.
call function 'REUSE_ALV_EVENTS_GET'
exporting
i_list_type = 0
importing
et_events = v_events
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform. "event_call_VBAP
*& Form POPULATE_EVENT
Events populated for TOP OF PAGE & USER COMAND
form populate_event_vbap.
read table v_events into wa_event with key name = 'TOP_OF_PAGE'.
if sy-subrc eq 0.
wa_event-form = 'TOP_OF_PAGE'.
modify v_events from wa_event transporting form where name = wa_event-form.
endif.
endform. "POPULATE_EVENT
*& Form TOP_OF_PAGE
text
form f_top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = it_listheader
i_logo =
I_END_OF_LIST_GRID =
endform. "TOP_OF_PAGE
*& Form USER_COMMAND
*retreiving values from the database table VBAP
form data_retrieval_vbap.
select vbeln posnr matnr matwa from vbap into table it_vbap. " WHERE VBELN = P_VBELN.
endform.
form build_listheader_vbap using i_listheader type slis_t_listheader.
data: hline1 type slis_listheader.
hline1-typ = 'H'.
hline1-info = 'CHECKING PGM'.
endform.
form display_alv_vbap.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
i_callback_program = v_repid
i_callback_pf_status_set = 'GUI_STAT'
I_CALLBACK_USER_COMMAND = 'F_USER_COMMAND'
i_callback_top_of_page = 'TOP_OF_PAGE'
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
i_grid_title = i_title_vbap
I_GRID_SETTINGS =
IS_LAYOUT = ALV_LAYOUT
it_fieldcat = i_fieldcat[]
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT =
i_save = 'A'
IS_VARIANT =
it_events = v_events
tables
t_outtab = it_vbap
exceptions
program_error = 1
others = 2
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform. -
Search help problem in ALV output for field TD24A-DISMM
Hi Abap-Experts,
I have one issue regarding simple ALV report.
I need to display search-help for field DISMM. I have used below code in ALV fieldcatalog.
ts_fieldcat - tabname = 'TD24A'.
ts_fieldcat - tabname = 'DISMM'.
I have attached search-help for fields such as MATNR and WERKS too.
The search-helps are getting displayed for MATNR as well as WERKS.
But, the search-help is not gettting displayed for field DISMM(RP-TYPE) .
The output displayed is done using Simple ALV.
Could anyone please help me and correct my code or logic i have used.Hi,
I have changed code a bit...and used T438A table.
CLEAR ts_fieldcat.
ts_fieldcat-col_pos = '5'.
ts_fieldcat-fieldname = 'DISMM'.
ts_fieldcat-seltext_l = text-014.
ts_fieldcat-outputlen = 2.
ts_fieldcat-reptext_ddic = ''.
ts_fieldcat-ref_tabname = 'T438A'.
ts_fieldcat-ref_fieldname = 'DISMM'.
ts_fieldcat-ddic_outputlen = '2'.
ts_fieldcat-input = 'X'.
APPEND ts_fieldcat TO gt_fieldcat.
still it is not showing me the F4 help in simplae ALV output..
kindly help me -
How to check the ALV output for the background job
Hi Guru,
We are having a cutomized report which will display the result like a ALV report.
We configured it as an background job, after the completion of the background job, it will send the result to the SPOOL, and we can use SP02 to check the output,
But it is not easy for user to directly check the result easily, is there an method we can save it as an spreadsheet and send the output to a specific location or mailbox and then user can check it easily
thanks,In SM37 ,select the Job > Spool > Select Spool No > Display Contents > Here it will show you the Output of the Report.Now select Ctrl +Shift + F12 , it will ask you to save the Spread sheet in specified location.
Best Regards,
Ankur -
Excel Output for Standard Reports using XML Publisher
Hi All,
Customer wants to get Excel Output for the existing Standard/Custom Reports using XML Publisher. I followed the following procedure.
1. Changed the output to XML for Concurrent program ( Trial Balance - Detail )
2. Used the Existing seeded Template
3. Ran the Report using EXCEL as the output.
When I clicked on View Output, I am not able to see the Excel output. I am seeing the HTML tags in the output window. Verified that Viewer Options existed for Excel as follows:
File Format=Excel, Mime Type=application/vnd.ms-excel.
When I ran the report with PDF output. I can see the PDF output.
Ran the HTML output with new Viewer Option ( File Format=HTML, Mime Type=application/vnd.ms-excel) then I can see the output in Browser in the Excel format. I did this test after going through the Metalink Note: Note:316752.1
My question is.. Do I need always choose the HTML ouput in the options window to trigger the Viewer option for HTML. Customer may not like this idea. He would like to choose the Excel Output and see the output in Excel format either in the Browser or Microsoft Excel.
Can someone in this situation before help me out.
Thanks,
VQuestions rephrase:
1. Is the output is same for HTML and Excel options ?
2. Why the output is viewable with HTML option and not with Excel option ?
Customer has XML Publisher Version 5.0.1 and in the process of applying 5.6.1
Thanks,
V -
Message Output for purchase order
Dear SAP Expert,
We have defined the message output type for purchase order document type XX with special function. We have maintained condition record for the same. It is working fine.
Now we have defined another output type for another PO document type YYwith special function by copying earlier one.
But message output is not genarated in case of YY document type.
Please tell us what we have missed out.
Thanks & Regards,
Reva.Hi Reva,
In ME22N for your PO, click on the Messages button. Then click on the blue information button - this should display the output determination analysis for the order, and will show you which output determination procedure was used, which output type and access sequence was processed and whether the system was able to find a matching record. At the lowest level of detail it will show you the keys that were used to read the condition records. All this information should help you to determine why a condition record could not be found for the purchase order.
Regards,
Monika -
Processing log output for Purchase order
Dear All,
Iam getting some problem when iam creating an IDOC and checking in the Processing log for IDOC number.
Actually i had created one custom idoc for Purchase order since my client need only some field and in one line for header and line item, I had done it and i can see it in sdata of EDIDD structure. When i create a Purchase order and save it an idoc number is posting and I can see this file in my physical directory indeed.
Now when iam going into change mode of PO ME22n to see the Processing LOG, It is not showing the IDOC Number in Purchase order output processing log popup.The processing log will only show output based standard output control (Table NAST).
How is your IDoc being created. Via a user exit, BADI. If so then they will not appear on the processing log.
It is being created as a custom IDOC for which i had written a Z function module and given that in PO processing code which is ME10. When iam checking the standard IDOC for PO it is generating the IDOC in processing log as well.
Iam just placing my code just have a look at it and suggest if any thing needs to be done.
FUNCTION Z_IDOC_OUTPUT_ORDERS.
""Local Interface:
*" IMPORTING
*" VALUE(OBJECT) LIKE NAST STRUCTURE NAST
*" VALUE(CONTROL_RECORD_IN) LIKE EDIDC STRUCTURE EDIDC
*" EXPORTING
*" VALUE(OBJECT_TYPE) LIKE WFAS1-ASGTP
*" VALUE(CONTROL_RECORD_OUT) LIKE EDIDC STRUCTURE EDIDC
*" TABLES
*" INT_EDIDD STRUCTURE EDIDD
*" EXCEPTIONS
*" ERROR_MESSAGE_RECEIVED
*" DATA_NOT_RELEVANT_FOR_SENDING
DATA: xdruvo. "Druckvorgang
DATA: neu VALUE '1', "Neudruck
h_kappl LIKE nast-kappl, "Hilfsfeld Applikation
h_parvw LIKE ekpa-parvw, "Hilfsfeld Partnerrolle
h_ebeln LIKE ekko-ebeln. "Hilfsfeld Belegnummer
CLEAR control_record_out.
xdruvo = neu.
h_kappl = object-kappl.
h_ebeln = object-objky.
h_parvw = object-parvw.
DATA:
LT_EDIDC LIKE EDIDC OCCURS 0 WITH HEADER LINE,
L_EDIDC LIKE EDIDC,
L_SEND_FLAG,
W_SDATA LIKE EDIDD-SDATA.
DATA: T_BDI_MODEL LIKE BDI_MODEL OCCURS 0 WITH HEADER LINE.
DATA: T_EDIDC LIKE EDIDC OCCURS 0 WITH HEADER LINE.
DATA: T_EDIDD LIKE EDIDD OCCURS 0 WITH HEADER LINE.
DATA: C_MESSAGE_TYPE LIKE EDIDC-MESTYP VALUE 'ZORDER'.
*- Call function module to determine if message is to be distributed
OBJECT_TYPE = 'BUS2012'.
MOVE control_record_in TO control_record_out.
CALL FUNCTION 'ALE_MODEL_DETERMINE_IF_TO_SEND'
EXPORTING
MESSAGE_TYPE = C_MESSAGE_TYPE
IMPORTING
IDOC_MUST_BE_SENT = L_SEND_FLAG.
EXCEPTIONS
OWN_SYSTEM_NOT_DEFINED = 1
OTHERS = 2.
DATA : BEGIN OF EKKO_tAB OCCURS 0,
EBELN LIKE EKKO-EBELN,
F1 TYPE C VALUE ',',
BUKRS LIKE EKKO-BUKRS,
F2 TYPE C VALUE ',',
BSART LIKE EKKO-BSART,
F3 TYPE C VALUE ',',
LIFNR LIKE EKKO-LIFNR,
F4 TYPE C VALUE ',',
WAERS LIKE EKKO-WAERS,
F5 TYPE C VALUE ',',
BEDAT LIKE EKKO-BEDAT,
F6 TYPE C VALUE ',',
WERKS LIKE EKPO-WERKS,
F7 TYPE C VALUE ',',
PLIFZ LIKE EKPO-PLIFZ,
F8 TYPE C VALUE ',',
EBELP LIKE EKPO-EBELP,
F9 TYPE C VALUE ',',
MATNR LIKE EKPO-MATNR,
F10 TYPE C VALUE ',',
MENGE LIKE EKPO-MENGE,
F11 TYPE C VALUE ',',
MEINS LIKE EKPO-MEINS,
F12 TYPE C VALUE ',',
END OF EKKO_TAB.
DATA SDATA1 LIKE EKKO_tAB OCCURS 0 WITH HEADER LINE.
DATA EBELN LIKE EKKO-EBELN.
WRITE OBJECT-OBJKY TO EBELN.
SELECT T1EBELN T1BUKRS BSART LIFNR WAERS BEDAT WERKS PLIFZ EBELP MATNR MENGE MEINS
FROM EKKO AS T1
INNER JOIN EKPO AS T2 ON T2EBELN = t1EBELN
INTO CORRESPONDING FIELDS OF TABLE EKKO_tAB
WHERE
*T1~KAPPL = 'EF' AND
T1~EBELN = EBELN.
*T1~KSCHL = 'YEDI' .
DATA SDATA LIKE EDIDD-SDATA.
DATA NDATE LIKE SY-DATUM.
DATA NMENGE(17) TYPE C.
LOOP AT EKKO_tAB.
WRITE EKKO_TAB-MENGE TO NMENGE.
NDATE = EKKO_tAB-BEDAT + EKKO_tAB-PLIFZ.
CONCATENATE EKKO_tAB-EBELP ',' EKKO_tAB-BUKRS ',' EKKO_tAB-BSART EKKO_tAB-EBELN ',' EKKO_tAB-LIFNR ',' EKKO_tAB-BEDAT ','
NDATE ',' EKKO_tAB-BSART EKKO_tAB-EBELN ',' EKKO_tAB-EBELN ', 0,' EKKO_tAB-MATNR ','
NMENGE ',' EKKO_tAB-MEINS ',' EKKO_tAB-WERKS INTO SDATA.
MOVE SDATA TO: W_SDATA, T_EDIDD-SDATA.
MOVE 'ZORDERS' TO T_EDIDD-SEGNAM.
APPEND T_EDIDD.
ENDLOOP.
*call function 'L_IDOC_SEGMENT_CREATE'
exporting
i_segnam = 'ZORDERS'
i_sdata = w_sdata
exceptions
others = 1.
*LT_EDIDC
call function 'L_IDOC_SEND'
tables
t_comm_idoc = LT_EDIDC
exceptions
error_distribute_idoc = 1
others = 2.
*DATA T_BDI_MODEL LIKE BDI_MODEL.
WRITE OBJECT-OBJKY TO T_BDI_MODEL.
READ TABLE T_BDI_MODEL INDEX 1. " maximum 1 recipient
L_EDIDC-DIRECT = 1.
L_EDIDC-DOCNUM = DOCNUM. "***
L_EDIDC-RCVPRN = 'HCM_00_785'.
L_EDIDC-RCVPOR = 'MM_PO_FILO'.
MOVE 'ZORDER' TO L_EDIDC-MESTYP.
MOVE 'ZPURIDOC' TO L_EDIDC-IDOCTP.
MOVE 'LS' TO L_EDIDC-RCVPRT.
MOVE T_BDI_MODEL-RCVSYSTEM TO L_EDIDC-RCVPRN.
*MOVE-CORRESPONDING L_EDIDC TO W_EDIDC.
*- Distribute the iDoc
BREAK-POINT.
CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE' "IN UPDATE TASK
EXPORTING
MASTER_IDOC_CONTROL = L_EDIDC
TABLES
COMMUNICATION_IDOC_CONTROL = LT_EDIDC
MASTER_IDOC_DATA = T_EDIDD
EXCEPTIONS
ERROR_IN_IDOC_CONTROL = 01
ERROR_WRITING_IDOC_STATUS = 02
ERROR_IN_IDOC_DATA = 03
SENDING_LOGICAL_SYSTEM_UNKNOWN = 04.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
READ TABLE LT_EDIDC INDEX 1.
control_record_out-direct = '1'.
CONTROL_RECORD_OUT-DOCNUM = DOCNUM. " ***
control_record_out-serial = sy-datum.
control_record_out-serial+8 = sy-uzeit.
control_record_out-mestyp = LT_EDIDC-mestyp.
control_record_out-idoctp = LT_EDIDC-idoctp.
control_record_out-SNDPRN = 'HCM_00_786'.
MOVE 'MM_PO_FILO' TO control_record_out-RCVPOR.
MOVE 'LI' TO control_record_out-SNDPRT.
MOVE 'SAPQIS' TO control_record_out-SNDPOR.
ENDFUNCTION. -
Is ALV possible for this report layout?
Hi,
I'd like to know if I can create this layout in ALV (layout as seen below):
......................|..........Column Header1............|.......Column Header2..........| ...
......................|.Col Header3..|..Col Header4.....|..Col Header5.|.Col Header6.| ...
Row header1...|.....data..........|......data............|.......data........|......data.......| ...
Row header2...|.....data..........|......data............|.......data........|......data.......| ...
Row header3...|.....data..........|......data............|.......data........|......data.......| ...
If this is possible, can you give me an idea how can this be done?
Thank you so much for taking time to read my post.
Best regards,
Jen
Message was edited by:
Jen Abapi will suggest you to go for classical report because it will be more easier ... but in alv list display you can achieve this kind of thing... just check this prog whether it suits you or not....
type-pools : slis.
tables : mara,marc,mard,makt.
data : begin of imara occurs 0,
matnr like mara-matnr,
mtart like mara-mtart,
end of imara.
data : begin of imarc occurs 0,
matnr like mara-matnr,
werks like marc-werks,
end of imarc.
data : begin of imard occurs 0,
matnr like mara-matnr,
lgort like mard-lgort,
end of imard.
data : begin of imakt occurs 0,
matnr like mara-matnr,
maktx like makt-maktx,
end of imakt.
data : begin of itab occurs 0,
rowheading(16),
matnr like mara-matnr,
mtart like mara-mtart,
werks like marc-werks,
lgort like mard-lgort,
maktx like makt-maktx,
end of itab.
data : ifieldcat type slis_t_fieldcat_alv,
wfieldcat type slis_fieldcat_alv,
ilayout type slis_layout_alv,
IEVENT TYPE SLIS_T_EVENT,
WEVENT TYPE SLIS_ALV_EVENT.
data : tabix(3).
select-options : s_matnr for mara-matnr obligatory.
start-of-selection.
perform get_data.
perform build_finaltab.
perform build_fieldcat.
perform build_layout.
perform build_eventtab.
perform displaydata.
*& Form get_data
* text
* --> p1 text
* <-- p2 text
FORM get_data .
select matnr mtart into table imara from mara where matnr in s_matnr.
if not imara[] is initial.
select matnr werks from marc into table imarc for all entries in imara
where matnr = imara-matnr.
select matnr lgort from mard into table imard for all entries in imara
where matnr = imara-matnr.
select matnr maktx from makt into table imakt for all entries in imara
where matnr = imara-matnr.
endif.
ENDFORM. " get_data
*& Form build_finaltab
* text
* --> p1 text
* <-- p2 text
FORM build_finaltab .
loop at imara.
tabix = sy-tabix.
move-corresponding imara to itab.
read table imarc with key matnr = imara-matnr.
itab-werks = imarc-werks.
read table imard with key matnr = imara-matnr.
itab-lgort = imard-lgort.
read table imakt with key matnr = imara-matnr.
itab-maktx = imakt-maktx.
concatenate 'Row no' tabix into itab-rowheading separated by space.
append itab.
endloop.
ENDFORM. " build_finaltab
*& Form build_fieldcat
* text
* --> p1 text
* <-- p2 text
FORM build_fieldcat .
wfieldcat-fieldname = 'ROWHEADING'.
wfieldcat-col_pos = 1.
wfieldcat-outputlen = 15.
wfieldcat-seltext_l = ''.
append wfieldcat to ifieldcat.
clear wfieldcat.
wfieldcat-fieldname = 'MATNR'.
wfieldcat-col_pos = 2.
wfieldcat-outputlen = 18.
wfieldcat-seltext_l = 'Material no'.
append wfieldcat to ifieldcat.
clear wfieldcat.
wfieldcat-fieldname = 'MTART'.
wfieldcat-col_pos = 3.
wfieldcat-outputlen = 10.
wfieldcat-seltext_l = 'Mat gr'.
append wfieldcat to ifieldcat.
clear wfieldcat.
wfieldcat-fieldname = 'WERKS'.
wfieldcat-col_pos = 4.
wfieldcat-outputlen = 10.
wfieldcat-seltext_l = 'Plant'.
append wfieldcat to ifieldcat.
clear wfieldcat.
wfieldcat-fieldname = 'LGORT'.
wfieldcat-col_pos = 5.
wfieldcat-outputlen = 10.
wfieldcat-seltext_l = 'Stor loc'.
append wfieldcat to ifieldcat.
clear wfieldcat.
wfieldcat-fieldname = 'MAKTX'.
wfieldcat-col_pos = 6.
wfieldcat-outputlen = 30.
wfieldcat-seltext_l = 'Material desc'.
append wfieldcat to ifieldcat.
clear wfieldcat.
ENDFORM. " build_fieldcat
*& Form build_layout
* text
* --> p1 text
* <-- p2 text
FORM build_layout .
ilayout-no_colhead = 'X'.
ENDFORM. " build_layout
*& Form build_eventtab
* text
* --> p1 text
* <-- p2 text
FORM build_eventtab .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = IEVENT
* EXCEPTIONS
* LIST_TYPE_WRONG = 1
* OTHERS = 2
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
READ TABLE IEVENT INTO WEVENT WITH KEY NAME = 'TOP_OF_PAGE'.
IF SY-SUBRC = 0.
WEVENT-FORM = 'TOPOFPAGE'.
MODIFY IEVENT FROM WEVENT INDEX SY-TABIX.
ENDIF.
ENDFORM. " build_eventtab
*& Form displaydata
* text
* --> p1 text
* <-- p2 text
FORM displaydata .
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = sy-repid
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* I_STRUCTURE_NAME =
IS_LAYOUT = ilayout
IT_FIELDCAT = ifieldcat
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
IT_EVENTS = ievent
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = itab
* EXCEPTIONS
* PROGRAM_ERROR = 1
* OTHERS = 2
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " displaydata
form topofpage.
write : / sy-uline.
write : /17 sy-vline,28 'Contents from MARA',47 sy-vline,
50 'plant & strg loc',69 sy-vline, 78 'Matrl desc'.
write : / sy-uline.
write : /17 sy-vline,22 'Material no',36 sy-vline, 39 'Mat gr',47 sy-vline, 48 'Plant',58 sy-vline,
60 'strg loc',69 sy-vline.
endform.
this is a test prog just change as per your requirement.
regards
shiba dutta -
How to add a logo to 'PO Output for Communication' report
Dear All,
There is a Standard Concurrent Program 'PO Output for Communication' in PO module.
Can you please let me know which rtf template is being used for this report?
Actually I need to add a company logo to this report, but I am not able to find out the layout where we need to place the logo.
Thanks in adavance.Hi,
There is a Standard Concurrent Program 'PO Output for Communication' in PO module.
Can you please let me know which rtf template is being used for this report?
Actually I need to add a company logo to this report, but I am not able to find out the layout where we need to place the logo.What is the application release?
Please see these docs.
POXPOPDF Seeded RTF Templates for the PO Output for Communication [ID 549508.1]
How to modify XSLFO report to add Logos and also watermark the draft for non approved PO print reports which are possible in XML? [ID 420671.1]
New Template Not Picked By PO Output For Communication [ID 416578.1]
POXPOPDF PO Output For Communication Completes In Error when using RTF template [ID 434774.1]
R12 : PO Output For Communication: Logo File Does Not Show Up in PDF output [ID 1121811.1]
Thanks,
Hussein
Maybe you are looking for
-
Do not seem to be able to backup iPad via iTunes on to my PC. Message after connecting is "iTunes was unable to load class information from Sync Services, Reconnect or try later" Have tried that but get the same result. Remedies I've tried are: wait
-
Can not load the Sonivox 250 Meg GM Wave table into soundfonts manag
I have an Creative Xi-FI platnium and no matter what I try I can NOT load this sound font.. I can load it into Vienna soundfont manager.. I have tried adjusting the cache level (I have 2 GB of RAM BTW in my system), I keep getting an error can not lo
-
Sql - pl/sql performance question
Hi, all I've been reviewing educational examples while preparing for the certification and stumble over this one: "...If you design your application so that all programs that perform an insert on a specific table use the same INSERT statement" i.e. I
-
What to do if E:/iTunes/ has insufficient space????
I try to install iTunes to my computer and it only allows me to download it to my E: drive... It says I have my disk space is 0kb and I am out of disk space... It will not let me change to another driver... I just bought an iPod and cannot use it unt
-
Bug in CS4???
Seems like there is a problem with ScriptArgs and UTF-8 in IDS4. Because it does not handle UTF-8. Norwegian characters, and alle other non standard seems to not work. Did the same thing with IDS3 and there it worked. Is this a bug?