Report Logic
Hi all
I have an internal table with fields
Sales_Office, Coordinator, Invoicetype, Ordercreation_date, Invoice_creation date.
I want to summarize this report as
Sales_office, coordinator, Invoice type, 1week, 2weeks, 3 weeks,
In this for Sales_office for particular coordinator, and particular invoice type ,
In 1week it has the the total values of diff between Invoice date - order creation date which is <= 7 for particualr Coordinator.Similarly for other weeks.
Can any body help me with this.
cheers
AJ
Please specify clearly...
As par my understanding if if invoice_creation-date - ordercreationdate <=7, the
your report will be like thi.
Sales_office, coordinator, Invoice type, 1week
if its for example invoice_creation-date - ordercreationdate = 15 the you report will lke this
Sales_office, coordinator, Invoice type, 1week 2week 3week
and if its 21<=28
Sales_office, coordinator, Invoice type, 1week 2week 3week 4week.
Let me know if my understanding is correct
Similar Messages
-
hi
any one can tell me the process of Vendor ageing report
thanks in advanceHi,
Vendor / Customer aging report logic based on payment terms & Base Line Date (BSIK-ZFBDT)
Standard T.Code Vendot OI shortlist Ex:S ALR87012085
Refer: http://wiki.sdn.sap.com/wiki/display/Snippets/VendorAgeingReport
Regards
Viswa -
Regarding Customer ageing report logic in R/3.
Dear
Experts
i have requirement to develop customer ageing report logic for input 30,60,90,180,360
i don' t have any idea hw can i take these values in input& hw can i caluclate the values
i searched in sdn, i did n't get any suitable answer..
Regards
SpandanaHello,
Go to transaction code FDI4
Select Form Type RFFRRD20 Line item analysis
Give your form name and description
Structure (Two axis) - as defaulted
Click on Create
You will have lead column
Delete the rows 2, 3 and 4
Double click on column 1
Enter the customer numbers from 1 to 999999
First column double click (A)
Slelect following values
Due date analysis 1
Days for net due date 0 to 30
Give the short name, medium name and long text for the column.
Repeat this step in next columns like 31 to 60, 61 to 90, 91 to 120 and 121 to 99999 days etc in other columns and select due date analysis 1. (B,C,D,E)
Create one more column by way of formula. To create a new column you need to double click on blue line. Put formula add all five columns you have created above. (F = ABCDE)
You prepare one more column with
Due date analysis 2 (G)
Now you prepare one more column add (F+G) = This will be total open items = over due and not due.
Now go to FDI1 and prepare a report - assign the form created in FDI4 to the report.
Characteristics you need to select are
Account Type (Select Account Type as D for customers)
Currency
Customer
Document Type
Special G/L Ind
Company Code
Change the output types and options according to your requirement.
Refer FDI2 and FDI3 for other standard reports created.
Refer FDI5 and FDI6 for other standard forms created.
Save your report and execute.
Regards,
Ravi -
Z report logic- Customer open item analysis
Dear Experts
Our client is using S_ALR_87012178 report for customer open items due analysis.
Now,here they also need sales group wise & division wise split up. Sales group from SO, not CMR, since a single/same customer may have different sales groups for different SOs.
I tried.. but no other report..satisfying this..
So, decided to go ahead with a new Z Development , wherein I plan to call in the program to our customized prgram/report & then to code it, so that sales group & divison are reflected to the corresponding customers.
Now, the challenge is, most (infact all) of the std credit management reports are customer master based, but this requirement (sales group & division) is transaction 9from SO) based.
Now, how do we write the logic/join the tables for me to write FSpec, so as to develop a Z Report.
Anticipating your guidance/suggestions/help.
Good day...
Rgds
Sumanth.Gururajhi,
this is to inform you that,
take the program with RFDOPR10 copy the same program under the name of Z report.
add these fields in selection screen and keep them mandatory on the selection screen & take logic from these tables and fields
1. Sales Group - VBAK-VKGRP
2. Division - VBAK-SPART
take the program with RFDOPR10 copy the same program under the name of Z report.
i think so you cannot capture the total functionality of RFDOPR10 which is the extract of plenty of tables.
finally if it is exectued then entire effort goes invain.
so my suggestion is catch hold of ABAPER and follow the above.
note : if sales group wise and division analysis is coming in the same report then it is very to populate the data from the Z report.
first confirm that.
if it is coming then go ahead with Z reprot itself
balajia -
Hi,
There is an requirement where i need to generate report on aging..
ie.. amount unpaid by the customer to be identified on different aging
0-15 days 16-30 days 31-45 days 56-90 days
so the output of the report show be like above on different again
this logic need to be implemented using decode function in a single select statement
pls help me in this regardHi
create function as par ur aging requirement like
create FUNCTION AGING_30 (mcode varchar2,mdate date) RETURN number IS
a number(10,2);
aging_date date ;
BEGIN
aging_date := mdate - 30 ;
Select sum(Cr) into a from jmst,jdtl
where jmst.trnno = jdtl.trnno and jmst.vtype = jdtl.vtype
and chcode = mcode and trndate > aging_date and trndate<=aging_Date+30;
return(a);
Exception when no_data_found then
return(0);
END;
for aging 31 to 45 day
aging_date := mdate - 45
and trndate > aging_date and trndate<=aging_Date+15;
for 46 to 60 day
aging_date := mdate - 60 ;
and trndate > aging_date and trndate<=aging_Date+30;
abd so on
Rizwan
http://www.rizwanshafiq.blogspot.com -
Report logic to get net payment made after creditmemo posting
i have to create a report for vendor payments made against a project i.e wbs.I am able to get the details of invoice from BSEG and payment clearing from BSAK.If i have posted credit memos to these vendors how could i get them included in the report to ensure i could derive at the net payment made to vendor including the credit memo posted.How do i get the net payment after considering the creditmemo posted.
Hi, you can use the posting key logic, normally the posting keys used for invoice, credit memo and clearing document will be different. You can take help from debit or credit indicator also.
-
Hi ,
There is a report requirement from stock aging report based on the bucket scenario.
I need to calculate the stock based on quantity(MSEG - MENGE) and moving average price/periodic unit price(MBEW - VERPR).
Then i need to perform the same into bucket scenario like 0-09 ,91-180,180-360,>360.
I can see the field (MENGE) in the standard datasource 2LIS_03_BF which is connecting with the infoobject 0QUANT_B.
But in the update rule/transformation there no assignment for this.
For which infoobject i can map to the cube and what logic i need to perform.
There is a calculation for this in the report for the value of the stock below.
Value = Quantity(MENGE)xmoving average price/periodic unit price(VERPR).
Stock Logic:
Stock is consider based on the movement types: 101,701,712.
Can anyone give me the idea on this how to perform the logic.
Thanks,
satyaHi Vijay,
Functional consultant has given the logic for calculating the stock is
Stock Quantity is restricted based on the movement types 101,701,712.
Stock Value = QuantityxMoving average price /periodic unit price
The logic for calculating the buckets based on the Posting date(0PSTNG_DATE).
My concern is how i can perform the same logic in BW side to calculate the value of the stock.
Advice...
Thanks,
Satya
Edited by: satya prasad on Aug 5, 2011 7:03 AM -
Dear All,
Anybody can share the Logic/Functional spec for developing the Stock Aging Report based on the receipt for the current stock which is available in trading plant.
Thank You,
Mani.Hi,
***Logic behind ***
This is define in overall stock on value based, suppose a material is received in Feb-month, same material is received in Jan-2007 , DEC-2007 also.The total value of this inventory is say 90 lakhs, ( 30 lakhs of each month) so system will show inventory aging as below
stock aging less than 30 days, 90 lakhs
stock aging more than 30 days but below 60 days 60 lakhs
stock ageing more than 60 days but below 90 days 30 lakhs
Assuming that no issue taken place if issue is taken place, it will be deducted by default FIFO method. You may have to develop an ABAP report.
Regards,
Biju K -
How can i find the tablename for that field and suggest the report logic
Hi experts
The concept of BOM for finished components are defined in terms of semi finished goods. Hence, routing of a component from raw materials can not be seen directly in system through standard report.
But users need to have the details of a routing of a component from raw material in one report. To provide the details in single report, development is required.
With this report users can see the routing from raw material till component in one single report.
Assumption
BOM is maintained for a component with all related semi finished components till raw material properly.
Material Number: MARA MATNR - Multiple selection option should be there (Mandatory)
Plant: AFRU WERKS - Single selection parameter (Mandatory)
If procurement type is E or X, system has to check the routing through CA03.
If procurement type if F, leave this field as blank
1.operator
2.material
3.material description
4.workcenter
5.vendor
6.operation description
7.uom
8.qty
9.uom
10.setuptime
11.processingtime
12.deliverytime
using cs12,cs13
here i have seen the details of finished goods components like semifinished goods,rawmaterils,i tried se11 to find the the table for relevent field,
i cant get, if possible to suggest me the logic and how to find the relevent table for
that field
Regards
dsfor exploding the bom if you know header material use
CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
EXPORTING
CAPID = 'PP01'
DATUV = SY-DATUM
MEHRS = 'X'
MTNRV = P_MATNR
WERKS = P_WERKS
TABLES
STB = I_BOM
EXCEPTIONS
ALT_NOT_FOUND = 1
CALL_INVALID = 2
MATERIAL_NOT_FOUND = 3
MISSING_AUTHORIZATION = 4
NO_BOM_FOUND = 5
NO_PLANT_DATA = 6
NO_SUITABLE_BOM_FOUND = 7
CONVERSION_ERROR = 8
OTHERS = 9.
now check PLPO & PLKO table for routing or AFVC and AFVV for routing.
if production order created you have to check in afvc and afvv else check in plpo and plko.
for checking with plpo and plko you have to check MAPL table.
for bom and material link
MAST,STPO,STKO.
stlnr is the common field
regards
shiba dutta -
Need correct Target Id for report logical links
Dear Experts,
I have the following requirement where I need to have 5 Trade Funds related reports to be displayed when I click on the 'xyz' workcenter of my business role.
The standard Group Id (Work Center Link Groups) for the reports is FM-ALL-RE.
The logical links for the 5 reports included in the above Group Id are:
FM-MC13-1
FM-MC13-2
FM-MC13-3
FM-MC13-4
FM-MC14-1
So I did the following:
1. Created a custom workcenter e.g. xyz.
2. In workcenter definition, the Logical Link ID is abc (custom).
3. In logical link definition, abc is assigned to Target ID TSLSDASHWC.
4. Group Id FM-ALL-RE is assigned to workcenter xyz.
5. Workcenter assignment to Navigation Bar Profile and Business Role is done as usual.
But I am not getting the links for the 5 reports when I login using the business role and click on Workcenter xyz.
I have analyzed and found that the issue is happening because of step 3, where it seems the wrong Target Id is assigned.
Can anyone please guide as to which should be the correct Target Id which can solve this issue.
I tried to go through various standard SAP business roles but none of them had any link to my above 5 reports.
regards
AnimeshHi Animesh,
I have got the feeling that you are correct concerning the SWITCH_ID field.
You have multiple possibilities to check if it is the reason. One would be to:
Set a breakpoint in method CL_CRM_UI_NAVBAR_SRV->TRAVERSE_WC_DEFINITION() for the following code
* remove entries with inactive switch id
IF iv_ignore_switches EQ abap_false.
LOOP AT lt_wc_infos ASSIGNING <wc_infos> WHERE switch_id_wc_a IS NOT INITIAL OR
switch_id_wclg_a IS NOT INITIAL.
lv_tabix = sy-tabix.
IF cl_webcuif_switch=>is_switch_active( iv_switch_id = <wc_infos>-switch_id_wc_a ) EQ abap_false OR
cl_webcuif_switch=>is_switch_active( iv_switch_id = <wc_infos>-switch_id_wclg_a ) EQ abap_false.
DELETE lt_wc_infos INDEX lv_tabix.
CONTINUE.
ENDIF.
ENDLOOP.
ENDIF.
Then either just jump over the LOOP whenever it is hit or check the contents of LT_WC_INFOS
Now check in WebClient if your links show up
The solution to your problem is afterwards to activate the switch to ensure correct display and (more important) data content.
cheers Carsten -
I have created report directly out of BCS transactional Totals cube and is giving correct output.
But why does SAP suggest to make BCS reports out of virtual cube, rather than BCS totals cube? Is it more helpful for reporting if COI logic is implemented?
What is the distinct difference reason for creating reports with Virtual cube Vs Transactional cube.
What is the pros and cons of creating report out of BCS Transactional cube vs virtual cube.?
Inputs are appreciated.Hi Christopher,
In general, you are right.
But, in practice... The restrictions that you mentioned may be very easily avoided. As I wrote here:
COI Equity method...
it's not even necessary to have associated companies in the Group's hierarchy. Hence, at equity method limitation doesn't work in our situation.
The main point here is a general consolidation logic. And the virtual cube performs it perfectly.
Of course, we can devise some situation which the vcube will not be able to handle. Like running the report for a period when a daughter company was already sold or become an associate (drastical org changes). -
Hi All,
I have a Report Returned customers report which i have to develop based on the Inputs given below :
My Question is How to calculate: previous purchase of those customers should have been 9 or 10 or 11 months before Dec 2011 i.e. previous purchase should have been in Feb 2011 or March 2011 or April 2011.
Returned customers report :
Inputs
(1) Agent (Default All)
(2) Showroom Name (Default All)
(3) Month - Year
(4) Between months
(5) Date from
(6)One day only
Output
List of purchasers who purchased in the input month-year and the purchase is after mentioned between months (month difference of selected month purchase (input 3) and previous purchase should be between the mentioned months (input 4) )
Example:
Agent = All
Showroom = All
Month u2013 Year = Dec 2011
Between months = 9 u2013 11
Output
This should list all purchasers who purchased in the month of Dec 2011, and the previous purchase of those customers should have been 9 or 10 or 11 months before Dec 2011 i.e. previous purchase should have been in Feb 2011 or March 2011 or April 2011.
If I select One day one and specify a date, the report should list only the purchasers of the selected date in Dec 2011 and applying the above logic.
Backend :SQL SERVER 2005
Version: SAPBO3.1 sp3
Kindaly help me on this .
Thanks & Regards,
KumarHi Nilesh,
Try like this
TITLES_FCT.SERIES_TITLE_ID=(CASE WHEN @Prompt('TitleNo','A','Title\TitleNo',multi,free)='ALL' Then TITLES_FCT.TITLE_ID else TITLES_FCT.SERIES_TITLE_ID end)
I mean to say use parentheisis for case statement and even if you get same error instead of '=' try using LIKe or IN keyword for comparision.
Please appreciate if this is useful.
Cheers,
Suresh Aluri. -
Need reporting logic for Previous months sales compared to current month
Dear Folks,
I need to design a report that should give cumulative sales for the month compared with cumulative sales for the same date for previous months e.g. Sales upto 21st May should be compared with sales from 1st to 21st April, from 1st March to 21st March and so on.
Can anyone provide me a logic or CMOD code how to develop this report.
Will be great helpful.
Thanks in Advance.
RakeshHi Rakesh,
To accomplish the required output, you need to create variables that are input enabled and of processing type user eixt in the columns of your report in the query designer. I am assuming that, you would have atleast one variable which is input enabled and of processing type manual entry.
The user would input a date ( for example may 21) in this variable. You need to capture this value in the user eixt in I-STEP 2. From this value you need to calculate the previous month and pass it to the user exit variable. Below is a sample code,
----variable ZPREVDATE:pass the to value from variable ZCURRDAT -
DATA : LV_CALDAY TYPE SY-DATUM,
LS_T_VAR_RANGE TYPE i_t_var_range,
LV_YR(4), LV_MN(2), LV_DY(2).
WHEN 'ZPREVDATE'.
IF i_step = 2.
READ TABLE i_t_var_range INTO LS_T_VAR_RANGE
WITH KEY vnam = ZCURRDAT'.
LV_CALDAY = LS_T_VAR_RANGE-high.
LV_YR = LV_CALDAY+0(4).
LV_MN = LV_CALDAY+4(2).
LV_DY = LV_CALDAY+6(2).
LV_MN = LV_MN - 1.
CONCATENATE LV_YR LV_MN LV_DY INTO LV_CALDAY.
ls_range-low = LV_CALDAY.
ls_range-opt = 'EQ'.
ls_range-sign = 'I'.
APPEND ls_range TO e_t_range.
ENDIF.
The above code is a rough code that would help you to acheive your logic
Regards,
Prem -
I have to print a ordinary classical report in this format.
I need print a report that material wise material text needs to be printed in tabular format.
Scenarios:
1. Material 12345 have 85 lines ,then first 60 lines to printed in left and balance 20 lines to be printed in the right,
2. Material 12345 have 140 lines then first 60 lines to be printed in left and next 60 lines to be printed in the right and
balance 20 lines printed in next page left.
Material Number : 12345
XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
" --> Page Break Here
Material Number : 12346
XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
PS please donot suggest to print using sapscript or smartform
a®Hi ARS,
I developed a scenario as your and figured out a solution .
I create a internal table with two fields.
text1 and text.
data of internal table t_test is as follows---->>>
text1 text
1 1
1 2
1 3
1 4
1 5
1 6
1 80
2 1
2 2
2 3
2 4
2 5
2 6
2 140
lets assume t_test- text1 entries as ur material '1' and '2'.
and t_test-text entries as ur material text description lines, for material 1 there are 80 lines and for material 2 there are 140 lines.
I wrote following code to get the output as u desired.....i create and tested at our IDES, and gives output exactly the same as u wanted.
REPORT ZTEST_MYTEST1.
data: begin of t_test occurs 0,
text1 type i,
text type i,
end of t_test.
data: wa_test like t_test.
DATA: L_TABIX TYPE SY-TABIX.
DATA: CNT TYPE I.
do 2 times.
wa_test-text1 = wa_test-text1 + 1.
CLEAR wa_test-text.
IF wa_test-text1 = 1.
do 80 TIMES.
wa_test-text = wa_test-text + 1.
APPEND wa_test to t_test.
enddo.
ELSE.
do 140 TIMES.
wa_test-text = wa_test-text + 1.
APPEND wa_test to t_test.
enddo.
ENDIF.
ENDDO.
*****Till Now i just created a internal table as ur format and filled it with similar kind of data, now lets see the code to output*******
clear wa_test.
loop at t_test into wa_test.
CNT = CNT + 1.
at new text1.
CLEAR CNT.
CNT = CNT + 1.
NEW-PAGE.
BACK.
write : wa_test-text1.
ULINE.
ENDAT.
* RESERVE 60 LINES.
IF CNT <= 60.
WRITE /1(10) wa_test-text.
IF CNT = 60.
BACK.
WRITE /.
WRITE /.
ENDIF.
ELSEIF CNT >= 61 AND CNT <= 120.
WRITE /13(10) wa_test-text.
IF CNT = 120.
NEW-PAGE.
BACK.
* WRITE /.
* WRITE /.
ENDIF.
ELSEIF CNT > 120.
WRITE /1(10) wa_test-text.
ENDIF.
endloop.
Copy the above program and run to see the output.
This will definitely resolve your issue.
Regards,
Akash Rana
Edited by: AKASH RANA on Aug 12, 2009 11:51 PM
Edited by: AKASH RANA on Aug 12, 2009 11:53 PM -
Dear Experts,
Data in multi-provider is:
u2018Schemeu2019 u2018Valid from Dateu2019 u2018valid to dateu2019
u2018S1u2019 u201801.June.09u2019 u201831.Dec.09u2019
In report requirement user will enter a date range and based on validity, schemes should get picked up.
Say user enters:
Scenario 1: 01.dec.09 to 31.Jan.2010
In output u2018S1u2019 should get picked up. Because it is valid till 31.12.09
Scenario 2: 01.Nov.09 to 30.Nov.09
In output u2018S1u2019 should get picked up.
Scenario 3: 01.May.09 to 15.Jun.09
In output u2018S1u2019 should get picked up. Because it is valid from 01.06.09
All above scenario explains that if data range user enteres is valid for either u201Cfromu201D date or u201Ctou201D date, scheme needs to be picked up for the report.
But problem is u2018ORu2019 condition on two different fields doesnu2019t work.
Not to mentioned if user enters out side this date range scheme S1 should not be displayed.
How to achieve this?
Thank in advance!!
Regards,
AkshayHi,
You can create a mandatory Range variable for a Date Characterisitc and put it in a query.This query is created on a MultiProvider.So when you open a query,it will prompt a variable screen,where in you can select the From and To dates.Based on that the scheme will be displayed.
Rgds,
Murali
Maybe you are looking for
-
Data is not getting reconciled with the R/3 Source
Hi Gurus, I am trying to extract data from R/3, and i did extracted data from R/3 to PSA (no target is created yet), the records in R/3 are arround 1003 (2lis_11_vaitm) and after extraction the data records in PSA are around 5000+ , and i don't have
-
Adobe support - is there anything worse?
Dec. 1 @ 1420h (PST) Support call # 5 or 6 now... I am still on the phone (45 minutes in). The first person I spoke with, I am certain that I just woke up this guy. I know I might be in trouble when he answered, "....Welcome to....err..." long pause
-
Dear Gurus!!!! I've executed an system copy homogeneous, but when I executed start SAP, this stop wp's. In the trace of the Developer trace of the disp+work shows me the following message: trc file: "dev_disp", trc level: 1, release: "640" Mon Feb 19
-
I had made a copy of the main revel file on my mac, and then i put it in my google drive folder for safety. I accidentally deleted one of the two libraries form my iPhone. I opened it up and panicked and thankfully I guess I had a backup of the other
-
Summary column restricted by a condition
I have a table that returns, lets say, 20 rows. I have created a summary item that gives a total for these 20 rows. Is there a way of creating a Summary item that would give me a total across these 20 rows based upon a certain condition? As its an am