Wht doe memory id means abap memory?
hi
can any one eloborate me on teh bleow code wht does it means and from where the value of wa_quantiy coming from memory id????
import wa_quantity ( a internal table) in to wa_quantity( internal table) from memory id 'wa_quantity'.
regards
Arora
Nishanth,
To put it in simple: "When ever we need to pass values from one session memory to another session memory we use IMPORT and EXPORT parameters."
By doing this we import value to ABAP memory and Exporting the same from ABAP memory in other sesion. In short ABAP memory is global. Session memory is local .
Example : Suppose wa_quantity is an internal table in one program (say Zprog1) and you are want to use it in another program (say Zprog2) so this internal table will not be available for this program.
What we need to do.
Export wa_quantity from wa_quantity to memory id MID1.
here - Export <same name you need to use in p1> from <name of itab in prg1> to <unique id>
In program 2 : you need to
IMPORT wa_quantity from wa_quantity from meory id MID1.
You need to have same internal table structure in both programs.
All the very best to you.
- Mohan.
Similar Messages
-
hi
i want to know the below statment meaning?
if i give three fields and if i give only fiest field ship_to in chain unchain what diference it makes?
CHAIN.
FIELD t_ZCUST_EM_create-ship_to .
FIELD t_ZCUST_EM_create-ship_to_name . "nv
FIELD t_ZCUST_EM_create-email_id . "nv
MODULE set_field_validation ON CHAIN-REQUEST.
ENDCHAIN.
MODULE USER_COMMAND_0200. "nv
regards
AroraCheck below link
http://help.sap.com/saphelp_nw04/helpdata/en/9f/dbabbd35c111d1829f0000e829fbfe/content.htm
Regards,
Atish -
Is abap thread safe? Some question in Singleton pattern in ABAP
Hi Grus,
I have a very basic question but really make me headache...
Recently I am learning the design pattern in ABAP and as you know in JAVA there is a key word "Synchronized" to keep thread safe. But in ABAP, I didn't find any key words like that. So does that mean ABAP is always a single thread language? And I found that there is a way looks like "CALL FUNCTION Remotefunction STARTING NEW TASK Taskname DESTINATION dest" to make multi-thread works. As you can see it use the destination, so does that mean actually the function module is always executed in a remote system, and in every system, it is always single thread?
Could you help me on the question? Thanks a lot, grus
And here comes up to my mind another question...It's a little bit mad but I think it may works....What if I set every attribute and method as static in the singleton class...Since as you can see it is already a singleton so every attribute in it should be only one piece. So then I don't even need to implement a get_instance( ) method to return the instance. Just call "class_name=>some_method( )" directly then singleton is achieved...What do you think?
BR,
SteveSteve,
I've the same question, few days ago I tried to use the singleton in ABAP. In Java programming is possible to use the same reference in two sessions or programs, sharing attributes, methods and all data, but I could not do in ABAP.
In my test I created a program with one global class using the singleton pattern, so I expected that when I run my program and see the reference returned after the get_instance method it should be equal to the same program run in another session, but the ABAP will create a new reference and instantiate again.
So I deduced that the only way to share it between sessions in ABAP is using the ABAP Shared Memory Objects.
I can be wrong, but I think that ABAP use a thread by user session (Each window) and we can't change it.
Best regards. -
ABAP+Java Kernel and only Java Kernel
Hi Friends,
Is there any difference in ABAP+Java Kernel and only Java Kernel?
Can we use the kernel for above both from the same location as below?
1#
Support Packages and Patches> Additional Components> SAP Kernel> SAP KERNEL 64-BIT UNICODE> SAP KERNEL 6.40 64-BIT UNICODE
Following Files
DB Dependent - ORACLE
SAPEXEDB_175-20000227.SAR
DBATL640O92_44-20000227.SAR
Database Independent
SAPEXE_175-20000226.SAR
Assuming above SAR files contain R3trans, R3load, tp ,... also.
2#
As per my knowledge SAP has given one more path to download J2EE SP's which contains Kernel and J2EE Support Packages.
http://service.sap.com/patches --> Support Package and Patches -> Entry by Application Group -> SAP NetWeaver -> SAP NetWeaver -> SAP NetWeaver 04 -> Entry by Component -> Application Server Java -> SAP J2EE Engine 6.40 -> J2EERT19_0-10001982.SAR/J2EERT20_0-10001982.SAR (OS Independent) and CTRLDB219_0-20000114.SAR(OS Dendependent)
What is the difference between above two kernels?
1# contains R3trans, R3load, tp ...etc which is exclusively used by ABAP Stack related functions. The startsap script used here would check R3trans -d authentication successful before starting database and then only it starts the database from sidadm. I observed OPS$ users available in only ABAP schema SAPSID but not available in SAPSIDDB. If I use the kernel downloaded from 1# for Java Stack only system, startsap would fail as R3trans authentication fail as there is no ABAP schema in Java systems.
This applies well for ABAP+JAVA or only ABAP based systems.
If I use only JAVA Stack based system can I use the kernel downloaded from 1# . What is the kernel and SP available in 2#? Is this also contains the same kernel given in 1# or it is different. I also observed in JAVA they are not calling Kernels by Patch No like 154, 175... they call it by SP19. Please correct me if I am wrong.
Did anyone come accross this type if issue? I would appreciate if anyone can clarify my questions given above.
My main target is to have clear strategy for ABAP+JAVA, ABAP, JAVA kernels to avoid mess up. Which one to download? What is best practice? Differences?
Thanks and Regards
PrasadHi Sacha,
Thank a lot for your answer I am clear now. Before rewarding points to you.
I have final question.
You mean that there is not seperate kernel for Java Stack Systems.. When we apply SP11 or SP19 by default it applies Kernel and also support packages w.r.t the SP. Do we have option to seperate Kernel and Support package while applying SP's for Java System?
If we take for example SAP NW 2004 (WAS 640) latest kernel is 175 (I mean ABAP+JAVA). If I want to know the latest kernel for Java Stack system, Do I need to say it is at level SP19 or check the sapwebdisp -V (Resepctive patch level)?
For ABAP system we check disp+work -V to get the source kernel version. How to justify the source kernel version for Java System?
As per SAP Note: 710914 - Upgrading the J2EE Engine Startup Framework after applying SP for Java System, Do we need to upgrade J2EE Startup Framework?
Thanks and Regards,
Prasad -
ABAP Character Data Type Multiplication Issue difference in ITG vs Dev Environments.
Hello Folks,
My problem is very simple but hey I have tried everything and dont know why I have an issue and what is the possible solution. Let me create the scenario:-
SAP Dev Box:
data: prctg type char15.
prctg = '0.065'.
prctg = prctg * 100000.
i see prctg value to be: 6500. Which is good.
SAP ITG Box:
data: prctg type char15.
prctg = '0.065'.
prctg = prctg * 100000.
i see prctg value to be: 65000. Which is absurd and wrong!!!!
Question: How can 2 environments behave differently? What is the solution to have the same result as the DEV Box using a reliable method please.
Thanks alot!!!! Yet I have had no one resolve this issue for me in my workplace so I came here desparately!!
SalmanHi,
It's to do with deactivated 'Fixed point arithmetic' in V61A, where FV64A301 is ultimately included, I believe:
My guess is that in the system, where it is working, someone has activated 'Fixed point arithmetic' in V61A via repair or otherwise.
You can verify if the issue is inactive Fixed point arithmetic, by reproducing (inactivating it in Program attributes) in your test program.
Are you coding your business logic directly in enhancement implementations? If yes, why don't you modularize your business logic in, say, a class method? Or at least a custom Function module? :| Define some kind of interface (I don't mean ABAP OO Interface, but interface in general - what SAP data you need to pass, what data you need to return or change), and encapsulate your logic in a separate procedure, which you then can call from Enhancement implementation...
Just because you see too many to count lazy SAP programmers programming ridiculous "naked" (not modularized) enhancement implementations in the middle of existing Function modules and other modularization units, doesn't mean it's a good thing to do... It makes original code more unreadable than it already was and what if you or someone else needs to reuse that business logic...? And as added benefit, you'll encounter less galling issues like this...
cheers
Jānis -
*New to ABAP: what is Report*
Hi Gurus,
i am new to ABAP.If any body can explain about what is report and how many types are there to create internal tables.
points will be reward.
Thanks,
Balakrishna.hi naidu,
When you are working in the SAP System, you may want to access information from the database. To do this, you use reports.
In this documentation, report refers to the report program, and list refers to the output u2013 that is, the results of the report.
Some reports display information; others allow you to perform analyses.
A report must be started, or executed. In many cases, the SAP System automatically executes a report. Sometimes, however, you will want to execute a report yourself.
In addition to report programs, the SAP System provides numerous reporting tools, each of which has its own set of procedures for executing report programs.
This documentation describes report programs only. For an introduction to the SAP reporting tools, refer to the Reporting Made Easy guidebooks (Release 4.0B). You can find these guidebooks at: www.saplabs.com/rme
In ABAP, there are a total of 7 types of reports. They are:
Classical
Interactive
Logical Database
ABAP query
ALV Reports (ALV stands for ABAP List Viewer)
Report Writer/Report Painter Views (There are different types of views also)
[Edit section] Classical Reports
These are the most simple reports. Programmers learn this one first. It is just an output of data using the Write statement inside a loop.
Classical reports are normal reports. These reports are not having any sub reports. IT IS HAVING ONLY ONE SCREEN/LIST FOR OUTPUT.
Events In Classical Reports.
INTIALIZATION: This event triggers before selection screen display.
AT-SELECTION-SCREEN: This event triggers after proccesing user input still selection screen is in active mode.
START OF SELECTION: Start of selection screen triggers after proceesing selection screen.
END-OF-SELECTION : It is for Logical Database Reporting.
[Edit section] Interactive Reports
As the name suggests, the user can Interact with the report. We can have a drill down into the report data. For example, Column one of the report displays the material numbers, and the user feels that he needs some more specific data about the vendor for that material, he can HIDE that data under those material numbers.
And when the user clicks the material number, another report (actually sub report/secondary list) which displays the vendor details will be displayed.
We can have a basic list (number starts from 0) and 20 secondary lists (1 to 21).
Events associated with Interactive Reports are:
AT LINE-SELECTION
AT USER-COMMAND
AT PF<key>
TOP-OF-PAGE DURING LINE-SELECTION.
HIDE statement holds the data to be displayed in the secondary list.
sy-lisel : contains data of the selected line.
sy-lsind : contains the level of report (from 0 to 21)
Interactive Report Events:
AT LINE-SELECTION : This Event triggers when we double click a line on the list, when the event is triggered a new sublist is going to be generated. Under this event what ever the statements that are been return will be displayed on newly generated sublist.
AT PFn: For predefined function keys...
AT USER-COMMAND : It provides user functions keys.
TOP-OF-PAGE DURING LINE-SELECTION :top of page event for secondary list.
[Edit section] Logical Database Reports
Logical database is another tool for ABAP reports. Using LDB we can provide extra features for ABAP reports.
While using LDB there is no need for us to declare Parameters.
Selection-screen as they will be generated automatically.
We have to use the statement NODES in ABAP report.
If there are many tables the Performance will be slow as all the table data will be read from top node to bottom node .
[Edit section] ABAP Query Reports
ABAP query is another tool for ABAP. It provides efficency for ABAP reports. These reports are very accurate.
Transaction Code : SQ01
The advantage with ABAP QUERY is logic required for classic & interactive reports system design automatically 80%.
For ABAP QUERY handle these
SQ01 ; QUERY
SQ02 : INFOSET OR FUNCTIONAL AREA
SQ03: USER GROUP.
[Edit section] Report Writer
Key Concept :
Super users and end users can use Report Painter/Report Writer tools to write their own reports.
Giving them the ability to report on additional fields at their discretion shifts the report maintenance burden to them, saving SAP support groups time and effort normally spent creating and maintaining the reports.
Instead of using ABAP code to write a report in FI and CO, many users build a Report Painter/ Report Writer library using transaction MC27.
However, this workaround has some drawbacks. Little known transaction GRCT solves these problems in most cases, and eliminates the need to use transaction MC27.
ABAP Report Types
ABAP report types are those ones available in some report's attributes screen, i.e. :
Executable program
Function group (containing function modules)
Include
Interface pool
Class pool
Module pool
Subroutine pool
Also ALV means ABAP List Viewer. Most convenient way to use it is through reuse library (cf. transaction se83) available from release 4.6 of SAP R/3.
ALV is available in two modes: list and grid. List mode is good old list processing with standard functionnalities, and grid mode is using a new OCX object displaying grids.
hope its clear to you,
Reward points if usefull,
Thanks,
Kalyan. -
Hi Everyone ,
I heard so many things about abap and java , that I please want to know your opinion , is it true that java is already replacing abap , could be interesting for a new programmer in sap start to study abap instead of abap. thnx for your recomendations.Hi
It mainly depends upon your background knowledge.For e.g if you are familiar with c lang
Choose ABAP as it developed using C only.
Secondly Java used mainly in XI,EP etc.and has class concept or in simple words object oriented style of programming.If you are familiar with C++ then you choose java.
New technologies have both e.g we have Webdypro for ABAP as well as for Java also.
One more point in SAP everything is built using ABAP only; recently JAVA came but that doesn't mean ABAP is no more used.
ABAP and JAVA in sap are same,choose according to your convenience.
Please reward points.
(A way of saying thanks to others) -
Hello,
I would like to know where could I find an API description how to communicate from ABAP to the IDM database. IDM is said to be opened, so other system can read from it. That should mean ABAP too. Can anybody point me to such information source, provide a link to an example code, something to start from?
Thanks OttoI have the similar requirement. Please help me.
The IdM (7.2) has been directly connected to ECC clients via Jco RFC (No VDS). But for the other business suit clients (CRM, SRM, ..), it is connected via VDS.
Here is my requirement. Due to the security reasons, we have decided to maintain some translation data in the IdM instead of SAP tables. Translation data is very simple. It will have two columns with ZID and EID.
Forward Translation is from ZID to EID
Reverse Translation is from EID to ZID
We would like to use these translations in the interfaces and conversions. During the execution of interface/conversion, if the program encounters ZID, it should be translated to EID using some methods. Since the data is not in SAP tables, we have to get it from IdM.
Since there is no VDS, do I need to read the IdM database directly? What are the steps involved in this process from ABAP developer point of view and also from IdM team? It would be great, it you suggest some examples.
Thanks for reading and your help will be greatly appreciated. -
Why SAP has taken Java for their development instead of ABAP completely
Hi
I am Neelima, new to SAP and abap,
Can u please explain
Why SAP has taken Java for their development instead of ABAP completely
Thanks in advance
Regards,
NeelimaHi Neelima ,
Answer to Q . Why SAP has taken Java for their development instead of ABAP completely ?
First of all in my view SAP has not taken Java as Such instead of ABAP .
But you nowdays whole lot of java is coming in SAP by doors of SAP NetWeaver .
Now why they choosed java only <b> IN MY VIEW</b>
1) Java is open source so SAP in tie up with SUN can develop SAP specific APIs and thats what happenings . In Net Weaver Developer studio (NDS of SAP like eclipe of Java ) we use packages ,classes , methods for SAP.
2) In my view Java is rocking in Web world , Every single popular product ( like IBM MQ series , Oracle Apps ) is making use Java for making things web based .
So why not SAP .
3) Now data ultimately data is getting saved in XML . And java is best to deal with that . In SAP also Idoc data is stored in XML and so same data can be used anywhere inspite of Platform , technology .
4) Java has much established base of web Solution , Web services .They have got beautiful architecture so that Best Web sevices can be developed with EJB (Enter prise java beans ) , sturts and all .
5) Now Its time for SAP to be Mobile Enabled .i.e. to Run SAP over PDA , Blackberry .Such solutions possible with SAP + Java combination .Java provides that framework to understand Mobile OS platform.
6) Another thing now Its time of EAI (Enterprise Application Integration) . Integration is future . Multiple product integrated and used togetherly , exchanges data. Take case SAPs message goes to Sieble , people soft .For this Java + XML is best suied as both product understand it .
Utimately SAP is Using java to provide Best Web ERP solutions
But it does not mean ABAP is not there. With webDynpro ABAP you can do every thing that WD java does . In fact incase if you have existing ABAP recourses then use WD ABAP for developing web services in SAP. In uses OO ABAP as base programming language .
Please refer to this link
IS Webdynpro for ABAP/JAVA is same?
so hope your question is cleared
Cheers
<b>Parry</b> -
Recruiters mean when they say end-end implementation,time for support prjct
Does an enhancement project mean support project...
Do customers(COKE etc ) give companies (like accenture etc )separate contracts for support and implementation, could it mean accenture gets implementation and eds support?...
In job ads recruiters usually ask for ABAP consultants who have worked on 1/2/3 end to end implementations, does this mean the ABAPer should have worked in implementation as well as support ?? what i can imagine is support could last sometimes for 10 yrs or more so does it mean ABAPer should have worked in same project for 10 -15 yrs????Enhancement project usually means a project to extended an existing implementation with new functionality/new module or the like. So, not support.
End-to-end implementation usually just means an implementation project. Maximally from blueprint (usually beginning of realisation though) through to the post implementation support phase (which lasts at most a month, usually).
matt -
What doe this error means. im running WS7 with 39 virtual servers with uwc (comm express 6.3)?
Error:
[26/Jun/2007:09:53:40] failure (27174): CORE4007: Internal error: Unexpected Java exception thrown (java.lang.OutOfMemoryError: PermGen space, PermGen space), stack: java.lang.OutOfMemoryError: PermGen space
[26/Jun/2007:10:02:37] failure (27174): CORE4007: Internal error: Unexpected Java exception thrown (java.lang.OutOfMemoryError: PermGen space, PermGen space), stack: java.lang.OutOfMemoryError: PermGen spaceHi
What is your java heapsize (in server.xml)? If you increase the size to a bigger one, e.g 512M, you still see this problem.
There maybe have some memory leak problem in you application.
See following blog to get more idea.
http://blogs.sun.com/fkieviet/entry/classloader_leaks_the_dreaded_java
Please increase you java heap size -
How to find whether MI is installed in my landscape?
Hi
I would like to know, how/where can I check whether my landscape has mobile infrastructure components got installed or not? I've seen in sld - products where mdk all versions are there.
Is it require to take any post installation steps for utilizing these mobile infrastructure applications?
I was just browsing and came to know that Mobile client and server are existed. Mobile Client can be installed at Mobile devices and Laptops. Mobile server will be in WAS. Is this correct?
Please explain in clearly.
Thanks.Hi,
Mobile 7.10 (DOE) is available with Netweaver 7.10 along with ABAP AS installation.
Check whether you are able to assign SAP_DOE* to a user from tcode : SU01.
Once the user is assigned, check the transaction SDOE_WB. If you see this , that means NW Mobile 7.10 is installed in your system.
Mobile includes DOE (Data Orchestration Engine , ABAP based message oriented middleware)
This constitutes of design time tool for defining data objects and distribution of data.
A runtime to replicate,synchronize and distribute data between the components like Back End and Receiver of data.
Along with DOE, Netweaver Mobile client is an additional installable unit.
Mobile client is installed locally on mobile devices and has a webserver ,database layer and a framework for the mobile applications.
This client framework can be seen as the default client that is shipped by SAP.
Mobile applications can be built using the development environment NetWeaver Developer Studio .
Regards,
Liji -
ALV report for 5 Grids using Objects and Method
I have few questions in ALV 5Grids ,could you please correct me in the following program logic...
Using this program logic i am able to generate the five Grids and able to populate Header details from VBAK into Grid1,If you click in the Grid 1 and it is populating item details in Grid2 from VBAP,parallally populating the customer data in Grid5 from KNA1.
Now the pending issue is ,
if you click in the Grid2 then we should populate the shipping details in Grid3 and
if you click in the Grid3 then we should populate the billing details in Grid4.
Program Logic;
REPORT ZAREPAS20.
Tables : vbak,vbap,likp,lips,vbrk,vbrp,kna1.
DATA : OK_CODE LIKE SY-UCOMM,
G_CONTAINER TYPE SCRFNAME VALUE 'BCALV7_GRID_DEMO_0100_VASU',
DOCKING TYPE REF TO CL_GUI_DOCKING_CONTAINER,
SPLITTER_1 TYPE REF TO CL_GUI_SPLITTER_CONTAINER,
SPLITTER_2 TYPE REF TO CL_GUI_SPLITTER_CONTAINER,
splitter_3 TYPE REF TO CL_GUI_SPLITTER_CONTAINER,
CELL_TOP1 TYPE REF TO CL_GUI_CONTAINER,
CELL_BOTTOM1 TYPE REF TO CL_GUI_CONTAINER,
CELL_TOP2 TYPE REF TO CL_GUI_CONTAINER,
CELL_BOTTOM2 TYPE REF TO CL_GUI_CONTAINER,
CELL_LEFT TYPE REF TO CL_GUI_CONTAINER,
CELL_middle TYPE REF TO CL_GUI_CONTAINER,
CELL_RIGHT TYPE REF TO CL_GUI_CONTAINER,
GRID1 TYPE REF TO CL_GUI_ALV_GRID,
GRID2 TYPE REF TO CL_GUI_ALV_GRID,
GRID3 TYPE REF TO CL_GUI_ALV_GRID,
GRID4 TYPE REF TO CL_GUI_ALV_GRID,
GRID5 TYPE REF TO CL_GUI_ALV_GRID.
DATA : GT_VBAK TYPE STANDARD TABLE OF VBAK,
GT_VBAP TYPE STANDARD TABLE OF VBAP,
GT_LIKP TYPE STANDARD TABLE OF likp,
GT_LIPS TYPE STANDARD TABLE OF lips,
GT_VBRK TYPE STANDARD TABLE OF vbrk,
GT_VBRP TYPE STANDARD TABLE OF vbrp,
GT_KNA1 TYPE STANDARD TABLE OF kna1.
DATA:begin of itab1 occurs 0,
vbeln type likp-VBELN,
erzet type likp-ERZET,
lfart type likp-LFART,
posnr type lips-POSNR,
END OF ITAB1.
DATA:begin of itab2 occurs 0,
vbeln like vbrk-vbeln,
posnr like vbrk-fktyp,
fkart like vbrk-fkart,
fklmg like vbrp-fklmg,
end of itab2.
*selection screen for selecting range of values
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE text-001.
select-options: S_vbeln for VBAK-vbeln.
selection-screen end of block b1.
CLASS lcl_eventhandler DEFINITION
CLASS lcl_eventhandler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
handle_double_click FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING
e_row
e_column
es_row_no
sender. " sending control, i.e. ALV grid that raised event
ENDCLASS. "lcl_eventhandler DEFINITION
CLASS lcl_eventhandler IMPLEMENTATION
CLASS lcl_eventhandler IMPLEMENTATION.
METHOD HANDLE_DOUBLE_CLICK.
*DEFINE LOCAL DATA.
DATA : itab_vbak type VBAK,
itab_vbap type VBAP,
itab_likp type likp,
itab_lips type lips,
itab_vbrk type vbrk,
itab_vbrp type vbrp,
itab_kna1 type kna1.
*DISTINGUISH ACCORDING TO SENDING GRID INSTANCE
CASE SENDER.
WHEN GRID1.
READ TABLE gt_VBAK INTO itab_vbak INDEX e_row-index.
CHECK ( itab_vbak-vbeln IS NOT INITIAL ).
CALL METHOD GRID1->set_current_cell_via_id
EXPORTING
is_ROW_ID =
is_COLUMN_ID =
is_row_no = es_row_no.
Triggers PAI of the dynpro with the specified ok-code
CALL METHOD cl_gui_cfw=>set_new_ok_code( 'ORDER_DETAILS' ).
WHEN GRID2.
READ TABLE gt_VBAP INTO itab_vbap INDEX e_row-index.
CHECK ( itab_vbap-vbeln IS NOT INITIAL ).
CALL METHOD GRID2->set_current_cell_via_id
EXPORTING
is_ROW_ID =
is_COLUMN_ID =
is_row_no = es_row_no.
Triggers PAI of the dynpro with the specified ok-code
CALL METHOD cl_gui_cfw=>set_new_ok_code( 'ORDER_DETAILS' ).
WHEN GRID3.
READ TABLE gt_LIPS INTO itab_LIPS INDEX e_row-index.
CHECK ( itab_lips-vgbel IS NOT INITIAL ).
CALL METHOD GRID3->set_current_cell_via_id
EXPORTING
is_ROW_ID =
is_COLUMN_ID =
is_row_no = es_row_no.
Triggers PAI of the dynpro with the specified ok-code
CALL METHOD cl_gui_cfw=>set_new_ok_code( 'DELIVERY_DETAILS' ).
WHEN GRID4.
READ TABLE gt_VBRP INTO itab_VBRP INDEX e_row-index.
CHECK ( itab_vbrp-vgbel IS NOT INITIAL ).
CALL METHOD GRID4->set_current_cell_via_id
EXPORTING
is_ROW_ID =
is_COLUMN_ID =
is_row_no = es_row_no.
Triggers PAI of the dynpro with the specified ok-code
CALL METHOD cl_gui_cfw=>set_new_ok_code( 'BILLING_DETAILS' ).
WHEN GRID5.
READ TABLE gt_KNA1 INTO itab_KNA1 INDEX e_row-index.
CHECK ( itab_kna1-kunnr IS NOT INITIAL ).
SET PARAMETER ID 'KUN' FIELD itab_KNA1-KUNNR.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
WHEN OTHERS.
RETURN.
ENDCASE.
endmethod.
endclass. "lcl_eventhandler IMPLEMENTATION
start-of-selection.
*write :/ 'FEDEX INT''''L' .
SELECT * FROM vbak INTO TABLE gt_VBAK
where vbeln IN S_VBELN.
creating docking container
create object docking
exporting
parent = cl_gui_container=>screen0
ratio = 90
exceptions
others = 6.
if sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Create splitter container
CREATE OBJECT splitter_1
EXPORTING
parent = docking
rows = 1
columns = 3
NO_AUTODEF_PROGID_DYNNR =
NAME =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
OTHERS = 3.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Get cell container
CALL METHOD splitter_1->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = cell_left.
CALL METHOD splitter_1->get_container
EXPORTING
row = 1
column = 2
RECEIVING
container = cell_middle.
CALL METHOD splitter_1->get_container
EXPORTING
row = 1
column = 3
RECEIVING
container = cell_right.
Create 2nd splitter container
CREATE OBJECT splitter_2
EXPORTING
parent = cell_left
rows = 2
columns = 1
NO_AUTODEF_PROGID_DYNNR =
NAME =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
OTHERS = 3.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Get cell container
CALL METHOD splitter_2->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = cell_top1.
CALL METHOD splitter_2->get_container
EXPORTING
row = 2
column = 1
RECEIVING
container = cell_bottom1.
Create 3rd splitter container
CREATE OBJECT splitter_3
EXPORTING
parent = cell_middle
rows = 2
columns = 1
NO_AUTODEF_PROGID_DYNNR =
NAME =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
OTHERS = 3.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Get cell container
CALL METHOD splitter_3->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = cell_top2.
CALL METHOD splitter_3->get_container
EXPORTING
row = 2
column = 1
RECEIVING
container = cell_bottom2.
Create ALV grids
CREATE OBJECT grid1
EXPORTING
i_parent = cell_top1
EXCEPTIONS
OTHERS = 5.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CREATE OBJECT grid2
EXPORTING
i_parent = cell_bottom1
EXCEPTIONS
OTHERS = 5.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CREATE OBJECT grid3
EXPORTING
i_parent = cell_top2
EXCEPTIONS
OTHERS = 5.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CREATE OBJECT grid4
EXPORTING
i_parent = cell_bottom2
EXCEPTIONS
OTHERS = 5.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CREATE OBJECT grid5
EXPORTING
i_parent = cell_right
EXCEPTIONS
OTHERS = 5.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Set event handler
SET HANDLER: lcl_eventhandler=>handle_double_click FOR grid1.
SET HANDLER: lcl_eventhandler=>handle_double_click FOR grid2.
SET HANDLER: lcl_eventhandler=>handle_double_click FOR grid3.
SET HANDLER: lcl_eventhandler=>handle_double_click FOR grid4.
SET HANDLER: lcl_eventhandler=>handle_double_click FOR grid5.
Display data
CALL METHOD grid1->set_table_for_first_display
EXPORTING
i_structure_name = 'VBAK'
CHANGING
it_outtab = gt_VBAK
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REFRESH: gt_vbap.
CALL METHOD grid2->set_table_for_first_display
EXPORTING
i_structure_name = 'VBAP'
CHANGING
it_outtab = gt_VBAP " empty !!!
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REFRESH: gt_LIPS.
CALL METHOD grid3->set_table_for_first_display
EXPORTING
i_structure_name = 'LIPS'
CHANGING
it_outtab = gt_LIPS " empty !!!
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REFRESH: gt_VBRP.
CALL METHOD grid4->set_table_for_first_display
EXPORTING
i_structure_name = 'VBRP'
CHANGING
it_outtab = gt_VBRP " empty !!!
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REFRESH: gt_KNA1.
CALL METHOD grid5->set_table_for_first_display
EXPORTING
i_structure_name = 'KNA1'
CHANGING
it_outtab = gt_KNA1 " empty !!!
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Link the docking container to the target dynpro
CALL METHOD docking->link
EXPORTING
repid = syst-repid
dynnr = '0100'
CONTAINER =
EXCEPTIONS
OTHERS = 4.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
NOTE: dynpro does not contain any elements (ok_code -> GD_OKCODE)
CALL SCREEN '0100'.
Flow logic of dynpro:
*PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
*PROCESS AFTER INPUT.
MODULE USER_COMMAND_0100.
end-of-selection.
*& Module STATUS_0100 OUTPUT
text
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'STATUS_0100'.
SET TITLEBAR 'xxx'.
Refresh display of detail ALV list
CALL METHOD grid2->refresh_table_display
EXPORTING
IS_STABLE =
I_SOFT_REFRESH =
EXCEPTIONS
OTHERS = 2.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Refresh display of detail ALV list
CALL METHOD grid3->refresh_table_display
EXPORTING
IS_STABLE =
I_SOFT_REFRESH =
EXCEPTIONS
OTHERS = 2.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Refresh display of detail ALV list
CALL METHOD grid4->refresh_table_display
EXPORTING
IS_STABLE =
I_SOFT_REFRESH =
EXCEPTIONS
OTHERS = 2.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Refresh display of detail ALV list
CALL METHOD grid5->refresh_table_display
EXPORTING
IS_STABLE =
I_SOFT_REFRESH =
EXCEPTIONS
OTHERS = 2.
IF sy-subrc eq 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
text
MODULE USER_COMMAND_0100 INPUT.
CASE SY-UCOMM.
WHEN 'BACK' OR
'EXIT' OR
'CANCEL'.
SET SCREEN 0.LEAVE SCREEN.
USER HAS PUSHED BUTTON "DISPLAY OREDERS"
WHEN 'ORDER_DETAILS'.
PERFORM ORDER_SHOW_DETAILS.
when 'DELIVERY_DETAILS'.
PERFORM DELIVERY_SHOW_DETAILS.
WHEN 'BILLING_DETAILS'.
PERFORM BILLING_SHOW_DETAILS.
WHEN OTHERS.
ENDCASE.
CLEAR : OK_CODE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Form ORDER_SHOW_DETAILS
text
--> p1 text
<-- p2 text
FORM order_show_details .
define local data
DATA:
ld_row TYPE i,
itab_VBAK TYPE VBAK.
CALL METHOD grid1->get_current_cell
IMPORTING
e_row = ld_row.
READ TABLE gt_VBAK INTO itab_VBAK INDEX ld_row.
CHECK ( syst-subrc = 0 ).
SELECT * FROM KNA1 INTO TABLE gt_KNA1
WHERE KUNNR = itab_VBAK-KUNNR.
SELECT * FROM VBAP INTO TABLE gt_VBAP
WHERE VBELN = ITAB_VBAK-VBELN.
*REFRESH: gt_LIPS.
ENDFORM. " ORDER_SHOW_DETAILS
*& Form DELIVERY_SHOW_DETAILS
text
--> p1 text
<-- p2 text
FORM DELIVERY_SHOW_DETAILS .
define local data
DATA:
ld_row TYPE i,
itab_VBAP TYPE VBAP.
CALL METHOD grid1->get_current_cell
IMPORTING
e_row = ld_row.
READ TABLE gt_VBAP INTO itab_VBAP INDEX ld_row.
CHECK ( syst-subrc = 0 ).
SELECT LIKPVBELN LIKPERZET LIKPLFART LIPSVBELN
INTO CORRESPONDING FIELDS OF TABLE ITAB1
FROM ( LIKP INNER JOIN LIPS ON LIKPVBELN = LIPSVBELN )
WHERE LIKP~VBELN IN S_VBELN.
*REFRESH: gt_LIPS.
ENDFORM. " DELIVERY_SHOW_DETAILS
*& Form BILLING_SHOW_DETAILS
text
--> p1 text
<-- p2 text
FORM BILLING_SHOW_DETAILS .
define local data
DATA:
ld_row TYPE i,
itab_LIPS TYPE LIPS.
CALL METHOD grid1->get_current_cell
IMPORTING
e_row = ld_row.
READ TABLE gt_LIPS INTO itab_LIPS INDEX ld_row.
CHECK ( syst-subrc = 0 ).
SELECT VBRKVBELN VBRKFKTYP VBRKFKART VBRPFKLMG
INTO CORRESPONDING FIELDS OF TABLE ITAB2
FROM ( VBRK INNER JOIN VBRP ON VBRKVBELN = VBRPVBELN )
WHERE VBRK~VBELN IN S_VBELN.
ENDFORM. " BILLING_SHOW_DETAILSHi,
ALV means ABAP List Viewer. Most convenient way to use it is through reuse library (cf.
transaction se83) available from release 4.6 of SAP R/3.
ALV is available in two modes: list and grid. List mode is good old list processing with
standard functionnalities, and grid mode is using a new OCX object displaying grids.
Classical reports needs more coding to set the horizontal and vertical lines.we need to adjust
the lines manually.Even interactive also takes lot of code.
ALV reports reduces the code when compared to classical reports.we use function modules to
generate the output.
that r REUSE_ALV_LIST_DISPLAY,REUSE_ALV_GRID_DISPLAY,REUSE_ALV_HIERSEQ_LIST_DISPLAY etc..
the following threads will give some examples of the functions which you are expecting
Header
regarding function module
hide ALV field
Simply Display selection parameter values in the ALV OUTPUT
Drag and drop in a report
https://www.sdn.sap
Reprots
http://www.sapgenie.com/abap/reports.htm
http://www.allsaplinks.com/material.html
http://www.sapdevelopment.co.uk/reporting/reportinghome.htm
ALV
1. Please give me general info on ALV.
http://www.sapfans.com/forums/viewtopic.php?t=58286
http://www.sapfans.com/forums/viewtopic.php?t=76490
http://www.sapfans.com/forums/viewtopic.php?t=20591
http://www.sapfans.com/forums/viewtopic.php?t=66305 - this one discusses which way should you
use - ABAP Objects calls or simple function modules. -
How to find Querry Name from report name?
Hi.
I run a custom transaction , but when i try to see it's program it give me dump. Then i used SE93 transaction to find out program but there was querry written as "AQCSSYSTQV000001ZPUBLICITY====' in program name.
Now i have to find the Query Name by which the program name "AQCSSYSTQV000001ZPUBLICITY====" is generated?
Thanks in advance.
TahirHi!
AQCSSYSTQV000001ZPUBLICITY====
AQ means - ABAP Query
CS - then 2 chars for the query area
SYSTQV000001 - then 12 characters for the user group
ZPUBLICITY - this is your query name
You have to check you are in the correct workarea and user group, or you will not see your query.
Regards
Tamá -
Table for Condition Value in VF03
Dear all,
Im creating the output format for Billing Document(INVOICE) through VFO3,
i need to put the unit price and different Taxes(Condition values) miantained in VF03,
CAN ANY ONE TELL ME FROM WHERE i need to fetch all condition values based on billing document No.
i.e from which tables and whts the conditions
IM AN ABAPER SO KINDLY GIVE THE TABLES FLOW AS POSSIBLE.
Regards,
Niranja.GKomv-kwert is the value which depends on condition type (KOMV-KSCHL).
regards,
Manish
Maybe you are looking for
-
Monitoring servers in SCOM 2012 via different locals within the same management group
Hi, I have 2 management servers in a same management group. The 1st one is having English (US) locale while other is installed on Swedish locale. Both are accessed by different users having same admin rights. Once a USER 1 try to register a server th
-
Corrupted iPod Classic data recovery? In need of a guru.
So, I have an iPod classic, and it seems to work almost entirely fine - it occasionally doesn't respond, but it has 11,000+ songs on it, and is a couple years old. My issue here is that there is plenty (read: more than $10,000 worth) of store-bought
-
Can I combine @Id & @Temporal?
I recently upgraded my IDE and it is flagging the following field in an Entity: @Id @Column(name = "HitDate", nullable = false) @Temporal(TemporalType.DATE) private Date hitDate;The error is that there is "More than one attribute configured for field
-
How can i hook up facetime off my mac to my i pod touch
how can i hook up facetime off my mac to my i pod touch
-
hey guys! decided to rewrite this entire question...it was too hard to understand what i want. I have a student version of server 2012 r2. I installed like 50 roles, and then deleted 90% of them. i have....a bunch of webserver roles, almost all of