What is meant by parallel cursor
hi
what is meant by parallel cursor
Hi,
Parallel cursor is the technique to increase the perforamance of the program. For example if we use nested select in our program instead of For all entries addition, then definetly performance going down. In the same way the if we use nested loops in the program it will also leads to down the performance.
I will give you one example like take billing document header details in one table and item details in other table let say the header table have 1000 records and the item table have 1 lakh records. If you want to make an output then you need to put nested loops first loop at header table then next loop at item table. For each entry of header record the item table loops 1 lakh times. calculate the total. so instead of we develop parallel cursor technique,, see the belwo code..
Loop at header.
read table item with key number = header-number.
if sy-subrc = 0.
loop at item from sy-tabix.
if item-number <> header-number.
exit.
else.
do some process here.
endif.
endloop.
endif.
endloop.
First the item table is read using the read table statement for getting the exact index number where the document number reside. if found then loop through the item table from that index upto item- number <> header-number.
Rgds,
Bujji
Edited by: Bujji on Jun 26, 2008 12:48 PM
Similar Messages
-
What is parallel cursor technique.
what is parallel cursor technique. Please give an example
thanx in advanceSuppose u got data in two internal table itab1 and itab2 from header and from item table
u have to take cobine the values into one table
so normally what we do is that we write loop .(item table -itab2 ) inside antother loop (header table-itab1) . but it will affect the performance
So go for Parallel cursor method
Regards,
Nikhil -
what is parallel cursor
Hi,
Here is the sample program which use the parallel cursor,
* Performance Tuning using parallel cursor
* Extracts from program ZFAL2002
* START-OF-SELECTION
SELECT *
INTO TABLE I_KEPH FROM KEPH
WHERE KADKY <= SY-DATUM
AND TVERS = '01'
AND KALKA IN ('01','Z1','Z2')
AND BWVAR IN ('Z01','Z02','Z03','Z04','Z07')
AND KKZST = ' '
AND KKZMA = ' '
AND KKZMM = ' '
AND KEART = 'H'
AND PATNR = 0.
* Table must be sorted to ensure all required records are together
SORT I_KEPH BY KALNR KALKA BWVAR KADKY.
* Perform actual processing
Perform get_cost_values.
FORM GET_COST_VALUES.
* Determine start position and then process all records for given key
* from that starting point
* i_keph is sorted on kalnr kalka bwvar kadky.
READ TABLE I_KEPH WITH KEY KALNR = W_KEKO-KALNR
KALKA = W_KEKO-KALKA
BWVAR = W_KEKO-BWVAR
KADKY = W_KEKO-KADKY BINARY SEARCH.
IF SY-SUBRC = 0.
* Loop at itab from first record found (sy-tabix) until record
* no-longer matches your criteria.
LOOP AT I_KEPH FROM SY-TABIX.
IF I_KEPH-KALNR = W_KEKO-KALNR AND I_KEPH-KALKA = W_KEKO-KALKA
AND I_KEPH-BWVAR = W_KEKO-BWVAR AND I_KEPH-KADKY = W_KEKO-KADKY.
* Key match
D_MAT_COST = D_MAT_COST + I_KEPH-KST001.
D_LAB_COST = D_LAB_COST + I_KEPH-KST004.
D_OVER_HEAD = D_OVER_HEAD + I_KEPH-KST010.
D_EXT_PURCH = D_EXT_PURCH + I_KEPH-KST014.
D_MISC_COST = D_MISC_COST + I_KEPH-KST002 + I_KEPH-KST003
+ I_KEPH-KST005 + I_KEPH-KST006 + I_KEPH-KST007
+ I_KEPH-KST008 + I_KEPH-KST009 + I_KEPH-KST011
+ I_KEPH-KST012 + I_KEPH-KST013 + I_KEPH-KST015
+ I_KEPH-KST016 + I_KEPH-KST017 + I_KEPH-KST018
+ I_KEPH-KST019 + I_KEPH-KST020 + I_KEPH-KST021
+ I_KEPH-KST022 + I_KEPH-KST023 + I_KEPH-KST024
+ I_KEPH-KST025 + I_KEPH-KST026 + I_KEPH-KST027
+ I_KEPH-KST028 + I_KEPH-KST029 + I_KEPH-KST030
+ I_KEPH-KST031 + I_KEPH-KST032 + I_KEPH-KST033
+ I_KEPH-KST034 + I_KEPH-KST035 + I_KEPH-KST036
+ I_KEPH-KST037 + I_KEPH-KST038 + I_KEPH-KST039
+ I_KEPH-KST040.
ELSE.
* Key greater - can't be less
EXIT. " Exit loop
ENDIF.
ENDLOOP.
ENDIF.
D_MAT_COST = D_MAT_COST / W_KEKO-LOSGR.
D_LAB_COST = D_LAB_COST / W_KEKO-LOSGR.
D_OVER_HEAD = D_OVER_HEAD / W_KEKO-LOSGR.
D_EXT_PURCH = D_EXT_PURCH / W_KEKO-LOSGR.
D_MISC_COST = D_MISC_COST / W_KEKO-LOSGR.
ENDFORM. " GET_COST_VALUES -
Hello,
Can some one give me a description in detail as to what exactly Parallel cursor method is and how it works.
Also, what are the Performance Tuning Techniques that we can follow during ABAP Development?
Thanks and Regards,
Venkatactually, I would not recommend the parallel cursor technique! First name is actually incorrect internal tables have no cursor only indexes, only parallel
index would make sense.
Performance improvement:
If costs for sort are taken into account, then parallel index is not faster than loop with loop on sorted table.
or with standard table
loop
read ... binary search
index = sy-tabix
loop ... from index
if ( condition is not fulfilled )
exit
endif.
endloop
endloop
The full parallel index technique should find all deviations between 2 tables, additional lines in Tab1, additional lines in tab2, changes.
Feel free to find a complete solution. We can compare results, it is not worth the effort!
Siegfried -
What is meant by self explanatory in message class
hi gurus,
what is meant by self explanatory in message class?
why it is used for?
ASAPHello,
Creating a Message Long Text
Use
Create a long text whenever the message text itself is not fully self-explanatory.
Prerequisites
You must already have created the message for which you want to create the long text, and not flagged it as self-explanatory.
Procedure
To enter a long text for a message in the message maintenance transaction (SE91):
Position the cursor on the relevant message.
Choose Individual maint.
The message text appears highlighted.
Choose Long text.
The SAPscript editor appears.
Enter your long text.
Check the text.
Save the text.
Result
When you send a message that has a long text, the message is displayed with a yellow question mark symbol.
Depending on the SAPgui settings, the message is displayed:
In the status bar (at the end of the message area),
In the message dialog box (on the Help pushbutton).
If you then click the message line or the Help pushbutton, the long text is displayed.
Vasanth -
What is meant by costing key?
Dear Experts ,
while releasing the billing document to accounts , i am getting error like
Valuation with material cost estimate: error, The system looked for the material cost estimate using costing key "002", as defined in the Customizing settings for CO-PA, incomplete due to FI/CO interface
what is meant by costing key?
regards
rajakarthikHi,
In Costing based Profitability analysis you define costing keys. A costing key is a set of access parameters which are used in valuation to determine which data in Product cost planning should be read. In the costing key you attach the costing variant.
In the costing key you specify whether the system should read the current standard cost estimate, the previous standard cost estimate or the future standard cost estimate or a saved cost estimate.
The configuration settings to determine this costing key is as follows:
Assign costing keys to the products u2013 Three costing keys can be attached to a single product for a specific point of valuation, record type, plan version.
Assign costing keys to Material types
Assign costing keys to any characteristics u2013 You can use your own strategy to determine the costing keys. This is through user defined assignment tables.
regards,
Santosh kumar -
Hi everyone,
I am working on implementing FSCM Dispute Managment module. I have some questions regarding the new standard content provided by SAP for this:
Earlier I have seen clients using the Stanadard InfoSet 0DPM_I0 for all the Dispute's reporting as it combines data from AR, Dispute Case key and 0Customer. But now I am seeing a bunch of new objects like 0DPM_M10, 0DPM_M20, 0DPM_C10, 0DPM_D10, 0DPM_DCAS_10 etc. provided by SAP as standard content.
Does any one have any experience with this new content; can anyone explain me how this new content is useful. My client is reluctant against using the standard InfoSet as its is built on two DSO's; I have suggested to build a cube on top of them and can still use an InfoSet to combine AR line items, Disputes, Dispute case key and Customer. Correct me if I am wrong with thid statement.
Also please let me know what is meant by a Replicated DSO.
Any comments or suggestions will be greatly appreciated.
Thanks & Regards,
SRVThere are a few things to consider:
1) The data is stored in deserialized form until it is read. The first read will deserialize the data.
2) There is some overhead per-entry. 750MB/(3,000,000-30) = ~250 bytes per entry. Some portion of this is attributable to the per-entry overhead.
3) How did you measure memory usage? Usually invoking <tt>System.gc()</tt> before measuring heap usage will clear garbage but is not guaranteed.
Jon Purdy
Oracle -
What is meant by criteria of Updateability in MDM Import manager
Hi,
What is meant by criteria of Updateability in MDM Import manager? i read some information, but i could understand, it says original data source be updateble. what is meant by Original data source.?
what is the use of option "Read-only" in Import manager logon screen.
ThanksHello Ankam,
You can check the Read-only option to prevent MDM from updating your data source.
Kindly see the below information on "DATA SOURCE UPDATES"
DATA SOURCE UPDATES
Some MDM Import Manager operations require that the original data source be updateable, thereby allowing new fields and/or entire new tables u2013 and the corresponding data values for each record u2013 to be automatically added to the data source before further processing.
Other operations simply create virtual fields in the MDM Import Manageru2019s workspace, although if the data source happens to be updateable, some of these operations instead add the new fields to the original data source as well.
NOTE ►► Updating the data source when possible allows you to
perform additional operations on the new fields as if they were part of
the original source data, and also use them as record matching fields.
NOTE ►► Fields that are added only if the data source is updateable
can be deleted automatically by the MDM Import Manager when you
exit or switch data sources based on the setting of the Delete Created
Fields on Exit configuration option.
Updateable Data Sources
Whether or not a data source is updateable depends upon the following:
u2022 Source type. The source Type must permit the MDM Import Manager to update its schema and insert the additional fields of data; some supported types are updateable and some are not.
u2022 Media. The media on which the data source resides must itself be updateable. If the media on which the data source resides is readonly, such as a CD-ROM, the data source cannot be updated.
u2022 Permissions. You must have the proper file system permissions to update the file, or the proper DBMS permissions to update the schema of the database.
u2022 Read-only option. You cannot have checked the Read-Only option, which prevents MDM from updating the data source even if the other conditions would otherwise permit it.
NOTE ►► The Read-Only option is: (1) enabled for source types that
can be updated (Access, Oracle, SQL Server, and XML); (2) disabled
and unchecked for those that use Access as an updateable staging
area (Delimited Text and Fixed Text); and (3) disabled and checked for
those that cannot be updated (Excel and ODBC).
NOTE ►► When the data source is SQL Server, the table names in
the database must not contain spaces; otherwise any operation that
would update the data source will fail.
Hope this helps.
Regards,
Vikas -
What does the usage of CURSOR word mean in an SQL statement?
Hey folks,
Please check out the following query and do please explain me what does the usage of CURSOR keyword in an SQL statement mean.
select deptno,cursor(select ename from emp a where a.deptno=b.deptno) from dept b;
well, the output was like this,
DEPTNO CURSOR(SELECTENAMEFR
10 CURSOR STATEMENT : 2
CURSOR STATEMENT : 2
ENAME
CLARK
KING
20 CURSOR STATEMENT : 2
CURSOR STATEMENT : 2
ENAME
SMITH
JONES
SCOTT
ADAMS
FORD
30 CURSOR STATEMENT : 2
CURSOR STATEMENT : 2
ENAME
ALLEN
WARD
MARTIN
BLAKE
TURNER
JAMES
6 rows selected.
40 CURSOR STATEMENT : 2
CURSOR STATEMENT : 2
no rows selected
Your favour'll be deeply appreciated.
Cheers,
PCZThis returns a non-square result set. Each row of the result is a deptno and then a result set of the enames in that deptno.
This can be useful when you need to send a lot of data to a client application in a single query that would otherwise contain a lot of redundancy. It tends to be a relatively unusual construct (I've only found one situation where it was appropriate in my career) and requires some relatively sophisticated understanding on both the database and client sides.
Justin -
What is meant by 'Business Area'
Hi all
what is meant by 'Business Area' in discoverer?
Because i have installed BI Tools Discoverer Admin and Desktop
but unable to figure out what Business Area atcually is!!!!
Thanks in advance
RegardsHi,
what is meant by 'Business Area' in discoverer?
Business area is nothing but a set of folders specified to that responsibility.
Seems your novice so to know concepts of BI and develop discoverer reports follow this user guides which can be downloaded from oracle site.
[http://download-west.oracle.com/docs/html/B10270_01/toc.htm]
[http://download.oracle.com/docs/cd/B14504_01/dl/bi/B10272_01/toc.htm]
Hope this helps you,if anything more feel free to ask we are ready to help you.You will find Discoverer interesting as you go on working with it.Have a nice time working on it.
Best Wishes,
Kranthi.
Edited by: Kranthi.K on Jun 16, 2009 7:29 AM -
hi
what is meant by stacked listHi Jyothsna,
A stacked list is a list used in Module Pool programming.
In an ideal scenario,you will define the screen sequence in either a static or a dynamic way.
By the statc way,you define the next screen and enter the next screen's value in it.
By the dynamic way,you code the statement CALL SCREEN XXX where the XXX means the screen number.The dynamic way overrides the static way of defining the screen sequences.
Now,if you want to insert a screen sequence,i.e a sequence of screens which are not defined in the same ABAP program,you either do it by static or the dynamic way again using the above constructs.
But in this case,a stack is loaded for a screen sequence and the screens are processed based on the sequence defined in it.
Before leaving this screen sequence,you should always destroy or delete it usng the keyword LEAVE as it occupies a lot of memory.
In case you have any further clarifications,do let me know.
Regards,
Puneet Jhari. -
hi all,
can any one explain me what is meant by noted items incase of G/l ,AR & AP. as i found this word in FBL3N ,FBL1N & FBL5N also?
thanks in advance...
regds,
ramanHi,
Unlike manual accounting, you can make certain transaction in SAP which don't have a impact on accounting but are necessary for dicision making or related to any future transactions. These are called Noted items. Noted items are only posted to one side of accounting.
Eg: If we send a request to customer for down payment, it is not a business transations and have no impact on accounting, but we can pass a entry in SAP for such transaction and it will be a noted item. When actual down payment is received, this noted item is cleared.
Reward points if answer is helpful. -
What is meant by qualified advance payment?
HEllo,,
what is meant by qualified advance payment. I was reading the SAP help but couldn't understand. so, plz explain in simple terms.
Thanks,
JEssDefinition:
With qualified advance payments, payroll takes place for some of the payroll elements in the first payroll run, and is transferred if necessary. The payroll run is not ended. Instead, it receives the Payroll Correction status. During the correction phase, you enter more payroll elements. In the subsequent payroll runs you carry out payroll for these remaining payroll elements and transfer them to your employees. The payroll program only finishes when accounting has been performed for all payroll elements.
Just do this simple transactions:
1. Maintain master data, example salary 1000 EUR
2. Release payroll
3. Run payroll u2013 will generate /559 1000 EUR (assume no other deduction)
4. Process Bank Transfer, will generate 1000 EUR, don't forget to set flag for transfer >> employee get payment earlier than it should be, for example get the 1000 EUR in the middle of the month. >> it is qualified advance payment.
5. Payroll Correction
6. Change salary to 3000 EUR
7. Release payroll
8. Run payroll u2013 will generate /558 2000 EUR (3000-1000) and /564 1000 EUR
9. Process Bank Transfer again, will generate 2000 EUR. >> normal regular payment, at the end of the month. -
What is meant by Local Class and how we can create local classes in abap?
Hi Friends
what is meant by Local Class and how we can create local classes in abap?
Regards,
SreeHi
Local classes are the classes which we declare and use using the SE38 ABAP editor
Global classes are the classes which we find in SE24 and call the methods of them into our program.
see the sample code
REPORT zs_class.
SELECTION SCREEN
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS:p_var TYPE i,
p_var1 TYPE i.
SELECTION-SCREEN END OF BLOCK b1.
CLASS d_class DEFINITION
CLASS d_class DEFINITION.
PUBLIC SECTION.
METHODS:
add,
sub.
PROTECTED SECTION.
DATA : var2 TYPE i.
ENDCLASS. "d_class DEFINITION
CLASS d_class IMPLEMENTATION
CLASS d_class IMPLEMENTATION.
METHOD add.
var2 = p_var + p_var1.
WRITE:/ var2.
ENDMETHOD. "add
METHOD sub.
var2 = p_var - p_var1.
WRITE:/ var2.
ENDMETHOD. "sub
ENDCLASS. "d_class IMPLEMENTATION
START-OF-SELECTION
START-OF-SELECTION.
DATA: obj TYPE REF TO d_class.
CREATE OBJECT: obj .
CALL METHOD: obj->add,
Regards
Anji -
What is meant by an Activity in Business One
Hi All,
What is meant by an Activity in Business One.I studied it in Business One Help,but it is not much helpful.I want a brief description regarding Activities(help me by taking an example).Where this activity used(only in Sales Opportunities and Service modules).
Help me regarding this or send me the related links that suit to my Question
Thanks & Regards,
SaleemMaybe I don't understand your question, but I think this is no a SDK issue.
An activity can be a call, a meeting, a task, any interaction with a customer that you want to keep record.
So, lets say you have a sales opprotunity, and in the first meeting you came up with a follow up meeting. Then, you open the sales opportunity in SAP, and add an activity for that opportunity, detailing when, where is the meeting, who will go,what do you have to show, etc. You can set a reminder so you don't miss this meeting.
Hope this helps
Harold
Maybe you are looking for
-
How do i get the mp3 information in my music folder to match the changes i make in itunes?
So basically, I am very OCD about the organization of my Itunes music collection. Every time I add a song I edit the info so that the artist, track name, album art, etc. are correct and follow the format I use. My Itunes music folder, however, is a c
-
N79 FM Transmitter Application problem
Hi! Well I buy my N79 last month after purchasing this cell I update the fireware, every thing was working fine but 2 days ago when I tried to use FM Transmitter I found its not working. Whenever I click on FM Transmitter a message pops in say " Acti
-
Hey, trying to access my iBook g4 powerPC that's still running 10.4.11 from a MacBook Pro 10.6.5... not having luck. I'd like to access files on the ibook from the MacBook and transfer them via wireless within the same house. Won't be trying to other
-
Where is the all button to select to delete emails
Can you help me to delete all emails?
-
Sales data not getting populated for Material master by LSMW.
Hi, When I am trying to create material manual for sales view material is getting created and the table MVKE(Sales Data for Material) is getting populated with the sales data. But when i Am trying with LSMW METHOD Object : 0020 Metho