Local Class Transaction Code Problem
Hi friends,
I have created report program using local class. I have also used selection screen to get input from user. I have created oops transaction code (using se93) for that program.
Problem is selection screen is not displayed when program is executed using tcode.
I think logically it not possibel to display the selection screen. Is it true?. OR
What Should I do?.
Next Question is, I have also created global class from my report program. But i cant able to find my class in se24.
I have done following things.
1) imported a local class from my report prg. ( In pop up screen that class icon(circle shaped icon) shown in gray colour)
2) Assigend New class name starting with 'Z'.
3) Selected overwrite existing class checkbok.
4) selected import icon.
'Import Completed Succesfully' message appeared. Still i am not able to find my class.
Kindly provide answers.
Thanks In Advance,
S.Senthil
Hi senthil kumar ,
u can display the selection screen and secondly try to create your report in module pool type,
and when also check if the class is activated or not and then check in se24,
if still the issue remains
let me know...
thanks
ravi
Similar Messages
-
Create Global Class Definition using Local Class Source Code
I would like to be able to automate the creation of global class definitions using source code that is defined in a text file (one example: convert a local class def to a global class def).
Does SAP deliver this functionality? (I'm already aware of the various classes that can be used to create global classes and how those classes can be implemented in a program to generate new classes. I'm hoping to avoid having to create a custom solution.)
Thanks in advance!We have a winner!
Thanks Rich!
It's not a 100% solution - I was hoping to be able to generate global classes/interfaces using source code alone, without requiring user intervention.
It <i>is</i> however, a 90-95% solution because debugging SE24 reveals that by using a combination of the FM's SCAN_ABAP_OBJECTS_CLASSES & SEO_CLIF_MULTI_IMPORT, I should be able to <u>quickly</u> put together that custom application that I was trying to avoid.
I knew about the existance of SEO_CLIF_MULTI_IMPORT but I did not know about SCAN_ABAP_OBJECTS_CLASSES. I'm very happy to learn that I'm not going to have to write a parser! -
Problem in creation of transaction code !!!
Dear Friends,
I have created a transaction code for my program and when i am executing the transaction code initial screen is coming but once i am executing nothing is happening and it is going to the easy access screen.Where is the problem?
Thannks & Regards,
Murali.HI,
You might have selected the Radio Button Program and screen (dialog Transaction)
Select the radio button Program and Selection Screen(Report Transaction)
Delete the transaction and create the again..selecting the proper radio button. -
Problem in executing FS10N transaction code -
Hi All,
I am executing FS10N transaction code, in selection criteria for company code, I have selected multiple selection tab. Here in ranges tab, I have entered " 01 to 32" Company codes range. Then I am receiving the following message "ONLY SELECT COMPANY CODES WITH SAME FISCAL YEAR".
I am sure that all the selected comapny codes are having same fiscal year variant.
Please advise me what is the problem and what should I do to rectify it.Hi chandra,
This problem occur because you had been posted documents for some company code with another fiscal year variant and changed afterwards.
Enter in OBY6: Utilities - Changed logs - Display status.
You can display companies codes balances with same document posting period. -
I am having problem for activate adobe form in transaction.code SFP
Dear friends,
I am getting one dialogbox with error message when ever i activate adobe form in transaction code sfp.
ERROR is :
THis form refers to external files which where not found on this computer. please create a connection to the following folder so that these files can be found.
http://localhost:8000/sap/bc/form/layout/exactly the same problem here.
Somebody any idea?
All help is appreciated.
Tnx!
RoB -
Problem with local class, static private attribute and public method
Hello SDN,
Consider the following situation:
1) I have defined a LOCAL class airplane.
2) This class has a private static attribute "type table of ref to" airplane (array of airplanes)
3) A public method should return the private static table attribute
Problems:
a) The table cannot be given as an EXPORTING parameter in the method because TYPE TABLE OF... is not supported and I get syntax errors. I also cannot define a dictionary table type because it is a local class.
b) The table cannot be given as a TABLES parameter in the method because TABLES is not supported in the OO context.
c) The table cannot be given as an EXPORTING parameter in the method defined as LIKE myStaticAttribute because my method is PUBLIC and my attribute is PRIVATE. ABAP syntax requires that all PUBLIC statements are defined before PRIVATE ones, therefore it cannot find the attribute to reference to with LIKE.
I see only 2 solutions:
a) Never ever use local classes and always use global classes so that I might define a dictionary table type of my class which I can then use in my class.
b) Make the attribute public, but this goes against OO principles, and isn't really an option.
Am I missing anything here, or is this simply overlooked so far?Hello Niels
Since your class is local and, thus, only know to the "surrounding" application is does not really make sense to make it public to any other application.
However, if you require to store instances of your local classes in internal tables simply use the most generic reference type possible, i.e. <b>OBJECT</b>.
The following sample report shows how to do that. Furthermore, I believe it also shows that there are <u><b>no </b></u>serious inconsistency in the ABAP language.
*& Report ZUS_SDN_LOCAL_CLASS
REPORT zus_sdn_local_class.
" NOTE: SWF_UTL_OBJECT_TAB is a table type having reference type OBJECT
* CLASS lcl_airplane DEFINITION
CLASS lcl_airplane DEFINITION.
PUBLIC SECTION.
DATA: md_counter(3) TYPE n.
METHODS: constructor,
get_instances
RETURNING
value(rt_instances) TYPE swf_utl_object_tab.
PRIVATE SECTION.
CLASS-DATA: mt_instances TYPE swf_utl_object_tab.
ENDCLASS. "lcl_airplane DEFINITION
* CLASS lcl_airplane IMPLEMENTATION
CLASS lcl_airplane IMPLEMENTATION.
METHOD constructor.
APPEND me TO mt_instances.
DESCRIBE TABLE mt_instances.
md_counter = syst-tfill.
ENDMETHOD. "constructor
METHOD get_instances.
rt_instances = mt_instances.
ENDMETHOD. "get_instance
ENDCLASS. "lcl_airplane IMPLEMENTATION
DATA:
gt_instances TYPE swf_utl_object_tab,
go_object TYPE REF TO object,
go_airplane TYPE REF TO lcl_airplane.
START-OF-SELECTION.
" Create a few airplane instance
DO 5 TIMES.
CREATE OBJECT go_airplane.
ENDDO.
gt_instances = go_airplane->get_instances( ).
CLEAR: go_airplane.
LOOP AT gt_instances INTO go_object.
go_airplane ?= go_object.
WRITE: / 'Airplane =', go_airplane->md_counter.
ENDLOOP.
END-OF-SELECTION.
Regards
Uwe<u></u> -
Creating of Notes for Transaction Code RECN(Using Classes and Methods)
Hi Experts,
I want to Create Notes for Transaction Code RECN, This should not done manually but should be done programatically.
I had used the Class CL_GOS_SRV_NOTE_CREATE to create the notes.....but here comes the doubt for me.....note will be created by using this class and how this can be created for the Tcode RECN........
I am using the Real Estate Module.....Plz help me....awaiting for ur helpful answers....
Thanks in Advance.....!
BrahmaHi kanagaraja,
Thanks...!
The BADI which u have given is not existing in my system...i had gone through the se18 and se19 tcodes....
Awaiting for ur response......!
Thanks,
Brahma... -
Transaction code which using method of a class as start object
Hi all,
I'm creating a new tcode 'Z123' which is tied to a method of a class in SE93. However, when I run this tcode and into debug mode, SY-TCODE will always return OS_APPLICATION. How can I get the actual tcode, which is 'Z123' into my program?
Thanks in advanceYou can try using the method GET_CURRENT_TRANSACTION of class CL_DYNPRO. Check this SAP documentation for details:
... the method GET_CURRENT_TRANSACTION of the class CL_DYNPRO can be used to obtain the transaction code of the current transaction. This method returns the transaction code during a parameter transaction or variant transaction instead of the transaction code of the implicitly called dialog transaction.
But if i try checking sy-tcode in a tcode bound to a method of a class i get the correct tcode & not OS_APPLICATION.
Br,
Suhas -
Hi,
I bought a book yesterday and I was able to open it in my vista machine. I have a second computer and I can't open my book there. I get this error:
Adobe DRM Error
System: 8
State: 4
Class: 65
Code: 59
Message:
VE error 59
--- end ---
I already downloaded Adobe Digital Editions 1.5 beta 2, and went back to acrobat reader 6, activate from aractivate.adobe.com, but nothing seems to work. What can I do?System 7, code 31 is always a networking problem. Meaning something on your network is preventing the book information from getting to the rights-management server (or from the rights-management information getting sent back)
You can check firewalls, security software, etc to see where the blockage might be, or work with your network admins if you have them. See 'Error "Adobe DRM Error" when you activate Digital Editions or access an eBook" at http://www.adobe.com/go/kb402747
Regards,
Bentley Wolfe
Senior Support Engineer, Flash/Flash Player/Digital Editions
Adobe -
Problem while executing the transaction code FMBV (Reconstruct)
We are facing a problem while executing the transaction code FMBV
(Reconstruct Availability Control in Funds Management) in it when we
execute this transaction system only updates the expenditure which is
made before technical upgrade from 4.6c to ECC6 EHP6, against the
Assigned Budget (KBFC budget type) in the Annual Budget Table (BPJA)
and
the expenditure which we made after the upgrade, the program just
ignore
it. We can also see the expenditure in the standard FBL3N report.
Please guide us.
Thanks and Best Regards,Dear Abrar
In your description, you refer to missing update after an upgrade. First of all, see if table FMIT is consistent, as it is the basis for calculating the assigned values during AVC reconstruction.
Refer to this note:
977016 FMIT: Missing totals records in Funds Management And perform following steps:
1.- Run program RGZZGLUX
2.- Run program RFFMRC04 to match totals table with line items. A test run after a successful effective run should not find inconsistencies.
3.- If RFFMRC04 does not show more inconsistencies, run FMBV as final step.
Note that this reconstruction must be done without any other budgeting/posting activities at the same time, otherwise you may cause other inconsistencies.
Please let me know the results.
Best regards,
977016 - FMIT: Missing totals records in Funds Management
Symptom
After the upgrade to ERP 2004 or higher you realize that the FMIT totals table is no longer updated in Funds Management. You start the RFFMRC04 report to reconstruct the totals, but the report still displays the missing totals after an update run.
Other Terms
FMIT, EA-PS, ECC 5.00, ECC 6.00, ECC 7.00
Reason and Prerequisites
This problem occurs due to a generation error.
Solution
Start the RGZZGLUX report to generate missing source code in FI-SL. Then start the RFFMRC04 report to reconstruct the totals, now another run of the report should no longer display any errors. -
Transaction code 'CL22N' - Assign class to superior class
Hi
I have recently realised that SAP allows a class (for example XYZ) to be assigned to itself (XYZ) as a superior class.
My question is: Is it possible to prevent this from happening via configuration or any other functionality??
Thanks
FelixHi
TSTC SAP Transaction Codes
TSTCT Transaction Code Texts
TDEVC Development Classes
regards
Shiva -
Problems trying create a transaction code for TRM0 reports
Hi all,
I am trying to create a transaction code for reports created in TRM0 tool.
I have selected parameters transaction and I have filled as following:
Defaults values for transaction: TRM0
Defaults values:
Name of screen fields Value
RKB1D-TABNAME VTVBARW_CFM
RKB1D-REPID ZTRMINT00001
RKB1X-ASPET 001
And when execute my transaction code it show TRM0 transaction instead initial screen of ZTRMINT00001 report.
Please could anybody have idea about this?
Thanks in advance,
Best Regards.
Cristina MerinoThanks all of you for your help, finally I could find the solution:
I have created a parameter transaction code as below:
Tranx; START_REPORT
Skip initial screen
D_SREPOVARI-REPORTTYPE RE
D_SREPOVARI-EXTDREPORT TRM 01VTVBARW_CFM ZTRMINT00001
Best Regards.
Cristina Merino. -
ALV Grid Calling Transaction Code
Hello Everybody
Can anyone help me about my problem in using ALV Grid calling a transaction code...?Here is the sample code below..
IF rs_selfield-fieldname = 'BELNR'.
SET PARAMETER ID 'BLN' FIELD rs_selfield-value.
CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
ENDIF.
the main problem is how can I set my parameter id for company since
my rs_field-value is for the column BELNR ( document # field only)
it returns error when i set this code since i have no value to pass for rs_selfield for company code
SET PARAMETER ID 'BUK' FIELD
Help
thanks in advance
aVaDuDzHi,
*"Table declarations...................................................
TABLES:
rbkp, " Document Header Invoice receipt
rseg, " Document Item: Incoming Invoice
eban, " Purchase Requisition
t001w. " Plants/Branches
*"Selection screen elements............................................
PARAMETERS:
p_gjahr LIKE rbkp-gjahr. " Fiscal Year
SELECT-OPTIONS:
s_belnr FOR rbkp-belnr, " Document number of an invoice
s_bldat FOR rbkp-bldat, " Document Date in Document
s_budat FOR rbkp-budat, " Posting Date in the Document
s_werks FOR rseg-werks. " Plant
*" Data declarations...................................................
Work variables *
DATA:
w_flag1 TYPE c VALUE '0', " Flag variable 1
w_flag2 TYPE c VALUE '0', " Flag variable 2
w_index1 TYPE sy-tabix. " Index variable
Field String to hold Document Header Invoice receipt *
DATA:
BEGIN OF fs_rbkp,
belnr TYPE rbkp-belnr, " Document number of an invoice
gjahr TYPE rbkp-gjahr, " Fiscal Year
bldat TYPE rbkp-bldat, " Posting Date in the Document
budat TYPE rbkp-budat, " Posting Date in the Document
lifnr TYPE rbkp-lifnr, " Different invoicing party
END OF fs_rbkp,
Internal table to hold Document Header Invoice receipt *
t_rbkp LIKE STANDARD TABLE OF fs_rbkp.
Field String to hold Document Item: Incoming Invoice *
DATA:
BEGIN OF fs_rseg,
belnr TYPE rseg-belnr, " Document number of an invoice
ebeln TYPE rseg-ebeln, " Purchasing Document Number
wrbtr TYPE rseg-wrbtr, " Amount in document currency
END OF fs_rseg,
Internal table to hold Document Item: Incoming Invoice *
t_rseg LIKE STANDARD TABLE OF fs_rseg.
Field String to hold Purchase Requisition *
DATA:
BEGIN OF fs_eban,
banfn TYPE eban-banfn, " Purchase requisition number
ernam TYPE eban-ernam, " Person who Created the Object
afnam TYPE eban-afnam, " Name of requisitioner/requester
badat TYPE eban-badat, " Requisition (request) date
ebeln TYPE eban-ebeln, " Purchase order number
END OF fs_eban,
Internal table to hold Purchase Requisition *
t_eban LIKE STANDARD TABLE OF fs_eban.
Field String to hold Desired Data *
DATA:
BEGIN OF fs_final,
ebeln TYPE rseg-ebeln, " Purchasing Document Number
banfn TYPE eban-banfn, " Purchase requisition number
badat TYPE eban-badat, " Requisition (request) date
bldat TYPE rbkp-bldat, " Posting Date in the Document
lifnr TYPE rbkp-lifnr, " Different invoicing party
wrbtr TYPE rseg-wrbtr, " Amount in document currency
afnam TYPE eban-afnam, " Name of requisitioner/requester
ernam TYPE eban-ernam, " Name of Person who Created the
" Object
END OF fs_final,
Internal table to hold Desired Data *
t_final LIKE STANDARD TABLE OF fs_final.
INITIALIZATION *
INITIALIZATION.
p_gjahr = sy-datum+0(4).
AT SELECTION-SCREEN EVENT *
AT SELECTION-SCREEN.
IF s_belnr IS INITIAL OR s_bldat IS INITIAL OR s_budat IS INITIAL.
MESSAGE ' (Invoice) Add Creation Date .' TYPE 'E'.
ENDIF. " IF S_BELNR...
AT SELECTION-SCREEN ON FIELD EVENT *
AT SELECTION-SCREEN ON s_werks.
SELECT SINGLE werks " Plant
FROM t001w
INTO t001w
WHERE werks IN s_werks.
IF sy-subrc NE 0.
MESSAGE 'Invalid plant' TYPE 'E'.
ENDIF. " IF SY-SUBRC NE 0.
START-OF-SELECTION EVENT *
START-OF-SELECTION.
PERFORM get_purchaserequistion.
LOOP AT t_rseg INTO fs_rseg.
READ TABLE t_rbkp INTO fs_rbkp WITH KEY belnr = fs_rseg-belnr
BINARY SEARCH.
IF sy-subrc EQ 0.
READ TABLE t_eban INTO fs_eban WITH KEY ebeln = fs_rseg-ebeln
BINARY SEARCH.
IF sy-subrc EQ 0.
IF fs_rbkp-bldat LE fs_eban-badat.
DELETE t_rseg INDEX sy-tabix.
ENDIF. " IF FS_RBKP-BLDAT...
ENDIF. " IF SY-SUBRC EQ 0
ENDIF. " IF SY-SUBRC EQ 0
ENDLOOP. " LOOP AT T_RSEG...
LOOP AT t_rbkp INTO fs_rbkp.
WHILE w_flag1 EQ '0'.
READ TABLE t_rseg INTO fs_rseg WITH KEY belnr = fs_rbkp-belnr
BINARY SEARCH.
w_index1 = sy-tabix.
IF sy-subrc EQ 0.
WHILE w_flag2 EQ '0'.
READ TABLE t_eban INTO fs_eban WITH KEY ebeln = fs_rseg-ebeln
BINARY SEARCH.
IF sy-subrc EQ 0.
fs_final-bldat = fs_rbkp-bldat.
fs_final-lifnr = fs_rbkp-lifnr.
fs_final-ebeln = fs_rseg-ebeln.
fs_final-wrbtr = fs_rseg-wrbtr.
fs_final-banfn = fs_eban-banfn.
fs_final-badat = fs_eban-badat.
fs_final-afnam = fs_eban-afnam.
fs_final-ernam = fs_eban-ernam.
APPEND fs_final TO t_final.
CLEAR fs_final.
DELETE t_eban INDEX sy-tabix .
ELSE.
w_flag2 = '1'.
DELETE t_rseg INDEX w_index1.
ENDIF. " IF SY-SUBRC EQ 0
ENDWHILE. " WHILE W_FLAG2...
w_flag2 = '0'.
ELSE.
w_flag1 = '1'.
ENDIF. " IF SY-SUBRC EQ 0
ENDWHILE. " WHILE W_FLAG1...
w_flag1 = '0'.
ENDLOOP. " LOOP AT T_RBKP...
CLASS lcl_event_receiver DEFINITION DEFERRED.
Declare reference variables to the ALV grid and the container
DATA :
cust_con TYPE scrfname VALUE 'BCALVC_TOOLBAR_D100_C1',
cont_on_dialog TYPE scrfname VALUE 'BCALVC_TOOLBAR_D101_C1',
ref1 TYPE REF TO cl_gui_custom_container,
ref2 TYPE REF TO cl_gui_alv_grid,
event_receiver TYPE REF TO lcl_event_receiver,
fcat TYPE lvc_t_fcat,
wa TYPE lvc_s_fcat,
wa_layo TYPE lvc_s_layo.
CALL SCREEN 200.
class lcl_event_receiver: local class to define and handle own
*functions......................................................
Definition:
CLASS lcl_event_receiver DEFINITION.
PUBLIC SECTION.
METHODS:
handle_toolbar
FOR EVENT toolbar OF cl_gui_alv_grid
IMPORTING e_object e_interactive,
handle_user_command
FOR EVENT user_command OF cl_gui_alv_grid
IMPORTING e_ucomm.
PRIVATE SECTION.
ENDCLASS. "lcl_event_receiver DEFINITION
class lcl_event_receiver (Implementation)
CLASS lcl_event_receiver IMPLEMENTATION.
METHOD handle_toolbar.
In event handler method for event TOOLBAR: Append own functions
by using event parameter E_OBJECT.
DATA: ls_toolbar TYPE stb_button.
E_OBJECT of event TOOLBAR is of type REF TO CL_ALV_EVENT_TOOLBAR_SET.
append a separator to normal toolbar
CLEAR ls_toolbar.
MOVE 3 TO ls_toolbar-butn_type.
APPEND ls_toolbar TO e_object->mt_toolbar.
append an icon to show booking table
CLEAR ls_toolbar.
MOVE 'PORDER' TO ls_toolbar-function.
MOVE icon_employee TO ls_toolbar-icon.
MOVE 'Show Bookings' TO ls_toolbar-quickinfo.
MOVE 'PONUMBER' TO ls_toolbar-text.
MOVE ' ' TO ls_toolbar-disabled.
APPEND ls_toolbar TO e_object->mt_toolbar.
append a separator to normal toolbar
CLEAR ls_toolbar.
MOVE 3 TO ls_toolbar-butn_type.
APPEND ls_toolbar TO e_object->mt_toolbar.
append an icon to show booking table
CLEAR ls_toolbar.
MOVE 'PREQUISITION' TO ls_toolbar-function.
MOVE icon_employee TO ls_toolbar-icon.
MOVE 'Show Bookings' TO ls_toolbar-quickinfo.
MOVE 'PRNUMBER' TO ls_toolbar-text.
MOVE ' ' TO ls_toolbar-disabled.
APPEND ls_toolbar TO e_object->mt_toolbar.
ENDMETHOD. " handle_toolbar
METHOD handle_user_command.
*Event handler method for event USER_COMMAND:
CASE e_ucomm.
WHEN 'PORDER'.
CALL TRANSACTION 'ME23N'.
WHEN 'PREQUISITION'.
CALL TRANSACTION 'ME53N'.
ENDCASE.
ENDMETHOD. " handle_user_command
ENDCLASS. " lcl_event_receiver
*& Module STATUS_0200 OUTPUT
text
MODULE status_0200 OUTPUT.
SET PF-STATUS 'GUI'.
SET TITLEBAR 'TITLE'.
IF sy-ucomm = 'BACK'.
LEAVE PROGRAM.
ENDIF.
PERFORM form_fcat.
PERFORM form_layo.
IF ref1 IS INITIAL.
CREATE OBJECT ref1
EXPORTING
PARENT = ref1
container_name = 'CUST_CON'
STYLE =
LIFETIME = lifetime_default
REPID =
DYNNR =
NO_AUTODEF_PROGID_DYNNR =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.
IF ref2 IS INITIAL.
CREATE OBJECT ref2
EXPORTING
I_SHELLSTYLE = 0
I_LIFETIME =
i_parent = ref1
I_APPL_EVENTS = space
I_PARENTDBG =
I_APPLOGPARENT =
I_GRAPHICSPARENT =
I_NAME =
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.
CALL METHOD ref2->set_table_for_first_display
EXPORTING
I_BUFFER_ACTIVE =
I_BYPASSING_BUFFER =
I_CONSISTENCY_CHECK =
I_STRUCTURE_NAME =
IS_VARIANT =
I_SAVE =
I_DEFAULT = 'X'
is_layout = wa_layo
IS_PRINT =
IT_SPECIAL_GROUPS =
IT_TOOLBAR_EXCLUDING =
IT_HYPERLINK =
IT_ALV_GRAPHICS =
IT_EXCEPT_QINFO =
CHANGING
it_outtab = t_final
it_fieldcatalog = fcat
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.
CREATE OBJECT event_receiver.
SET HANDLER event_receiver->handle_user_command FOR ref2.
SET HANDLER event_receiver->handle_toolbar FOR ref2.
*Call method 'set_toolbar_interactive' to raise event TOOLBAR.
CALL METHOD ref2->set_toolbar_interactive.
ENDIF.
ENDMODULE. " STATUS_0200 OUTPUT
Form FORM_FCAT *
text *
FORM form_fcat.
CLEAR fcat.
CLEAR wa.
wa-fieldname = 'EBELN'.
wa-col_pos = 1.
wa-scrtext_l = ' PURCHASE ORDER NUMBER'.
APPEND wa TO fcat.
CLEAR wa.
wa-fieldname = 'BANFN'.
wa-col_pos = 2.
wa-scrtext_l = 'PURCHASE REQUISITION NUMBER'.
APPEND wa TO fcat.
CLEAR wa.
wa-fieldname = 'BADAT'.
wa-col_pos = 3.
wa-scrtext_l = 'PR CREATION DATE'.
APPEND wa TO fcat.
CLEAR wa.
wa-fieldname = 'BLDAT'.
wa-col_pos = 4.
wa-scrtext_l = 'INVOICE DATE'.
APPEND wa TO fcat.
CLEAR wa.
wa-fieldname = 'LIFNR'.
wa-col_pos = 5.
wa-scrtext_l = 'VENDOR NUMBER'.
APPEND wa TO fcat.
wa-fieldname = 'WRBTR'.
wa-col_pos = 6.
wa-do_sum = 'X'.
wa-scrtext_l = ' PO AMOUNT'.
APPEND wa TO fcat.
wa-fieldname = 'AFNAM'.
wa-col_pos = 7.
wa-scrtext_l = 'REQUISITIONER'.
APPEND wa TO fcat.
wa-fieldname = 'ERNAM'.
wa-col_pos = 8.
wa-scrtext_l = 'PR CREATOR'.
APPEND wa TO fcat.
ENDFORM. " FORM_FCAT
Module USER_COMMAND_0200 INPUT *
text *
MODULE user_command_0200 INPUT.
CASE sy-ucomm.
WHEN 'BACK' OR 'CANCEL' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE. " USER_COMMAND_0200 INPUT
FORM FORM_LAYO *
There are no interface parameters to be passed to this subroutine.*
FORM form_layo.
CLEAR wa_layo.
wa_layo-zebra = 'X'.
wa_layo-grid_title = 'GRID TITLE'.
wa_layo-no_toolbar = 'X'.
ENDFORM. " FORM_LAYO
FORM GET_PURCHASEREQUISITION *
This subroutine selects all the Purchase requisitions from table *
EBAN for all the selected Invoices based on the Purchase orders. *
There are no interface parameters to be passed to this subroutine. *
FORM get_purchaserequistion.
SELECT belnr " Document number of an invoice
gjahr " Fiscal Year
bldat " Posting Date in the Document
budat " Posting Date in the Document
lifnr " Different invoicing party
FROM rbkp
INTO TABLE t_rbkp
WHERE belnr IN s_belnr
AND gjahr EQ p_gjahr
AND bldat IN s_bldat
AND budat IN s_budat.
IF NOT t_rbkp[] IS INITIAL.
SELECT belnr " Document number of an invoice
ebeln " Purchasing Document Number
wrbtr " Amount in document currency
FROM rseg
INTO TABLE t_rseg
FOR ALL ENTRIES IN t_rbkp
WHERE belnr EQ t_rbkp-belnr
AND werks IN s_werks.
ENDIF. " IF NOT t_rbkp[] IS INITIAL...
IF NOT t_rseg[] IS INITIAL.
SELECT banfn
ernam
afnam
badat
ebeln
FROM eban
INTO CORRESPONDING FIELDS OF TABLE t_eban
FOR ALL ENTRIES IN t_rseg
WHERE ebeln EQ t_rseg-ebeln.
ENDIF. " IF NOT t_rseg[] IS INITIAL...
ENDFORM. " GET_PURCHASEREQUISITION
reward points if helpful.
regards,
kiran kumar k. -
Policy regarding creating global or local classes?
Hi!
What policy do you have regarding creating local or global classes in your company? We have decided to mostly use local classes since there is a risk of reusing global classes (when changing something in the global class after it has been used by several programs etc.) . But on the other side it is much easier to use transaction SE24 than creating all the includes by hand. Have anyone else made thoughts about this issue?
Regards, TineHi,
The policy is
<b>Create global class</b> if you want the class to be <b>reused</b>.
And<b> to avoid problems</b> when you change the class, make sure you change class in such a way that it does not effect the existing user's of the class.
Like <b>use OPTIONAL parameters</b> when you change method signature, <b>avoid changing method names</b>, <b>instead add new methods</b>.
You should use local classes only when you are sure that the code there is needed only by your program and nobody else.
If you keep creating local class's and <b>if two programs need the same class it is redundant to create local class's</b> and if you want a change in the class you have to change in all the places.
I hope it is clear.
Regards,
Sesh -
Short dump in Z transaction code
Hi,
We have a Z transaction code 'ZPROFIT' for a report. After executing the report from output screen of report if i type 'se38' in command bar and if I press enter key it is going to short dump. But if I type '/nse38' it is working fine.The short dump description is as follows .
ShrtText
An exception that could not be caught occurred.
What happened?
The exception 'CX_SALV_OBJECT_NOT_FOUND' was raised but was not caught at any
stage in the
call hierarchy.
Since exceptions represent error situations, and since the system could
not react adequately to this error, the current program,
'CL_SALV_FUNCTIONS=============CP', had to
be terminated.
Error analysis
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assinged to the class 'CX_SALV_OBJECT_NOT_FOUND', was
not caught,
which led to a runtime error.
The reason for this exception is:
No text available for this exception
Trigger Location of Exception
Program CL_SALV_FUNCTIONS=============CP
Include CL_SALV_FUNCTIONS=============CM00J
Row 28
Module type (METHOD)
Module Name IS_SALV_FUNCTION
Source Code Extract
Line SourceCde
1 method is_salv_function.
2 data: l_name type string.
3 data: l_msgtext type string.
4 data: ls_message type scx_t100key.
5
6 *get item
7 try.
8 call method get_item
9 exporting
10 function = name
11 importing
12 salv_function = value.
13 catch cx_salv_object_not_found.
14 try.
15 call method get_group
16 exporting
17 group = name
18 importing
19 salv_function = value.
20 catch cx_salv_object_not_found.
21 l_name = name.
22 message w026(salv_exception)
23 with 'CL_SALV_FUNCTIONS' 'IS_SALV_FUNCTION' 'Function: ' l_name
24 into l_msgtext. "#EC NOTEXT
25
26 ls_message-msgid = sy-msgid.
27 ls_message-msgno = sy-msgno.
>>>>> raise exception type cx_salv_object_not_found
29 exporting
30 textid = ls_message
31 object = 'Function'
32 key = l_name
33 class = 'CL_SALV_FUNCTIONS' "#EC NOTEXT
34 method = 'IS_SALV_FUNCTION'. "#EC NOTEXT
35 endtry.
36 endtry.
37
Please let me know how we can solve this?
Is there anything wrong in report source code?
Thanks in advance.
Regards,
Brahma Reddyhi brahma,
try to reinstall ur Front End...
it's not a error from ur Program, I think it's dumb because SAP GUI it's not all right working,
try to remove and install SAP GUI, maybe it's can solve ur problem...
Regards
Allan Cristian
Maybe you are looking for
-
Maximum amount of DDR400 mem on MS-6728 board
I was wondering if my MSI 865Pe Neo2-LS board is able to work with four modules of 1Gb DDR400 memory in dual channel mode without reducing the speed automatically to DDR333 (some websites indicate this). In "Test Results" on the support page of my ma
-
Error when assigning Web Dynpro UI to BPM task
Hi all, I have created a simple Web Dynpro application that consumes a web service. The WD works fine when executed standalone and is fully prepared to be used in BPM (ie has Complete event and so on). When I try to add the UI to a BPM task I can't s
-
Hi, I am working on SRM Extended classic scenario. Front end BBPCRM 4.0 SAPKU40007 Back end 4.6C SAPKH46C47 I have a material A which has the base unit of measurement Package and this material exists in many of the plant so whenever I order this mat
-
Bex Broadcasting by specific time period
Hi I have created a job with time point for Bex braod casting and I could see it in Schedule option. Now I want to change this to a particular time which is not calendar date. Eg. I want to schedule the job each wednesday after Fisc quarter close.Is
-
Dear the new update iOS 7.0.4 is not opening some pages in safari. Tray to find out what's the problem. Thanks