Using Extracts in Reports
How to use extracts in report Programming?
Writes all fields of the field group fg (see FIELD-GROUPS) as one record to a sequential dataset (paging). If a field group HEADER has been defined, its fields prefix each record to form a sort key. You can then sort this dataset using SORT and process it with LOOP ... ENDLOOP. After this, EXTRACT cannot be executed again.
As soon as the first dataset for a field group has been extracted with EXTRACT, the field group cannot be expanded using INSERT. The field group HEADER, in particular, cannot be expanded after the first EXTRACT (regardless of field group).
Large extract datasets are not kept in main memory; instead, they are written to an external help file. You can specify the directory in which this file is to be stored using the SAP profile parameter DIR_EXTRACT. By default, the system uses the SAP file directory SAP profile parameter DIR_DATA).
Filling an Extract with Data
Once you have declared the possible record types as field groups and defined their structure, you can fill the extract dataset using the following statements:
EXTRACT <fg>.
When the first EXTRACT statement occurs in a program, the system creates the extract dataset and adds the first extract record to it. In each subsequent EXTRACT statement, the new extract record is added to the dataset.
Each extract record contains exactly those fields that are contained in the field group <fg>, plus the fields of the field group HEADER (if one exists). The fields from HEADER occur as a sort key at the beginning of the record. If you do not explicitly specify a field group <fg>, the
EXTRACT
statement is a shortened form of the statement
EXTRACT HEADER.
When you extract the data, the record is filled with the current values of the corresponding fields.
As soon as the system has processed the first EXTRACT statement for a field group <fg>, the structure of the corresponding extract record in the extract dataset is fixed. You can no longer insert new fields into the field groups <fg> and HEADER. If you try to modify one of the field groups afterwards and use it in another EXTRACT statement, a runtime error occurs.
By processing EXTRACT statements several times using different field groups, you fill the extract dataset with records of different length and structure. Since you can modify field groups dynamically up to their first usage in an EXTRACT statement, extract datasets provide the advantage that you need not determine the structure at the beginning of the program.
Assume the following program is linked to the logical database F1S.
REPORT demo_extract_extract.
NODES: spfli, sflight.
FIELD-GROUPS: header, flight_info, flight_date.
INSERT: spfli-carrid spfli-connid sflight-fldate
INTO header,
spfli-cityfrom spfli-cityto
INTO flight_info.
START-OF-SELECTION.
GET spfli.
EXTRACT flight_info.
GET sflight.
EXTRACT flight_date.
There are three field groups. The INSERT statement assigns fields to two of the field groups. During the GET events, the system fills the extract dataset with two different record types. The records of the field group FLIGHT_INFO consist of five fields: SPFLI-CARRID, SPFLI-CONNID, SFLIGHT-FLDATE, SPFLI-CITYFROM, and SPFLI-CITYTO. The first three fields belong to the prefixed field group HEADER. The records of the field group FLIGHT_DATE consist only of the three fields of field group HEADER. The following figure shows the structure of the extract dataset:
Similar Messages
-
Extracting a Report from SAP Spool into a Useful Excel 2010 Format
Hi All,
Extracting a Report from SAP Spool into a Useful Excel 2010 Format. I'm currently running the following report in SAP and would like the
ability to set this report up as a recurring report running weekly and
subsequently access this report in a useable Excel 2010 format without
much data manipulation. Can you please assist me. Below, I've tried to
provide an example of what I'm encountering. Thanks, beforehand for
your assistance.
Here goes:
Step one: Run 62 Report in SAP S_P99_41000062- Material List Price and
Inventory
Step 2. Select stored Variant "Weekly KPI", ok. Enter the enter the
desired company code and period I want thre report to run for and update
the currency, if necessary. Having input my desired criteria, I believe
I can either execute immediately, run in the background, preset to run
at date in the future. For this example let's just execute, immediately.
This is where the difference originates. Given, I run this report
immediately, I'm able to simply extract the result to Excel via the list
selection noted in the tool bar below. The result is a data friendly
excel 2007 report is automatically generated.
Export to Excel via list:
Select save and Excel 2007 opens automatically:
That said, the method outlined above works perfectly fine if you want
the report immediately. Now let go back and run the exact same report
with exceptoin of running it in the background and having to retrieve it
from the Spool (SP01) uisng my user ID. Given the report generated in
the background, I would now access the report via the spool and make
the following selections:
SP01 + execute to see my report
I would hit the sunglasses to see the actual report, then want to
extract this report to Excel by selecting the export option.
I would at this point select spreadsheet and be given an option to save
the spreadsheet to local file. However, upon trying to open the
spreadsheet I will receive an error messageindicating that the format is
different than that which the file I am currently trying to open it
with. I'm currently running Excel 2010 on my computer. The currency
format and other issues arrise with this extract. Please help.
Thanks,
Chowadary.Update to Latest GUI.
Use List -> Export -> Spreadsheet to get the output to excel.
I remember in ALV max length allowed is 1023 characters and the max no of columns supported is 90. Issue occurs when row size of exported data gets more than 1023 character. (This includes if Long/Medium Header Text used ) If it exceed 1023 character the columns splits and moves to next row.
Check your fieldcatog for header lengths.
-Satya -
Hi,
Is it possible to extract a report using the SCABB 3.7.0 (or any other version) like the "TOP WEB HOSTS" but instead of HITS as the results for the "TOP WEB HOSTS" I can see the traffic volume toward the top hosts?
other question:
When I extract the "TOP WEB HOSTS" report, I use the field "where the host contains" and type something like "google" to see the top 10 google related hosts.
I would like to extract some report like "TOP WEB IP ADDRESSES", is it possible?
thanks!
_FD.The following works for me when I tested it on SSMS (SQL Server Management Studio)
SELECT distinct
CS.name0 as 'Computer Name',
CS.domain0 as 'Domain',
CS.UserName0 as 'User',
BIOS.SerialNumber0 as 'Bios serial',
SE.SerialNumber0 as 'System Enclosure serial',
CS.Manufacturer0 as 'Manufacturer',
CS.Model0 as 'model',
OS.Caption0 as 'OS',
RAA.SMS_Assigned_Sites0 as 'Site',
RAM.TotalPhysicalMemory0 as 'Total Memory',
sum(isnull(LDisk.Size0,'0')) as 'Hardrive Size',
sum(isnull(LDisk.FreeSpace0,'0')) AS 'Free Space',
CPU.CurrentClockSpeed0 as 'CPU Speed',
IP.IP_Addresses0 as 'IP Address'
from
v_GS_COMPUTER_SYSTEM CS
right join v_GS_PC_BIOS BIOS on BIOS.ResourceID = CS.ResourceID
right join v_GS_SYSTEM SYS on SYS.ResourceID = CS.ResourceID
right join v_GS_OPERATING_SYSTEM OS on OS.ResourceID = CS.ResourceID
right join v_RA_System_SMSAssignedSites RAA on RAA.ResourceID = CS.ResourceID
right join V_GS_X86_PC_MEMORY RAM on RAM.ResourceID = CS.ResourceID
right join v_GS_Logical_Disk LDisk on LDisk.ResourceID = CS.ResourceID
right join v_GS_Processor CPU on CPU.ResourceID = CS.ResourceID
right join v_GS_SYSTEM_ENCLOSURE SE on SE.ResourceID = CS.ResourceID
right join v_RA_System_IPAddresses IP on IP.ResourceID = CS.ResourceID
where
LDisk.DriveType0 =3
group by
CS.Name0,
CS.domain0,
CS.Username0,
BIOS.SerialNumber0,
SE.SerialNumber0,
CS.Manufacturer0,
CS.Model0,
OS.Caption0,
RAA.SMS_Assigned_Sites0,
RAM.TotalPhysicalMemory0,
CPU.CurrentClockSpeed0,
IP.IP_Addresses0
note that what @Vincez did
was to add join to another table 'v_RA_System_IPAddresses'
and select column IP_Addresses0 from the table
please try again.
---Pat -
The STOP statement was used outside a report flow.
Hi Gurus,
when i am executing this program it is going to short dump.
pls help me out.
thanks in advance.
Runtime Errors STOP_NO_REPORT
Date and Time 06.10.2008 12:10:06
Short text
The STOP statement was used outside a report flow.
What happened?
Error in the ABAP Application Program
The current ABAP program "YMRP0003" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
The STOP statement is only useful in specific events of the report
processing (that is, the execution of a type 1 program). In this case,
there was no report flow, so the statement could not be executed.
How to correct the error
If the error occurred in your own ABAP program or in an SAP
program you modified, try to remove the error.
System environment
SAP-Release 700
Application server... "ciRDE"
Network address...... "10.131.28.7"
Operating system..... "HP-UX"
Release.............. "B.11.23"
Hardware type........ "ia64"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 3
Shortdump setting.... "full"
Database server... "hpx190"
Database type..... "ORACLE"
Database name..... "RDE"
Database user ID.. "SAPDAT"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Apr 21 2008 20:48:34"
create on........ "HP-UX B.11.23 U ia64"
Database version. "OCI_102 (10.2.0.1.0) "
Patch level. 157
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "HP-UX B.11"
Memory consumption
Roll.... 16192
EM...... 8379680
Heap.... 0
Page.... 65536
MM Used. 3492016
MM Free. 695200
User and Transaction
Client.............. 050
User................ "MBAGGALA"
Language key........ "E"
Transaction......... "CC31 "
Transactions ID..... "48E9EB60C2944602E10000000A831C07"
Program............. "YMRP0003"
Screen.............. "SAPMC29C 0020"
Screen line......... 22
Information on where terminated
Termination occurred in the ABAP program "YMRP0003" - in "SCM-MRP-FSE-12_02".
The main program was "SAPMC29C ".
In the source code you have the termination point in line 138
of the (Include) program "YMRP0003".
Source Code Extract
Line
SourceCde
108
109
110
*This function module read the status of an object
111
112
CALL FUNCTION 'STATUS_TEXT_EDIT'
113
EXPORTING
114
client = sy-mandt
115
flg_user_stat = lc_flagx
116
objnr = ls_ecm_data-objnr
117
only_active = lc_flagx
118
spras = sy-langu
119
IMPORTING
120
line = lf_sttxt
121
user_line = lf_asttx
122
EXCEPTIONS
123
object_not_found = 1
124
OTHERS = 2.
125
126
CHECK NOT sy-tcode EQ 'CC32'.
127
*-- Begin of Changes made by DGupta1 on 07/12/2006--
128
Changes are made to update the Change Number Dates While Calling CC32
129
from custom transaction YC06 only
130
CHECK NOT sw_yc06 EQ 'X'.
131
*-- End of Changes made by DGupta1 on 07/12/2006--
132
133
CHECK NOT lf_sttxt CS 'ECCM' AND NOT lf_sttxt CS 'ECOR'.
134
135
136
IF ls_ecm_data-datuv NE lc_maxdate.
137
MESSAGE s011.
>>>>>
STOP.
139
ENDIF.
140
141
142
IF lf_lastd < lf_artwd.
143
MESSAGE s012.
144
STOP.
145
ENDIF.
146
147
IF ls_ecm_data-lvorm = lc_flagx.
148
MESSAGE s013.
149
STOP.
150
ENDIF.
151
152
WRITE: lf_lastd TO lf_lastd_string.
153
WRITE: lf_artwd TO lf_artwd_string.
154
155
156
IF ls_ecm_data-ccart NE lc_fixd.
157
Contents of system fields
Name
Val.
SY-SUBRC
0
SY-INDEX
0
SY-TABIX
0
SY-DBCNT
1
SY-FDPOS
40
SY-LSIND
0
SY-PAGNO
0
SY-LINNO
1
SY-COLNO
1
SY-PFKEY
ARC0H
SY-UCOMM
FCBU
SY-TITLE
Create ECR: Object Types
SY-MSGTY
S
SY-MSGID
YMRP
SY-MSGNO
011
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO
0
SY-DATUM
20081006
SY-UZEIT
121006
SY-XPROG
SAPCNVE
SY-XFORM
CONVERSION_EXIT
Active Calls/Events
No. Ty. Program Include Line
Name
7 FORM YMRP0003 YMRP0003 138
SCM-MRP-FSE-12_02
6 FUNCTION SAPLXCCA ZXCCAU05 39
EXIT_SAPMC29C_005
5 FORM SAPMC29C MC29CFS1_SAVE_USER_EXIT 36
SAVE_USER_EXIT
4 FORM SAPMC29C MC29CFF2_FCODE_FCBU_EXECUTE 88
FCODE_FCBU_EXECUTE
3 FORM SAPMC29C MC29CFO1_OKCODE_CHECK 252
OKCODE_CHECK
2 MODULE (PAI) SAPMC29C MC29CI10_OKCODE 12
OKCODE
1 MODULE (PAI) SAPMC29C MC29CI10_DYNPRO_CALL 11
DYNPRO_CALL
Chosen variables
Name
Val.
No. 7 Ty. FORM
Name SCM-MRP-FSE-12_02
SY-REPID
YMRP0003
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5455333322222222222222222222222222222222
9D20000300000000000000000000000000000000
SY-TCODE
CC31
00000000000000000000
00000000000000000000
44332222222222222222
33310000000000000000
SW_YC06
0
0
2
0
LF_STTXT
CRTD
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
4554222222222222222222222222222222222222
3244000000000000000000000000000000000000
SYST-REPID
YMRP0003
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5455333322222222222222222222222222222222
9D20000300000000000000000000000000000000
LS_ECM_DATA-DATUV
20081006
00000000
00000000
33333333
20081006
LC_MAXDATE
29991231
00000000
00000000
33333333
29991231
%_PRINT
000 0###
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222333222222222222222222222222222222222222222222222222222222222222222222222222222222222223000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
SY-MSGID
YMRP
00000000000000000000
00000000000000000000
54552222222222222222
9D200000000000000000
LC_FLAGX
X
0
0
5
8
SPACE
0
0
2
0
SY-MSGNO
011
000
000
333
011
LC_ITEM
EUR_SCM-PUR-FSE-12_02
000000000000000000000
000000000000000000000
455554425552454233533
552F33DD052D635D12F02
SY-MSGV1
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV2
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV3
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV4
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
LF_LASTD
00000000
00000000
00000000
33333333
00000000
LF_ARTWD
00000000
00000000
00000000
33333333
00000000
SY-SUBRC
0
0000
0000
No. 6 Ty. FUNCTION
Name EXIT_SAPMC29C_005
ECM_ALT_DATE
Table IT_665[0x202]
\FUNCTION=EXIT_SAPMC29C_005\DATA=ECM_ALT_DATE
Table reference: 113
TABH+ 0(20) = 0000000000000000000000000000000000000000
TABH+ 20(20) = 000000710000029900000000000000CAFFFFFFFF
TABH+ 40(16) = 040000DB000006200010249401800000
store = 0x0000000000000000
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 113 (0x00000071)
label = 665 (0x00000299)
fill = 0 (0x00000000)
leng = 202 (0x000000CA)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000018
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
ECM_DATA
050 01001020081006 00000000 00000000 dsfasdddffSS
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
3332222222222223333333333333322222222222233333333222222222222333333332222222222226766766666552
0500000000000000100102008100600000000000000000000000000000000000000000000000000004361344466330
ECM_EFFECTIVITY
Table IT_666[0x464]
\FUNCTION=EXIT_SAPMC29C_005\DATA=ECM_EFFECTIVITY
Table reference: 126
TABH+ 0(20) = 0000000000000000000000000000000000000000
TABH+ 20(20) = 0000007E0000029A00000000000001D0FFFFFFFF
TABH+ 40(16) = 040000DB000006800010249401800000
store = 0x0000000000000000
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 126 (0x0000007E)
label = 666 (0x0000029A)
fill = 0 (0x00000000)
leng = 464 (0x000001D0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000020
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
ECM_HIERARCHY
Table IT_667[0x120]
\FUNCTION=EXIT_SAPMC29C_005\DATA=ECM_HIERARCHY
Table reference: 110
TABH+ 0(20) = 0000000000000000000000000000000000000000
TABH+ 20(20) = 0000006E0000029B0000000000000078FFFFFFFF
TABH+ 40(16) = 040000DB000006B00010249401800000
store = 0x0000000000000000
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 110 (0x0000006E)
label = 667 (0x0000029B)
fill = 0 (0x00000000)
leng = 120 (0x00000078)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000021
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
ECM_MNT_VALUE
0000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222222222222223333333333333333222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
ECM_OBJMNGREC
Table IT_668[0x600]
\FUNCTION=EXIT_SAPMC29C_005\DATA=ECM_OBJMNGREC
Table reference: 107
TABH+ 0(20) = 0000000000000000000000000000000000000000
TABH+ 20(20) = 0000006B0000029C0000000000000258FFFFFFFF
TABH+ 40(16) = 040000DB000005C0001024C401800000
store = 0x0000000000000000
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 107 (0x0000006B)
label = 668 (0x0000029C)
fill = 0 (0x00000000)
leng = 600 (0x00000258)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000016
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 8 (cmpManyEq)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
ECM_OBJ_TYPE
Table IT_669[28x192]
\FUNCTION=EXIT_SAPMC29C_005\DATA=ECM_OBJ_TYPE
Table reference: 116
TABH+ 0(20) = C0000009448BF3E0000000000000000000000000
TABH+ 20(20) = 000000740000029D0000001C000000C0FFFFFFFF
TABH+ 40(16) = 040000DB000005600010249421800000
store = 0xC0000009448BF3E0
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 116 (0x00000074)
label = 669 (0x0000029D)
fill = 28 (0x0000001C)
leng = 192 (0x000000C0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000014
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 1
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0xC0000009448B8270
pgHook = 0xC0000009448BF440
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 195 (0x000000C3)
refCount = 1 (0x00000001)
tstRefCount = 0 (0x00000000)
lineAdmin = 48 (0x00000030)
lineAlloc = 48 (0x00000030)
shmVersId = 0 (0x00000000)
shmRefCount = 2 (0x00000002)
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
TRANS_TYP
H
0
0
4
8
D_ASTTX
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
2222222222222222222222222222222222222222
0000000000000000000000000000000000000000
SY-REPID
SAPLXCCA
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454544422222222222222222222222222222222
310C833100000000000000000000000000000000
L_ITEM
EUR_SCM-MRP-FSE-12_02
000000000000000000000000000000
000000000000000000000000000000
455554424552454233533222222222
552F33DDD20D635D12F02000000000
LI_YBS00001
050EUR_SCM-MRP-FSE-12_02 YMRP0003 SCM-MRP-FSE-12_02
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
3334555544245524542335332222222225455333322222222222222222222222222222222544245524542335332222
050552F33DDD20D635D12F020000000009D2000030000000000000000000000000000000033DDD20D635D12F020000
SY-SUBRC
0
0000
0000
SYST
#######################(###############Z################################################XC####
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E000100
0000000000000000000000020000000000000005000000000100000000000000000000000000010900000001540000
0000000100000A0000000108010001000000000A0000000000000000000000000000000000000B000008000083000C
LI_YBS00001-REPORT
YMRP0003
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5455333322222222222222222222222222222222
9D20000300000000000000000000000000000000
LI_YBS00001-FORM
SCM-MRP-FSE-12_02
000000000000000000000000000000
000000000000000000000000000000
544245524542335332222222222222
33DDD20D635D12F020000000000000
LS_YBS00001
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
LS_YBS00001-ENABLED
0
0
2
0
LS_YBS00001-REPORT
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
2222222222222222222222222222222222222222
0000000000000000000000000000000000000000
LS_YBS00001-FORM
000000000000000000000000000000
000000000000000000000000000000
222222222222222222222222222222
000000000000000000000000000000
SYST-REPID
SAPLXCCA
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454544422222222222222222222222222222222
310C833100000000000000000000000000000000
No. 5 Ty. FORM
Name SAVE_USER_EXIT
RET_CODE
0
0000
0000
SY-SUBRC
0
0000
0000
SY-MSGID
YMRP
00000000000000000000
00000000000000000000
54552222222222222222
9D200000000000000000
DARSTAB[]
Table[initial]
AEDTB[]
Table IT_650[0x202]
\PROGRAM=SAPMC29C\DATA=AEDTB[]
Table reference: 129
TABH+ 0(20) = 0000000000000000C000000944A25D7000000000
TABH+ 20(20) = 000000810000028A00000000000000CAFFFFFFFF
TABH+ 40(16) = 0400000000000EF00010249401800000
store = 0x0000000000000000
ext1 = 0xC000000944A25D70
shmId = 0 (0x00000000)
id = 129 (0x00000081)
label = 650 (0x0000028A)
fill = 0 (0x00000000)
leng = 202 (0x000000CA)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000065
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC000000944AFAD80
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC000000944A23AF0
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
CC07
000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000
222222222222222222222222222222222222222222222222222222222222222
000000000000000000000000000000000000000000000000000000000000000
AENRB
050 01001020081006 00000000 00000000 dsfasdddffSS
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
3332222222222223333333333333322222222222233333333222222222222333333332222222222226766766666552
0500000000000000100102008100600000000000000000000000000000000000000000000000000004361344466330
DARSTAB
00000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000
22222222222222222222222222222222222222222200
00000000000000000000000000000000000000000000
AEEFB[]
Table IT_651[0x464]
\PROGRAM=SAPMC29C\DATA=AEEFB[]
Table reference: 105
TABH+ 0(20) = 0000000000000000C000000944AFADF000000000
TABH+ 20(20) = 000000690000028B00000000000001D0FFFFFFFF
TABH+ 40(16) = 0400000000000F500010249401800000
store = 0x0000000000000000
ext1 = 0xC000000944AFADF0
shmId = 0 (0x00000000)
id = 105 (0x00000069)
label = 651 (0x0000028B)
fill = 0 (0x00000000)
leng = 464 (0x000001D0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000067
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000009448F3220
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC00000094482B060
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
DCTAB[]
Table IT_35[7x16]
\PROGRAM=SAPMC29C\DATA=DCTAB[]
Table reference: 25
TABH+ 0(20) = C000000944921280000000000000000000000000
TABH+ 20(20) = 00000019000000230000000700000010FFFFFFFF
TABH+ 40(16) = 0400000000001BB00010249401800000
store = 0xC000000944921280
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 25 (0x00000019)
label = 35 (0x00000023)
fill = 7 (0x00000007)
leng = 16 (0x00000010)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000133
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)Dear Rajesh!
Please advise me, what have you done to resolve your problem!!??
I get next problem when i try to start some transaction:
Short text
Syntax error in program "SAPLPA_PACKAGE_SERVICES ".
What happened?
Error in the ABAP Application Program
The current ABAP program "SAPLSFW_COMMON" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
The following syntax error occurred in program "SAPLPA_PACKAGE_SERVICES " in
include "LPA_PACKAGE_SERVICES$25 " in
line 13:
"The type "TPCHK_FROZEN_OBJECTS_H" is unknown."
The include has been created and last changed by:
Created by: "SAP "
Last changed by: "SAP "
Error in the ABAP Application Program
The current ABAP program "SAPLSFW_COMMON" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
The following syntax error was found in the program SAPLPA_PACKAGE_SERVICES :
"The type "TPCHK_FROZEN_OBJECTS_H" is unknown."
Trigger Location of Runtime Error
Program SAPLSFW_COMMON
Include LSFW_COMMONU01
Row 117
Module type (FUNCTION)
Module Name SFW_GET_SWITCHPOS
Source Code Extract
Line
SourceCde
87
IF sy-subrc = 0.
88
<fs_switchpos>-switch_id = devc_resultline-switch_id .
89
<fs_switchpos>-state = devc_resultline-state .
90
<fs_switchpos>-text = devc_resultline-text .
91
92
INSERT <fs_switchpos> INTO TABLE resulttab. "Ergebnis merken
93
CONTINUE.
94
ENDIF.
95
96
97
READ TABLE gt_sfw_package INTO wa_sfw_package WITH TABLE KEY
98
devclass = lf_devclass
99
version = 'A' .
100
101
IF sy-subrc = 0. "Objekt ist in einem Paket mit Schalter
102
<fs_switchpos>-switch_id = wa_sfw_package-switch_id .
103
104
ELSE. "gucken, ob es sich um geschachtelte Pakete handelt
105
106
DO 20 TIMES.
107
108
CLEAR wa_superpackage .
109
110
READ TABLE gt_superpackage INTO wa_superpackage WITH TABLE KEY
111
devclass = lf_devclass.
112
113
IF sy-subrc = 0 .
114
lf_superpackage = wa_superpackage-parentcl.
115
ELSE.
116
>>>>>
CALL FUNCTION 'PA_GET_SUPER_PACKAGE_NAME'
118
EXPORTING
119
i_package_name = lf_devclass
120
i_direct_select = 'X'
121
IMPORTING
122
e_super_package_name = lf_superpackage.
123
124
125
wa_superpackage-devclass = lf_devclass .
126
wa_superpackage-parentcl = lf_superpackage .
127
INSERT wa_superpackage INTO TABLE gt_superpackage .
128
129
ENDIF.
130
131
IF lf_superpackage = space .
132
<fs_switchpos>-state = space .
133
<fs_switchpos>-switch_id = space .
134
EXIT. "Enstation !
135
ELSE .
136 -
Report painter -output parameters,Data source,Extract parameter, report
Hi expert,
1)What report painter -output parameters,Data source,Extract parameter, report mean for and what are the difference?
2)I have create new report painter and transport to Test server using T-code:GCTR and I find that the T-code always point to old report. As I had check the SE93 the D_SREPOVARI-REPORT is point to report group.Why this happen?
3) Does creation of new report or modification of the report always need to select the extraction option so that it will able to display the relected changes? Because, I have done modification on the report but it is not reflected the changes even i save until i have to create the extraction is able to display the report but every time i run the report need to select the extraction with option to choose new extract or old. Kindly advice how to save and create the report painter and save will display reflected result .
Please helpHi BR Christian,
Thank you for the prompt reply.
I have few querys as below:
1)Do we every time create new report by copying the existing report painter need to select output parameter, data source and extract parameter in order to be able to display the new report?
2)when modify existing report painter and save it do we need to select output parameter, data source and extract parameter in order to be able to display the modify report correctly?
3) What are the different between right click copy the report inreport painter compare with create report painter with copy GRR1?
4) What are the T-code for modify the report group?
5) When I create a new report with the right click copy in GRR1 and modify the report painter column only and everything remain the same just the report name different why when execute the report it always appear in the selection screen with report button which have option button to select the 2 version of report which one is the destination report that I copy from and one is the new report? How to set the report when execute will only display the new report only without need to select the option with just new report only?
6)For transferring reports you can use GR37 (export) and GR38 (import) can be use to transport from one client to another client? What is difference between GR37 compare with GCTR?
7) If I use GR37 and GR38 it is mean no need to create the transport request which as usual we create transport se10?
we can directly import to another client ussing GR38?
8)When we create a new report with copy with the existing report with just modify the report colunm and the report name difference only what are the setting example: report,report group need to be selected to be include to export/transport to another client?
9) What are the difference between library and report group?
10) Can we set Se93 to execute only report not report group? How?
11) when using GR37 to transport it is also include the report group,library and the particular report?
12) Can I include the variable in the column header to display fiscal year which I have selected from the selection screen?
How and which variable should i use?
please help.
many thanks
Edited by: KH on Jun 18, 2011 6:52 AM
Edited by: KH on Jun 18, 2011 6:55 AM
Edited by: KH on Jun 18, 2011 7:06 AM -
List of SQL tables and attributes used in SSRS reports
Hi,
I have around 450-500 reports deployed in SSRS reporting server.
All these reports are built on SQL from multiple databases, and these databases are having unnecessary tables and attributes.
My requirement is to clean the unused tables and attributes from the databases. For this, I need the list of SQL tables and attributes used in these 450-500 SSRS reports.
Is there any way to get this data?
Regards,
RKHi RK,
According to your description, you want to get a list of the tables and attributes used in all reports.
In your scenario, you can query the ReportServer.dbo.Catalog table to get Report name, data source name, dataset name, and query used in the dataset with query below:
WITH XMLNAMESPACES ( DEFAULT 'http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition', 'http://schemas.microsoft.com/SQLServer/reporting/reportdesigner' AS rd )
SELECT ReportName = name
,DataSetName = x.value('(@Name)[1]', 'VARCHAR(250)')
,DataSourceName = x.value('(Query/DataSourceName)[1]','VARCHAR(250)')
,CommandText = x.value('(Query/CommandText)[1]','VARCHAR(250)')
,Fields = df.value('(@Name)[1]','VARCHAR(250)')
,DataField = df.value('(DataField)[1]','VARCHAR(250)')
,DataType = df.value('(rd:TypeName)[1]','VARCHAR(250)')
--,ConnectionString = x.value('(ConnectionProperties/ConnectString)[1]','VARCHAR(250)')
FROM ( SELECT C.Name,CONVERT(XML,CONVERT(VARBINARY(MAX),C.Content)) AS reportXML
FROM ReportServer.dbo.Catalog C
WHERE C.Content is not null
AND C.Type = 2
) a
CROSS APPLY reportXML.nodes('/Report/DataSets/DataSet') r ( x )
CROSS APPLY x.nodes('Fields/Field') f(df)
ORDER BY name
For more information, please refer to this similar thread:
Extract metadata from report server database
If you have any question, please feel free to ask.
Best regards,
Qiuyun Yu
Qiuyun Yu
TechNet Community Support -
List of useful MM Std Report T code : Especially CIN
Hello Experts !!
Can anyone give me the link/reference of useful MM Std Report T code Especially , Especially CIN
Rgds
AnisDear Anis,
Customizing
J1I0 - CIN Health Check
Indirect Taxes
Master Data
J1ID - Excise Rate Maintenance
Deemed Export License
J1ILIC01 u2013 Capture
J1ILIC02 u2013 Change
J1ILIC03 u2013 Display
J1ILIC04 u2013 Cancel
J1ILIC05 - Close
Excise Bond
J1IBN01 u2013 Create
J1IBN02 u2013 Change
J1IBN03 u2013 Display
J1IBN04 u2013 Cancel
J1IBN05 - Close
Procurement
Excise Invoice
Incoming Excise Invoice
Central Processing
J1IEX - Capture / Change / Cancel / Display / Post
Individual Processing
J1IEX_C - Capture / Display
J1IEX_P - Change / Display / Post / Cancel
For Depot
J1IG - Create/ Change/ Display
J1IGA - A-Certificate entry at depot
J1IGAD - Display of A-Certificates at depot
Reports
J2I8 - Balance credit for capital goods
J1IGR - List of GRu2019s without Excise Invoice
Subcontracting
Subcontracting Challans
J1IF01 u2013 Create
J1IF11 u2013 Change
J1IF12 u2013 Display
J1IFQ - Reconcile Quantity
J1IF13 - Complete/ Reverse/ Recredit
Reports
J1IFR - Challan Listing
Sales/Outbound Movements
Excise Invoice
For Sales Order
J1IIN - Outgoing Excise invoice create/change/display
J1IP - Print
For Depot
J1IJ - Create/ Change / Display
J1IDEPOTSTOCK1 - Depot stock with balances
For Other Movements
J1IS - Excise invoice for other movements
J1IV - Post and Print
J2IUN - Fortnightly Payment
J2I9 - New Monthly Returns Report Rule 57AE
J1IIEXCP - Sales excise invoice exceptions
Exports Under Excise Regulations
Exports
Central Processing
J1IA101 - Create/Change/Post/Update/Cancel/Display/Reverse ARE-1
Individual Processing
J1IA102 - Create/Change/Post/Cancel/Display ARE-1
J1IA103 - Update/Display ARE-1
J1IA104 - Reverse/Display ARE-1
Deemed Exports
Central Processing
J1IA301 - Create/Change/Post/Update/Cancel/Display/Reverse ARE-3
Individual Processing
J1IA302 - Create/Change/Post/Cancel/Display ARE-3
J1IA303 - Update/Display ARE-3
J1IA304 - Reverse/Display ARE-3
Reports
J1IANX18 - Pro Forma of Running Bond Account
J1IANX19 - Statement Regarding Export of Excisable Goods
J1IARE_AGE - Ageing Analysis for ARE Documents
J1IBONSUM - Bond Summary Report
J1ILICSUM - Deemed Export License Summary
Excise JV
J1IH - Create
Forms Tracking
J1IUN - Forms tracking
Registers
Excise Tax
J2I9 - Cenvat Register
J1I5 - Update RG23A/C Issues and RG1
J2I5 u2013 Extract
J2I6 - Print Utility program
Sales Tax
J1I2 - Sales Tax Register
Tax Deduction at Source
Classic
J1INC u2013 Post
J1I8 - Challan Update
Certificate
J1ICREP u2013 Reprint
J1ICCAN u2013 Cancel
Print
J1ICCERT - Regular Vendors
J1ICOTV - One-time Vendors
Quarterly Return
J1INQEFILE - Quarterly Returns - All IT sections
Utilities
J1IHBK - Copy House Bank ID
Extended Witholding Tax
Provision
J1INPR u2013 Post
J1INUT u2013 Utilize
Vendor Challan
J1INCHLN u2013 Post
J1INREV u2013 Reverse
J1INBANK - Update Bank Challan Number
Vendor Certificate
J1INCERT u2013 Print
J1INREP u2013 Reprint
J1INCANC - Cancel
Adjust
J1INJV - Post Vendor JV
Customer Tax
J1INCUST - Clear
Customer Challan
J1INCHLC u2013 Post
J1INREV u2013 Reverse
J1INBANK - Update Bank Challan Number
Customer Certificate
J1INCC - Print
Quarterly Returns
J1INQEFILE - Quarterly Return
Asset Accounting
J1IQ - Year-End Income Tax Depreciation Report
this may help u
Regards,
Pardeep malik -
Extract the report into excel file
how to extract the report into excel file?
which function module i have to use ?Hi Pavan,
If you want to download the displayed list in the Excel file,then at the time when the list is displayed on the screen, you can go to System option on the menu bar,from there go to List and then Save.You will get a pop up which shows you all the formats of download available.Select the one you want to and mention the target path of the file on the Presentation server.
Secondly,you can use the T-codes "CG3Y" to download the data from the Application Server to the Presentation Server and T-code "CG3Z" for vice-versa.
Or else you can use any of the FMs to first download the ABAP list to the ASCII or the BIN format and then convert it to excel using the FM "SAP_CONVERT_TO_XLS_FORMAT" or "TEXT_CONVERT_XLS_TO_SAP
I hope I have tried to answer your query.
In case of any further queries,please let know.
Regards,
Puneet Jhari. -
Materialized view not being used in the report
I have had a materialized view (MV) for a particular report. Recently, the report definition has changed little bit, so the existing MV is not being used by the report anymore. I copied the code Discoverer's SQL Inspection and recreated the materialized view. But still it is not working. Obviously, I am missing something at the database level. Does anyone have any idea? The database is 9i and Discoverer is 9.0.2. Thank you!
The SQL that you see from the Inspect SQL option will provide you with the SQL that Discoverer sends to the database. The database then may do a query rewrite to point to an available materialized view if available. This rewrite won't be seen from the inspect sql option. You need to check at the database level to verify if a query rewrite did in fact take place.
You may want to check the section titled "Query Rewrite with Materialized Views" from Ch1 - "Introduction to the Optimizer" in the Oracle9i Database Performance Tuning Guide and Reference, Release 2 (9.2), Part Number A96533-02, available at http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96533/optimops.htm#37287
Regards
Abhinav Agarwal
Oracle Business Intelligence Product Management
http://www.oracle.com/bi
http://www.oracle.com/technology/documentation/bi_ee.html
http://www.oracle.com/technology/software/products/ias/htdocs/101320bi.html
http://oraclebi.blogspot.com/ -
What is vendor performance report what are the fields using in the report
What is vendor performance report what are the fields using in the report and i need some sample reports for that particular topic (clasical report)not using any alvs or any advance topics.
U R Satish Patnaikhi
good
*"Table declarations...................................................
TABLES:
EKKO, " Purchasing Document Header
CDHDR, " Change document header
SSCRFIELDS. " Fields on selection screens
*"Selection screen elements............................................
SELECT-OPTIONS:
S_EBELN FOR EKKO-EBELN, " Purchasing Document Number
S_LIFNR FOR EKKO-LIFNR, " Vendor's account number
S_EKGRP FOR EKKO-EKGRP, " Purchasing group
S_BEDAT FOR EKKO-BEDAT, " Purchasing Document Date
S_UDATE FOR CDHDR-UDATE. " Creation date of the change
" document
*" Data declarations...................................................
Field String to hold Purchase Document Number *
DATA:
BEGIN OF FS_EBELN,
EBELN(90) TYPE C, " Purchase Document Number
ERNAM TYPE EKKO-ERNAM, " Name of Person who Created
" the Object
LIFNR TYPE EKKO-LIFNR, " Vendor's account number
EKGRP TYPE EKKO-EKGRP, " Purchasing group
BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
END OF FS_EBELN,
Field String to hold Purchase Document Header *
BEGIN OF FS_EKKO,
EBELN TYPE EKKO-EBELN, " Purchasing Document Number
ERNAM TYPE EKKO-ERNAM, " Name of Person who Created the
" Object
LIFNR TYPE EKKO-LIFNR, " Vendor's account number
EKGRP TYPE EKKO-EKGRP, " Purchasing group
BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
END OF FS_EKKO,
Field String to hold Account Number and name of the Vendor *
BEGIN OF FS_LFA1,
LIFNR TYPE LFA1-LIFNR, " Account Number of Vendor
NAME1 TYPE LFA1-NAME1, " Name1
END OF FS_LFA1,
Field String to hold Change date and the name of the user *
BEGIN OF FS_CDHDR,
OBJECTCLAS TYPE CDHDR-OBJECTCLAS, " Object Class
OBJECTID TYPE CDHDR-OBJECTID, " Object value
CHANGENR TYPE CDHDR-CHANGENR, " Document change number
USERNAME TYPE CDHDR-USERNAME, " User name
UDATE TYPE CDHDR-UDATE, " Creation date of the change
" document
END OF FS_CDHDR,
Field String to hold Change document items *
BEGIN OF FS_CDPOS,
OBJECTCLAS TYPE CDPOS-OBJECTCLAS," Object class
OBJECTID(10) TYPE C, " Object Value
CHANGENR TYPE CDPOS-CHANGENR, " Document change number
TABNAME TYPE CDPOS-TABNAME, " Table Name
FNAME TYPE CDPOS-FNAME, " Field Name
VALUE_NEW TYPE CDPOS-VALUE_NEW, " New contents of changed field
VALUE_OLD TYPE CDPOS-VALUE_OLD, " Old contents of changed field
END OF FS_CDPOS,
Field String to hold Date Element Name *
BEGIN OF FS_DATAELE,
TABNAME TYPE DD03L-TABNAME, " Table Name
FIELDNAME TYPE DD03L-FIELDNAME, " Field Name
ROLLNAME TYPE DD03L-ROLLNAME, " Data element (semantic domain)
END OF FS_DATAELE,
Field String to hold Short Text of the Date Element *
BEGIN OF FS_TEXT,
ROLLNAME TYPE DD04T-ROLLNAME, " Data element (semantic domain)
DDTEXT TYPE DD04T-DDTEXT, " Short Text Describing R/3
" Repository Objects
END OF FS_TEXT,
Field String to hold data to be displayed on the ALV grid *
BEGIN OF FS_OUTTAB,
EBELN TYPE EKKO-EBELN, " Purchasing Document Number
ERNAM TYPE EKKO-ERNAM, " Name of Person who Created the
" Object
LIFNR TYPE EKKO-LIFNR, " Vendor's account number
EKGRP TYPE EKKO-EKGRP, " Purchasing group
BEDAT TYPE EKKO-BEDAT, " Purchasing Document Date
WERKS TYPE LFA1-WERKS, " Plant
NAME1 TYPE LFA1-NAME1, " Name1
USERNAME TYPE CDHDR-USERNAME, " User name
UDATE TYPE CDHDR-UDATE, " Creation date of the change
" document
DDTEXT TYPE DD04T-DDTEXT, " Short Text Describing R/3
" Repository Objects
VALUE_NEW TYPE CDPOS-VALUE_NEW, " New contents of changed field
VALUE_OLD TYPE CDPOS-VALUE_OLD, " Old contents of changed field
END OF FS_OUTTAB,
Internal table to hold Purchase Document Number *
T_EBELN LIKE STANDARD TABLE
OF FS_EBELN,
Internal table to hold Purchase Document Header *
T_EKKO LIKE STANDARD TABLE
OF FS_EKKO,
Temp Internal table to hold Purchase Document Header *
T_EKKO_TEMP LIKE STANDARD TABLE
OF FS_EKKO,
Internal table to hold Account number and Name of the Vendor *
T_LFA1 LIKE STANDARD TABLE
OF FS_LFA1,
Internal Table to hold Change date and the name of the user *
T_CDHDR LIKE STANDARD TABLE
OF FS_CDHDR,
Internal Table to hold Change document items *
T_CDPOS LIKE STANDARD TABLE
OF FS_CDPOS,
Temp. Internal Table to hold Change document items *
T_CDPOS_TEMP LIKE STANDARD TABLE
OF FS_CDPOS,
Internal Table to hold Data Element Name *
T_DATAELE LIKE STANDARD TABLE
OF FS_DATAELE,
Temp. Internal Table to hold Data Element Name *
T_DATAELE_TEMP LIKE STANDARD TABLE
OF FS_DATAELE,
Internal Table to hold Short Text of the Date Element *
T_TEXT LIKE STANDARD TABLE
OF FS_TEXT,
Internal Table to hold data to be displayed on the ALV grid *
T_OUTTAB LIKE STANDARD TABLE
OF FS_OUTTAB.
C L A S S D E F I N I T I O N *
CLASS LCL_EVENT_HANDLER DEFINITION DEFERRED.
*" Data declarations...................................................
Work variables *
DATA:
W_EBELN TYPE EKKO-EBELN, " Purchasing Document Number
W_LIFNR TYPE EKKO-LIFNR, " Vendor's account number
W_EKGRP TYPE EKKO-EKGRP, " Purchasing group
W_VALUE TYPE EKKO-EBELN, " Reflected Value
W_SPACE VALUE ' ', " Space
W_FLAG TYPE I, " Flag Variable
W_VARIANT TYPE DISVARIANT, " Variant
*--- ALV Grid
W_GRID TYPE REF TO CL_GUI_ALV_GRID,
*--- Event Handler
W_EVENT_CLICK TYPE REF TO LCL_EVENT_HANDLER,
*--- Field catalog table
T_FIELDCAT TYPE LVC_T_FCAT.
AT SELECTION-SCREEN EVENT *
AT SELECTION-SCREEN ON S_EBELN.
Subroutine to validate Purchase Document Number.
PERFORM VALIDATE_PD_NUM.
AT SELECTION-SCREEN ON S_LIFNR.
Subroutine to validate Vendor Number.
PERFORM VALIDATE_VEN_NUM.
AT SELECTION-SCREEN ON S_EKGRP.
Subroutine to validate Purchase Group.
PERFORM VALIDATE_PUR_GRP.
START-OF-SELECTION EVENT *
START-OF-SELECTION.
Subroutine to select all Purchase orders.
PERFORM SELECT_PO.
CHECK W_FLAG EQ 0.
Subroutine to select Object values.
PERFORM SELECT_OBJ_ID.
CHECK W_FLAG EQ 0.
Subroutine to select Changed values.
PERFORM SELECT_CHANGED_VALUE.
CHECK W_FLAG EQ 0.
Subroutine to Select Purchase Orders.
PERFORM SELECT_PUR_DOC.
Subroutine to select Vendor Details.
PERFORM SELECT_VENDOR.
Subroutine to select Text for the Changed values.
PERFORM DESCRIPTION.
END-OF-SELECTION EVENT *
END-OF-SELECTION.
IF NOT T_EKKO IS INITIAL.
Subroutine to populate the Output Table.
PERFORM FILL_OUTTAB.
Subroutine to build Field Catalog.
PERFORM PREPARE_FIELD_CATALOG CHANGING T_FIELDCAT.
CALL SCREEN 100.
ENDIF. " IF NOT T_EKKO...
CLASS LCL_EVENT_HANDLER DEFINITION
Defining Class which handles events
CLASS LCL_EVENT_HANDLER DEFINITION .
PUBLIC SECTION .
METHODS:
HANDLE_HOTSPOT_CLICK
FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID
IMPORTING E_ROW_ID E_COLUMN_ID.
ENDCLASS. " LCL_EVENT_HANDLER DEFINITION
CLASS LCL_EVENT_HANDLER IMPLEMENTATION
Implementing the Class which can handle events
CLASS LCL_EVENT_HANDLER IMPLEMENTATION .
*---Handle Double Click
METHOD HANDLE_HOTSPOT_CLICK .
Subroutine to get the HotSpot Cell information.
PERFORM GET_CELL_INFO.
SET PARAMETER ID 'BES' FIELD W_VALUE.
CALL TRANSACTION 'ME23N'.
ENDMETHOD. " HANDLE_HOTSPOT_CLICK
ENDCLASS. " LCL_EVENT_HANDLER
*& Module STATUS_0100 OUTPUT
PBO Event
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'OOPS'.
SET TITLEBAR 'TIT'.
Subroutine to fill the Variant Structure
PERFORM FILL_VARIANT.
IF W_GRID IS INITIAL.
CREATE OBJECT W_GRID
EXPORTING
I_SHELLSTYLE = 0
I_LIFETIME =
I_PARENT = CL_GUI_CONTAINER=>SCREEN0
I_APPL_EVENTS =
I_PARENTDBG =
I_APPLOGPARENT =
I_GRAPHICSPARENT =
I_NAME =
I_FCAT_COMPLETE = SPACE
EXCEPTIONS
ERROR_CNTL_CREATE = 1
ERROR_CNTL_INIT = 2
ERROR_CNTL_LINK = 3
ERROR_DP_CREATE = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF. " IF SY-SUBRC <> 0
CALL METHOD W_GRID->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
I_BUFFER_ACTIVE =
I_BYPASSING_BUFFER =
I_CONSISTENCY_CHECK =
I_STRUCTURE_NAME =
IS_VARIANT = W_VARIANT
I_SAVE = 'A'
I_DEFAULT = 'X'
IS_LAYOUT =
IS_PRINT =
IT_SPECIAL_GROUPS =
IT_TOOLBAR_EXCLUDING =
IT_HYPERLINK =
IT_ALV_GRAPHICS =
IT_EXCEPT_QINFO =
IR_SALV_ADAPTER =
CHANGING
IT_OUTTAB = T_OUTTAB
IT_FIELDCATALOG = T_FIELDCAT
IT_SORT =
IT_FILTER =
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. " IF SY-SUBRC <> 0.
ENDIF. " IF W_GRID IS INITIAL
CREATE OBJECT W_EVENT_CLICK.
SET HANDLER W_EVENT_CLICK->HANDLE_HOTSPOT_CLICK FOR W_GRID.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
PAI Event
MODULE USER_COMMAND_0100 INPUT.
CASE SY-UCOMM.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'CANCEL'.
LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form PREPARE_FIELD_CATALOG
Subroutine to build the Field catalog
<--P_T_FIELDCAT Field Catalog Table
FORM PREPARE_FIELD_CATALOG CHANGING PT_FIELDCAT TYPE LVC_T_FCAT .
DATA LS_FCAT TYPE LVC_S_FCAT.
Purchasing group...
LS_FCAT-FIELDNAME = 'EKGRP'.
LS_FCAT-REF_TABLE = 'EKKO'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Purchasing Document Number...
LS_FCAT-FIELDNAME = 'EBELN'.
LS_FCAT-REF_TABLE = 'EKKO' .
LS_FCAT-EMPHASIZE = 'C411'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
LS_FCAT-HOTSPOT = 'X'.
APPEND LS_FCAT TO PT_FIELDCAT .
CLEAR LS_FCAT .
Name of Person who Created the Object...
LS_FCAT-FIELDNAME = 'ERNAM'.
LS_FCAT-REF_TABLE = 'EKKO'.
LS_FCAT-OUTPUTLEN = '15' .
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Purchasing Document Date...
LS_FCAT-FIELDNAME = 'BEDAT'.
LS_FCAT-REF_TABLE = 'EKKO'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Vendor's account number...
LS_FCAT-FIELDNAME = 'LIFNR'.
LS_FCAT-REF_TABLE = 'EKKO'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Account Number of Vendor or Creditor...
LS_FCAT-FIELDNAME = 'NAME1'.
LS_FCAT-REF_TABLE = 'LFA1'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
LS_FCAT-COLTEXT = 'Vendor Name'(001).
LS_FCAT-SELTEXT = 'Vendor Name'(001).
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Creation date of the change document...
LS_FCAT-FIELDNAME = 'UDATE'.
LS_FCAT-REF_TABLE = 'CDHDR'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
LS_FCAT-COLTEXT = 'Change Date'(002).
LS_FCAT-SELTEXT = 'Change Date'(002).
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
User name of the person responsible in change document...
LS_FCAT-FIELDNAME = 'USERNAME'.
LS_FCAT-REF_TABLE = 'CDHDR'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '10'.
LS_FCAT-COLTEXT = 'Modified by'(003).
LS_FCAT-SELTEXT = 'Modified by'(003).
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Short Text Describing R/3 Repository Objects...
LS_FCAT-FIELDNAME = 'DDTEXT'.
LS_FCAT-REF_TABLE = 'DD04T'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '15'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
Old contents of changed field...
LS_FCAT-FIELDNAME = 'VALUE_OLD'.
LS_FCAT-REF_TABLE = 'CDPOS'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '12'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
New contents of changed field...
LS_FCAT-FIELDNAME = 'VALUE_NEW'.
LS_FCAT-REF_TABLE = 'CDPOS'.
LS_FCAT-INTTYPE = 'C'.
LS_FCAT-OUTPUTLEN = '12'.
APPEND LS_FCAT TO PT_FIELDCAT.
CLEAR LS_FCAT.
ENDFORM. " PREPARE_FIELD_CATALOG
*& Form SELECT_PO
Subroutine to select all the Purchase Orders
There are no interface parameters to be passed to this subroutine.
FORM SELECT_PO .
SELECT EBELN " Purchasing Document Number
ERNAM " Name of Person who Created
" the Object
LIFNR " Vendor's account number
EKGRP " Purchasing group
BEDAT " Purchasing Document Date
FROM EKKO
PACKAGE SIZE 10000
APPENDING TABLE T_EBELN
WHERE EBELN IN S_EBELN
AND BEDAT IN S_BEDAT.
ENDSELECT.
IF SY-SUBRC NE 0.
W_FLAG = 1.
MESSAGE S401(M8).
ENDIF. " IF SY-SUBRC NE 0
ENDFORM. " SELECT_PO
*& Form SELECT_OBJ_ID
Subroutine to select Object ID
There are no interface parameters to be passed to this subroutine.
FORM SELECT_OBJ_ID .
IF NOT T_EBELN IS INITIAL.
SELECT OBJECTCLAS " Object Class
OBJECTID " Object value
CHANGENR " Document change number
USERNAME " User name
UDATE " Creation date
FROM CDHDR
INTO TABLE T_CDHDR
FOR ALL ENTRIES IN T_EBELN
WHERE OBJECTID EQ T_EBELN-EBELN
AND UDATE IN S_UDATE
AND TCODE IN ('ME21N','ME22N','ME23N').
ENDSELECT.
IF SY-SUBRC NE 0.
W_FLAG = 1.
MESSAGE S833(M8) WITH 'Header Not Found'(031).
ENDIF. " IF SY-SUBRC NE 0.
ENDIF. " IF NOT T_EBELN IS INITIAL
ENDFORM. " SELECT_OBJ_ID
*& Form SELECT_CHANGED_VALUE
Subroutine to select Changed Values
There are no interface parameters to be passed to this subroutine.
FORM SELECT_CHANGED_VALUE .
IF NOT T_CDHDR IS INITIAL.
SELECT OBJECTCLAS " Object class
OBJECTID " Object value
CHANGENR " Document change number
TABNAME " Table Name
FNAME " Field Name
VALUE_NEW " New contents of changed field
VALUE_OLD " Old contents of changed field
FROM CDPOS
PACKAGE SIZE 10000
APPENDING TABLE T_CDPOS
FOR ALL ENTRIES IN T_CDHDR
WHERE OBJECTCLAS EQ T_CDHDR-OBJECTCLAS
AND OBJECTID EQ T_CDHDR-OBJECTID
AND CHANGENR EQ T_CDHDR-CHANGENR.
ENDSELECT.
IF SY-SUBRC NE 0.
W_FLAG = 1.
MESSAGE S833(M8) WITH 'Item Not Found'(032).
ENDIF. " IF SY-SUBRC NE 0.
ENDIF. " IF NOT T_CDHDR IS INITIAL
T_CDPOS_TEMP[] = T_CDPOS[].
ENDFORM. " SELECT_CHANGED_VALUE
*& Form SELECT_PUR_DOC
Subroutine to select Purchase Order Details
There are no interface parameters to be passed to this subroutine.
FORM SELECT_PUR_DOC .
IF NOT T_CDPOS IS INITIAL.
SORT T_EBELN BY EBELN.
LOOP AT T_CDPOS INTO FS_CDPOS.
READ TABLE T_EBELN INTO FS_EBELN WITH KEY EBELN =
FS_CDPOS-OBJECTID BINARY SEARCH.
IF SY-SUBRC NE 0.
DELETE TABLE T_EBELN FROM FS_EBELN.
ENDIF. " IF SY-SUBRC NE 0.
ENDLOOP. " LOOP AT T_CDPOS...
LOOP AT T_EBELN INTO FS_EBELN.
MOVE FS_EBELN-EBELN TO FS_EKKO-EBELN.
MOVE FS_EBELN-ERNAM TO FS_EKKO-ERNAM.
MOVE FS_EBELN-LIFNR TO FS_EKKO-LIFNR.
MOVE FS_EBELN-EKGRP TO FS_EKKO-EKGRP.
MOVE FS_EBELN-BEDAT TO FS_EKKO-BEDAT.
APPEND FS_EKKO TO T_EKKO.
ENDLOOP. " LOOP AT T_EBELN...
T_EKKO_TEMP[] = T_EKKO[].
ENDIF. " IF NOT T_CDPOS IS INITIAL
ENDFORM. " SELECT_PUR_DOC
*& Form SELECT_VENDOR
Subroutine to select Vendor details
There are no interface parameters to be passed to this subroutine.
FORM SELECT_VENDOR .
IF NOT T_EKKO IS INITIAL.
SORT T_EKKO_TEMP BY LIFNR.
DELETE ADJACENT DUPLICATES FROM T_EKKO_TEMP COMPARING LIFNR.
SELECT LIFNR " Account Number of Vendor or
" Creditor
NAME1 " Name 1
FROM LFA1
INTO TABLE T_LFA1
FOR ALL ENTRIES IN T_EKKO_TEMP
WHERE LIFNR EQ T_EKKO_TEMP-LIFNR.
IF SY-SUBRC NE 0.
MESSAGE S002(M8) WITH 'Master Details'(033).
ENDIF. " IF SY-SUBRC NE 0.
ENDIF. " IF NOT T_EKKO IS INITIAL
ENDFORM. " SELECT_VENDOR
*& Form DESCRIPTION
Subroutine to get the description
There are no interface parameters to be passed to this subroutine.
FORM DESCRIPTION .
IF NOT T_CDPOS IS INITIAL.
SORT T_CDPOS_TEMP BY TABNAME FNAME.
DELETE ADJACENT DUPLICATES FROM T_CDPOS_TEMP COMPARING TABNAME FNAME
SELECT TABNAME " Table Name
FIELDNAME " Field Name
ROLLNAME " Data element
FROM DD03L
INTO TABLE T_DATAELE
FOR ALL ENTRIES IN T_CDPOS_TEMP
WHERE TABNAME EQ T_CDPOS_TEMP-TABNAME
AND FIELDNAME EQ T_CDPOS_TEMP-FNAME.
IF NOT T_DATAELE IS INITIAL.
T_DATAELE_TEMP[] = T_DATAELE[].
SORT T_DATAELE_TEMP BY ROLLNAME.
DELETE ADJACENT DUPLICATES FROM T_DATAELE_TEMP COMPARING ROLLNAME.
SELECT ROLLNAME " Data element
DDTEXT " Short Text Describing R/3
" Repository Objects
FROM DD04T
INTO TABLE T_TEXT
FOR ALL ENTRIES IN T_DATAELE_TEMP
WHERE ROLLNAME EQ T_DATAELE_TEMP-ROLLNAME
AND DDLANGUAGE EQ SY-LANGU.
IF SY-SUBRC NE 0.
EXIT.
ENDIF. " IF SY-SUBRC NE 0.
ENDIF. " IF NOT T_DATAELE IS INITIAL.
ENDIF. " IF NOT T_CDPOS IS INITIAL.
ENDFORM. " DESCRIPTION
*& Form FILL_OUTTAB
Subroutine to populate the Outtab
There are no interface parameters to be passed to this subroutine.
FORM FILL_OUTTAB .
SORT T_CDHDR BY OBJECTCLAS OBJECTID CHANGENR.
SORT T_EKKO BY EBELN.
SORT T_LFA1 BY LIFNR.
SORT T_DATAELE BY TABNAME FIELDNAME.
SORT T_TEXT BY ROLLNAME.
LOOP AT T_CDPOS INTO FS_CDPOS.
READ TABLE T_CDHDR INTO FS_CDHDR WITH KEY
OBJECTCLAS = FS_CDPOS-OBJECTCLAS
OBJECTID = FS_CDPOS-OBJECTID
CHANGENR = FS_CDPOS-CHANGENR
BINARY SEARCH.
IF SY-SUBRC EQ 0.
MOVE FS_CDHDR-USERNAME TO FS_OUTTAB-USERNAME.
MOVE FS_CDHDR-UDATE TO FS_OUTTAB-UDATE.
READ TABLE T_EKKO INTO FS_EKKO WITH KEY
EBELN = FS_CDHDR-OBJECTID
BINARY SEARCH.
IF SY-SUBRC EQ 0.
MOVE FS_EKKO-EBELN TO FS_OUTTAB-EBELN.
MOVE FS_EKKO-ERNAM TO FS_OUTTAB-ERNAM.
MOVE FS_EKKO-LIFNR TO FS_OUTTAB-LIFNR.
MOVE FS_EKKO-EKGRP TO FS_OUTTAB-EKGRP.
MOVE FS_EKKO-BEDAT TO FS_OUTTAB-BEDAT.
READ TABLE T_LFA1 INTO FS_LFA1 WITH KEY
LIFNR = FS_EKKO-LIFNR
BINARY SEARCH.
IF SY-SUBRC EQ 0.
MOVE FS_LFA1-NAME1 TO FS_OUTTAB-NAME1.
ENDIF. " IF SY-SUBRC EQ 0.
ENDIF. " IF SY-SUBRC EQ 0.
ENDIF. " IF SY-SUBRC EQ 0.
MOVE FS_CDPOS-VALUE_NEW TO FS_OUTTAB-VALUE_NEW.
MOVE FS_CDPOS-VALUE_OLD TO FS_OUTTAB-VALUE_OLD.
READ TABLE T_DATAELE INTO FS_DATAELE WITH KEY
TABNAME = FS_CDPOS-TABNAME
FIELDNAME = FS_CDPOS-FNAME
BINARY SEARCH.
IF SY-SUBRC EQ 0.
READ TABLE T_TEXT INTO FS_TEXT WITH KEY
ROLLNAME = FS_DATAELE-ROLLNAME
BINARY SEARCH.
IF SY-SUBRC EQ 0.
MOVE FS_TEXT-DDTEXT TO FS_OUTTAB-DDTEXT.
ENDIF. " IF SY-SUBRC EQ 0.
ENDIF. " IF SY-SUBRC EQ 0.
APPEND FS_OUTTAB TO T_OUTTAB.
CLEAR FS_OUTTAB.
ENDLOOP.
ENDFORM. " FILL_OUTTAB
*& Form GET_CELL_INFO
Subroutine to get the Cell Information
--> W_VALUE Holds the value of Hotspot clicked
FORM GET_CELL_INFO .
CALL METHOD W_GRID->GET_CURRENT_CELL
IMPORTING
E_ROW =
E_VALUE = W_VALUE
E_COL =
ES_ROW_ID =
ES_COL_ID =
ES_ROW_NO =
ENDFORM. " GET_CELL_INFO
*& Form VALIDATE_PD_NUM
Subroutine to validate Purchase Document Number
There are no interface parameters to be passed to this subroutine.
FORM VALIDATE_PD_NUM .
IF NOT S_EBELN[] IS INITIAL.
SELECT EBELN " Purchase Document Number
FROM EKKO
INTO W_EBELN
UP TO 1 ROWS
WHERE EBELN IN S_EBELN.
ENDSELECT.
IF SY-SUBRC NE 0.
CLEAR SSCRFIELDS-UCOMM.
MESSAGE E717(M8).
ENDIF. " IF SY-SUBRC NE 0
ENDIF. " IF NOT S_EBELN[]...
ENDFORM. " VALIDATE_PD_NUM
*& Form VALIDATE_VEN_NUM
Subroutine to validate Vendor Number
There are no interface parameters to be passed to this subroutine.
FORM VALIDATE_VEN_NUM .
IF NOT S_LIFNR[] IS INITIAL.
SELECT LIFNR " Vendor Number
FROM LFA1
INTO W_LIFNR
UP TO 1 ROWS
WHERE LIFNR IN S_LIFNR.
ENDSELECT.
IF SY-SUBRC NE 0.
CLEAR SSCRFIELDS-UCOMM.
MESSAGE E002(M8) WITH W_SPACE.
ENDIF. " IF SY-SUBRC NE 0
ENDIF. " IF NOT S_LIFNR[]...
ENDFORM. " VALIDATE_VEN_NUM
*& Form VALIDATE_PUR_GRP
Subroutine to validate the Purchase Group
There are no interface parameters to be passed to this subroutine.
FORM VALIDATE_PUR_GRP .
IF NOT S_EKGRP[] IS INITIAL.
SELECT EKGRP " Purchase Group
FROM T024
INTO W_EKGRP
UP TO 1 ROWS
WHERE EKGRP IN S_EKGRP.
ENDSELECT.
IF SY-SUBRC NE 0.
CLEAR SSCRFIELDS-UCOMM.
MESSAGE E622(M8) WITH W_SPACE.
ENDIF. " IF SY-SUBRC NE 0
ENDIF. " IF NOT S_EKFRP[]...
ENDFORM. " VALIDATE_PUR_GRP
*& Form FILL_VARIANT
Subroutine to fill the Variant Structure
There are no interface parameters to be passed to this subroutine
FORM FILL_VARIANT .
Filling the Variant structure
W_VARIANT-REPORT = SY-REPID.
W_VARIANT-USERNAME = SY-UNAME.
ENDFORM. " FILL_VARIANT
reward point if helpful.
thanks
mrutyun^ -
Is it possible to use the JAVA Report Engine SDK to modify DESKI reports?
Post Author: Nadine
CA Forum: JAVA
Hi, is it possible to add a complex filter to a DESKI report using the JAVA report engine sdk?
In the developer tutorials for this API, I've only found references to WEBI in terms of modifying reports, though it seems to be possible to view DESKI reports with this sdk.
I am a bit confused in terms of the scope of this API and how I would use it in regard to DESKI.
Many thanks for any suggestions!
NadinePost Author: Ted Ueda
CA Forum: JAVA
Current (XI R2) version of ReportEngine API only supports refreshing/viewing functionality for Desktop Intelligence documents. Document modification/creation is only supported with Web Intelligence documents. Queries aren't modifiable for Deski using ReportEngine API - you can only do so using Desktop Intelligence Reporter SDK, which is COM based.Sincerely,Ted Ueda -
The report I published on the SQL server report server is not showing in the application we use to retrieve reports. My cell phone number is {removed}
Thanks.Hello Roger Tenn,
Thank you for posting in the TechNet Forum.
As this issue is related to SQL server report server, to receive better report, it is recommended to ask in the SQL server forum.
https://social.technet.microsoft.com/Forums/en-US/home?category=sqlserver
The professionals here will be glad to help you.
Best regards,
Fangzhou CHEN
Fangzhou CHEN
TechNet Community Support -
Report To Show SQL Used In A Report
I am creating a set of quality reports using the apex views.
I would like to create a report to check the sql used in classic reports, but can't seem to find the right view to use.
If it was a interactive report I would use the SQL_QUERY column in the APEX_APPLICATION_PAGE_IR view, but this does not seem to exist for classic reports
Help appreciated.
GusGus C wrote:
I am creating a set of quality reports using the apex views.
I would like to create a report to check the sql used in classic reports, but can't seem to find the right view to use.
If it was a interactive report I would use the SQL_QUERY column in the APEX_APPLICATION_PAGE_IR view, but this does not seem to exist for classic reports
You can use the Data dictionary view APEX_APPLICATION_PAGE_REGIONS. There's a field called "REGION_SOURCE" - just filter for the appropriate region type.
Help appreciated.Really? What about Re: Validate Date and Time? If you want to show genuine appreciation for help given, why not award "correct/helpful" points to posts which helped you solve your problem, as per the forum introduction post:
>
* It is considered good etiquette to reward answers with points (as "helpful" - 5 pts - or "correct" - 10pts).
>
Having a brief look through your list of recently answered questions, you don't seem to award helpful points, even when you've explicitly saying (paraphrasing) "Thanks for your help". Maybe it's a tipping thing - perhaps you subscribe to the doctrine of Mr. Pink but, hey if it helps you get your question answered and it literally costs you nothing but a few seconds of effort, why not throw us a bone by awarding a point now and then? -
How to find how name of view and table using in Discoverer report
Hi all,
Please help me, i have requirement, i need name of views and tables used in discoverer reports.
plz help its urgent.
regards,
Vivek GautamAs per my knowledge goes, We can see from Administrator which Folder is associated with a Workbook. Else you may have to manually open each and every workbook and look for the objects.
-
Extraction and Reporting is not working in BI SYSTEM
Hi,
The BI developement r shows error an License Expire.Currently i change the system date and working fine. If changing the system date modeling part is working fine. But extraction and Reporting is not working. please help me to solve this problem.HI,
If the license is expired then appky for the permanent license from Service market place and install it in the system through SLICENSE TCode. For this you need to have S-user ID to access service market place to apply for license.
Regards,
Sharath
Maybe you are looking for
-
Can not open pdf forms in Firefox
We have pdf qoutationforms that can no longer be opened whenusing Firefox. (The files opened fine till a few weeks ago). When we click the link it just say stopped in the left corner and after a minute or two Acrobat Reader opens up with the followin
-
Why does my I phone 4s 64 gb battery not last 24 hours?
Miy iPhone 4s 64 gb battery is not lasting even a day! I'm not using it over average Is this normal?
-
When is PPBM6 going to be ready?
The title says it all... I've downloaded the zip file and am going to run the test this afternoon. I went to go see others' results and was prompted to register and login. However after attempting to login I got a failure notice saying that it couldn
-
How to stop frequent buffering which is making it impossible to watch movies on ipad
Buffering is very frequent which makes viewing movies impossible
-
I had a ODS in QA. Transport was not successful - For some InfoObject error. But, The ODS is active in QA along with UpdateRules... I could load the data and activate the ODS and I see the icon[ request for reporting] on the status. Now I transported