When making a function module, what is difference between test /unit test
best regards,
Hi,
ABAP Unit Tests
Structure of Unit Tests
An ABAP Unit test unit (TU) can be a class, function pool, executable program, or module pool. You can call ABAP Unit for testing individual TUs from the Class Builder (SE24), Function Builder (SE37), ABAP Editor (SE38), and SE80. Mass tests can be carried out from the Code Inspector.
You organize your tests into classes and then into test methods, which are all part of the TU. The system checks small units within the TU, hence the name ABAP Unit. The aim of a test method is to check whether a unit returns the desired result. For this purpose, there are methods of the service class CL_AUNIT_ASSERT that execute comparisons between target and actual values calculated by a unit. The results of all unit tests of a TU are then shown in the ABAP Unit result display.
Example
Let us look at an example to help clarify this. Our minimalist TU is a percentage calculator that delegates this task to a subroutine:
REPORT Percentages.
PARAMETERS: price TYPE p.
PERFORM minus_ten_percent CHANGING price.
WRITE price.
FORM minus_ten_percent CHANGING fprice TYPE p.
price = fprice * '0.9'.
ENDFORM. "Minus_ten_percent
We add a test class to the report, which tests whether the subroutine correctly calculates the percentage for a specific value.
CLASS test DEFINITION FOR TESTING. "#AU Risk_Level Harmless
"#AU Duration Short
PRIVATE SECTION.
METHODS test_minus_ten_percent FOR TESTING.
ENDCLASS.
CLASS test IMPLEMENTATION.
METHOD test_minus_ten_percent.
DATA: testprice type p value 200.
PERFORM minus_ten_percent CHANGING testprice.
cl_aunit_assert=>assert_equals( act = testprice exp = 180
msg = 'ninety percent not calculated correctly').
ENDMETHOD.
ENDCLASS.
The test class and the test method TEST_MINUS_TEN_PERCENT are recognized by the tool through the addition FOR TESTING. The additions "#AU RISK_LEVEL HARMLESS and "#AU DURATION SHORT are not optional comments but annotations containing required technical information. With RISK_LEVEL you specify to what extent, if at all, executing the test endangers critical data. The time is specified so that any tests in endless loops are automatically cancelled due to a timeout.
In the transaction SAUNIT_CLIENT_SETUP, you can make settings for an entire system with regard to the RISKLEVEL of tests and the times assigned to the individual attributes that specify the permitted duration (DURATION: SHORT, MEDIUM, and LONG). For example, in some development systems you will want to prohibit tests that change important data. If the test is cancelled for any reason, it is possible that some data may be left with invalid values or in an inconsistent state. Therefore, you will set the permitted RISKLEVEL suitably low in such systems.
Service of the Class CL_AUNIT_ASSERT
As parameters, the service method CL_AUNIT_ASSERT=>ASSERT_EQUALS requires a target value and an actual value, which is the result of the tested calculation; it then compares the two values. The MESSAGE parameter should contain a text that explains what went wrong during the test. You can also pass a parameter with the service method CL_AUNIT_ASSERT=>ASSERT_EQUALS that specifies the severity of the error, as well as a parameter stating how to proceed if the test fails: Should the test method simply continue, or should the current test method, the entire test class, or all tests of the TU be canceled?
In addition to this method, the class CL_AUNIT_ASSERT also provides other methods, which execute different checks and pass the results to the framework. Most importantly, you should note that you can use the parameters of the methods of the service class CL_AUNIT_ASSERT to control the flow of the whole unit test and include information in the test methods that will later provide you with important details about any errors in the result display.
ABAP Unit Result Display
On the left side of the result display, all the tests of your TU are grouped into a task. In our case, this is only one test class with a single method:
Via the name of the method, you can see what parts of the test method caused errors during the test:
The message you passed with the service method is displayed at the top. Below that, you can which values diverge and can navigate to the class via the stack line.
In our example, a closer examination of the code reveals that the input parameter of the report was confused with the change parameter of the subroutine.
Similar Messages
-
Hi Experts,
When I run my Application in Portal, i am getting the following error.
Type conflict when calling a function module., error key: RFC_ERROR_SYSTEM_FAILURE
When I execute the BAPI, it is getting executed.
My Bapi Strucute:
Import Parameters
IM_MAT_Search --> ZPTIP_MAT --> Import Parameters
Tables
IT_INFO_REC --> ZMM_GET_ITEM --> Output Parameters
When I import the model, i am getting the structure like this
BAPI_Name > ZMM_BAPI_Input> IM_MAT_Search(respective Parameters) , Output (respective Tables and their parameters)
> ZMM_Input1> Parameters
This is the way, how i am executing in webdynpro java
Zmm_Bapi_Ptip_Search_Input eleInput = new Zmm_Bapi_Ptip_Search_Input();
wdContext.nodeZmm_Bapi_Ptip_Search_Input().bind(eleInput);
Zptip_Asset eleInputAsset = new Zptip_Asset();
eleInputAsset.setSearch("ACRS");
wdContext.nodeZptip_Asset().bind(eleInputAsset);
eleInput.setIm_Ast_Search(eleInputAsset);
wdContext.nodeZmm_Bapi_Ptip_Search_Input().bind(eleInput);
wdContext.nodeZmm_Bapi_Ptip_Search_Input().currentZmm_Bapi_Ptip_Search_InputElement().modelObject().execute();
wdContext.nodeOutput().invalidate();
Please let me know, how to do the same.
Thanks in advance.
Regards,
PalaniHi David,
I checked for the Parameter of setIm_Ast_Search, it is of Zptip_Asset.
Hi Saleem,
When I changed the same, i am getting the Type conflict error,
Type conflict when calling a function module., error key: RFC_ERROR_SYSTEM_FAILURE
Please let me know,what can be done in this regard to solve the problem.
My BAPI Structure when imported as model
SearchBAPI
--> ZMM_BAPI_SEARCH_INPUT
> IM_AST_SEARCH(zPTIP_ASSET)
>Zptip_Asset
>Search (Parameter)
> OutPut(ZMM_BAPI_Search_Output)
>IT_Asser_Rec(ZMM_Asset)
>ZMM_Asset
>TXT100 (output Parameter)
--> ZMM_BAPI_SEARACH_OUTPUT
--> ZPTIP_ASSET
>Search (Parameter)
Thanks & Regards,
Palani
Edited by: Palani Appan on Nov 11, 2009 5:31 PM -
What is difference between ADF Task Flow and Faces-Config - when delpoy ?
What is difference between ADF Task Flow and Faces-Config? When I create navigation between pages with ADF task flow then the navigation don't work when I deploy my application to Weblogic 10.3. When I use default server then navigation works fine. With Faces_config in both situations all works ok - on Stanalone server and default.
Where is the problem?
Best regards!Shay, I don't use both faces-config and adf task flow! When I failed with task flow I tried faces-config.
I have active on my weblogic - adf.oracle.domain(1.0,11.1.1.0.0). This is the right ADF? If yes then where is the problem?
Best regards! -
Type conflict when calling a function module (field length)
Dear All,
I am getting this following error while executing: Type conflict when calling a function module (field length)
This is piece of coding i have writern in my action button.
method SEARCH_MATERIAL .
data:
node_mat_input TYPE REF TO if_wd_context_node,
node_mat_output TYPE REF TO if_wd_context_node,
material TYPE BAPIMATDET-MATERIAL,
itab TYPE TABLE OF BAPIMATDOA.
node_mat_input = wd_context->get_child_node( 'NODE_MAT_INPUT' ).
node_mat_output = wd_context->get_child_node( 'NODE_MAT_OUTPUT' ).
node_mat_input->get_attribute( EXPORTING name = 'MATERIAL'
IMPORTING value = material ).
CALL FUNCTION 'BAPI_MATERIAL_GET_DETAIL'
EXPORTING
material = material
PLANT = plant
VALUATIONAREA =
VALUATIONTYPE =
MATERIAL_EVG =
IMPORTING
MATERIAL_GENERAL_DATA = itab
RETURN =
MATERIALPLANTDATA =
MATERIALVALUATIONDATA =
node_mat_output->bind_table( itab ).
endmethod.
Attributes are:
Node name = INPUT its structure is BAPIMATDET
INPUT attributes = MATERIAL of type BAPIMATDET-MATERIAL
Thanks,
Gopi.Hi Amit,
I have used service call to fetch records from that bapi..
The following is the code generated by service call:-
METHOD execute_bapi_material_get_deta .
declarations for context navigation
DATA:
node_bapi_material_get_de TYPE REF TO if_wd_context_node,
node_exporting TYPE REF TO if_wd_context_node,
node_material_general_dat TYPE REF TO if_wd_context_node,
node_importing TYPE REF TO if_wd_context_node,
lri_element TYPE REF TO if_wd_context_element.
declarations for fuba parameters
data:
stru_c_material_general_dat TYPE if_componentcontroller=>element_material_general_dat.
DATA:
attr_material TYPE bapimatdet-material,
attr_plant TYPE bapimatall-plant.
get all involved child nodes
node_bapi_material_get_de = wd_context->get_child_node( `BAPI_MATERIAL_GET_DE` ).
node_exporting = node_bapi_material_get_de->get_child_node( `EXPORTING` ).
node_material_general_dat = node_exporting->get_child_node( `MATERIAL_GENERAL_DAT` ).
node_importing = node_bapi_material_get_de->get_child_node( `IMPORTING` ).
get input from context
node_importing->get_attribute( EXPORTING name = `MATERIAL`
IMPORTING value = attr_material ).
node_importing->get_attribute( EXPORTING name = `PLANT`
IMPORTING value = attr_plant ).
the invocation - errors are always fatal !!!
CALL FUNCTION 'BAPI_MATERIAL_GET_DETAIL'
EXPORTING
material = attr_material
plant = attr_plant
" valuationarea = wd_This->Valuationarea
" valuationtype = wd_This->Valuationtype
" material_Evg = wd_This->Material_Evg
IMPORTING
material_general_data = stru_c_material_general_dat
" return = wd_This->Return
" materialplantdata = wd_This->Materialplantdata
" materialvaluationdata = wd_This->Materialvaluationdat
node_material_general_dat->bind_structure( stru_c_material_general_dat[] ).
ENDMETHOD.
but the problem is I am getting the following error while compiling...
" stru_c_materialplantdata " is not an internal table - the " OCCOURS n" specification is missing.
Thanks,
Gopi.
Edited by: Yegalaivan on Nov 18, 2009 8:30 AM -
ERROR: -Type conflict when calling a function module
hi to all,
when iam executing the program in browser Type conflict when calling a function module error is showing, i have bind all the attribute correctly still iam getting error, WHEN I CLICK ON THE SEARCH BUTTON DATA IS NOT COMING TO MY TABLE ITAB1 plz help me....
DATA:
NODE_IP_SELECTION TYPE REF TO IF_WD_CONTEXT_NODE,
ELEM_IP_SELECTION TYPE REF TO IF_WD_CONTEXT_ELEMENT,
STRU_IP_SELECTION TYPE IF_PLANNING_HISTORY=>ELEMENT_IP_SELECTION ,
ITAB TYPE TABLE OF ZSL_PL_UPDATE1,
WA TYPE ZSL_PL_UPDATE1.
navigate from <CONTEXT> to <IP_SELECTION> via lead selection
NODE_IP_SELECTION = WD_CONTEXT->GET_CHILD_NODE( NAME = `IP_SELECTION` ).
get element via lead selection
ELEM_IP_SELECTION = NODE_IP_SELECTION->GET_ELEMENT( ).
get all declared attributes
ELEM_IP_SELECTION->GET_STATIC_ATTRIBUTES(
IMPORTING
STATIC_ATTRIBUTES = STRU_IP_SELECTION ).
CALL FUNCTION 'ZBAPI_PL_UPDATE'
EXPORTING
GV_LIFNR = STRU_IP_SELECTION-LIFNR
GV_MATNR = STRU_IP_SELECTION-LIFNR
GV_GJAHR = ' '
GV_WEEK_LOW = STRU_IP_SELECTION-FROM_WEEK
GV_WEEK_HIGH = STRU_IP_SELECTION-TO_WEEK
IMPORTING
RETURN =
TABLES
GT_PL_UPDATE = ITAB
DATA:
NODE_PLANN_NODE TYPE REF TO IF_WD_CONTEXT_NODE,
ELEM_PLANN_NODE TYPE REF TO IF_WD_CONTEXT_ELEMENT,
STRU_PLANN_NODE TYPE IF_PLANNING_HISTORY=>ELEMENT_PLANN_NODE,
WA1 TYPE IF_PLANNING_HISTORY=>ELEMENT_PLANN_NODE,
ITAB1 TYPE TABLE OF IF_PLANNING_HISTORY=>ELEMENT_PLANN_NODE.
LOOP AT ITAB INTO WA.
MOVE-CORRESPONDING WA TO WA1.
APPEND WA1 TO ITAB1.
ENDLOOP.
navigate from <CONTEXT> to <PLANN_NODE> via lead selection
NODE_PLANN_NODE = WD_CONTEXT->GET_CHILD_NODE( NAME = `PLANN_NODE` ).
CALL METHOD NODE_PLANN_NODE->BIND_TABLE
EXPORTING
NEW_ITEMS = ITAB1
SET_INITIAL_ELEMENTS = ABAP_TRUE
INDEX =
ENDMETHOD.CALL FUNCTION 'ZBAPI_PL_UPDATE'
EXPORTING
GV_LIFNR = STRU_IP_SELECTION-LIFNR
GV_MATNR = STRU_IP_SELECTION-LIFNR
GV_GJAHR = ' '
GV_WEEK_LOW = STRU_IP_SELECTION-FROM_WEEK
GV_WEEK_HIGH = STRU_IP_SELECTION-TO_WEEK
IMPORTING
RETURN =
TABLES
GT_PL_UPDATE = ITAB
Problem is here
check out the type GV_GJAHR whether it accepts string type.
thanks
sarbjeet singh -
Hi I have the old photo shop elements 10 on my computer and want to update and was wondering what the differences between photoshop, lightroom and photoshop elements are?
Also when I upgrade does it have to be with a monthly membership or can I just purchase the product out right like you use to be able?You cannot "update" from what you have to any of the applications you mention. It will have to be a straight purchase or subscription at full price.
Photoshop is a professional level application that makes no apologies for its very long and steep learning curve.
Lightroom is all about volume, and very light editing.
The Photoshop Elements forum is at:
https://forums.adobe.com/community/photoshop_elements/content
Remember, you are not addressing Adobe here in the user forums. You are requesting help from volunteers users just like you who give their time free of charge. No one has any obligation to answer your questions.
I do not know where there is such a comparison table as you seek, but someone else might, or you can google. -
i am trying to generate purchase order and i create a BAPI also which is active.
But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)".Hi,
Yeah i tried my Z_BAPI in R3 and then giving some ERROR.
This is my CODE-
FUNCTION ZBAPIPOTV2.
*"*"Local Interface:
*" IMPORTING
*" VALUE(POHD) TYPE ZPOHD OPTIONAL
*" VALUE(POITEM) TYPE ZPOITEM OPTIONAL
*" TABLES
*" RETURN STRUCTURE BAPIRET1 OPTIONAL
data: ls_pohd type bapimepoheader,
ls_pohdx TYPE bapimepoheaderx,
lt_poit TYPE TABLE OF bapimepoitem,
lt_poitx TYPE TABLE OF bapimepoitemx,
ls_poit TYPE bapimepoitem,
ls_poitx TYPE bapimepoitemx.
MOVE-CORRESPONDING pohd to ls_pohd.
MOVE-CORRESPONDING poitem to ls_poit.
ls_pohdx-comp_code = 'x'.
ls_pohdx-doc_type = 'x'.
ls_pohdx-vendor = 'x'.
ls_pohdx-purch_org = 'x'.
ls_pohdx-pur_group = 'x'.
ls_poit-po_item = '00010'.
APPEND ls_poit to lt_poit.
ls_poitx-po_item = '00010'.
ls_poitx-po_itemx = 'x'.
ls_poitx-material = 'x'.
ls_poitx-plant = 'x'.
ls_poitx-quantity = 'x'.
APPEND ls_poitx to lt_poitx.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
POHEADER = ls_pohd
POHEADERX = ls_pohdx
* POADDRVENDOR =
* TESTRUN =
* MEMORY_UNCOMPLETE =
* MEMORY_COMPLETE =
* POEXPIMPHEADER =
* POEXPIMPHEADERX =
* VERSIONS =
* NO_MESSAGING =
* NO_MESSAGE_REQ =
* NO_AUTHORITY =
* NO_PRICE_FROM_PO =
* PARK_COMPLETE =
* PARK_UNCOMPLETE =
* IMPORTING
* EXPPURCHASEORDER =
* EXPHEADER =
* EXPPOEXPIMPHEADER =
TABLES
RETURN = return
POITEM = lt_poit
POITEMX = lt_poitx
* POADDRDELIVERY =
* POSCHEDULE =
* POSCHEDULEX =
* POACCOUNT =
* POACCOUNTPROFITSEGMENT =
* POACCOUNTX =
* POCONDHEADER =
* POCONDHEADERX =
* POCOND =
* POCONDX =
* POLIMITS =
* POCONTRACTLIMITS =
* POSERVICES =
* POSRVACCESSVALUES =
* POSERVICESTEXT =
* EXTENSIONIN =
* EXTENSIONOUT =
* POEXPIMPITEM =
* POEXPIMPITEMX =
* POTEXTHEADER =
* POTEXTITEM =
* ALLVERSIONS =
* POPARTNER =
* POCOMPONENTS =
* POCOMPONENTSX =
* POSHIPPING =
* POSHIPPINGX =
* POSHIPPINGEXP =
* SERIALNUMBER =
* SERIALNUMBERX =
* INVPLANHEADER =
* INVPLANHEADERX =
* INVPLANITEM =
* INVPLANITEMX =
ENDFUNCTION.
i am trying to generate purchase order and i create a BAPI also which is active. But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)". -
Hi,
When i use function module KKPI_BDC_ADD_ON_COSTS_CREATE to create additive costs it shows an error. The error is 'THE OBJECT IS LOCKED BY THE USER SARKARD' the transaction it uses is CK74 for creating.
I have also read about KKP4_ADD_ON_COSTS_CREATE. But i dont know the usage of it..
I think it will be helpful if u can clarify with first FM.
Kindly suggest.
Thank you.
HarshaHi Harsha,
I have a similar requirement, but the issue that I am facing is that I can not find any parameter in the FM - KKPI_BDC_ADD_ON_COSTS_CREATE for Valuation Date which is a mandatory field in CK74. How did you overcome that issue, can you please share ? -
Create a generic extractor using Function module, what steps must I follow
Hello gurus team
I need to Create a generic extractor using Function module, what steps must I follow?
Just I have a function module not estructures or something, only the program.... and I have intented to do it in rso2 using the fm option, but give an error... somebody can helpme???
BRHi,
Generic Extraction via Function Module
/people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0f46157-e1c4-2910-27aa-e3f4a9c8df33
http://help.sap.com/saphelp_nw04/helpdata/en/86/1c8c3e94243446e10000000a114084/frameset.htm
Thanks,
JituK -
Whats the difference between the module WS-SVC-WISM2-1-K9(=) and WS-SVC-WISM2-HA-K9
whats the difference between the module WS-SVC-WISM2-1-K9(=) and WS-SVC-WISM2-HA-K9 ?
and difference betwenn WS-SVC-WISM2-HA-K9 and WS-SVC-WISM2HA-K9= ?
Thanks.
Reference:
http://www.cisco.com/c/en/us/products/switches/catalyst-6500-series-switches/relevant-interfaces-and-modules.html#aismHey Gary,
Please refrain from double posting the same subject matter.
https://supportforums.cisco.com/message/3353771#3353771 -
TRFC type conflict when calling the function module
Hi,
When I schedule, it is stucking up with TRFC and giving error message in SM58 as" TRFC type conflict when calling the function module" .
even if I execute the trfc LUWs ,load is not successful.
could you please any body suggest for this error.
Thanks
RHi Guys,
could any suggest why this is happening.
TRFC is stuck up and giving error message.
Thanks
Ram -
What is difference between partner function & Vendor subrange
Hi Can anybody tell What is difference between partner function & Vendor subrange?
AmitHi,
Vendor subrange is a way to group materials of a vendor after certain criteria.
http://help.sap.com/saphelp_erp60_sp/helpdata/en/e2/f3333956bd9f05e10000000a11402f/frameset.htm
Partner functions are used to connect vendors to each other in several ways.
regards, Paul. -
Would you please summarize what the difference between tc and alv?
hi, experts,
would you please summarize what the difference between table control and alv base on the function and usage practice.
for example, as i know:
1.edit
tc: can edit in the same screen and save.
alv: pop up a sub screen to let user edit, so this is unconvenient.
2.functional button
alv: can have many functional button as default ,eg. sort, summary and so on
tc: developers must implements by himself.
3.color
alv: can have and change color
tc: cann't changed color
some client may required the data displayed in alv and edit in tc ,such as example BCALV_EDIT_02.
above are my idea, experts, would you give me some comments on my opinion and summarize what the difference between those two components? i should make it clear in order to consult the UI with my client.hunger for your advice, thanks!
Message was edited by:
liu shaochangALV Grid is basically used for display puropse. It is more user friendly. There are arious features ( such as coloring, sorting, saving to a local file, sedning by mail etc. ) These featurs make ALV Grid a very good option to display the data .
However , the table control is not only used to display data take from the database table, but also you can do operation such as deletion of data from database table, insertion of data into the database table and updation also. Yeah it has not got the various features whihc ALV has.
So table control and ALV Grid , if you are just using for display purpose, then ALV Grid is a better option due to its layout and attractive features. But if you want to do the database operations other than display, table control can be used.
As far as execution is concerned, I think ALV Grid is faster.
ALV grid control is faster when compared to Table control. But the comaprision is Negligible .
One of the major differences comes in taking of line items - ALV has an advantage over Table Control when it comes to update database from it.Table control only allows maximum of 999 records at a time where as this limitation is not there in ALV.
Also,a main feature of ALV Grid is that it contains a standard set of functions. These functions extend beyond the functions of a table control.
These two UI elements require different keyboard navigation, with ALV Grid being more user-friendly.
An application can display table data in ALV Grid or in a table control. In some applications you can choose between displaying and editing data in either ALV Grid or a table control. If a configurable button () appears in the right upper corner of the table, it is a table control.
Basically ALV is a way to display the output and Table Control is designed in screen painter through which you can get entries in Table Control, can delete some records etc for further processing and its not use only for Display.
ALV is Application List viewer:-
Sap provides a set of ALV (ABAP LIST VIEWER) function modules which can be put into use to embellish the output of a report. This set of ALV functions is used to enhance the readability and functionality of any report output. Cases arise in sap when the output of a report contains columns extending more than 255 characters in length.
In such cases, this set of ALV functions can help choose selected columns and arrange the different columns from a report output and also save different variants for report display. This is a very efficient tool for dynamically sorting and arranging the columns from a report output.
TABLE CONTROL:-
ABAP offers two mechanisms for displaying and using table data in a screen. These mechanisms are table controls and step loops. Table controls and step loops are types of screen tables you can add to a screen in the Screen Painter. -
Re: what is difference between sap locking and database locking
hi,
what is difference between sap locking and database locking. Iam locked the table mara by using lock objects.
But iam unable to unlock the mara table. I give u the coding. Please check it.
REPORT zlock .
CALL FUNCTION 'ENQUEUE_EZTEST3'
EXPORTING
MODE_MARA = 'S'
MANDT = SY-MANDT
MATNR = 'SOU-1'.
call transaction 'MM02'.
CALL FUNCTION 'DEQUEUE_EZTEST3'
EXPORTING
mode_mara = 'E'
mandt = sy-mandt
matnr = 'SOU-1'.
IF sy-subrc = 0.
WRITE: 'IT IS unlocked'.
ENDIF.Hi Paluri
Here is the difference between SAP locks and Database locks, i will try to find the solution to your code.
Regards
Ashish
Database Locks: The database system automatically sets database locks when it receives change statements (INSERT, UPDATE, MODIFY, DELETE) from a program. Database locks are physical locks on the database entries affected by these statements. You can only set a lock for an existing database entry, since the lock mechanism uses a lock flag in the entry. These flags are automatically deleted in each database commit. This means that database locks can never be set for longer than a single database LUW; in other words, a single dialog step in an R/3 application program.
Physical locks in the database system are therefore insufficient for the requirements of an R/3 transaction. Locks in the R/3 System must remain set for the duration of a whole SAP LUW, that is, over several dialog steps. They must also be capable of being handled by different work processes and even different application servers. Consequently, each lock must apply on all servers in that R/3 System.
SAP Locks:
To complement the SAP LUW concept, in which bundled database changes are made in a single database LUW, the R/3 System also contains a lock mechanism, fully independent of database locks, that allows you to set a lock that spans several dialog steps. These locks are known as SAP locks.
The SAP lock concept is based on lock objects. Lock objects allow you to set an SAP lock for an entire application object. An application object consists of one or more entries in a database table, or entries from more than one database table that are linked using foreign key relationships.
Before you can set an SAP lock in an ABAP program, you must first create a lock object in the ABAP Dictionary. -
What is difference between bex analyser and bex browser
what is difference between bex analyser and bex browser . please explain what are use of both and what we do in both.
hi
Bex Browser
The Business Explorer Browser (BEx Browser) makes it possible for you to access all document types of the Business Information Warehouse that are assigned to your role or that you have stored in your favorites. You can select and open documents assigned to you in the BEx Browser or store and manage new documents in the BEx Browser.
Document types that you can work with in the BEx Browser are:
· BW workbooks
· Documents that are stored in the Business Document Service (BDS)
· Links (references to file system, shortcuts)
· Links to internet sites (URLs)
· SAP transaction calls.
· Web applications and Web templates
· Crystal Reports
Bex Analyser
The Business Explorer Analyzer (BEx Analyzer) is the analysis and reporting tool of the Business Explorer that is embedded in Microsoft Excel.
Features
You can call up the BEx Query Designer in the BEx Analyzer, in order to define queries. Subsequently, you can analyze the selected InfoProvider data by navigation to the query created in the Query Designer and create different query views of the data. You can add the different query views for a query or for different queries to a work book and save them there. You can save the workbook in your favorites or in your role on the BW Server. You can also save the workbook locally on your computer.
Beyond that, you can precalculate the workbook and distribute it by e-mail to recipeients or you can export it to the Enterprise Portal and make it accessible to other employees in the company.
You can start queries in a standard view (with a Standard Web Template set up in Customizing) in the Web browser and forward the URL or continue to navigate on the Web. Similarly, you can export the Web query to MS Excel 2000.
Overview of the Functional Area of the BEx Analyzer:
· BEx toolbar
You access the functions of the BEx Analyzer from the BEx toolbar, which takes you to the BEx Open dialog box where you can open existing queries, or to the BEx Query Designer where you can create new queries or change existing queries.
· Evaluating Query Data
The BEx Analyzer offers convenient functions for evaluating and presenting InfoProvider data interactively. In the BEx Analyzer, you can add queries to workbooks, navigate within them and refresh the data. You can also process the queries further in Microsoft Excel or display them in the Web browser in a default view.
Navigation of a query allows you, for example, to filter characteristics on a single value, drilldown on all values for a characteristic, regroup characteristics and key figures in the rows and columns of the results area, or hide key figures. Navigation results in different views of the InfoProvider data. In addition, a range of further functions is available which allow you to edit a query interactively (for example, sorting, cumulated output, among others). In addition, you can use the editing functions in Microsoft Excel in order to set up individual format templates, to print results areas, or to create graphics.
· Queries in Workbooks
Queries are inserted into workbooks so you can display them. When you insert a query, a link is made between the cell areas of the worksheet and the data of the InfoProvider upon which the query is based. A link therefore exists between the Business Explorer and the Business Information Warehouse Server (BW Server).
When inserting a query into the workbook, a VBA routine is automatically generated in the workbook. You can also connect the Business Explorer with your own VBA programs (Visual Basic for Applications).
You can create workbook templates, into which you can insert your queries. Workbook templates can contain pre-determined items for the area of the query, formatting settings, logos, VBA macros, and so on.
· Precalculating workbooks
You can precalculate and distribute workbooks with the BEx Broadcaster, which is a Web application you get to form the BEx toolbar. The system generates MS Excel workbooks with historical data. You determine the time for precalculation yourself: You can have workbooks precalculated at a predefined time or they can be precalculated whenever data in the underlying InfoProvider changes. You can have the precalculated workbooks sent by e-mail or you can export them into the Enterprise Portal, where you can make them available to employees within your company.
Activities
To start the BEx Analyzer, choose Start ® Programs ® SAP Front-end Business Information Warehouse ® SAP Business Explorer Analyzer.
You can also access the BEx Analyzer via SAP Easy Access ® SAP Business Information Warehouse ® SAP Menu ® Business Explorer ® Analyzer or in the Business Explorer Browser using the Business Explorer Analyzer symbol in the menu bar.
Hope this will solve your issu
nagarjuna
Maybe you are looking for
-
Greetings, We are running 10.8.5 on 30 machines in an active directory environment (graphics lab). The clients are experiencing a persistant error when pausing or resuming print jobs. Each time something is paused, it requires an administrator passwo
-
How do I get my pics off Itouch??
Hello. All of my pictures were on my ibook, that died. I had them synced on my itouch. I am trying to get them off my itouch, onto my PC now, but they don't show up when connected, i guess because they are synced. my itouch is an older OS, so i can't
-
HT201274 my phone has been spinning for about an hour what do i do ?
ok so i reset all on my phone and it has been doing the little wheel for about an hour what do i do now? how long does it take my lock screen button is also broken any help would be greatly appreciated.
-
Accounting postings during Stock transfer
Hi All I have a issue as described below. We bring in material by using 101, stock goes to quality, Account postings happen to Inventroy and GR/IR. I am yet to clear the quality stock to either Un-restricted or if rejected to return or blocked stock
-
i cant buy in-app purchase! but the message said that "Your purchase could not be completed! please contact itunes support.... how to fix?