Regarding creation of report categeory
hi friends,
could u help me how to create report categeory of my own .
i mean while using ldb we get the standard selection screen.
instead of that i need just 3 fields in the selection screen of my own.
how can i create that and add it to report category.
explain me briefly asap.
thanks & regards
devender reddy.
Dear Devender Reddy,
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/HRREPORTING/HRREPORTING.pdf
http://help.sap.com/saphelp_erp2005vp/helpdata/en/23/7fde36857ccd15e10000009b38f889/frameset.htm
Create Report Categories :
In this step, you define the report categories and determine the layout of the standard selection screen for these report categories. You can create report categories for programs or queries that are based on the PNP or PNPCE logical databases.
The definition of report categories is divided into two sections:
o In the Change Report Category view, you define general attributes such as sort order, input fields for date, and so on.
o In the Change Selection Criteria view, you define which selection fields of the logical database should be avaliable on the selection screen.
Adjusting the Standard Selection Screen:
In this step, you can adapt the standard selection screen for reports which use the logical database PNP or PNPCE to your requirements.
To do this, you assign a program class to the reports whose selection screen you want to change. The program class determines which selection parameters appear and which characteristics these parameters have.
Reports are assigned to report classes in the standard SAP system. By making entries in Customizing, you can override the SAP report classes.
When you call up a report, a check is carried out first to see whether you have assigned a program class to the report. If you have, the selection screen belonging to the report class appears. Otherwise, the selection screen that was assigned to the report class in the standard SAP system, appears.
Regards,
Naveen.
Similar Messages
-
Help needed regarding creation of report
Hi all
I am using apex 4.0 and oracle 10g
I am creating a classic report and I have columns to display in the report.
ex col A, Col B and Col C
I am getting the values of Col A and Col B values from the table. I need to get the value of Col C from a different table based on Col A and Col B.
Ex:
Col A Col B Col C()
5 4 AAA
1 3 BBB
7 3 CCC
Can anyone please let me know how we can do this in apex or write a sql to generate this kind of report
to get the value for Col C based on col A and B/
Thanks
Rik
Edited by: Rik281 on Aug 4, 2011 7:46 AM
Edited by: Rik281 on Aug 4, 2011 7:49 AMThomas thanks for the quick reply,
I am sorry that I have given the question wrong...
I need to get the value of col C from a different table based on Col A and B Values. can you please let me know about that? -
Diff b/w creation of Report in Shared folder and in My folder
Dear All,
May i know what's the diff b/w creation of Report in Shared folder and in My folder.
Is there any features changes.
Regards..Hi,
you can add shared folders to roles and so give users assigned to this role the permission to use the reports in that folder. Reports and folders in My Folders are not sharable.
Regards
Rainer -
Problem Regarding Creation of Compound field
Hi all,
I have a problem regarding creation of a compound source field.
My source field is say for eg. SF1 and SF2
Destination Field is a look up flat field say LF which has 2 display fields D1 and D2
I mapped SF1 to D1 and SF2 to D2
But when i right click at source and select 'Create compound field' for SF1 and SF2, the compound field is not created automatically.
Can anyone give me a hint as to why is this happening?
Regards,
RoshaniHi Roshani,
Just check for couple of other things, like
1) I hope its not a qualified table and none of those fields are qualified.
2) None of the fields are ther currently in the matching set in the next tab.
3) You didnt map the main filed (look up table filed, which is there as a sub-table name)
4) There are no more display fields for that table.
I hope it should be one of the above issues. please check for them.
Cheers,
Cherry. -
Regarding creation of node element
Hi
i hav a doubt regarding creation of node element. u can create new node element using method create(cn)Element available either directly from wdContext or from wdContext.node(cn) where cn is any context node.
can any one plz explain me what's the difference between two.
does it has any thing to with node being singelton or non-singelton?
also can anyone explain me the difference between add and bind method.
thanks.hi
good
Data Binding Methods
If a property can, or must be bound to the context, the respective bind and bound methods are available.
● The bind methods bind the value of a property to the context element specified by the path.
The name of the method is created according to the following pattern:
BIND_<runtime name of the property>.
Example: table, property: design, method: BIND_DESIGN.
● The bound methods return the path of the context element to which a property is bound and return NULL if no binding exists.
The name of the method is created according to the following pattern:
BOUND_<runtime name of the property>.
Example: table, property: design, method: BOUND_DESIGN.
ADD METHOD->
Two add methods that add an element.
○ If only the element is transferred as parameter, then the element is added at the and of a list
○ If an index is transferred as well, then this element is transferred at the specified index position.
http://help.sap.com/saphelp_erp2005/helpdata/en/66/18b44145143831e10000000a155106/content.htm
thanks
mrutyun^ -
Regarding : Creation of child nodes in a outlinefield
Hi,
I am facing a few problems in creating a child node. I read elements from an array to populate the outline field. The array has exact definitions as to what should be a parent and child respectively. While I am able to create nodes at the parent level, I am unable to create child nodes for any parent. I discovered that the value for the parent node is getting lost. I have tried to use some of the methods to arrive at the parent node, but to no anvil. Could some one suggest how exactly to get the value of the parent node so that the child node can be assigned to the parent.
Thanks In advance.
Balasubramaniam Sures
[email protected]
P.S : I have seen the examples Simple Outline field and File Browser. No clues from here.I take it that you are traversing through the array and loading each
element into the OutlineField. At the risk of stating the obvious, for
each element you must also identify it's parent. This is necessary to
set the relationship from the child to the parent or vise versa.
If you are already doing this and are still having difficulty, the
problem may be as simple as setting the IsFolder property of the parent
node. Unless this is done, it's child nodes will not be visible.
Van Vuong
Lead Technical Analyst
Office: 972.985.5289
VoiceNow: 972.330.0822
Internet: [email protected]
PAGE NET
From: bala[SMTP:[email protected]]
Sent: Friday, October 03, 1997 12:32 PM
To: '[email protected]'
Subject: Regarding : Creation of child nodes in a outline field
Hi,
I am facing a few problems in creating a child node. I read elements from an
array to populate the outline field. The array has exact definitions as to
what should be a parent and child respectively. While I am able to create
nodes at the parent level, I am unable to create child nodes for any parent.
I discovered that the value for the parent node is getting lost. I have
tried to use some of the methods to arrive at the parent node, but to no
anvil. Could some one suggest how exactly to get the value of the parent node
so that the child node can be assigned to the parent.
Thanks In advance.
Balasubramaniam Sures
[email protected]
P.S : I have seen the examples Simple Outline field and File Browser. No
clues from here. -
RE: Regarding : Creation of child nodes in a outlinefield
Hi, Balasubramaniam:
Try to set the isFolder attribute of your parent display node to TRUE.
This may solve your problem. Also, check isFilled attribute of display
node, you might find the answer.
Hope this helps.
Tien Wang
Indus Consultancy Services
http://www.indcon.com
Phone 201.261.3100 x233
Fax 201.261.1399
E-mail : [email protected]
-----Original Message-----
From: owner-forte-users [SMTP:[email protected]]
Sent: Friday, October 03, 1997 5:32 PM
To: '[email protected]'
Subject: Regarding : Creation of child nodes in a outline field
Hi,
I am facing a few problems in creating a child node. I read elements =
from an array to populate the outline field. The array has exact =
definitions as to what should be a parent and child respectively. While =
I am able to create nodes at the parent level, I am unable to create =
child nodes for any parent. I discovered that the value for the parent =
node is getting lost. I have tried to use some of the methods to arrive
=
at the parent node, but to no anvil. Could some one suggest how exactly =
to get the value of the parent node so that the child node can be =
assigned to the parent.
Thanks In advance.
Balasubramaniam Sures
[email protected]
P.S : I have seen the examples Simple Outline field and File Browser. No
=
clues from here.I take it that you are traversing through the array and loading each
element into the OutlineField. At the risk of stating the obvious, for
each element you must also identify it's parent. This is necessary to
set the relationship from the child to the parent or vise versa.
If you are already doing this and are still having difficulty, the
problem may be as simple as setting the IsFolder property of the parent
node. Unless this is done, it's child nodes will not be visible.
Van Vuong
Lead Technical Analyst
Office: 972.985.5289
VoiceNow: 972.330.0822
Internet: [email protected]
PAGE NET
From: bala[SMTP:[email protected]]
Sent: Friday, October 03, 1997 12:32 PM
To: '[email protected]'
Subject: Regarding : Creation of child nodes in a outline field
Hi,
I am facing a few problems in creating a child node. I read elements from an
array to populate the outline field. The array has exact definitions as to
what should be a parent and child respectively. While I am able to create
nodes at the parent level, I am unable to create child nodes for any parent.
I discovered that the value for the parent node is getting lost. I have
tried to use some of the methods to arrive at the parent node, but to no
anvil. Could some one suggest how exactly to get the value of the parent node
so that the child node can be assigned to the parent.
Thanks In advance.
Balasubramaniam Sures
[email protected]
P.S : I have seen the examples Simple Outline field and File Browser. No
clues from here. -
Creation of Report+Form pages
HI all,
In [Building an application using APEX OBE|http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/devdays2012/apexp1_lab/apexp1_lab.html] when create the app, creates pages too, and one of them (well, 2) is a Report+Form.
I tried to search this in my actual application created. But I only found, Form, and Report, but not both.
There are some way to automatize the creation of this 2 pages, like Application Wizard does?
Regards.GiuseppeL wrote:
There are some way to automatize the creation of this 2 pages, like Application Wizard does?Yes. From the application home page click Create Page > Form > Form on a Table with Report, then follow the wizard. -
Hi,
I am new to BI.
I installed OBIEE in linux.
Can anybody please explain the brief procedure of crating tables and reports in bi dashboard.
It's urgent.
Thanks & Regards,
KavithaHi,
I installed admin tool of bi for windows and trying to create rpd file for linux there.
I created a datasource by following the doc,
http://oraclebi.soundvoid.net/2008/10/open-a-linux-hosted-repository-in-online-mode/
but, it displayed only sample sales in the database list at the end of datasource creation.
Actually, in my linux server, I have created a database named test, I want to create an rpd to connect to that database
but, when I selected new from admin tool, it is asking to provide a name for rpd file and not asking any connectivity details, just showing three layers, in physical window, I selected new database, it asked for database nanme and datasource definition. I just gave name as test and definition as Oracle 10g XE, after that copied
this rpd to repository folder in linu bi, changed NQSConfig.INI and instanceconfig.xml fiels and restared bi server, but didn't find the database in the bi answers window. I think the procedure to create rpd file is wrong.
Can you please provide the steps how to create an rpd file to use in linux.
Thanks,
Kavitha -
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 -
CUP - Issue regarding creation of New SAP ID in CUP.
System : SAP GRC 5.3 SP 12..
We have requirement where in we need to design a workflow for creation of New SAP ID.
The Naming convention followed for SAP ID is FIRST LETTER of FIRST NAME and LAST NAME with maximum 8 characters.
For Eg
JOHN SMITH would have SAP ID as JSMITH
JERRY SMITH would have SAP ID as JSMITH01
The requirement here is when user fill the REQUEST FORM for NEW User ID there is field where in the requestor need to put the desired SAP ID,
Can a validation be set OR Logic be written so that user can put the SAP ID as per the naming convention..?
Also , any other solution as to how the situtation can be handled in CUP...
Regards.
AjitHi Ajit,
Yes, you can maintain the user ID in the Active Directory. User id will be now auto populated in the request form, from Active Directory when we data Source is LDAP -Actice directory. So when user login to end user form to create a request, It's all information( user details + manager details ) will fetched from Active Directory.
It is not possible to change userid in later stage of approval in the request.
You can have security as final stage and guide them to create user manually as per naming convention.
Make auto provisioning OFF in CUP
Kind Regards,
Srinivasan -
Creation of report with the help of report painter
Dear Experts,
I need report painter material, if any body have pls farward to me.
my intension to create controlling report with the help of report painter.
I am ready to award full points.
Thanks in advance
Regards
avudaiappan
Moderator - Please read this:
/thread/931177 [original link is broken]
Thread lockedHello Chinasammy,
Report Painter allows you to create reports using data from SAP application components, which you can adapt to meet your individual requirements.
Many of your reporting requirements can already be met by using the standard reports provided by various SAP application components. If these SAP standard reports do not meet your reporting needs, Report Painter enables you to define your specific reports quickly and easily.
When executing a Report Painter report, it is displayed by the system in Report Writer format. You thus have access to the same functions as for Report Writer reports defined in the same way, and can combine Report Painter and Report Writer reports together in a report group.
Report Painter uses a graphical report structure, which forms the basis for your report definition and displays the rows and columns as they appear in the final report output.
To facilitate report definition, you can use many of the standard reporting objects provided by SAP (such as libraries, row/column models, and standard layouts) in your own specific reports. When you define a Report Painter report you can use groups (sets). You can also enter characteristic values directly.
Advantages of Report Painter include:
Flexible and simple report definition
Report definition without using sets
Direct layout control: The rows and columns are displayed in the report definition as they appear in the final report output, making test runs unnecessary.
=============================================
Below mentioned is the process for creating reports using Report Painter as a tool.
Selecting and maintaining a library for your report: As the transfer structure to Report Painter you use a report table, which is defaulted by SAP and can not be maintained. This table contains characteristics, key figures and predefined columns. In a library, you collect the characteristics, key figures, and predefined columns from the report table, which you need for your Report Painter reports.
When you define a Report Painter report, you assign it to a library. Reports assigned to one library can only use the characteristics, key figures, and predefined columns selected for that library.
When you create or maintain a library, the Position field determines the sequence in which the characteristics, key figures or (predefined) key figures appear in the Report Painter selection lists when you define a report. This allows you to position the objects that you use regularly in your reports at the beginning of the selection lists. If you do not make an entry in the Position field, you will not be able to use this object in Report Painter reports.
You can use either the standard SAP libraries for your reports or define your own.
(ii) Selecting or maintaining a standard layout for your report: Standard layouts determine report layout features and the format of your report data.If the SAP standard layouts do not meet your reporting requirements, you can create a new standard layout or change an existing one.
(iii) Defining row and column models: A model is a one-dimensional, predefined reporting structure that you can insert in either the rows or columns of your report.If you often use the same or similar row or column definitions in your reports, it is recommended that you create row or column models.
You must define the row and/or column models that you want to include in your report definition before you define the report.
You can also use the standard column models supplied by SAP.
(iv) Defining the report: Defining a Report Painter report involves the following steps.
(a) Define the report columns: You define the report columns using the characteristics, key figures, and predefined columns selected for the library that the report uses. Alternatively, you can use a column model for column definition. Column models are predefined column structures which you insert into your entire column definition, instead of defining each individual column.
(b) Define the report rows: You define the report rows using the characteristics selected for the library selected for the report.
Alternatively, you can use a row model for your row definition. Row models serve the same purpose as column models, but are used to define a report row.
Edit and format the report rows and columns in line with your requirements. (For example, you can hide rows or columns, define the column width or define colors for your report rows).
(iii)Define general data selection criteria for the selection of your report data: Selection criteria are the characteristics used to select data for the entire report. You cannot enter characteristics as data selection criteria if they are already being used in the report rows or columns.
(iv) Assigning the report to a report group: Once you have defined a report, you must assign it to a report group. A report group can contain one or more reports from the same library. However, reports that share the same data will select data more quickly and improve processing time.
Hopw this helps you. Please let me know if you need anything more and assign points.
Rgds
Manish -
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. -
Regarding standard aging reports
Hi Experts/Gurus
I need the standard reports for customer aging report and vendor aging report.
Need immediate replies.
Your answers can be rewarded with good points.
Regards,
kumarREPORT zfi_customer_ageing
NO STANDARD PAGE HEADING
LINE-COUNT 58
line-size 168
MESSAGE-ID zh_msg.
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: kna1, " Customer Master (General)
t001, " Company Codes
rfpdo.
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 *
Internal Table for Customer Open Items Data
DATA: BEGIN OF int_bsid OCCURS 0,
kunnr LIKE bsid-kunnr, " Customer Number
name1 LIKE kna1-name1, " Customer Name
shkzg LIKE bsid-shkzg, " Dr/Cr Indicator
belnr LIKE bsid-belnr, " Document Number
xblnr LIKE bsid-xblnr, " Ref Doc No
blart LIKE bsid-blart, " Document Type
zfbdt LIKE bsid-zfbdt, " Base Line Date
zbd1t LIKE bsid-zbd1t, " Due date1
zbd2t LIKE bsid-zbd2t, " Due Date2
zbd3t LIKE bsid-zbd3t, " Due Date3
waers LIKE bsid-waers, " Currency
dmbtr LIKE bsid-dmbtr, " Amount in Local Curr
END OF int_bsid.
Internal Table for Amounts Sum Up Data
DATA: BEGIN OF int_final OCCURS 0,
kunnr LIKE bsid-kunnr, " Customer Number
name1 LIKE kna1-name1, " Customer Name
total1 LIKE bsid-dmbtr, " Amount in Local Curr
total2 LIKE bsid-dmbtr, " Amount in Local Curr
total3 LIKE bsid-dmbtr, " Amount in Local Curr
total4 LIKE bsid-dmbtr, " Amount in Local Curr
total5 LIKE bsid-dmbtr, " Amount in Local Curr
total6 LIKE bsid-dmbtr, " Amount in Local Curr
total LIKE bsid-dmbtr, " Amount in Local Curr
END OF int_final.
D A T A D E C L A R A T I O N S
DATA : v_flag, " Flag
v_gtotal1 LIKE bsid-dmbtr, " Amount Totals
v_gtotal2 LIKE bsid-dmbtr, " Amount Totals
v_gtotal3 LIKE bsid-dmbtr, " Amount Totals
v_gtotal4 LIKE bsid-dmbtr, " Amount Totals
v_gtotal5 LIKE bsid-dmbtr, " Amount Totals
v_gtotal6 LIKE bsid-dmbtr, " Amount Totals
v_gtotal LIKE bsid-dmbtr, " Amount Totals
v_subtotal1 LIKE bsid-dmbtr, " Amount Totals
v_subtotal2 LIKE bsid-dmbtr, " Amount Totals
v_subtotal3 LIKE bsid-dmbtr, " Amount Totals
v_subtotal4 LIKE bsid-dmbtr, " Amount Totals
v_subtotal5 LIKE bsid-dmbtr, " Amount Totals
v_subtotal6 LIKE bsid-dmbtr, " Amount Totals
v_subtotal LIKE bsid-dmbtr, " Amount Totals
v_date LIKE bsid-zfbdt, " Due Date
v_tage1(4), " Age 30 days
v_tage2(4), " Age 60 days
v_tage3(4), " Age 90 days
v_fir(15), " Column Text1
v_sec(15), " Column Text2
v_thir(15), " Column Text3
v_four(17), " Column Text4
v_fidd(4), " Days field1
v_sedd(4), " Days field2
v_thdd(4), " Days field3
v_fodd(4), " Days field4
v_str TYPE SY-LISEL, " String
v_str1(11), " String
v_tage(3), " String
v_date1(10). " Date field
R A N G E D E C L A R A T I O N S
RANGES: r_date1 FOR bsid-zfbdt, " Date Range 1
r_date2 FOR bsid-zfbdt, " Date Range 2
r_date3 FOR bsid-zfbdt, " Date Range 3
r_date4 FOR bsid-zfbdt. " Date Range 4
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_kunnr FOR kna1-kunnr. "Customer account
PARAMETERS: p_bukrs LIKE t001-bukrs. "Co. Code
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS: p_allgst LIKE rfpdo-allgstid OBLIGATORY DEFAULT sy-datum.
"Open items at key date
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
PARAMETERS: p_tage1 LIKE rfpdo1-allgfael DEFAULT '30',
p_tage2 LIKE rfpdo1-allgfael DEFAULT '60',
p_tage3 LIKE rfpdo1-allgfael DEFAULT '90',
p_tage4 LIKE rfpdo1-allgfael DEFAULT '120'.
SELECTION-SCREEN END OF BLOCK b3.
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_flds.
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
Header
TOP-OF-PAGE.
PERFORM header.
E N D O F P A G E
Footer
END-OF-PAGE.
ULINE.
T O P O F P A G E D U R I N G L I N E S E L E C T I O N *
Top of Page in Secondary List
TOP-OF-PAGE DURING LINE-SELECTION.
PERFORM header1.
A T L I N E S E L E C T I O N *
AT LINE-SELECTION.
Perform Line Selections
PERFORM line_selection.
E N D O F S E L E C T I O N
END-OF-SELECTION.
List generation
PERFORM basic_list.
*& Form validate_flds
Validation of Selection Screen fields
FORM validate_flds .
Validate Customer Code
CLEAR kna1-kunnr.
SELECT kunnr UP TO 1 ROWS
INTO kna1-kunnr
FROM kna1
WHERE kunnr IN s_kunnr AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Customer Code range'(023).
ENDIF.
Validate Company Code
CLEAR t001-bukrs.
SELECT bukrs UP TO 1 ROWS
INTO t001-bukrs
FROM t001
WHERE bukrs = p_bukrs AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e021. " Invalid Company Code range
ENDIF.
IF ( p_tage1 > p_tage2 ) OR ( p_tage1 > p_tage3 ) OR
( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 1 greater'(004)
'than Column# 2 or 3 or 4'(005).
ENDIF.
*column 2
IF ( p_tage2 > p_tage3 ) OR ( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 2 greater'(006)
'than Column# 3 or 4'(007).
ENDIF.
*column3
IF ( p_tage3 > p_tage4 ).
MESSAGE e999 WITH 'Column 3 greater'(008)
'than Column#4'(009).
ENDIF.
ENDFORM. " validate_flds
*& Form fetch_data
Fetching Data from Database Tables
FORM fetch_data .
Date Range Population
r_date1-sign = 'I'.
r_date1-option = 'BT'.
r_date1-low = p_allgst.
r_date1-high = r_date1-low + p_tage1.
APPEND r_date1.
r_date2-sign = 'I'.
r_date2-option = 'BT'.
r_date2-low = r_date1-high + 1.
r_date2-high = r_date1-low + p_tage2.
APPEND r_date2.
r_date3-sign = 'I'.
r_date3-option = 'BT'.
r_date3-low = r_date2-high + 1.
r_date3-high = r_date1-low + p_tage3.
APPEND r_date3.
r_date4-sign = 'I'.
r_date4-option = 'BT'.
r_date4-low = r_date3-high + 1.
r_date4-high = r_date1-low + p_tage4.
APPEND r_date4.
Select the Customer Open Items data from bsid
SELECT l~kunnr
l1~name1
b~waers
b~dmbtr
b~zfbdt
b~zbd1t
b~zbd2t
b~zbd3t
b~belnr
b~xblnr
b~shkzg
b~blart
INTO CORRESPONDING FIELDS OF TABLE int_bsid
FROM knb1 AS l INNER JOIN kna1 AS l1
ON lkunnr = l1kunnr
INNER JOIN bsid AS b
ON lkunnr = bkunnr AND
lbukrs = bbukrs
WHERE l~kunnr IN s_kunnr AND
l~bukrs = p_bukrs and
b~zfbdt le p_allgst.
IF SY-SUBRC <> 0.
MESSAGE i000 WITH 'No Data found'(027).
ENDIF.
Removing the date limit to get the due items in the past
DELETE int_bsid WHERE
( blart NE 'RE' AND blart NE 'KR' ) OR
shkzg NE 'H'.
SORT int_bsid BY kunnr.
ENDFORM. " fetch_data
*& Form header
Display the Report Columns
FORM header .
v_tage1 = p_tage1 + 1.
v_tage2 = p_tage2 + 1.
v_tage3 = p_tage3 + 1.
v_fidd = p_tage1.
v_sedd = p_tage2.
v_thdd = p_tage3.
v_fodd = p_tage4.
MOVE v_fodd0(4) TO v_fodd1(3).
v_fodd+0(1) = space.
CONCATENATE '1 to'(010) v_fidd INTO v_fir.
CONCATENATE v_tage1 ' to '(011) v_sedd INTO v_sec.
CONCATENATE v_tage2 ' to '(011) v_thdd INTO v_thir.
CONCATENATE v_tage3 ' to '(011) space v_fodd INTO v_four.
Standard header
clear: v_date1, v_str, v_str1, v_tage.
write p_allgst to v_date1.
Move p_tage4 to v_tage.
concatenate '>' v_tage text-025 into v_str1.
concatenate
'Summary of Ageing Analysis for Customer Open Invoices as on'(013)
v_date1 into v_str separated by space.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = 'Saudi International Petrochemical Company'(012)
title2 = v_str.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
FORMAT COLOR 1 INTENSIFIED.
WRITE :/1 sy-vline, 13 sy-vline, 49 sy-vline,
50(101) 'Invoices Due For(In Days)'(014) CENTERED,
151 sy-vline, 168 sy-vline .
WRITE :/1 sy-vline, 2(11) 'Customer#'(015) CENTERED,
13 sy-vline ,14(35) 'Customer Name'(016) CENTERED,
49 sy-vline,
50(101) sy-uline,151 sy-vline,
152(16) 'Total'(017) CENTERED,
168 sy-vline.
WRITE : /1 sy-vline,13 sy-vline, 49 sy-vline,
50(16) v_fir CENTERED, 66 sy-vline,
67(16) v_sec CENTERED, 83 sy-vline,
84(16) v_thir CENTERED, 100 sy-vline,
101(16) v_four CENTERED, 117 sy-vline,
118(16) v_str1 centered, 134 sy-vline,
135(16) 'Already Overdue'(018) CENTERED,151 sy-vline,
168 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
ENDFORM. " header
*& Form basic_list
Display the Basic List
FORM basic_list .
NEW-PAGE LINE-SIZE 168.
LOOP AT int_bsid.
CLEAR v_date.
IF int_bsid-zbd3t <> ' '.
v_date = int_bsid-zfbdt + int_bsid-zbd3t.
ELSE.
IF int_bsid-zbd2t <> ' '.
v_date = int_bsid-zfbdt + int_bsid-zbd2t.
ELSE.
v_date = int_bsid-zfbdt + int_bsid-zbd1t.
ENDIF.
ENDIF.
IF int_bsid-zbd1t = ' '.
v_date = int_bsid-zfbdt.
ENDIF.
IF v_date IN r_date1.
int_final-total1 = int_final-total1 + int_bsid-dmbtr.
ELSEIF v_date IN r_date2.
int_final-total2 = int_final-total2 + int_bsid-dmbtr.
ELSEIF v_date IN r_date3.
int_final-total3 = int_final-total3 + int_bsid-dmbtr.
ELSEIF v_date IN r_date4.
int_final-total4 = int_final-total4 + int_bsid-dmbtr.
ELSEif v_date > r_date4-high.
int_final-total5 = int_final-total5 + int_bsid-dmbtr.
ELSEif v_date < p_allgst.
int_final-total6 = int_final-total6 + int_bsid-dmbtr.
ENDIF.
AT END OF kunnr.
v_flag = 1.
ENDAT.
IF v_flag = 1.
int_final-kunnr = int_bsid-kunnr.
int_final-name1 = int_bsid-name1.
int_final-total = int_final-total1 + int_final-total2 +
int_final-total3 + int_final-total4 + int_final-total5 +
int_final-total6.
APPEND int_final.
v_gtotal1 = v_gtotal1 + int_final-total1.
v_gtotal2 = v_gtotal2 + int_final-total2.
v_gtotal3 = v_gtotal3 + int_final-total3.
v_gtotal4 = v_gtotal4 + int_final-total4.
v_gtotal5 = v_gtotal5 + int_final-total5.
v_gtotal6 = v_gtotal6 + int_final-total6.
v_gtotal = v_gtotal + int_final-total.
WRITE: /1 sy-vline,
2 int_final-kunnr COLOR 4 INTENSIFIED ON,
13 sy-vline,
14 int_final-name1 COLOR 4 INTENSIFIED ON,
49 sy-vline.
DATA : v_rem.
v_rem = sy-tabix MOD 2.
IF v_rem NE 0.
FORMAT COLOR 2 INTENSIFIED.
WRITE : 50 int_final-total1 CURRENCY int_bsid-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsid-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsid-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsid-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsid-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsid-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsid-waers,
168 sy-vline.
ELSE.
WRITE : 50 int_final-total1 CURRENCY int_bsid-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsid-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsid-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsid-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsid-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsid-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsid-waers,
168 sy-vline.
ENDIF.
FORMAT COLOR OFF.
HIDE int_final.
CLEAR int_final.
v_flag = 0.
ENDIF.
AT LAST.
WRITE : /1(168) sy-uline.
FORMAT COLOR 3 INTENSIFIED.
WRITE : /1 sy-vline, 2(47) 'GRAND TOTAL'(022) CENTERED,
49 sy-vline, 50 v_gtotal1 CURRENCY int_bsid-waers,
66 sy-vline, 67 v_gtotal2 CURRENCY int_bsid-waers,
83 sy-vline, 84 v_gtotal3 CURRENCY int_bsid-waers,
100 sy-vline,101 v_gtotal4 CURRENCY int_bsid-waers,
117 sy-vline,118 v_gtotal5 CURRENCY int_bsid-waers,
134 sy-vline,135 v_gtotal6 CURRENCY int_bsid-waers,
151 sy-vline,152 v_gtotal CURRENCY int_bsid-waers,
168 sy-vline.
HIDE : v_gtotal1,
v_gtotal2,
v_gtotal3,
v_gtotal4,
v_gtotal5,
v_gtotal6,
v_gtotal.
ENDAT.
FORMAT COLOR OFF.
ENDLOOP.
WRITE : /1(168) sy-uline.
ENDFORM. " basic_list
*& Form line_selection
When double clicked on the line display the seconday list
FORM line_selection .
NEW-PAGE LINE-SIZE 206.
Sy-lsind = 1.
DATA : v_rem,v_cnt LIKE sy-tabix.
v_cnt = 0.
SORT int_bsid BY belnr zfbdt.
LOOP AT int_bsid WHERE kunnr EQ int_final-kunnr.
v_rem = v_cnt MOD 2.
CLEAR v_date.
IF int_bsid-zbd3t <> ' '.
v_date = int_bsid-zfbdt + int_bsid-zbd3t.
ELSE.
IF int_bsid-zbd2t <> ' '.
v_date = int_bsid-zfbdt + int_bsid-zbd2t.
ELSE.
v_date = int_bsid-zfbdt + int_bsid-zbd1t.
ENDIF.
ENDIF.
IF int_bsid-zbd1t = ' '.
v_date = int_bsid-zfbdt.
ENDIF.
IF v_rem NE 0.
format color 2 intensified.
WRITE :/1 sy-vline, 2 int_bsid-belnr,
12 sy-vline,13 int_bsid-kunnr,
23 sy-vline,24 int_bsid-name1,
59 sy-vline,60 int_bsid-xblnr,
76 sy-vline,77 int_bsid-zfbdt,
87 sy-vline.
WRITE : 104 sy-vline,121 sy-vline,
138 sy-vline,155 sy-vline,
172 sy-vline, 189 sy-vline,
190 int_bsid-dmbtr CURRENCY int_bsid-waers,
206 sy-vline.
IF v_date IN r_date1.
v_subtotal1 = v_subtotal1 + int_bsid-dmbtr.
WRITE : 88 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date2.
v_subtotal2 = v_subtotal2 + int_bsid-dmbtr.
WRITE : 105 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date3.
v_subtotal3 = v_subtotal3 + int_bsid-dmbtr.
WRITE : 122 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date4.
v_subtotal4 = v_subtotal4 + int_bsid-dmbtr.
WRITE : 139 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEif v_date > r_date4-high.
v_subtotal5 = v_subtotal5 + int_bsid-dmbtr.
WRITE : 156 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEif v_date < p_allgst.
v_subtotal6 = v_subtotal6 + int_bsid-dmbtr.
WRITE : 173 int_bsid-dmbtr CURRENCY int_bsid-waers.
ENDIF.
format color off.
ELSE.
WRITE :/1 sy-vline, 2 int_bsid-belnr,
12 sy-vline,13 int_bsid-kunnr,
23 sy-vline,24 int_bsid-name1,
59 sy-vline,60 int_bsid-xblnr,
76 sy-vline,77 int_bsid-zfbdt,
87 sy-vline.
WRITE : 104 sy-vline,121 sy-vline,
138 sy-vline,155 sy-vline,
172 sy-vline,189 sy-vline,
190 int_bsid-dmbtr CURRENCY int_bsid-waers,
206 sy-vline.
IF v_date IN r_date1.
v_subtotal1 = v_subtotal1 + int_bsid-dmbtr.
WRITE : 88 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date2.
v_subtotal2 = v_subtotal2 + int_bsid-dmbtr.
WRITE : 105 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date3.
v_subtotal3 = v_subtotal3 + int_bsid-dmbtr.
WRITE : 122 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEIF v_date IN r_date4.
v_subtotal4 = v_subtotal4 + int_bsid-dmbtr.
WRITE : 139 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEif v_date > r_date4-high.
v_subtotal5 = v_subtotal5 + int_bsid-dmbtr.
WRITE : 156 int_bsid-dmbtr CURRENCY int_bsid-waers.
ELSEif v_date < p_allgst.
v_subtotal6 = v_subtotal6 + int_bsid-dmbtr.
WRITE : 173 int_bsid-dmbtr CURRENCY int_bsid-waers.
ENDIF.
ENDIF.
FORMAT COLOR OFF.
v_cnt = v_cnt + 1.
ENDLOOP.
WRITE : /1(206) sy-uline.
v_subtotal = v_subtotal1 + v_subtotal2 + v_subtotal3
+ v_subtotal4 + v_subtotal5 + v_subtotal6.
FORMAT COLOR 3 INTENSIFIED.
WRITE : /1 sy-vline,
2(85) 'Total'(017) CENTERED CURRENCY int_bsid-waers ,
87 sy-vline,
88 v_subtotal1 CURRENCY int_bsid-waers,
104 sy-vline,
105 v_subtotal2 CURRENCY int_bsid-waers,
121 sy-vline,
122 v_subtotal3 CURRENCY int_bsid-waers,
138 sy-vline,
139 v_subtotal4 CURRENCY int_bsid-waers,
155 sy-vline,
156 v_subtotal5 CURRENCY int_bsid-waers,
172 sy-vline,
173 v_subtotal6 CURRENCY int_bsid-waers,
189 sy-vline,
190 v_subtotal CURRENCY int_bsid-waers,
206 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(206) sy-uline.
CLEAR : v_subtotal,v_subtotal1,v_subtotal2,v_subtotal3,
v_subtotal4,v_subtotal5,v_gtotal1,v_gtotal2,v_gtotal3,
v_gtotal4, v_gtotal5,v_gtotal,v_subtotal6,v_gtotal6.
ENDFORM. " line_selection
*& Form header1
Secondary List Header
FORM header1 .
Standard header
clear: v_date1, v_str, v_str1, v_tage.
write p_allgst to v_date1.
Move p_tage4 to v_tage.
concatenate '>' v_tage text-025 into v_str1.
concatenate
'Details of Ageing Analysis for Customer Open Invoices as on'(024)
v_date1 into v_str separated by space.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = 'Saudi International Petrochemical Company'(012)
title2 = v_str.
FORMAT COLOR 1 intensified.
WRITE :/1(206) sy-uline.
WRITE :/1 sy-vline,12 sy-vline ,
23 sy-vline,59 sy-vline,76 sy-vline,87 sy-vline,
88(101) 'Invoices Due For(In Days)'(014) CENTERED,
189 sy-vline,206 sy-vline.
WRITE : /1 sy-vline, 2(10) 'Doc Number'(021) CENTERED,
12 sy-vline, 13(10) 'Customer#'(015) CENTERED,
23 sy-vline, 24(35) 'Customer Name'(016) CENTERED,
59 sy-vline, 60(16) 'Ref invoice#'(019) CENTERED,
76 sy-vline, 77(10) 'Inv dt'(020) CENTERED,
87 sy-vline, 88(101) sy-uline,
189 sy-vline,190(16) 'Total'(017) CENTERED,
206 sy-vline.
WRITE : /1 sy-vline, 12 sy-vline,
23 sy-vline,59 sy-vline,
76 sy-vline,87 sy-vline,
88(16) v_fir CENTERED, 104 sy-vline,
105(16) v_sec CENTERED, 121 sy-vline,
122(16) v_thir CENTERED, 138 sy-vline,
139(16) v_four CENTERED, 155 sy-vline,
156(16) v_str1 CENTERED,
172 sy-vline,
173(16) 'Already Overdue'(018) CENTERED,
189 sy-vline,
206 sy-vline.
format color off.
WRITE : /1(206) sy-uline.
ENDFORM. " header1
REPORT zfi_vendor_ageing
NO STANDARD PAGE HEADING
LINE-COUNT 58
line-size 168
MESSAGE-ID zh_msg.
Report Name : Vendor Open Items Ageing Report
Purpose : This report displays the Vendor Open Items based on
different Ageing days (Calculated by taking the Base
Line date and the days mentioned in Payment Terms)
M O D I F I C A T I O N L O G
Date | Change Number | Initials | Description
30-Aug-2004 | DTSK900**** | Anji Reddy | Initial
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 (General)
t001, " Company Codes
rfpdo.
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 *
Internal Table for Vendor Open Items Data
DATA: BEGIN OF int_bsik OCCURS 0,
lifnr LIKE bsik-lifnr, " Vendor Number
name1 LIKE lfa1-name1, " Vendor Name
shkzg LIKE bsik-shkzg, " Dr/Cr Indicator
belnr LIKE bsik-belnr, " Document Number
xblnr LIKE bsik-xblnr, " Ref Doc No
blart LIKE bsik-blart, " Document Type
zfbdt LIKE bsik-zfbdt, " Base Line Date
zbd1t LIKE bsik-zbd1t, " Due date1
zbd2t LIKE bsik-zbd2t, " Due Date2
zbd3t LIKE bsik-zbd3t, " Due Date3
waers LIKE bsik-waers, " Currency
dmbtr LIKE bsik-dmbtr, " Amount in Local Curr
END OF int_bsik.
Internal Table for Amounts Sum Up Data
DATA: BEGIN OF int_final OCCURS 0,
lifnr LIKE bsik-lifnr, " Vendor Number
name1 LIKE lfa1-name1, " Vendor Name
total1 LIKE bsik-dmbtr, " Amount in Local Curr
total2 LIKE bsik-dmbtr, " Amount in Local Curr
total3 LIKE bsik-dmbtr, " Amount in Local Curr
total4 LIKE bsik-dmbtr, " Amount in Local Curr
total5 LIKE bsik-dmbtr, " Amount in Local Curr
total6 LIKE bsik-dmbtr, " Amount in Local Curr
total LIKE bsik-dmbtr, " Amount in Local Curr
END OF int_final.
D A T A D E C L A R A T I O N S
DATA : v_flag, " Flag
v_gtotal1 LIKE bsik-dmbtr, " Amount Totals
v_gtotal2 LIKE bsik-dmbtr, " Amount Totals
v_gtotal3 LIKE bsik-dmbtr, " Amount Totals
v_gtotal4 LIKE bsik-dmbtr, " Amount Totals
v_gtotal5 LIKE bsik-dmbtr, " Amount Totals
v_gtotal6 LIKE bsik-dmbtr, " Amount Totals
v_gtotal LIKE bsik-dmbtr, " Amount Totals
v_subtotal1 LIKE bsik-dmbtr, " Amount Totals
v_subtotal2 LIKE bsik-dmbtr, " Amount Totals
v_subtotal3 LIKE bsik-dmbtr, " Amount Totals
v_subtotal4 LIKE bsik-dmbtr, " Amount Totals
v_subtotal5 LIKE bsik-dmbtr, " Amount Totals
v_subtotal6 LIKE bsik-dmbtr, " Amount Totals
v_subtotal LIKE bsik-dmbtr, " Amount Totals
v_date LIKE bsik-zfbdt, " Due Date
v_tage1(4), " Age 30 days
v_tage2(4), " Age 60 days
v_tage3(4), " Age 90 days
v_fir(15), " Column Text1
v_sec(15), " Column Text2
v_thir(15), " Column Text3
v_four(17), " Column Text4
v_fidd(4), " Days field1
v_sedd(4), " Days field2
v_thdd(4), " Days field3
v_fodd(4), " Days field4
v_str TYPE SY-LISEL, " String
v_str1(11), " String
v_tage(3), " String
v_date1(10). " Date field
R A N G E D E C L A R A T I O N S
RANGES: r_date1 FOR bsik-zfbdt, " Date Range 1
r_date2 FOR bsik-zfbdt, " Date Range 2
r_date3 FOR bsik-zfbdt, " Date Range 3
r_date4 FOR bsik-zfbdt. " Date Range 4
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. "Vendor account
PARAMETERS: p_bukrs LIKE t001-bukrs. "Co. Code
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS: p_allgst LIKE rfpdo-allgstid OBLIGATORY DEFAULT sy-datum.
"Open items at key date
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
PARAMETERS: p_tage1 LIKE rfpdo1-allgfael DEFAULT '30',
p_tage2 LIKE rfpdo1-allgfael DEFAULT '60',
p_tage3 LIKE rfpdo1-allgfael DEFAULT '90',
p_tage4 LIKE rfpdo1-allgfael DEFAULT '120'.
SELECTION-SCREEN END OF BLOCK b3.
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_flds.
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
Header
TOP-OF-PAGE.
PERFORM header.
E N D O F P A G E
Footer
END-OF-PAGE.
ULINE.
T O P O F P A G E D U R I N G L I N E S E L E C T I O N *
Top of Page in Secondary List
TOP-OF-PAGE DURING LINE-SELECTION.
PERFORM header1.
A T L I N E S E L E C T I O N *
AT LINE-SELECTION.
Perform Line Selections
PERFORM line_selection.
E N D O F S E L E C T I O N
END-OF-SELECTION.
List generation
PERFORM basic_list.
*& Form validate_flds
Validation of Selection Screen fields
FORM validate_flds .
Validate Vendor Code
CLEAR lfa1-lifnr.
SELECT lifnr UP TO 1 ROWS
INTO lfa1-lifnr
FROM lfa1
WHERE lifnr IN s_lifnr AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e000 WITH 'Invalid Vendor Code range'(023).
ENDIF.
Validate Company Code
CLEAR t001-bukrs.
SELECT bukrs UP TO 1 ROWS
INTO t001-bukrs
FROM t001
WHERE bukrs = p_bukrs AND
spras = sy-langu.
ENDSELECT.
IF sy-subrc <> 0.
MESSAGE e021. " Invalid Company Code range
ENDIF.
IF ( p_tage1 > p_tage2 ) OR ( p_tage1 > p_tage3 ) OR
( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 1 greater'(004)
'than Column# 2 or 3 or 4'(005).
ENDIF.
*column 2
IF ( p_tage2 > p_tage3 ) OR ( p_tage1 > p_tage4 ).
MESSAGE e999 WITH 'Column 2 greater'(006)
'than Column# 3 or 4'(007).
ENDIF.
*column3
IF ( p_tage3 > p_tage4 ).
MESSAGE e999 WITH 'Column 3 greater'(008)
'than Column#4'(009).
ENDIF.
ENDFORM. " validate_flds
*& Form fetch_data
Fetching Data from Database Tables
FORM fetch_data .
Date Range Population
r_date1-sign = 'I'.
r_date1-option = 'BT'.
r_date1-low = p_allgst.
r_date1-high = r_date1-low + p_tage1.
APPEND r_date1.
r_date2-sign = 'I'.
r_date2-option = 'BT'.
r_date2-low = r_date1-high + 1.
r_date2-high = r_date1-low + p_tage2.
APPEND r_date2.
r_date3-sign = 'I'.
r_date3-option = 'BT'.
r_date3-low = r_date2-high + 1.
r_date3-high = r_date1-low + p_tage3.
APPEND r_date3.
r_date4-sign = 'I'.
r_date4-option = 'BT'.
r_date4-low = r_date3-high + 1.
r_date4-high = r_date1-low + p_tage4.
APPEND r_date4.
Select the Vendor Open Items data from BSIK
SELECT l~lifnr
l1~name1
b~waers
b~dmbtr
b~zfbdt
b~zbd1t
b~zbd2t
b~zbd3t
b~belnr
b~xblnr
b~shkzg
b~blart
INTO CORRESPONDING FIELDS OF TABLE int_bsik
FROM lfb1 AS l INNER JOIN lfa1 AS l1
ON llifnr = l1lifnr
INNER JOIN bsik AS b
ON llifnr = blifnr AND
lbukrs = bbukrs
WHERE l~lifnr IN s_lifnr AND
l~bukrs = p_bukrs and
b~zfbdt le p_allgst.
IF SY-SUBRC <> 0.
MESSAGE i000 WITH 'No Data found'(027).
ENDIF.
Removing the date limit to get the due items in the past
DELETE int_bsik WHERE
( blart NE 'RE' AND blart NE 'KR' ) OR
shkzg NE 'H'.
SORT int_bsik BY lifnr.
ENDFORM. " fetch_data
*& Form header
Display the Report Columns
FORM header .
v_tage1 = p_tage1 + 1.
v_tage2 = p_tage2 + 1.
v_tage3 = p_tage3 + 1.
v_fidd = p_tage1.
v_sedd = p_tage2.
v_thdd = p_tage3.
v_fodd = p_tage4.
MOVE v_fodd0(4) TO v_fodd1(3).
v_fodd+0(1) = space.
CONCATENATE '1 to'(010) v_fidd INTO v_fir.
CONCATENATE v_tage1 ' to '(011) v_sedd INTO v_sec.
CONCATENATE v_tage2 ' to '(011) v_thdd INTO v_thir.
CONCATENATE v_tage3 ' to '(011) space v_fodd INTO v_four.
Standard header
clear: v_date1, v_str, v_str1, v_tage.
write p_allgst to v_date1.
Move p_tage4 to v_tage.
concatenate '>' v_tage text-025 into v_str1.
concatenate
'Summary of Ageing Analysis for Vendor Open Invoices as on'(013)
v_date1 into v_str separated by space.
CALL FUNCTION 'Z_STANDARD_HEADER'
EXPORTING
title1 = 'Saudi International Petrochemical Company'(012)
title2 = v_str.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
FORMAT COLOR 1 INTENSIFIED.
WRITE :/1 sy-vline, 13 sy-vline, 49 sy-vline,
50(101) 'Invoices Due For(In Days)'(014) CENTERED,
151 sy-vline, 168 sy-vline .
WRITE :/1 sy-vline, 2(11) 'Vendor#'(015) CENTERED,
13 sy-vline ,14(35) 'Vendor Name'(016) CENTERED,
49 sy-vline,
50(101) sy-uline,151 sy-vline,
152(16) 'Total'(017) CENTERED,
168 sy-vline.
WRITE : /1 sy-vline,13 sy-vline, 49 sy-vline,
50(16) v_fir CENTERED, 66 sy-vline,
67(16) v_sec CENTERED, 83 sy-vline,
84(16) v_thir CENTERED, 100 sy-vline,
101(16) v_four CENTERED, 117 sy-vline,
118(16) v_str1 centered, 134 sy-vline,
135(16) 'Already Overdue'(018) CENTERED,151 sy-vline,
168 sy-vline.
FORMAT COLOR OFF.
WRITE : /1(168) sy-uline.
ENDFORM. " header
*& Form basic_list
Display the Basic List
FORM basic_list .
NEW-PAGE LINE-SIZE 168.
LOOP AT int_bsik.
CLEAR v_date.
IF int_bsik-zbd3t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd3t.
ELSE.
IF int_bsik-zbd2t <> ' '.
v_date = int_bsik-zfbdt + int_bsik-zbd2t.
ELSE.
v_date = int_bsik-zfbdt + int_bsik-zbd1t.
ENDIF.
ENDIF.
IF int_bsik-zbd1t = ' '.
v_date = int_bsik-zfbdt.
ENDIF.
IF v_date IN r_date1.
int_final-total1 = int_final-total1 + int_bsik-dmbtr.
ELSEIF v_date IN r_date2.
int_final-total2 = int_final-total2 + int_bsik-dmbtr.
ELSEIF v_date IN r_date3.
int_final-total3 = int_final-total3 + int_bsik-dmbtr.
ELSEIF v_date IN r_date4.
int_final-total4 = int_final-total4 + int_bsik-dmbtr.
ELSEif v_date > r_date4-high.
int_final-total5 = int_final-total5 + int_bsik-dmbtr.
ELSEif v_date < p_allgst.
int_final-total6 = int_final-total6 + int_bsik-dmbtr.
ENDIF.
AT END OF lifnr.
v_flag = 1.
ENDAT.
IF v_flag = 1.
int_final-lifnr = int_bsik-lifnr.
int_final-name1 = int_bsik-name1.
int_final-total = int_final-total1 + int_final-total2 +
int_final-total3 + int_final-total4 + int_final-total5 +
int_final-total6.
APPEND int_final.
v_gtotal1 = v_gtotal1 + int_final-total1.
v_gtotal2 = v_gtotal2 + int_final-total2.
v_gtotal3 = v_gtotal3 + int_final-total3.
v_gtotal4 = v_gtotal4 + int_final-total4.
v_gtotal5 = v_gtotal5 + int_final-total5.
v_gtotal6 = v_gtotal6 + int_final-total6.
v_gtotal = v_gtotal + int_final-total.
WRITE: /1 sy-vline,
2 int_final-lifnr COLOR 4 INTENSIFIED ON,
13 sy-vline,
14 int_final-name1 COLOR 4 INTENSIFIED ON,
49 sy-vline.
DATA : v_rem.
v_rem = sy-tabix MOD 2.
IF v_rem NE 0.
FORMAT COLOR 2 INTENSIFIED.
WRITE : 50 int_final-total1 CURRENCY int_bsik-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsik-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsik-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsik-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsik-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsik-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsik-waers,
168 sy-vline.
ELSE.
WRITE : 50 int_final-total1 CURRENCY int_bsik-waers,
66 sy-vline,
67 int_final-total2 CURRENCY int_bsik-waers,
83 sy-vline,
84 int_final-total3 CURRENCY int_bsik-waers,
100 sy-vline,
101 int_final-total4 CURRENCY int_bsik-waers,
117 sy-vline,
118 int_final-total5 CURRENCY int_bsik-waers,
134 sy-vline,
135 int_final-total6 CURRENCY int_bsik-waers,
151 sy-vline,
152 int_final-total CURRENCY int_bsik-waers,
168 sy-vline.
ENDIF.
FORMAT COLOR OFF.
HIDE int_final.
CLEAR int_final.
v_flag = 0.
ENDIF. -
Urgent: Regarding Stock Ageing report
hi,
i want to have stock ageing report in which i want to have the deatils :-
This is the material which is present in the palnt from dis <b>date</b> and further details of it consumption. plzz tell the <b>tcode</b> for it.
plzz help me out as it is most urgent to me..
regards,
ric.s
Message was edited by:
ric .sHi
The report MC.9 shows Last movement date/Last receipt date / Last issue date.
In period to analyze give appropriate date range
Or
check MSEG & MARD table to get details about material documents with date
Vishal...
Maybe you are looking for
-
Unable to generate XLS output for Quoting Module
We are using XML Publisher to generate Quote report. We need the output in XLS (Excel) format but it generates only PDF. We debugged the following files: qotSCopOverview.jsp qotSCocPrint.jsp qotSCopPrint.jsp jtfcrmchrome.jsp oracle.apps.aso.print.web
-
Error in writing to file '$ORACLE_HOME/jdk/jre/bin/java'
Hi, I have installed Forms & Reports Services Standalone (10.1.2.0.2) on RHEL 5 and now I am applying the Oracle Application Server 10g Release 2, Patch Set 3 (10.1.2.3), but OUI gives the following error: Error in writing to file '$ORACLE_HOME/jdk/j
-
What is the PCI bus performance of the 1422?
I'm currently using an IMAQ PCI-1422 to acquire images from a camera. The image size is 1280x1024 @ 8-bits a pixel. Currently the camera can only run freely at 20 fps. So this data rate is roughly 26 MB/s. The IMAQ card seems to be able to acquire th
-
Hi..! I am new to use adobe reader. I uploaded a pdf file and it shows as it's uploaded on adobe.com. Will this file be visible to all adobe users or it just appears in my account, not accessible to others? Kindly explain. Thank you.
-
How I can delete a row using a simple query?
SZSLIFE_SPRIDEN_PIDM SZSLIFE_SGBSTDN_TERM_CODE_EFF SZSLIFE_SLRRASG_BLDG_CODE SZSLIFE_SLRRASG_ROOM_NUMBER SZSLIFE_SLRRASG_BEGIN_DATE SZSLIFE_SLRRASG_END_DATE 48547 199890 48547 199990