Selection of criteria to Create Average demand report
Hi SAP master,
I'm doing the functional spec for Average demand analysis report. This report will grab all the material that have been issue out from plant (mov 601) for the past 3 month periods. I already know which table can be use to build-up this report, the table is MSEG & MKPF.
I will join this two table ( Get MBLNR where MSEG-MBLNR=MKPF-MBLNR) to get the document date, example
1. Material Document : 4900000000
Document Date : 30.11.2006
Total Issue Out : 1
2. Material Document : 4900000001
Document Date : 01.12.2006
Total Issue Out : 2
3. Material Document : 4900000002
Document Date : 02.12.2006
Total Issue Out : 3
for the month of November only one material document contain material that have been issue out from plant. Then for the month of December i have two material document, then i will multiply the total issue out to get the grand total for the month of December
(2+3=5).
In my functional spec, how do i example the criteria? Actually this is my first time doing the functional spec.
Hi,
One more thing you have to add is movement type 602 also so teh total issue out should be the additon of 601 quantity ( - ) and 602 quantity ( + ).
For the grand total of the month of December, you can mention in your FS stating that the quantity ( MENGE ) should be sum of all the MENGE available in the MBLNR starting from 01.12.YYYY to 31.12.YYYY.
If you have any other clarification please let me know.
Regards,
RitiG
Similar Messages
-
Using Select Expert Criteria in a Report Title
Post Author: kevinday17
CA Forum: Formula
Hello,
I can't quite figure out how to get a select expert criteria in my report title.
My title is "Sales by Customer from Jan 1, 2007 to Aug 31, 2007" but I want to be able to have the dates in that title reflect what the user has given as parameters.
So if the user selects July 31, 2007 as the end date, I would like the title to reflect that. I'm less concerned about the format of the date that how to bring it into that text area.
Thanks,
KevinPost Author: yangster
CA Forum: Formula
oh you are not using parameters to do the date selection (i'm guessing you have a reason for this)simplest way for you to achieve what you want would be to create a couple of formula within your report and use those instead of your hard coded dates@begin_dateDATETIME(2007, 08, 01, 00, 00, 00)@end_dateDATETIME(2007, 08, 31, 00, 00, 00)@report_title"Sales by Customer from "& @begin_date &" to "&@end_datein the selection expert put in{SOP30200.DOCDATE} in @begin_date to @end_dateso if you wanted to modify the start and end range change the values inside the 2 formulas, your report title will reflect the changes but this really should be done with parameters to allow more flexibility (but i leave that up to you to decide) -
Any standard FM to print select-options criteria on a basic report?
Hi Experts,
Am trying to print the user entered selection criteria on a classical/basic report. I wrote the code for select-options entries, but, am looking for any standard function module (if i pass my_select_options table, I need to get printable/readable entires) to print on my basic report, pls. let me know (I tried in SE37, but i got an in-active FM - PRINT_SELECTOPTIONS!!)
Thank youHello,
CALL FUNCTION 'PRINT_SELECTIONS'
EXPORTING
rname = program name
rvariante = sy-slset "It will catch the selected variant
mode = 'TABLE'
TABLES
infotab = li_info.
li_info table will contain all selection screen data, you will can restrict what needs to be shown on spool list!
Thanks. -
Creating an Exception Report with a Prompt
All,
Having difficulties with this report, and I wanted to see if I'm trying to make it do too much.
Report: Opportunities Exception Report
Prompt: List of exceptions we are tracking (ie...Custom Field #1 not populated, Source not populated, etc).
I tried to combine criteria to account for each exception (since each exception is based on a seperate field), but doing so prevents me from then adding a Prompt. I have also created individual reports to account for each exception. I'm wondering what the best approach would be to achieve the results I need?
Is it possible to:
1. Combine all individual exception reports (all have same columns, with first column hard-coded to identify which exception type that report contains) into one master exception report, with a prompt on the column that lists the exception type?
2. Create a prompt to a master report that, when selected, applies exception criteria that is appropriate for what is chosen from the Prompt?
3. Somehow work with a Master that that has all the exceptions built into the combined criteria, but still gives a Prompt to select which criteria you're wanting to see?
Thanks in advance for any/all help.
Regards,
JTMike,
Thanks for your response. Looking at the suggestions you gave, the first two wouldn't work for this scenario because of what it is we're trying to do. Essentially, we're just trying to find the missing pieces of data that the Sales Team didn't enter in on an Opportunity. So every report is going to be like this:
1. Show me ALL Opportunities that do not have field 1 populated. (Exception Type 1)
2. Show me ALL Opportunities that do not have field 2 populated. (Exception Type 2)
3. Show me ALL Opportunities that do not have field 3 populated. (Exception Type 3)
The report with combined analysis worked great in putting these exceptions into one report, but you're limited in what you can do with it.
I've toyed with the pivot table, but if have a drop down list of the exception types, can I then change the filter of the complete Opportunity list to be the just the one you select?
Thanks again for your response,
JT -
Creating a Crystal Report for B1 without parameters
Hi Experts,
My question is a simple one.
I create a crystal report for SAP B1 8.8 Patch 10 using CR 2008 SP02.
I have no parameters since its showing sales figures of the past month.
But when I run the report in SAP, a selection criteria screen pops up without any fields.
Just OK and Cancel.
I dont want my users to have to click OK. I need the report to pop-up once the user click on the SAP Menu for the report.
My report file has no parameters.
Thanks for the help
DenisDeinis,
In your report, do you mean:
- you have parameter created, but not used in the report? OR
- there is no parameter field in the report at all?
The reason I am asking is:
If you have parameter fields, But, you did not use it in the report, I think when you run the report within SAP B1, it will still prompts for user to enter something.
Also, if you are using subreport, make sure there is no parameter in the subreport, Although you do not use them. Just delete the parameter field from the list if you are not using them.
Edited by: Shwu Hua Gan on Jun 20, 2010 2:59 AM -
Creating a custom report by combining three already present reports
Hello Gurus,
I am into functional side of MM-WM and business wants to create a custom report for purchasing planning by combining 3 other reports alreayd present on the system. It combines Pending Delivery Report, MRP_PO_RPT report and a query for scheduling agreements.
They also want functionality to include ability to drill into report results and display the underlying Purchasing Documents.
They have given the selection criteria fileds and outout fields.
*NOW I KNOW THAT I will have to hand it over for developement (ABAPer) but I want to know what things I an ABAPer would want to know from my side on this issue...Pleas let me know your suggestions.*It would be great help!!Thanks A lot,
KrutiHi,
First of all you need to identify all the tables and data sources from all the three existing reports and then check whether it is feasible to combine evenrything to get the new report as per the business requirement. Second, since you are combining three reports in to one, i would say, check the data volume as it shouldnot impact the performance of the new report. Now check for the usual things, like the formats / data presentation etc. Hope this is helpful.
Regards
Sreekanth -
I want to create dynamic ALV report
Hi great abapers,
I want to create dynamic ALV report.Please help me.
Regards,
BillaHi,
Please check the code below:
REPORT YMMR_PALLET_OVERVIEW MESSAGE-ID Y_MESSAGE_0001.
Short description:
To Display and sum up the Quantity of scanned materials on pallet for*
each Shipment number for the Packaging Materials. *
TYPE-POOLS : SLIS.
TABLES: YYLE0003. " Scanned SSCC No.
--Structure Declaration--
Structure for Shipment No. and Date.
TYPES : BEGIN OF T_VTTK_TAB ,
TKNUM LIKE VTTK-TKNUM, " Shipment number
ERDAT LIKE VTTK-ERDAT, " created Date
END OF T_VTTK_TAB .
Structure for Shipment No., Packaging Materials and Date.
TYPES: BEGIN OF T_ITAB2,
TKNUM LIKE YYLE0003-TKNUM, " Shipment number
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
QUANTITY TYPE P,
ERDAT LIKE YYLE0003-ERDAT, " created Date
COUNT TYPE I,
END OF T_ITAB2.
Structure for Shipment No. and Packaging Materials.
TYPES: BEGIN OF T_ITAB3,
TKNUM LIKE YYLE0003-TKNUM, " Shipment number
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
QUANTITY TYPE P, " Quantity
END OF T_ITAB3.
--Internal table Declaration--
*Internal tables for the above Declared structures
DATA: G_VTTK_TAB TYPE TABLE OF T_VTTK_TAB,
G_ITAB5_TAB TYPE TABLE OF T_ITAB2,
G_ITAB4_TAB TYPE TABLE OF T_ITAB3,
G_ITAB3_TAB TYPE TABLE OF T_ITAB2. "#EC NEEDED
*Internal table Holding Shipment No.and quantity
DATA: BEGIN OF G_TOTAL_TAB OCCURS 0 ,
TKNUM TYPE YYLE0003-TKNUM, " Shipment number
QUANTITY TYPE P,
COUNT TYPE I,
END OF G_TOTAL_TAB .
*Internal table for selection screen data
DATA: BEGIN OF G_SCANDATA_TAB OCCURS 0,
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
EXIDV TYPE EXIDV, " External Handling Unit
TKNUM LIKE YYLE0003-TKNUM, " Shipment number
QUANTITY LIKE YYLE0003-QUANTITY, " Quantity
END OF G_SCANDATA_TAB.
DATA: BEGIN OF ST_SCANDATA_TAB,
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
EXIDV TYPE EXIDV, " External Handling Unit
TKNUM LIKE YYLE0003-TKNUM, " Shipment number
QUANTITY LIKE YYLE0003-QUANTITY, " Quantity
END OF ST_SCANDATA_TAB.
DATA: BEGIN OF G_SCANDATA_COUNT_TAB OCCURS 0,
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
TKNUM LIKE YYLE0003-TKNUM, " Shipment number
QUANTITY LIKE YYLE0003-QUANTITY, " Quantity
COUNT TYPE I,
END OF G_SCANDATA_COUNT_TAB.
DATA: L_COUNT TYPE I.
*Internal table for Packaging Materials and quantity
DATA: BEGIN OF G_ITAB6_TAB OCCURS 0,
VHILM LIKE YYLE0003-VHILM, " Packaging Materials
QUANTITY TYPE P, " Quantity
END OF G_ITAB6_TAB.
*- Field catalog
DATA: L_ALV_CAT1_TAB TYPE TABLE OF LVC_S_FCAT.
--Work area Declaration--
DATA: WA_VTTK TYPE T_VTTK_TAB,
WA_ITAB3 TYPE T_ITAB2,
WA_ITAB5 TYPE T_ITAB2,
WA_ITAB4 TYPE T_ITAB3,
WA_ITAB1 LIKE G_SCANDATA_TAB,
WA_ALV_CAT1 LIKE LINE OF L_ALV_CAT1_TAB.
----Variable Defnition -
DATA: G_CUSTOM_CONTAINER_0100 TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
G_ALV_GRID_0100 TYPE REF TO CL_GUI_ALV_GRID,
G_CONTAINER_0100 TYPE SCRFNAME VALUE 'LIST',
G_MYLAYOUT TYPE LVC_S_LAYO, "#EC NEEDED
G_WA TYPE REF TO DATA.
DATA: G_VAR TYPE I, " No of records
G_VAR1 TYPE CHAR20. " Variable
--field symbols Declaration--
FIELD-SYMBOLS : <F_FS> TYPE TABLE,
<F_FS3> TYPE ANY,
<F_FS4> TYPE ANY,
<F_FS5> TYPE ANY,
<F_WA> TYPE ANY,
<F_FS15> TYPE ANY,
<F_FS16> TYPE SY-DATUM,
<F_FS2> TYPE T_ITAB2,
<F_FS6> TYPE ANY,
<F_FS7> TYPE ANY,
<F_FS12> TYPE ANY,
<F_FS13> TYPE ANY.
--Selection Parameters--
SELECTION-SCREEN: BEGIN OF BLOCK BLCK01 WITH FRAME TITLE TEXT-000.
"Select options
SELECT-OPTIONS :
S_TKNUM FOR YYLE0003-TKNUM , " Shipment number
S_YYREF FOR YYLE0003-YY_REFERENCE, " Packing reference
S_YYREFT FOR YYLE0003-YY_REFTP, " Reference type
S_EXIDV FOR YYLE0003-EXIDV, " External HU
S_MATNR FOR YYLE0003-MATNR, " Material number
S_VBELN FOR YYLE0003-VBELN, " SD number
S_POSNR FOR YYLE0003-POSNR, " Item number
S_LGTOR FOR YYLE0003-LGTOR, " Door for Wr Hs No
S_VHILM FOR YYLE0003-VHILM, " Packaging Mat
S_YYMEIN FOR YYLE0003-YY_MEINH, " Indicator for UOM
S_QUANTI FOR YYLE0003-QUANTITY, " Quantity
S_YCHECK FOR YYLE0003-YYCHECKED, " Destination_door
S_STATUS FOR YYLE0003-STATUS, " Packing status
S_STASHI FOR YYLE0003-STATUSSHIPTO, " Status on ship-to
S_LOADTR FOR YYLE0003-LOADTRUCK, " Load truck
S_ERDAT FOR YYLE0003-ERDAT , " Date
S_ERZET FOR YYLE0003-ERZET, " Entry time
S_AEDAT FOR YYLE0003-AEDAT, " Last changed on
S_ERNAM FOR YYLE0003-ERNAM, " Name of Person
S_AEZET FOR YYLE0003-AEZET, " Time last change
S_AENAM FOR YYLE0003-AENAM. " Name of person
SELECTION-SCREEN: END OF BLOCK BLCK01.
--INITIALIZATION--
INITIALIZATION.
Clear the variables and workarea
CLEAR :G_VAR,
G_VAR1,
WA_VTTK,
WA_ITAB3,
WA_ITAB5,
WA_ITAB4,
WA_ITAB1,
WA_VTTK,
WA_ITAB3,
WA_ITAB5,
WA_ITAB4,
WA_ITAB1.
--AT SELECTION-SCREEN--
AT SELECTION-SCREEN.
To validate the data entered in selection screen
PERFORM SUB_VALIDATE.
--START-OF-SELECTION--
START-OF-SELECTION.
*To fetch the data from table yyle0003
PERFORM GET_INPUT_DATA.
*To create the Dynamic Field Catalog
PERFORM GET_FIELDCAT.
To populate the data to final table
PERFORM GET_FINAL_DATA.
MODULE status_0100 OUTPUT *
MODULE STATUS_0100 OUTPUT.
*set title bar and PF status.
SET PF-STATUS 'ZVKS'.
SET TITLEBAR 'ZVKS'.
CHECK SY-UCOMM IS INITIAL.
SORT G_SCANDATA_TAB BY TKNUM VHILM.
*Create object for Custom container
CREATE OBJECT G_CUSTOM_CONTAINER_0100
EXPORTING
CONTAINER_NAME = G_CONTAINER_0100
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
LIFETIME_DYNPRO_DYNPRO_LINK = 5.
*Create object for ALV grid
CREATE OBJECT G_ALV_GRID_0100
EXPORTING I_PARENT = G_CUSTOM_CONTAINER_0100.
G_MYLAYOUT-GRID_TITLE = 'Display Scanning data'.
*Call method for table Display
CALL METHOD G_ALV_GRID_0100->SET_TABLE_FOR_FIRST_DISPLAY
CHANGING
IT_OUTTAB = <F_FS>
IT_FIELDCATALOG = L_ALV_CAT1_TAB
EXCEPTIONS
INVALID_PARAMETER_COMBINATION = 1
PROGRAM_ERROR = 2
TOO_MANY_LINES = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
User Interaction
MODULE USER_COMMAND_0100 INPUT.
CALL METHOD CL_GUI_CFW=>DISPATCH.
*To exit , back or cancel
CASE SY-UCOMM.
WHEN 'EXIT'.
LEAVE TO SCREEN 0.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'CANCEL'.
LEAVE PROGRAM.
WHEN OTHERS.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form get_input_data
This sub routine will get the data from yyle0003 table.
FORM GET_INPUT_DATA.
CONSTANTS: C_DOT TYPE C VALUE '.',
C_CHAR TYPE C VALUE 'D'.
CLEAR G_SCANDATA_TAB.
Get the data from yyle0003
SELECT VHILM " Packaging Materials
EXIDV " External Handling Unit
TKNUM " Shipment number
QUANTITY " Quantity
FROM YYLE0003
INTO TABLE G_SCANDATA_TAB
WHERE TKNUM IN S_TKNUM " Shipment number
AND YY_REFERENCE IN S_YYREF " Packing reference
AND YY_REFTP IN S_YYREFT " Reference type
AND EXIDV IN S_EXIDV " External Handling Unit
AND MATNR IN S_MATNR " Material number
AND VBELN IN S_VBELN " SD number
AND POSNR IN S_POSNR " Item number
AND LGTOR IN S_LGTOR " Door for warehouse No
AND VHILM IN S_VHILM " Packaging Materials
AND YY_MEINH IN S_YYMEIN " Indicator for UOM
AND QUANTITY IN S_QUANTI " Quantity
AND YYCHECKED IN S_YCHECK " Destination_door
AND STATUS IN S_STATUS " Packing status
AND STATUSSHIPTO IN S_STASHI " Status on ship-to
AND LOADTRUCK IN S_LOADTR " Load truck
AND ERDAT IN S_ERDAT " Date
AND ERZET IN S_ERZET " Entry time
AND AEDAT IN S_AEDAT " Last changed on
AND ERNAM IN S_ERNAM " Name of Person
AND AEZET IN S_AEZET " Time last change
AND AENAM IN S_AENAM. " Name of person
If VHILM contains any Decimal '.', replace it with D
LOOP AT G_SCANDATA_TAB.
REPLACE C_DOT WITH C_CHAR INTO G_SCANDATA_TAB-VHILM.
IF SY-SUBRC = 0.
MODIFY G_SCANDATA_TAB TRANSPORTING VHILM.
ENDIF.
CLEAR G_SCANDATA_TAB.
ENDLOOP.
*To get the Shipment No Creation date from VTTK.
SELECT TKNUM
ERDAT
FROM VTTK
INTO TABLE G_VTTK_TAB
WHERE TKNUM IN S_TKNUM.
SORT G_SCANDATA_TAB BY VHILM EXIDV. "TKNUM VHILM.
*To get the repeatition of Pacakaging material for each Shipment.
*--- to find the count of packaging materials under each shipment
LOOP AT G_SCANDATA_TAB.
READ TABLE G_SCANDATA_TAB INTO ST_SCANDATA_TAB INDEX SY-TABIX.
AT END OF EXIDV.
L_COUNT = L_COUNT + 1.
MOVE-CORRESPONDING ST_SCANDATA_TAB TO G_SCANDATA_COUNT_TAB.
G_SCANDATA_COUNT_TAB-COUNT = L_COUNT.
CLEAR: ST_SCANDATA_TAB, L_COUNT.
COLLECT G_SCANDATA_COUNT_TAB.
ENDAT.
CLEAR : G_SCANDATA_TAB.
ENDLOOP.
ENDFORM. " get_input_data
*& Form sub_validate
*This subroutine will validate the data eneterd in the selection screen
FORM SUB_VALIDATE.
*Varaiable declaration for Shipment number
DATA: L_TKNUM TYPE YYLE0003-TKNUM."#EC NEEDED " Shipment number
*- Condition will not qualify all primary key (IDENT)
SELECT TKNUM FROM YYLE0003 UP TO 1 ROWS
INTO L_TKNUM "wa_scandata
WHERE TKNUM IN S_TKNUM " Shipment number
AND YY_REFERENCE IN S_YYREF " Packing reference
AND YY_REFTP IN S_YYREFT " Reference type
AND EXIDV IN S_EXIDV " External Handling Unit
AND MATNR IN S_MATNR " Material number
AND VBELN IN S_VBELN " SD number
AND POSNR IN S_POSNR " Item number
AND LGTOR IN S_LGTOR " Door for warehouse No
AND VHILM IN S_VHILM " Packaging Materials
AND YY_MEINH IN S_YYMEIN " Indicator for UOM
AND QUANTITY IN S_QUANTI " Quantity
AND YYCHECKED IN S_YCHECK " Destination_door
AND STATUS IN S_STATUS " Packing status
AND STATUSSHIPTO IN S_STASHI " Status on ship-to
AND LOADTRUCK IN S_LOADTR " Load truck
AND ERDAT IN S_ERDAT " Date
AND ERZET IN S_ERZET " Entry time
AND AEDAT IN S_AEDAT " Last changed on
AND ERNAM IN S_ERNAM " Name of Person
AND AEZET IN S_AEZET " Time last change
AND AENAM IN S_AENAM. " Name of person
ENDSELECT.
IF SY-SUBRC <> 0.
MESSAGE E987 . " No data found for these selection criterias
ENDIF.
ENDFORM. " sub_validate
*& Form get_fieldcat
Preparing Field catalog
FORM GET_FIELDCAT.
DATA: L_REF TYPE REF TO DATA,
L_I TYPE I. " Variable
CONSTANTS: C_CENTER TYPE C VALUE 'C'. " Center Justified
LOOP AT G_SCANDATA_TAB INTO WA_ITAB1.
MOVE-CORRESPONDING WA_ITAB1 TO WA_ITAB3.
APPEND WA_ITAB3 TO G_ITAB3_TAB.
MOVE-CORRESPONDING WA_ITAB1 TO WA_ITAB4.
COLLECT WA_ITAB4 INTO G_ITAB4_TAB.
*To sum up the qunatity field for each TKNUM.
AT END OF TKNUM.
SUM.
MOVE WA_ITAB1-TKNUM TO G_TOTAL_TAB-TKNUM.
MOVE WA_ITAB1-QUANTITY TO G_TOTAL_TAB-QUANTITY .
APPEND G_TOTAL_TAB.
CLEAR G_TOTAL_TAB.
ENDAT.
CLEAR : WA_ITAB1,
WA_ITAB3,
WA_ITAB4.
ENDLOOP.
*--- Begin of change - SKR.EXT - EBDK986377
SORT G_ITAB4_TAB BY TKNUM.
*--- End of change - SKR.EXT - EBDK986377
LOOP AT G_ITAB4_TAB INTO WA_ITAB4.
MOVE-CORRESPONDING WA_ITAB4 TO WA_ITAB5.
MOVE-CORRESPONDING WA_ITAB4 TO G_ITAB6_TAB.
*---- to get the count
READ TABLE G_SCANDATA_COUNT_TAB WITH KEY TKNUM = WA_ITAB5-TKNUM
VHILM = WA_ITAB5-VHILM.
IF SY-SUBRC EQ 0.
WA_ITAB5-COUNT = G_SCANDATA_COUNT_TAB-COUNT.
ENDIF.
APPEND WA_ITAB5 TO G_ITAB5_TAB.
COLLECT G_ITAB6_TAB.
ENDLOOP.
CLEAR : WA_ITAB3.
SORT G_ITAB4_TAB BY TKNUM VHILM.
DELETE ADJACENT DUPLICATES FROM G_ITAB4_TAB COMPARING VHILM.
*To get the Number of fields to be displayed
DESCRIBE TABLE G_ITAB4_TAB LINES G_VAR.
L_I = '3'.
*Field catalog
WA_ALV_CAT1-FIELDNAME = 'TKNUM'(002).
WA_ALV_CAT1-COL_POS = 1.
WA_ALV_CAT1-COLTEXT ='ShipmentNo.'.
APPEND WA_ALV_CAT1 TO L_ALV_CAT1_TAB.
CLEAR : WA_ALV_CAT1.
WA_ALV_CAT1-FIELDNAME = 'ERDAT'(003).
WA_ALV_CAT1-COL_POS = 2.
WA_ALV_CAT1-COLTEXT ='Creation_Date.'(005).
APPEND WA_ALV_CAT1 TO L_ALV_CAT1_TAB.
CLEAR : WA_ALV_CAT1.
Create field catalog for each of VHILM
LOOP AT G_ITAB4_TAB INTO WA_ITAB4.
IF G_VAR >= 1.
CONDENSE WA_ITAB4-VHILM NO-GAPS.
WA_ALV_CAT1-FIELDNAME = WA_ITAB4-VHILM. "l_fieldname.
WA_ALV_CAT1-COL_POS = L_I.
WA_ALV_CAT1-COLTEXT = WA_ITAB4-VHILM.
WA_ALV_CAT1-JUST = C_CENTER. "'C'.
APPEND WA_ALV_CAT1 TO L_ALV_CAT1_TAB.
CLEAR WA_ALV_CAT1.
L_I = L_I + 1.
ENDIF.
*TOTAL-last column in the field catalog
AT LAST.
WA_ALV_CAT1-FIELDNAME = 'TOTAL'(004).
WA_ALV_CAT1-COL_POS = L_I.
WA_ALV_CAT1-COLTEXT = 'TOTAL'(004).
WA_ALV_CAT1-JUST = C_CENTER. " 'C'.
APPEND WA_ALV_CAT1 TO L_ALV_CAT1_TAB.
CLEAR WA_ALV_CAT1.
ENDAT.
SORT L_ALV_CAT1_TAB BY FIELDNAME.
*Non of the field name should not get repeated
DELETE ADJACENT DUPLICATES FROM L_ALV_CAT1_TAB.
ENDLOOP.
SORT L_ALV_CAT1_TAB BY COL_POS.
*Creating Dynamic Internal table
CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE
EXPORTING
IT_FIELDCATALOG = L_ALV_CAT1_TAB
IMPORTING
EP_TABLE = L_REF.
Assigning the Dynamic field Catalog to field symbol.
ASSIGN L_REF->* TO <F_FS>.
CREATE DATA G_WA LIKE LINE OF <F_FS>.
ASSIGN G_WA->* TO <F_WA>.
DELETE ADJACENT DUPLICATES FROM <F_FS> COMPARING ALL FIELDS.
ENDFORM. " get_fieldcat
*& Form display_data
FORM GET_FINAL_DATA.
*variable declaration
DATA: L_TOTAL TYPE I, " Row wise total
L_FILL TYPE I, " Count
L_TOT TYPE I. " Grand total
*To get the TOTAL qunatity in the last line of out put.
LOOP AT G_ITAB6_TAB.
CLEAR WA_ITAB5.
WA_ITAB5-TKNUM = 'TOTAL'(004).
WA_ITAB5-ERDAT = SPACE.
MOVE-CORRESPONDING G_ITAB6_TAB TO WA_ITAB5 .
LOOP AT G_SCANDATA_COUNT_TAB WHERE VHILM = G_ITAB6_TAB-VHILM.
WA_ITAB5-COUNT = WA_ITAB5-COUNT + G_SCANDATA_COUNT_TAB-COUNT.
ENDLOOP.
APPEND WA_ITAB5 TO G_ITAB5_TAB.
CLEAR WA_ITAB5.
ENDLOOP.
DESCRIBE TABLE G_ITAB5_TAB LINES L_TOT.
*>>>>>>>>
****To get total qunatity of all TKNUM
LOOP AT G_TOTAL_TAB .
L_TOTAL = L_TOTAL + G_TOTAL_TAB-QUANTITY.
ENDLOOP.
*>>>>>>>>
*To assign ERDAT to g_itab5_tab
LOOP AT G_ITAB5_TAB INTO WA_ITAB5 .
READ TABLE G_VTTK_TAB INTO WA_VTTK WITH KEY TKNUM = WA_ITAB5-TKNUM.
IF SY-SUBRC = 0.
WA_ITAB5-ERDAT = WA_VTTK-ERDAT.
MODIFY G_ITAB5_TAB FROM WA_ITAB5 TRANSPORTING ERDAT.
ENDIF.
ENDLOOP.
*Assigning value in each field to respective Field symbols.
LOOP AT G_ITAB5_TAB ASSIGNING <F_FS2>.
CLEAR G_TOTAL_TAB-QUANTITY.
ASSIGN COMPONENT 'TKNUM' OF STRUCTURE <F_FS2> TO <F_FS6>.
ASSIGN COMPONENT 'TKNUM' OF STRUCTURE <F_WA> TO <F_FS7>.
<F_FS7> = <F_FS6>.
CONDENSE <F_FS2>-VHILM NO-GAPS.
ASSIGN COMPONENT 'VHILM' OF STRUCTURE <F_FS2> TO <F_FS3>.
ASSIGN COMPONENT 5 OF STRUCTURE <F_FS2> TO <F_FS4>.
MOVE <F_FS3> TO G_VAR1.
ASSIGN COMPONENT G_VAR1 OF STRUCTURE <F_WA> TO <F_FS5>.
<F_FS5> = <F_FS4>.
ASSIGN COMPONENT 'ERDAT' OF STRUCTURE <F_FS2> TO <F_FS16>.
ASSIGN COMPONENT 'ERDAT' OF STRUCTURE <F_WA> TO <F_FS15>.
WRITE <F_FS16> TO <F_FS15> .
Inorder not to display the date '00/00/000',
if there is no DATE .
IF ( <F_FS15> CP '00/*' )
OR ( <F_FS15> CP '00.*' )
OR ( <F_FS15> CP '00-*' ).
<F_FS15> = SPACE.
ELSEIF ( <F_FS15> CO ' / /' )
OR ( <F_FS15> CO ' . .' )
OR ( <F_FS15> CO ' - -' ) .
<F_FS15> = SPACE.
ENDIF.
READ TABLE G_TOTAL_TAB WITH KEY TKNUM = <F_FS6>.
IF SY-SUBRC = 0.
ASSIGN G_TOTAL_TAB-QUANTITY TO <F_FS12>.
ASSIGN COMPONENT 'COUNT' OF STRUCTURE <F_FS2> TO <F_FS12>.
ASSIGN COMPONENT 'TOTAL' OF STRUCTURE <F_WA> TO <F_FS13>.
<F_FS13> = <F_FS13> + <F_FS12>.
L_TOTAL = L_TOTAL + <F_FS12>.
ENDIF.
L_FILL = L_FILL + 1.
IF L_FILL = L_TOT.
ASSIGN L_TOTAL TO <F_FS12>.
ASSIGN COMPONENT 'TOTAL' OF STRUCTURE <F_WA> TO <F_FS13>.
<F_FS13> = <F_FS12>.
ENDIF.
AT END OF <F_FS2>-TKNUM.
APPEND <F_WA> TO <F_FS>.
CLEAR <F_WA>.
ENDAT.
ENDLOOP.
CLEAR: <F_FS6>,
<F_FS7>,
<F_WA>.
*Call the screen where Custom container is defined
CALL SCREEN 0100.
ENDFORM. " display_data
Regards
Kannaiah -
Creating a service report using SQVI
Hi experts
I am creating a service report using SQVI
The report should have the following fiels
SrvPO No | SrvPO Data | vendor | Stata | City | Type of Srv (Ad\banner|maintnc.) | Amount | Status(open or closed)
I am using the following tables using table join fnc
1. EKKO
EBELN-PO No
AEDAT - PO Data
LIFNR - Vendor
PROCSTAT - Status of PO doc
2.LIFNR
REGIO - State
ORTO1 - City
3. ESSR
TXZ01 - Type of Service (Short text)
4.EKPO
NETWE - Net amount of PO
All the tables are legally join but after executing I am not able to fetch any data or hardly one service PO.
And the selection field will be only From Date and To date.or the Service PO No.
Immediate response is urgent
Regards
ParthaModerator message: you said your issue is solved but did not mark your discussion as such, please see
How to close a discussion and why -
How to create a table report with alphabetic link at the top
Hello,
I have a db table of users, and have created a report based on this table, however I want to have each aphabet letter at the top of the report so that users can click on the letter and see all records where the username field starts with that letter.
How can I achieve this?
Thanks,Hello user11243298 (please tell us your name),
Your report query would look something like this (assuming page number is 1):
select some_column1, some_column2
from your_user_table
where username like :P1_INITIAL || '%'
For the letters at the top of the report, here's a couple options:
- If you want all letters to appear whether or not there are any rows, you can create a series of buttons or links, one for each letter, and specify the target URL to submit back to the report page, setting the item P1_INITIAL to each letter.
- If you want only letters that have rows, one way is to create a dynamic LOV based on a query like this:
select distinct upper(substr(username, 1, 1)) d, distinct upper(substr(username, 1, 1)) v
from your_user_table
order by upper(substr(username, 1, 1))
Then use that for a select list with submit, again targeting the report page and setting P1_INITIAL to the selected value.
Hope this helps (if it does, please reward it),
John -
Viewing Report created in Crystal Report Designer
<p>Hi,</p><p>I'm new to CR4E and tries to work with existing report. I saw many error while trying this, please excuse me to the long email below that I explain all the errors I saw......</p><p>I have some reports that were created in Crystal Report Designer (CR XI Release 2) connecting to the Oracle Database using "Oracle Server" type connection. How can I access it from CR4E? I have the following problem (in the order I see them)</p><p>1) In the Eclipse's JSP page, I specified the full path to the report, but I get a report not found error. Must the report locate within the project? Is there any way we can open a report outside of the project?</p><p>2) I copied the report to the project, </p><p> a) followed jrc_print_report example to print the report, get "JNDI name not found" error. </p><p> b) then generate a viewer page, but I get the Driver "crdb_oracle.dll" is not supported error.</p><p>3) I setup the new JNDI followed the jrc_changedatasource.jsp example to change the datasource, but I still get the "JNDI name not found" error.</p><p>4) I imported the report intoEclipse and changed the connection. Then I can create a jsp page to print it to a printer (I still can't view it, but my goal is to print, so that's ok). However, </p><p> a) the original report has a "Command" object from the Oracle database to control where to select the report's data, when I remap, this object disappear and I cannot see how to recreate it. Any suggestion?</p><p> b) also, the report is very complex with many subreports and it will be nightmare to go in and change all of the datasource, also a maintenance nightmare to maintain two copies. Any better suggestions?</p><p>Thank you very much! Your help is very appreciated.</p><p>Celia</p>
Hi Celia
1. Yes the Java Reporting Component (JRC) which is the runtime component of the Crystal Reports for Eclipse can open reports outside the project.  Its often better to have the reports inside the project for deployment purposes but you are welcome to put the report where ever you need it.Â
Note: To use absolute paths, ensure that the CRConfig.xml file does not contain a reportlocation tag.
2. The JRC can't report off of Oracle directly, you would need to use a JDBC driver to connect your reports to Oracle. The crdb_oracle.dll will never connect because its not Java.Â
3. When the JRC finds that the report is not using a supported database driver it will do a lookup to find the name of the report datasource. When it finds the datasource name it will then do a JNDI lookup for a JDBC datasource with the same name. If your Application server doesn't have a datasource with that name it will through the error you were seeing.Â
4. I'm not sure about losing the Command object when changing the datasource but this is probably happening because the Command is linked to the database driver.
5. What you could try doing is creating a JDBC Datasource on your application server where this app will run with a JNDI name that matches your report datasource name. If your reports datasource name is "MyOracleDatasource" then I believe the JNDI name for new JDBC Datasource would have to be "jdbc/MyOracleDatasource".
You could give this a try.
Rob Horne
http://diamond.businessobjects.com/blog/10 -
How to create a daily report for sales order
hi
how to create a daily report for sales order. what fields it must consists of. what are the tables it need?Hi
You have to use the sales order tables VBAK,VBAP and VBEP
So keep date field on selection screen
and treat this date as Order creation data audat field in VBAK.
based on this fetch the data from VBAK and VBAP with the following fields like
VBELN, KUNNR,NETWR,POSNR, MATNR,ARKTX,KWMENG,WAERS etc and display in the report
<b>Reward points for useful Answers</b>
Regards
Anji -
How to create the Updateable Report
Hi,
I have a requirement to create a Updatable report.
I don't find any option of creating that..when I go create Page, I find only SQL Report or Interactive Report.
Want to know
- if there is any documentation for creating Updatable report..I mean step by step process.
- report is having 10 fields and user want only 4-5 fields to be updated.
- Can we create updatable Report for SQL query based on 2-3 tables, I mean joins
- How the fields are getting updated..if we have to write the update statement manually or updating is done automatically.
- can the updatable fields be updatable/read only based on user. (I mean suppose user1 logins, he can update the description field but when user2 logins..he cannot update decription field..he can only view the filed as a norma report column)
Appreciate if some one can provide me the details..
Thanks,
DeepakHi Deepak
Rather than looking in reports go to create a Form and select Tabular Forrm - this is essentially just an updateable form and should get you started.
Cheers
Ben -
How to create a custom Report in SAP CRM using the Bol Framework
Hi Guys
I have developed a report in SE38 which calls a custom Function Module within it and it works all good.
Now I want to take my Function Module as well as the external structures I created for this report and use them to make a View in SAP CRM which will allow the user to make selection and then when they click on a button another view has to be shown which should have the content of the report based on the selection.
I know how to create a view based on the standard object types but this time I want to use my custom function Module..
Kindly advice or refer me to a link that might be useful.
Regards
* Thato *You want to create a View in SE11 calling FM that you created? Is it?
-
Unable to create Database in Reporting Service Configuration
Hi,
We have SQL Server 2012 in our environment. I want to enable monitor report in Lync 2013. i have separate Lync sql instance.
I am trying to configure new database in Reporting Service Configuration manager in report Server database Configuration wizard.
while testing connection getting below error.
could not connect to server:A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to
allow remote connections.(provider:Named Pipes provider,error:40-could not open a connection to SQL Server)
kindly help to resolve issue.Hi Rakesh,
Please check the below details information:
Check the ReportServer db is present in the Database engine.
Go and check the report server configurations (go here:Start -> All Programs -> Microsoft sql server 2012-> Configuration Tools -> Report Service Configuration Manager
check all the connections if still not working. then create a new reporting services Database. While creating it make sure you select native mode, if you want to create a share point services then select share point integration mode.
If the above didn't work, Please check which port is used for SQL Server database engine from SQL Server Configuration Manager.
If we are using dynamic port, please make sure:
SQL Server Browser service is running.
UDP 1434 port is enabled in the firewall.
If we are using static port, please make sure the port is enabled in the firewall.
Below is useful link about how to troubleshoot connection issue:
http://blogs.msdn.com/sql_protocols/archive/2005/12/22/506607.aspx
https://msdn.microsoft.com/en-us/library/ms156468.aspx?f=255&MSPPError=-2147217396
Similar thread for your reference:
http://www.mssqltips.com/sqlservertip/2340/resolving-could-not-open-a-connection-to-sql-server-errors/
If you have any more questions, please feel free to ask.
Regards,
Vicky Liu
Vicky Liu
TechNet Community Support -
Creating a Linked Report in SC 2012 - Operations Manager fails with Error
Hello everyone,
I was trying to create a linked report based on an availability report recently. I found Emre Guclu's scom linked report creation guide here:
http://blogs.technet.com/b/emreguclu/archive/2011/10/13/using-linked-reports-in-scom-to-create-custom-availability-reports-for-specified-monitors.aspx
I go to SSRS web console and select a report (Which is Microsoft.SystemCenter.DataWarehouse.Availability in Microsoft.SystemCenter.Datawarehouse.Reports), select "Create a Linked Report" from context menu, select another location for storing the
report just like on this guide but i get an error rsWrongItemType with exact text:
"The operation you are attempting on item ' Microsoft.SystemCenter.Datawarehouse.Reports/ Microsoft.SystemCenter.Datawarehouse.Availability' is not allowed for this item type. rsWrongItemType"
Does anyone know why is this error happening and better how to fix this?
Below is the screenshot of SSRS.Hi,
Please check the report path you have set, the location must specify the full report path, such as
/custom report folder/MyReport.
Alex Zhao
TechNet Community Support
Maybe you are looking for
-
Worst customer support and website in the world!
I have had bad service from businesses here and there, but Verizon home phone service (which I am forced to use in this location) has amazingly bad customer support and a website from hell! Any tips or tricks how to get any human at Verizon to respon
-
C7 breaks down after choosing the resolution for a new project
Hello Community, finally I succeeded in installing C7 on my MacBook Pro with Mavericks 10.9. But it breaks down every time after I choose the resolution for my project. The beachball appears for one second and then C7 breaks down. On the same MacBook
-
Authorised more than 5 devices
Hi Sorry not really sure where to post this. I'm setting up a media network using apple stuff but I think I'm going to have a problem. You can only asign 5 computers to itunes. I will have upto 8. The list being as follows: macbook air mac mini Iphon
-
Working with PDF, how to make it landscape?
I'm using CF8 and I just want to create a very simple PDF report. Here is what I did: <cfdocument format="PDF" orientation = "landscape" saveasname="ReportName" pagetype="custom" pageheight="8.5" pagewidth="15.5" marg
-
TS1559 wifi settings greyed out on iphone 4s
Does anyone know how to fix this. I have tried restoring my phone to a backup, to factory settings etc but nothing seems to work. Many thanks in advance