Error in copied include program
Hi friends,
i copied z program into y program the z program contains includes also i copied all.but in the copied program ( y program) in the includes the following error is coming
REPORT/PROGRAM statement missing, or program type is I (INCLUDE).
How to avoid the above error.
thanks for all.
well in every report there has to be following line:
Report Y?????.
AND this has to be the first statement to come.
sometimes that line is not in the main report but in the first include (normally top-include).
as long as this is still the first statement all is fine.
But if you perhaps have now the include for your selection screen above the include which contains the critical line, it wont work since you have other statements (Parameters or Select-options) BEFORE that critical line.
easiest way is to leave it in the main frame programm right on top, above all the includes.
Similar Messages
-
Error while copying Z program to another enviroment
Hi, experts
I have a Z program into one client's enviroment, which works fine. I tried copying this program into another client's enviroment, and i get the following error message, while syntax check:
"RC_IN1 must be a byte-type field. (Typ X or XSTRING)."
And this error is on the following form:
form xor using rc_in1 type c rc_in2 type c rc_out type c.
data:
li_abit type i,
li_bbit type i.
rc_out = space.
if rc_in1 <> space.
do 8 times.
get bit sy-index of rc_in1 into li_abit.
get bit sy-index of rc_in2 into li_bbit.
if li_abit <> li_bbit.
set bit sy-index of rc_out to 1.
else.
set bit sy-index of rc_out to 0.
endif.
enddo.
if rc_out = space.
rc_out = rc_in1.
endif.
endif.
endform.
When I check into one client's enviroment, it does not gives error. Only in THAT client.
Why is this happening?
Thanks in advance,
Brian GonsalesHi,
are the both client environments hav same version (ECC 6).
In ECC 6 version type X is not allowed.
To avoid this problem,
you need to declare the field of TYPE C.
you need to get the value from Cl_ABAP_CHAR_UTILITIES.
Regards
Sandeep Reddy -
Error: While Copying Standard Program FBCJ
Dear Experts,
I tried to copy the standard program because the requirement was to change the menu fuction for save and post.
So i copied the T.Code FBCJ to ZFBCJ. It Copied Successfully and i assigned the tcode also. But While executing the T code
the system Shows the error message
"System error in routine FI_TAX_GET_TXJCD_STRUCTURE
error code 1 function builder TAX2"
Kinldy help me to resolve this issue.
Waiting for your valuable replies.
Kindly give some ideas.
Thanks and Regards,
Karthik V
Edited by: karthikani on Nov 24, 2010 10:30 AMHi,
are the both client environments hav same version (ECC 6).
In ECC 6 version type X is not allowed.
To avoid this problem,
you need to declare the field of TYPE C.
you need to get the value from Cl_ABAP_CHAR_UTILITIES.
Regards
Sandeep Reddy -
Error . Copying Module Program
Hello Friends ,
I am trying to copy a module program SAPMZZTES1 with screens 1000 , 1100 , 1200 , 1300 , 1400 to another module pool program SAPMZZTES2 which would be a replica of the ealier module pool program .
When I go to SE51 and do copy SAPMZZTES1 1000 to SAPMZZTES2 1000 . It gives me the following error .
Program SAPMZZTES2 does not exist .
Please advise .
Thanks & Regards,HI,
1. Go to SE38
2. give the program name as SAPMZZTES1.
3. Click on copy button (Ctrl + F5) or Programs --> Copy menuitem.
4. Provide new name as SAPMZZTES2
5. click copy and select all check boxes..
it copies the program into SAPMZZTES2.
<b>HARI: what is the difference between my solution and Sajan Solution?</b>
Regards
SAB -
Hello experts,
I have got a ticket for a report.But its locked under some TR and i need to wait till its released.
So i tried copying the report as a local object and modifying it time bieng.
When i tried doing so its throwing a message "test objects cannot be created in foreign name spaces".
Could you please tell mer why its showing this message and how could i proceed with this.
Thanks in advance
AkmalHi,
As it is the 'Z' report you should not have any problem in copying.
If it is a report u better try copy and paste method.
That can be an alternative for your problem.
While copying from the program check whether u have any dependent objects for that program and copy them also.
May be some 'Z' F.M in it.
Cheers,
Simha. -
Getting run time errors while executing the copied SAP programs
Hi folks,
i want to copy an sap program.after coping i need to change some coding there.then i have to create a new transaction for that.
i am just copying the sap program RQEEAL10(transaction-QA32) to Z_RQEEAL10. it has 4 include programs.i am copying them to z programs like
RQ00MF10 copied to z_RQ00MF10
RQALVF14 copied to z_RQALVF14
RQALVF16 copied to z_RQALVF16
RQALVTOP copied to z_RQALVTOP.
now i am executing that program Z_RQEEAL10.but i am getting run time errors as given below.
<b>runtime error---</b>
The termination occurred in the ABAP program "Z_RQEEAL10" in
"SELECT_FIELDS_MANIP2_F16".
The main program was "Z_RQEEAL10 ".
The termination occurred in line 257 of the source code of the (Include)
program "RQALVF16"
of the source code of program "RQALVF16" (when calling the editor 2570).
--Error in ABAP statement when processing an internal table.
--When changing or deleting one or more lines of the internal table
"\PROGRAM=Z_RQEEAL10\DATA=SELECT_FIELDS" or when inserting in the table
"\PROGRAM=Z_RQEEAL10\DATA=SELECT_FIELDS", 0 was used as
the line index. An index less than or equal to zero is not
allowed.
The error can occur when using the following options:
1. "INDEX idx" for specifying the line number in the table
"\PROGRAM=Z_RQEEAL10\DATA=SELECT_FIELDS"
where you want to change, insert or delete.
2. "FROM idx" for specifying the start index when deleting a line
area from or inserting a line area into the table
"\PROGRAM=Z_RQEEAL10\DATA=SELECT_FIELDS".
3. "TO idx" for specifying the end index when deleting a line
area from or inserting a line area into the table
"\PROGRAM=Z_RQEEAL10\DATA=SELECT_FIELDS".
When the program terminated, the table had 2 lines.
these r the runtime errors what i am getting.where is the problem?i have activated all interface & includes.plz advice.
Thanks & regardsHi Madhu,
I will give you one more check point where you have to give your concentration while copying the standard programs....
Call Customer-Function (Function Exists) if any in the Program when copied will not get executed. Instead you need to call the FM Directly.
one more is also here
You are likely to have some problems with the text-elements and translation that may have been maintained for the original report.
~~Guduri -
Hello to all,
I am including one program to my main program. itab is defined in include program.
I am reading itab in main program using 'read table itab index x'.
but after executing main program there is error that this statement is not accessible.
can u tell me ?
Thanks a lot.
Regards.Thanks for reply.
data is filled in itab in include program .
& reading in main program with index . -
3.1EA2 simple table copy including data - gives error
hi
3.1EA2 simple table copy including data - results in error-message "Ora-01403 data not found Ora-06512 line 1 ....."
..... copy failed
although the copy did succeed and the table including data was copied.
regards KarstenHi Brian,
3.1EA2 shows a little bit improvement on the copy paste from grid.
However, these are another cases which I found :
1. This happens everytime
-invoke any select
select sysdate
from dual;
- leave the cursor position on after semicolon
- copy and paste the grid result, unto worksheet, so it will become like this
select sysdate
from dual;17-NOV-2011 10:42:29
- now, again copy the grid result using (ctrl + C)
- the selection on grid suddenly loose its focus (the yellow rectangle is disappear), instead the cursor on SQL worksheet makes selection.
- therefore the clipboard does not store the grid value
2. Intermittently, usually happens on the third attempts
- invoke any select
- copy and paste any cell into worksheet, press Enter
- copy and paste different cell into worksheet, press Enter
- copy and paste another different cel into worksheet, press Enter
- you'll notice the copy does not copy the correct value
- the workaround for this problem is to press Ctrl + C several times on the cell before pasting.
Regards,
Buntoro -
Oracle R Enterprise installation ERROR: cannot copy dll file
This is bit strange, I posted this message in 2 forums but surprisingly can't find it anymore!! Anyways, I would appreciate if anyone can help me a bit on this issue:
I am having trouble installing ORE 1.3 on my windows 7 (home premium, personal notebook) 64 bit. I strictly followed the installation note and made sure all the path variables are defined properly. My R version is 2.15.1. My Windows user is a member of ora_dba group as can be seen below.
C:\Users\sourabh>net localgroup ora_dba
Alias name ora_dba
Comment Oracle DBA Group
Members
NT AUTHORITY\SYSTEM
sourabh
The command completed successfully.Now when I try to install.bat (bare with me as I try to include the whole path as I believe there may be the problem. Note that my oracle and R installation is in H:\ drive, not in C:\. Can that be an issue about some windows permission? I off-course tried many ways, gave the user full permission, but no luck.)
C:Users\sourabh>H:\ORACLE\OracleREnterprise\ORE\ore-server-win-x86_64-1.3\server\install.bat
Oracle R Enterprise 1.3 Server Installation.
Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
Checking R ...................................
Pass
Checking R libraries ........................
Pass
Checking ORACLE_HOME ...............
Pass
Checking ORACLE_SID ..................
Pass
Checking sqlplus ...........................
Pass
Checking ORE ..............................
Pass
Current configuration
R_HOME = H:\ORACLE\OracleREnterprise\R\R-2.15.1
R_LIBS_USER = H:\ORACLE\Oracle11g\product\11.2.0\dbhome\R\library
ORACLE_HOME = H:\ORACLE\Oracle11g\product\11.2.0\dbhome
ORACLE_SID = SINHA
Do you wish to install ORE? [yes]
Choosomg RQSIS tablespace
PERMANENT tablespace to use for RQSYS [SYSAUX]:
Using default SYSAUX
TEMPORARY tablespace to use for RQSYS [TEMP]:
Using default TEMP
Tablespace summary
PERMANENT tablespace = SYSAUX
TEMPORARY tablespace = TEMP
Installing libraries ..............
Fail
ERROR: cannot copy "rqe.dll" to "H:\ORACLE\Oracle11g\product\11.2.0\dbhome\bin"
C:Users\sourabh>Now here is the default group/user and permissions structures for C:\ and H:\ installation directories on my computer:
C:\program files :
Group or user names Permissions
CREATOR OWNER Special Permissions
SYSTEM FULL control
Administrators (Win7\administrators) FULL control
Users (Win7\Users) Read & execute, List folder contents, Read
TrustedInstaller List folder contents, Special Permissions
H:\%ORACLE_HOME% :
Group or user names Permissions
Authenticated Users Special Permissions
SYSTEM FULL control
Administrators (Win7\administrators) FULL control Now noticed that there is no user called sourabh (Win7\Users) or Users (Win7\Users) on H:\, so I created and gave them "Full control" permission before running install script, but still no luck.... Any help please?
Thanks,
SourabhHi all,
I have finally solved the problem, it seems somehow on my windows home premium I can't run the install script (on H:\ ) from the command line. I manually ran the batch script by double clicking on it, it ran fine and I was finally able to install ORE (server + supported + client) on my laptop. Now the connection -- followed through the manual, created user and granted all the roles. Now that I want to test the connection, I open R console and below are the input and output error message though it seems I can connect to the database:
R>
R> library(ORE)
Loading required package: OREbase
Attaching package: ‘OREbase’
The following object(s) are masked from ‘package:base’:
cbind, data.frame, eval, interaction, order, paste, pmax, pmin, rbind, table
Loading required package: OREstats
Loading required package: MASS
Loading required package: OREgraphics
Loading required package: OREeda
Loading required package: OREdm
Loading required package: lattice
Loading required package: OREpredict
Loading required package: ORExml
R>
R>
R>
R> ore.connect(user = 'scott', sid = 'sinha', host = 'win7', password = 'tiger', port = 1521, all = T)
Error in .oci.GetQuery(conn, statement, data = data, prefetch = prefetch, :
ORA-06520: PL/SQL: Error loading external library
ORA-06522: Unable to load DLL
ORA-06512: at "RQSYS.RQEVALIMPL", line 17
ORA-06512: at "RQSYS.RQEVALIMPL", line 14
ORA-06512: at line 4
R>
R>
R> ore.is.connected()
[1] TRUE
R> I get the exact same error when I try to use even the ORE user "rquser". Any suggestion how to resolve this error?
Thanks,
Sourabh -
Subroutine inconsistency due to deletion of Include program
Hi All,
I created an include program(saved in local object) within my report(this was previously stored in a package) and I copied a few performs and forms from my report into the include program, but then i decided to go for the code without the include and commented the include statement in my report and deleted the include program(in se38). But now when I click on the perform statement in my report it gives a message "Object ZXY not found". The ZXY is my include program. Also when I view the report in se80 I find repetitive sub routines.Also I am not able to delete the duplicate sub routines in se80.
How can we overcome this inconsistency in duplication of subroutines, how to suppress the message and make sure the code is consistent?Hi,
So currently all the performs in program are part of some other include which is part of your main program?Because if not , obviously an error will be thrown.
Have you tried the option of rebuilding object list for the whole program?
Right click on the program name in SE80--> Other functions->Rebuild object List
Regards,
Arun
Edited by: arun warrier on Nov 30, 2011 1:36 PM -
How to put display-only condition in a custom include program
hello everyone,
I have to make a custom include program that will be used instead of the already available 'bdcrecx1'.
I have a couple of questions and would appreciate your help.
I need to create a parameter with a checkbox. When this checkbox is 'X' the following 2 fields need to be greyed out, otherwise user should be able to enter values in them. How can I grey out the fields?
Using my include I should have just the following:
1)parameter with checkbox
(if 'X', session and user greyed out)
2)Session Name
3)User Name
Also, is there a way I can avoid putting the following onto the screen:
1)Keep session (this will always be defaulted to 'X'
2)No Data
<b>Note:</b> I made a copy of 'bdcrecx1'and i'm doing changes according to my requirement.
Thanks in advance.
Regards,
Fred.Hi,
For your first question.
use
assign user command for checkbox say 'CLICK'..
at selection-screen output.
loop at screen.
if screen-group3 = 'VALUE' and checkbox condition.
screen-active = 0.
else
screen-active = 1.
endloop.
To make sure that the user enters the data in fields if checkbox is not grayed,
do it in event
start-of selection.
if field is initial.
exit.
go back to previous screen.
endif.
for removing 'keep session' , check out for exits..
Regards,
Tanveer.
Please mark helpful answers
Sorry about the previous error in reply.
Message was edited by: Tanveer Shaikh -
Dear Pals,
I need some tips from you pals.
My question is we have a development sytem there one transactions is running, I just wanted to copy the program, screens etc for that transaction to disk and move to some other company as it is for support. I had tried but i could not copy the screen painter forms etc.. How can i do it as it is very important.
Your help will be appreciated.
Regards
Omer.Hi Mohamed,
Here is a program given by someone last week in the forum.
PROGRAM zdown.
*=======================================================================
*=================================
Direct Download Enterprise version 1.2.
THIS SOFTWARE IS FOR PERSONAL USE ONLY.
THIS PROGRAM IS FREEWARE AND IS PROVIDED ON AN AS-IS BASIS WITHOUT
*WARRANTY OF ANY KIND.
THE PROVIDER SPECIFICALLY DISCLAIMS ANY OTHER WARRANTY, EXPRESS OR
*IMPLIED, INCLUDING ANY WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL PROVIDER BE LIABLE FOR ANY CONSEQUENTIAL,
PROGRAM DESCRIPTION & USE
Allows a user to download programs, Functions, DD definitions, etc
*to the presentation server. This
version searches recursively for nested includes and function
*modules, and allows you to download
the resulting code as standard text or HTML web pages within a
*suitable directory structure.
You can either search by object name, using wildcards if you wish,
*or a combination of Author and
object name. If you want all objects returned for a particular
*author then select the author name
and choose the most suitable radiobutton. All objects will be
*returned if the fields to the right
hand side of the radiobutton are left completely blank.
Compatible with R/3 Enterprise only, for older versions of SAP you
*will need Direct Download version 5.xx.
This version removes the programming limitations imposed by
*developing across SAP releases 3 to 4.6.
This program is intended to allow a person to keep a visual
*representation of a program for backup
purposes only as has not been designed to allow programs to be
*uploaded to SAP systems.
AUTHOR : E.G.Mellodew
PROGRAM CONTACT : [email protected]
www.dalestech.com
Types
text element structure
TYPES: ttexttable LIKE textpool.
GUI titles
TYPES: tguititle LIKE d347t.
Message classes
TYPES: BEGIN OF tmessage,
arbgb LIKE t100-arbgb,
stext LIKE t100a-stext,
msgnr LIKE t100-msgnr,
text LIKE t100-text,
END OF tmessage.
Screen flow.
TYPES: BEGIN OF tscreenflow,
screen LIKE d020s-dnum,
code LIKE d022s-line,
END OF tscreenflow.
Holds a table\structure definition
TYPES: BEGIN OF tdicttablestructure,
fieldname LIKE dd03l-fieldname,
position LIKE dd03l-position,
keyflag LIKE dd03l-keyflag,
rollname LIKE dd03l-rollname,
domname LIKE dd03l-domname,
datatype LIKE dd03l-datatype,
leng LIKE dd03l-leng,
ddtext LIKE dd04t-ddtext,
END OF tdicttablestructure.
Holds a tables attributes + its definition
TYPES: BEGIN OF tdicttable,
tablename LIKE dd03l-tabname,
tabletitle LIKE dd02t-ddtext,
istructure TYPE tdicttablestructure OCCURS 0,
END OF tdicttable.
Include program names
TYPES: BEGIN OF tinclude,
includename LIKE trdir-name,
includetitle LIKE tftit-stext,
END OF tinclude.
Method
TYPES: BEGIN OF tmethod,
cmpname LIKE vseomethod-cmpname,
descript LIKE vseomethod-descript,
exposure LIKE vseomethod-exposure,
methodkey TYPE string,
END OF tmethod.
Class
TYPES: BEGIN OF tclass,
scanned(1),
clsname LIKE vseoclass-clsname,
descript LIKE vseoclass-descript,
msg_id LIKE vseoclass-msg_id,
exposure LIKE vseoclass-exposure,
state LIKE vseoclass-state,
clsfinal LIKE vseoclass-clsfinal,
r3release LIKE vseoclass-r3release,
imethods TYPE tmethod OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
itextelements TYPE ttexttable OCCURS 0,
imessages TYPE tmessage OCCURS 0,
textelementkey TYPE string,
publicclasskey TYPE string,
privateclasskey TYPE string,
protectedclasskey TYPE string,
typesclasskey TYPE string,
exceptionclass TYPE i,
END OF tclass.
function modules
TYPES: BEGIN OF tfunction,
functionname LIKE tfdir-funcname,
functiongroup LIKE enlfdir-area,
includenumber LIKE tfdir-include,
functionmaininclude LIKE tfdir-funcname,
functiontitle LIKE tftit-stext,
topincludename LIKE tfdir-funcname,
progname LIKE tfdir-pname,
programlinkname LIKE tfdir-pname,
messageclass LIKE t100-arbgb,
itextelements TYPE ttexttable OCCURS 0,
iselectiontexts TYPE ttexttable OCCURS 0,
imessages TYPE tmessage OCCURS 0,
iincludes TYPE tinclude OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
iguititle TYPE tguititle OCCURS 0,
iscreenflow TYPE tscreenflow OCCURS 0,
END OF tfunction.
TYPES: BEGIN OF tprogram,
progname LIKE trdir-name,
programtitle LIKE tftit-stext,
subc LIKE trdir-subc,
messageclass LIKE t100-arbgb,
imessages TYPE tmessage OCCURS 0,
itextelements TYPE ttexttable OCCURS 0,
iselectiontexts TYPE ttexttable OCCURS 0,
iguititle TYPE tguititle OCCURS 0,
iscreenflow TYPE tscreenflow OCCURS 0,
iincludes TYPE tinclude OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
END OF tprogram.
Internal tables
Dictionary object
DATA: idictionary TYPE STANDARD TABLE OF tdicttable WITH HEADER LINE.
Function modules.
DATA: ifunctions TYPE STANDARD TABLE OF tfunction WITH HEADER LINE.
Tree display structure.
DATA: itreedisplay TYPE STANDARD TABLE OF snodetext WITH HEADER LINE.
Message class data
DATA: imessages TYPE STANDARD TABLE OF tmessage WITH HEADER LINE.
Holds a single message class an all of its messages
DATA: isinglemessageclass TYPE STANDARD TABLE OF tmessage WITH HEADER
LINE.
Holds program related data
DATA: iprograms TYPE STANDARD TABLE OF tprogram WITH HEADER LINE.
Classes
DATA: iclasses TYPE STANDARD TABLE OF tclass WITH HEADER LINE.
Table prototypes
DATA: dumidictstructure TYPE STANDARD TABLE OF tdicttablestructure.
DATA: dumitexttab TYPE STANDARD TABLE OF ttexttable.
DATA: dumiincludes TYPE STANDARD TABLE OF tinclude.
DATA: dumihtml TYPE STANDARD TABLE OF string.
DATA: dumiheader TYPE STANDARD TABLE OF string .
DATA: dumiscreen TYPE STANDARD TABLE OF tscreenflow .
DATA: dumiguititle TYPE STANDARD TABLE OF tguititle.
DATA: dumimethods TYPE STANDARD TABLE OF tmethod.
Global objects
DATA: objfile TYPE REF TO cl_gui_frontend_services.
DATA: objruntimeerror TYPE REF TO cx_root.
Constants
CONSTANTS: versionno TYPE string VALUE '1.2'.
CONSTANTS: tables TYPE string VALUE 'TABLES'.
CONSTANTS: like TYPE string VALUE 'LIKE'.
CONSTANTS: type TYPE string VALUE 'TYPE'.
CONSTANTS: typerefto TYPE string VALUE 'TYPE REF TO'.
CONSTANTS: structure TYPE string VALUE 'STRUCTURE'.
CONSTANTS: lowstructure TYPE string VALUE 'structure'.
CONSTANTS: occurs TYPE string VALUE 'OCCURS'.
CONSTANTS: function TYPE string VALUE 'FUNCTION'.
CONSTANTS: callfunction TYPE string VALUE ' CALL FUNCTION'.
CONSTANTS: message TYPE string VALUE 'MESSAGE'.
CONSTANTS: include TYPE string VALUE 'INCLUDE'.
CONSTANTS: lowinclude TYPE string VALUE 'include'.
CONSTANTS: destination TYPE string VALUE 'DESTINATION'.
CONSTANTS: is_table TYPE string VALUE 'T'.
CONSTANTS: is_program TYPE string VALUE 'P'.
CONSTANTS: is_screen TYPE string VALUE 'S'.
CONSTANTS: is_guititle TYPE string VALUE 'G'.
CONSTANTS: is_documentation TYPE string VALUE 'D'.
CONSTANTS: is_messageclass TYPE string VALUE 'MC'.
CONSTANTS: is_function TYPE string VALUE 'F'.
CONSTANTS: is_class TYPE string VALUE 'C'.
CONSTANTS: is_method TYPE string VALUE 'M'.
CONSTANTS: asterix TYPE string VALUE '*'.
CONSTANTS: comma TYPE string VALUE ','.
CONSTANTS: period TYPE string VALUE '.'.
CONSTANTS: dash TYPE string VALUE '-'.
CONSTANTS: true TYPE i VALUE 1.
CONSTANTS: false TYPE i VALUE 0.
CONSTANTS: lt TYPE string VALUE '<'.
CONSTANTS: gt TYPE string VALUE '>'.
CONSTANTS: unix TYPE string VALUE 'UNIX'.
CONSTANTS: non_unix TYPE string VALUE 'not UNIX'.
CONSTANTS: background_colour TYPE string VALUE '#FFFFE0'.
CONSTANTS: colour_white TYPE string VALUE '#FFFFFF'.
CONSTANTS: colour_black TYPE string VALUE '#000000'.
CONSTANTS: colour_yellow TYPE string VALUE '#FFFF00'.
CONSTANTS: comment_colour TYPE string VALUE '#0000FF'.
CONSTANTS: htmlextension TYPE string VALUE 'html'.
CONSTANTS: textextension TYPE string VALUE 'txt'.
Global variables
DATA: statusbarmessage(100).
DATA: forcedexit TYPE i VALUE 0.
DATA: starttime LIKE sy-uzeit.
DATA: runtime LIKE sy-uzeit.
DATA: downloadfileextension TYPE string.
DATA: downloadfolder TYPE string.
DATA: slashseparator TYPE string.
DATA: frontendopsystem TYPE string.
DATA: customernamespace TYPE string.
RANGES: soprogramname FOR trdir-name.
RANGES: soauthor FOR usr02-bname.
RANGES: sotable FOR dd02l-tabname.
RANGES: sofunctionname FOR tfdir-funcname.
RANGES: soclassname FOR vseoclass-clsname.
RANGES: sofunctiongroup FOR enlfdir-area.
FIELD-SYMBOLS: <wadictstruct> TYPE tdicttable.
Selection screen declaration
Author
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE tblock1.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(23) tauth.
PARAMETERS: pauth LIKE usr02-bname MEMORY ID mauth.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(36) tpmod.
PARAMETERS: pmod AS CHECKBOX.
SELECTION-SCREEN END OF LINE.
*--- Local objects
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(36) t$tmp.
PARAMETERS: p$tmp AS CHECKBOX DEFAULT ''.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE tblock2.
Tables
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rtable RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(20) trtable.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tptable.
PARAMETERS: ptable LIKE dd02l-tabname MEMORY ID mtable.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(79) ttnote.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(79) ttnote1.
SELECTION-SCREEN END OF LINE.
Message classes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rmess RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(18) tpmes.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tmname.
PARAMETERS: pmname LIKE t100-arbgb MEMORY ID mmname.
SELECTION-SCREEN END OF LINE.
Function modules
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rfunc RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(30) trfunc.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tpfname.
PARAMETERS: pfname LIKE tfdir-funcname MEMORY ID mfname.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tfgroup.
PARAMETERS: pfgroup LIKE enlfdir-area MEMORY ID mfgroup.
SELECTION-SCREEN END OF LINE.
Classes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rclass RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(30) trclass.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tpcname.
PARAMETERS: pclname LIKE seoclass-clsname MEMORY ID mcname.
SELECTION-SCREEN END OF LINE.
Programs / includes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rprog RADIOBUTTON GROUP r1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 5(18) tprog.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) trpname.
PARAMETERS: pprog LIKE trdir-name MEMORY ID mprog.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
Language
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(18) tmlang.
PARAMETERS: pmlang LIKE t100-sprsl DEFAULT 'EN'.
SELECTION-SCREEN END OF LINE.
Package
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(18) tpack.
PARAMETERS: ppack LIKE tadiv-devclass MEMORY ID mpack.
SELECTION-SCREEN END OF LINE.
Customer objects
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(27) tcust.
PARAMETERS: pcust AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN COMMENT 32(25) tnrange.
PARAMETERS: pcname TYPE namespace MEMORY ID mnamespace.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b2.
Additional things to download.
SELECTION-SCREEN: BEGIN OF BLOCK b3 WITH FRAME TITLE tblock3.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tptext.
PARAMETERS: ptext AS CHECKBOX DEFAULT 'X' MEMORY ID mtext.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tmess.
PARAMETERS: pmess AS CHECKBOX DEFAULT 'X' MEMORY ID mmess.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpinc.
PARAMETERS: pinc AS CHECKBOX DEFAULT 'X' MEMORY ID minc.
SELECTION-SCREEN COMMENT 40(20) trecc.
PARAMETERS: preci AS CHECKBOX DEFAULT 'X' MEMORY ID mreci.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpfunc.
PARAMETERS: pfunc AS CHECKBOX DEFAULT 'X' MEMORY ID mfunc.
SELECTION-SCREEN COMMENT 40(20) trecf.
PARAMETERS: precf AS CHECKBOX DEFAULT 'X' MEMORY ID mrecf.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tdoc.
PARAMETERS: pdoc AS CHECKBOX DEFAULT 'X' MEMORY ID mdoc.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpscr.
PARAMETERS: pscr AS CHECKBOX DEFAULT 'X' MEMORY ID mscr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpdict.
PARAMETERS: pdict AS CHECKBOX DEFAULT 'X' MEMORY ID mdict.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tsortt.
PARAMETERS: psortt AS CHECKBOX DEFAULT ' ' MEMORY ID msortt.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b3.
File details
SELECTION-SCREEN: BEGIN OF BLOCK b4 WITH FRAME TITLE tblock4.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tphtml.
PARAMETERS: phtml RADIOBUTTON GROUP g1 DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(25) tcomm.
PARAMETERS: pcomm AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(25) tback.
PARAMETERS: pback AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tptxt.
PARAMETERS: ptxt RADIOBUTTON GROUP g1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tppath.
PARAMETERS: pfolder LIKE rlgrap-filename OBLIGATORY MEMORY ID
mfolder.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b4.
Display a directory picker window
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pfolder.
DATA: objfile TYPE REF TO cl_gui_frontend_services.
DATA: pickedfolder TYPE string.
DATA: initialfolder TYPE string.
CREATE OBJECT objfile.
IF NOT pfolder IS INITIAL.
initialfolder = pfolder.
ELSE.
objfile->get_temp_directory( CHANGING temp_dir = initialfolder
EXCEPTIONS cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3 ).
ENDIF.
objfile->directory_browse( EXPORTING initial_folder = initialfolder
CHANGING selected_folder = pickedfolder
EXCEPTIONS cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3 ).
IF sy-subrc = 0.
pfolder = pickedfolder.
ELSE.
WRITE: / 'An error has occured picking a folder'.
ENDIF.
initialisation
INITIALIZATION.
Parameter screen texts.
tblock1 = 'Author (Optional)'.
t$tmp = 'Programs only: include local objects'.
tblock2 = 'Objects to download'.
tblock3 = 'Additional downloads for progs, func modules and classes'.
tblock4 = 'Download parameters'.
tauth = 'Author name'.
tpmod = 'Include programs modified by author'.
tcust = 'Only customer objects'.
tnrange = 'Alt customer name range'.
trtable = 'Tables / Structures'.
tptable = 'Table name'.
ttnote = 'Please note: tables are stored under the username of the'.
ttnote1 = 'last person who modified them.'.
trfunc = 'Function modules'.
tpfname = 'Function name'.
tfgroup = 'Function group'.
trclass = 'Classes'.
tpcname = 'Class name'.
tmess = 'Message class'.
tmname = 'Class name'.
tmlang = 'Language'.
tprog = 'Programs'.
trpname = 'Program name'.
tpack = 'Package'.
tptxt = 'Text document'.
tphtml = 'HTML document'.
tcomm = 'Highlight comments'.
tback = 'Include background colour'.
tptext = 'Text elements'.
tpinc = 'Include programs'.
trecc = 'Recursive search'.
tppath = 'File path'.
tpmes = 'Message classes'.
tpfunc = 'Function modules'.
tdoc = 'Function module documentation'.
trecf = 'Recursive search'.
tpscr = 'Screens'.
tpdict = 'Dictionary structures'.
tsortt = 'Sort table fields alphabetically'.
Determine the frontend operating system type.
PERFORM determinefrontendopsystem USING slashseparator.
start-of-selection.
START-OF-SELECTION.
PERFORM checkcomboboxes.
PERFORM fillselectionranges.
downloadfolder = pfolder.
starttime = sy-uzeit.
Fool the HTML routines to stop them hyperlinking anything with a space
*in them
IF pcname IS INITIAL.
customernamespace = '^'.
ELSE.
customernamespace = pcname.
ENDIF.
Main program flow.
CASE 'X'.
Select tables
WHEN rtable.
PERFORM retrievetables USING idictionary[]
sotable[]
soauthor[].
Select message classes tables
WHEN rmess.
PERFORM retrievemessageclass USING imessages[]
soauthor[] "Author
pmname "Message classname
pmlang "Message classanguage
pmod. "Modified by author
Select function modules
WHEN rfunc.
IF pfname+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
IF pfgroup+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrievefunctions USING sofunctionname[] "Function name
sofunctiongroup[] "Function group
ifunctions[] "Foundfunctions
pauth "Author
ptext "Get textelements
pscr "Get screens
pcust "Customer data only
customernamespace. "Customer name range
LOOP AT ifunctions.
Find Dict structures, messages, functions, includes etc.
PERFORM scanforadditionalfuncstuff USING ifunctions[]
preci
"Search for includes recursively
precf
"Search for functions recursively
pinc
"Search for includes
pfunc
"Search for functions
pdict
"search for dictionary objects
pmess
"Search for messages
pcust
"Customer data only
customernamespace.
"Customer name range
ENDLOOP.
Select Classes
WHEN rclass.
IF pclname+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrieveclasses USING iclasses[]
ifunctions[]
soclassname[] "Class name
soauthor[] "Author
customernamespace "Customer namerange
pmod "Also modifiedby author
pcust "Customer objectonly
pmess "Find messages
ptext "Text Elements
pdict "Dictionarystructures
pfunc "Get functions
pinc "Get includes
precf "Searchrecursively for functions
preci "Searchrecursively for includes
'X' "Searchrecursively for classes
pmlang. "Language
LOOP AT ifunctions.
Find Dict structures, messages, functions, includes etc.
PERFORM scanforadditionalfuncstuff USING ifunctions[]
preci
"Search for includes recursively
precf
"Search for functions recursively
pinc
"Search for includes
pfunc
"Search for functions
pdict
"search for dictionary objects
pmess
"Search for messages
pcust
"Customer data only
customernamespace.
"Customer name range
ENDLOOP.
Select programs
WHEN rprog.
IF pprog+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrieveprograms USING iprograms[]
ifunctions[]
soprogramname[] "Program name
soauthor[] "Author
customernamespace "Customer nam range
pmod "Also modifiedby author
pcust "Customer object only
pmess "Find messages
ptext "Text Elements
pdict "Dictionaystructures
pfunc "Get functions
pinc "Get includes
pscr "Get screens
precf "Search recursively for functions
preci "Searchrecursively for includes
p$tmp "local objects
ppack. "Package
ENDCASE.
end-of-selection
END-OF-SELECTION.
IF forcedexit = 0.
Set the file extension and output type of the file
IF ptxt IS INITIAL.
downloadfileextension = htmlextension.
ELSE.
downloadfileextension = textextension.
ENDIF.
Decide what to download
CASE 'X'.
Download tables
WHEN rtable.
IF NOT ( idictionary[] IS INITIAL ).
PERFORM downloadddstructures USING idictionary[]
pfolder
htmlextension
space
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT idictionary.
FREE MEMORY ID idictionary-tablename.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodetables USING idictionary[]
itreedisplay[]
runtime.
CLEAR idictionary[].
ENDIF.
Download message class
WHEN rmess.
IF NOT ( imessages[] IS INITIAL ).
SORT imessages ASCENDING BY arbgb msgnr.
LOOP AT imessages.
APPEND imessages TO isinglemessageclass.
AT END OF arbgb.
PERFORM downloadmessageclass USING isinglemessageclass[]
imessages-arbgb
pfolder
downloadfileextension
phtml
space
pcomm
customernamespace
pinc
pdict
pmess.
CLEAR isinglemessageclass[].
ENDAT.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodemessages USING imessages[]
itreedisplay[]
runtime.
CLEAR imessages[].
ENDIF.
Download functions
WHEN rfunc.
IF NOT ( ifunctions[] IS INITIAL ).
PERFORM downloadfunctions USING ifunctions[]
pfolder
downloadfileextension
space
pdoc
phtml
pcomm
customernamespace
pinc
pdict
textextension
htmlextension
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING <wadictstruct>.
FREE MEMORY ID <wadictstruct>-tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodefunctions USING ifunctions[]
itreedisplay[]
runtime.
CLEAR ifunctions[].
ENDIF.
Download Classes
WHEN rclass.
IF NOT ( iclasses[] IS INITIAL ).
PERFORM downloadclasses USING iclasses[]
ifunctions[]
pfolder
downloadfileextension
htmlextension
textextension
phtml
pcomm
customernamespace
pinc
pdict
pdoc
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING <wadictstruct>..
FREE MEMORY ID <wadictstruct>-tablename.
ENDLOOP.
ENDLOOP.
Free up any memory used for caching HTML versions of tables
LOOP AT iprograms.
LOOP AT iprograms-idictstruct ASSIGNING <wadictstruct>..
FREE MEMORY ID <wadictstruct>-tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodeclasses USING iclasses[]
ifunctions[]
itreedisplay[]
runtime.
CLEAR iclasses[].
CLEAR ifunctions[].
ENDIF.
Download programs
WHEN rprog.
IF NOT ( iprograms[] IS INITIAL ).
PERFORM downloadprograms USING iprograms[]
ifunctions[]
pfolder
downloadfileextension
htmlextension
textextension
phtml
pcomm
customernamespace
pinc
pdict
pdoc
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING <wadictstruct>..
FREE MEMORY ID <wadictstruct>-tablename.
ENDLOOP.
ENDLOOP.
Free up any memory used for caching HTML versions of tables
LOOP AT iprograms.
LOOP AT iprograms-idictstruct ASSIGNING <wadictstruct>..
FREE MEMORY ID <wadictstruct>-tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodeprograms USING iprograms[]
ifunctions[]
itreedisplay[]
runtime.
CLEAR iprograms[].
CLEAR ifunctions[].
ENDIF.
ENDCASE.
IF NOT ( itreedisplay[] IS INITIAL ).
PERFORM displaytree USING itreedisplay[].
ELSE.
statusbarmessage = 'No items found matching selection criteria'.
PERFORM displaystatus USING statusbarmessage 1.
ENDIF.
ENDIF.
*--- Memory IDs
User name
SET PARAMETER ID 'MAUTH' FIELD pauth.
Table name
SET PARAMETER ID 'MTABLE' FIELD ptable.
Message class
SET PARAMETER ID 'MMNAME' FIELD pmname.
Function
SET PARAMETER ID 'MFNAME' FIELD pfname.
Function group
SET PARAMETER ID 'MFGROUP' FIELD pfgroup.
Class
SET PARAMETER ID 'MCNAME' FIELD pclname.
Program
SET PARAMETER ID 'MPROG' FIELD pprog.
Customer namespace
SET PARAMETER ID 'MNAMESPACE' FIELD pcname.
Folder
SET PARAMETER ID 'MFOLDER' FIELD pfolder.
Package
SET PARAMETER ID 'MPACK' FIELD ppack.
Text element checkbox
SET PARAMETER ID 'MTEXT' FIELD ptext.
Messages checkbox
SET PARAMETER ID 'MMESS' FIELD pmess.
Includes checkbox
SET PARAMETER ID 'MINC' FIELD pinc.
Recursive includes checkbox.
SET PARAMETER ID 'MRECI' FIELD preci.
Functions checkbox
SET PARAMETER ID 'MFUNC' FIELD pfunc.
Recursive functions checkbox
SET PARAMETER ID 'MRECF' FIELD precf.
Function module documntation checkbox
SET PARAMETER ID 'MDOC' FIELD pdoc.
Screens checkbox
SET PARAMETER ID 'MSCR' FIELD pscr.
Dictionary checkbox
SET PARAMETER ID 'MDICT' FIELD pdict.
Sort table ascending checkBox
SET PARAMETER ID 'MSORTT' FIELD psortt.
****************************************SUBROUTINES*******************
checkComboBoxes... Check input parameters
FORM checkcomboboxes.
IF pauth IS INITIAL.
CASE 'X'.
WHEN rtable.
IF ptable IS INITIAL.
statusbarmessage = 'You must enter either a table name or author.'.
ENDIF.
WHEN rfunc.
IF ( pfname IS INITIAL ) AND ( pfgroup IS INITIAL ).
IF pfname IS INITIAL.
statusbarmessage = 'You must enter either a function name or author.'.
ELSE.
IF pfgroup IS INITIAL.
statusbarmessage = 'Must enter either a func gp, or an author name.'.
ENDIF.
ENDIF.
ENDIF.
WHEN rprog.
IF pprog IS INITIAL.
statusbarmessage = 'You must enter either a program name or
author name.'.
ENDIF.
ENDCASE.
Check the user name of the person objects are to be downloaded for
ELSE.
IF pauth = 'SAP*' OR pauth = 'SAP'.
statusbarmessage = 'Sorry cannot download all objects for SAP
standard user'.
ENDIF.
ENDIF.
IF NOT statusbarmessage IS INITIAL.
PERFORM displaystatus USING statusbarmessage 3.
forcedexit = 1.
STOP.
ENDIF.
ENDFORM. "
"checkComboBoxes
fillSelectionRanges... for selection routines
FORM fillselectionranges.
DATA: valuetofind TYPE string.
IF NOT pauth IS INITIAL.
soauthor-sign = 'I'.
soauthor-option = 'EQ'.
soauthor-low = pauth.
APPEND soauthor.
ENDIF.
IF NOT ptable IS INITIAL.
IF NOT pcname IS INITIAL AND NOT ptable+0(1) = '/'.
CONCATENATE pcname ptable INTO valuetofind.
ELSE.
valuetofind = ptable.
ENDIF.
sotable-sign = 'I'.
sotable-option = 'EQ'.
sotable-low = valuetofind.
APPEND sotable.
ENDIF.
IF NOT pfname IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pfname+0(1) = '/'.
CONCATENATE pcname pfname INTO valuetofind.
ELSE.
valuetofind = pfname.
ENDIF.
sofunctionname-sign = 'I'.
PERFORM addoption USING valuetofind sofunctionname-option.
sofunctionname-low = valuetofind.
APPEND sofunctionname.
ENDIF.
IF NOT pfgroup IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pfgroup+0(1) = '/'.
CONCATENATE pcname pfgroup INTO valuetofind.
ELSE.
valuetofind = pfgroup.
ENDIF.
sofunctiongroup-sign = 'I'.
PERFORM addoption USING valuetofind sofunctiongroup-option.
sofunctiongroup-low = valuetofind.
APPEND sofunctiongroup.
ENDIF.
IF NOT pclname IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pclname+0(1) = '/'.
CONCATENATE pcname pclname INTO valuetofind.
ELSE.
valuetofind = pclname.
ENDIF.
soclassname-sign = 'I'.
PERFORM addoption USING valuetofind soclassname-option.
soclassname-low = valuetofind.
APPEND soclassname.
ENDIF.
IF NOT pprog IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pprog+0(1) = '/'.
CONCATENATE pcname pprog INTO valuetofind.
ELSE.
valuetofind = pprog.
ENDIF.
soprogramname-sign = 'I'.
PERFORM addoption USING valuetofind soprogramname-option.
soprogramname-low = valuetofind.
APPEND soprogramname.
ENDIF.
ENDFORM. "
" fillSelectionRanges
addOption... fills the option value of ranges
FORM addoption USING value(valuetofind)
option.
IF valuetofind CA asterix.
option = 'CP'.
ELSE.
option = 'EQ'.
ENDIF.
ENDFORM. "
"addOption
retrieveTables... -
Error during copying of conditions
Hi,
Can anyone tell me the resolution for below error.
Error during copying of conditions
Message no. 06663
Diagnosis
Internal error.
Procedure
Please inform your programming department or system administrator.
ThanksHello,
Check assignment of access sequence to the gross price or include condition table A068 in your access sequence.
Regards, -
Canu00B4t create the include program HPEPAYMACRO
Can any one help me???
The paymacro is not defined for Perú so I need to create the include program HPEPAYMACRO as copy from H99PAYMACRO, when I try to do the copy there is a error message "Object name HPEPAYMACRO reserved for package P", but the package P does not exist.
How could I create the program HPEPAYMACRO?
Thanks for advance.Hi Rich,
You're right, it's a warning, I just have to press enter to continue...
Thanks,
Huong Le -
Strange problem when copying standard program SAPF100 (transaction F.05)
Hi there ABAP'ers,
I've got a very strange problem I can't figure out :/
I'm doing a copy of a standard program - SAPF100, which stands for F.05 transaction.
I copy it to ZSAPF100 and after launching it, filling a selection-screen with data and F8 I'm receiving a dump
GETWA_NOT_ASSIGNED
Field symbol has not yet been assigned.
The termination occurred in the ABAP program "SAPF100" in "DO_SKC1C".
The main program was "ZSAPF100 ".
The termination occurred in line 253 of the source code of the (Include)
program "SAPF100_SBEW"
of the source code of program "SAPF100_SBEW" (when calling the editor 2530).
and when debugging the place in Zcode where error occurs - really a fs is not assigned, whilst in standard code is assigned.
Why such situation appeared? I just copied the standard program and launched a copy :/ How to deal with that problem?
I will be very very very thankful for a help.
Regards. P.I'm doing the copy:
Components:
Source
Text elements
Documentation
Variants
User interface
Screens
INCLUDEs
Includes:
FROM -> TO
<ICON> Z<ICON>
<LINE> Z<LINE>
FIUUMS40 ZFIUUMS40
RKASMAWF ZRKASMAWF
SAPF100_I1 ZSAPF100_I1
SAPF100_POSTINGS ZSAPF100_POSTINGS
SAPF100_SBEW ZSAPF100_SBEW
SAPF100_SLDATA ZSAPF100_SLDATA
SCHEDMAN_EVENTS ZSCHEDMAN_EVENTS
And still DUMP
Maybe you are looking for
-
The pass 4 days now my iTunes Store is not responding, when I reload it all that comes up is a blank white page that says iTunes Store. Help please!!!! Cannot load my gift card to buy music and such!!!
-
How to add fields in smartform
Hi, I would like to add some fields in standard smartform for outbound delivery ( VL03N ). Actually, I formatted smartform accourding to clent requirement. But I am not getting how to add some fields in that. Please, help me with any example. Thanks
-
Vendor/Customer Account Group and Master Records
Hi Gurus, Please tell me during implementation Vendor/Customer account groups and Master Records will be prepared by FI Consultants or MM, SD Consultants? Waiting for reply ThankYOu
-
Run midi file with IE 5.0 or 6.0
I write an applet that play "sound.midi" and bundle it in a jar file.The jar file contains SoundApplet.class SimpleThread.class test.mid I can listen to the midi by appletviewer but it doesn't work with IE 5.0 or 6.0. What should I do?(I think the la
-
Creative Cloud Installer gets half way through downloading the desktop app then just disappears, without downloading, why is that? I have recently purchased a student subscription to the 'complete package', my credit card was charged. Then I downloa