Business Object Repository ( B O R )

Can some one please send me some data or links from where I can get data on Business object repository .

Hi,
     SAP's Business Object Repository gives you an improved way to integrate business processes with external partners -- an increasingly necessary ability in the burgeoning e-marketplace economy.
The age of e has had a profound effect on the IT industry. Not only has it changed our way of life, but it has also forced systems such as SAP to embrace a new era of openness. Marketplace demands for flexible automation of inter-business workflow and intelligent data exchange have forced formerly very proprietary ERP systems to begin helping customers integrate with other companies and with e-marketplaces data formats. For the first time, companies must expose their business processes to the outside world.
In order to achieve this openness, SAP provides a technical infrastructure for the R/3 product, the Business Object Repository (BOR), which provides a simple yet powerful mechanism for external systems to trigger core business processes (such as placing an order) without concern for the underlying data structure. This level of abstraction is beneficial because it decouples R/3 from the external system. Either system is therefore free to change its internal business processes without affecting the other. SAP provides this technical infrastructure using a component-based view of its system. Each component or object provides a view of the data and the business processes that interact with that data. External systems can access this data via BAPI methods, which in turn access the underlying data structures of the system. It is the responsibility of the object and the BAPI to ensure the integrity of the data. This encapsulation of the data not only lends itself to external interfaces, but by using objects from within SAP, you can greatly reduce implementation, testing, and maintenance effort via the promotion of code reuse.
Business Objects
A business object is a problem-domain entity that you model in the SAP system, such as SalesOrder, BillingDocument, and Employee. The BOR stores all the objects in the R/3 system. The repository is a group of all the objects in the R/3 system. If the focus of objects is to model atomic business processes then it can be said that the BOR provides an enterprisewide view of business processes. By designing your ABAP code to fit your business processes you increase the ability of that code to flex when those processes are altered or integrated with external systems. This had made the object-oriented approach, which the BOR provides, essential to developing inter-business or e-business functionality.
Attributes
A business object is primarily represented by its attributes. You perform actions, such as create, update, or delete on the attributes by calling the methods of the object.
Attribute NetValue of Object BUS2032 (SalesOrder).
The majority of attributes are data-dictionary fields (for example, the NetValue attribute is defined by VBAK-NETWR). When you access an attribute of an object, you execute a SQL statement that retrieves the corresponding field in the database.
Definition of attribute NetValue.
You can also define attributes that do not exist in the data dictionary. These attributes are called virtual attributes. For example, a business partner has an attribute called BirthDate that is stored in the data dictionary. You can add a virtual attribute to the BusinessPartner object called Age. The age of a business partner is not stored in the database, but you can calculate it using the current date and the birth date of the business partner. If you implement the ABAP code that calculates Age, every time you access the Age attribute, the code executes and returns the business partners age.
Definition of virtual attribute Age.
This is an excellent example of one of the tools that a component-based approach provides. The external system does not need to concern itself with how to gather the data that it requires. The calling program needs only to access the attribute for the data to be returned. This is how business objects decouple the calling program (whether it be in R/3 or external to R/3) from the internals of R/3.
The BOR lets you define multi-line attributes. These attributes define one-to-many relationships between an object and other fields. These objects can be defined in the data dictionary or can also be virtual attributes.
An attribute that uniquely defines an object in the system is called a key attribute. In the case of a SalesOrder, the key attribute is VBAK-VBELN (the TableName and FieldName). It is not uncommon for an object to have several key fields. An example of this is object is the SalesArea (BUS000603) object type which has SalesOrganization (TVTA-VKORG), DistributionChannel (TVTA-VTWEG) and Division (TVTA-SPARTE) as key fields.
Methods
As mentioned earlier, the methods of an object represent the actions you take with objects attributes. An action in this example would include retrieving the status of one or more sales orders based on specific criteria. Methods are analogous to function modules in that they have importing and exporting parameters as well as exceptions, which you view by selecting a method and clicking on the toolbar button. This allows external systems (or internal developments) to pass and accept parameters from these methods just as if they were using function modules -- allowing external systems to call methods.
In Figure 4, the methods shown with the green LED are BAPIs that are called specifically from external systems. They can, however, be called from within the system itself. The method shown with the stop sign is obsolete, but retained for backward compatibility, and should not be used in new developments.
Methods of SalesOrder.
Delegation and Subtyping
One of the most complex concepts in object-oriented development is that of inheritance. This concept lets you extend core functionality by creating a child of the parent object that inherits all of its attributes and methods. For example, a Manager object is a subtype (child) of the Employee object. The Manager object has all the attributes of an Employee object (such as EmployeeID or Name) but also has some extra attributes (such as CompanyCar or ParkingSpace). SAP has not implemented inheritance in the BOR. However, it has provided subtyping and delegation, which offer an alternative way to extend R/3 functionality.
Subtyping
A subtype of an object is another object whose creation is based upon a parent object (see the preceding manager/employee example). The subtype maintains references to all the attributes and methods of its parent object. This means that any methods and attributes defined on the parent can be executed and accessed on the child object. I have often heard less-experienced developers refer to subtyping as copying the parent object. Although the effects can be similar, in order to achieve an understanding of some of the more advanced concepts, such as interface inheritance, it is important to realize that this is not accurate.
If a subtype object were merely a copy of its parent, then all the code contained within the parent would be physically copied to the child. This is not the case. The subtype simply maintains references to its parents methods and attributes. The real difference is that the subtype lets you redefine these methods and attributes. You can easily add your own business rules to the parent methods by redefining the subtypes method. In the following example, I will show why this distinction is so important.
Subtyping Case Study
As an ABAP developer at Acme Tyres Pty. Ltd., you have been given the task of implementing some security measures for the companys online store. The requirement is simple: The password must be at least six characters long.
Modifying SAP code leads to costly and complicated upgrades due to the modified code being overwritten by the newly delivered SAP code. Therefore, The challenge is finding a way of implementing the business logic without modifying SAP code.
After some investigation, you realize that the method CHANGEPASSWORD (in BAPI) on the object KNA1 (Customer) is called when customers change their passwords. All you need to do is create a subtype of KNA1 and then redefine the CHANGEPASSWORD method adding the ABAP code to ensure that the password is a minimum of six characters long. It is of course not wise to change SAP code even assuming you have the passwords, which can be provided only be SAP. After the method is redefined, you just need to implement the business rules in ABAP.
FIGURE 5 Redefinition of ChangePassword method.
It is imperative that once you redefine the method it still behaves in a similar manner. You are allowed to add extra business logic, but the method must still change the password rather than do something unexpected, like delete a customer. This is particularly important when SAP is being accessed from external systems. The external system will expect a method to provide certain functionality. The developer should take care to ensure that this expectation is met.
Delegation
Now that you have implemented a new CHANGEPASSWORD method, you need to tell the SAP system to use the redefined version of CHANGEPASSWORD and not the version that was delivered on the KNA1 object. This is similar to object-oriented inheritance but the two concepts do have fundamental differences.
Delegation for objects.
By making an entry in the delegation table, you tell R/3 that before executing a method on KNA1, it should first check if that method has been redefined on the subtype. If it has, then the system executes the redefined method . If it hasn't, then the system executes the original method. Figure 7 illustrates this process.
Execution flow for methods with delegation.
This delegation is powerful because it lets you implement your own business logic without modifying any SAP code. As long as the objects are properly delegated, your method will be executed.
Responsibility
So far I have shown you two major components of an object, its attributes and methods. The difficulty in SAP is that it has traditionally been a data-driven, procedural-development approach. The BOR is not well understood by developers and managers and thus it is shunned by those that stand to gain the most from it. If managers and developers alike would take a formalized approach to development using business objects, significant savings in the development, testing, and maintenance phases would be achieved. This is due to the high level of re-use that business objects encourage.
Having said this, when a powerful tool is put into the hands of an inexperienced person, chaos can (and usually does) ensue. If object-oriented design principals are not adhered to, then the resulting code has poor reusability and maintainability. Although an in-depth discussion of design issues is beyond the scope of this article, I will introduce in the following section one of the more fundamental design aspects of BOR programming: Responsibility.
When you are given the task of creating a method or attribute on an object, one of the most important questions you should ask is, Does this attribute or method belong on this object? This question is fundamental to an object-oriented design and the answer can make a world of difference. Answering this question incorrectly has detrimental effects on the development effort resulting in methods and attributes strewn across myriad objects, with no coherent structure. If the methods and attributes were strewn across several objects, it would be more difficult to provide a uniform interface to external systems. If an external system wants to execute a particular business process in R/3, it may need to access several business objects, thus increasing coupling and reducing the layer of abstraction between R/3 and the external system.
Lets take, for example, the requirement to be able to update a sales order. This is a common requirement and one that SAP usually implements for you. For the sake of the example, lets assume that SAP has not implemented this method. You will need to implement your own UPDATE method on one of the business objects. The question here is: Which object? This question is what I term as defining responsibility. Which object is responsible for having the UPDATE method on it? As shown in Figure 4, the answer in this cases is BUS2032 (SalesOrder). If you put it on any other object then you run the risk of no one else knowing of its existence. Next time there is a requirement to update a sales order, the developer will develop an additional method. You would then have two separate pieces of code that implement the same functionality. This duplication doubles development, testing, and maintenance requirements. On large projects, this can become a real problem and a maintenance and testing nightmare.
SAP recognizes the challenges facing developers in the e-business era. It is aware that if it wants to take R/3 to the next phase, it needs to continue evolving the ABAP language and ensure that powerful development tools are available to SAP developers.
Rising to the challenge, SAP has begun developing extensions to the ABAP language called ABAP objects (see "Introducing ABAP Objects," in the IntelligentERP feature archive for an excellent introductory article to ABAP objects by Jürgen Heymann and Horst Keller). These extensions will provide ABAP developers with a full range of object-oriented tools. Eventually, these new extensions will make BOR obsolete. However, the use of object-oriented development is sure to be an integral part of future SAP developments, regardless of where the world of e takes us.
Reward points
Regards

Similar Messages

  • Business Object Repository (BOR) in CAF

    Hi,
    The Business Object Repository (BOR) is the object-oriented repository in the R/3 System. It contains the SAP business object types and SAP interface types as well as their components, such as methods, attributes and events.
    Is there something similar in CAF for custom developed business objects / entities.
    Thanks.
    Dick

    Hi Richard,
    Currently, the only way to view all of the deployed CAF services and related attributes is through the Service Browser.  There is nothing like the BOR.
    In Netweaver 2007, you will be able to publish CAF services to the Enterprise Service Repository (ESR) which will also contain all of the SAP Enterprise Services.  The ESR will be the single place to view all business objects and related services for an entire IT landscape.
    Best Regards,
    Austin.

  • Version Control for BUSINESS OBJECTS repository

    Hi,
    Do we have any version control for business objects repository?
    Thanks

    Hi
    I am hoping someone can answer my Version Control queries. The LCM document is limited in its detail on VM.
    I am currently testing the BO LCM 3.1 and while it appears very easy to use especially for promotion, the Version Control Manager seems to be lacking in controls and a clear promotion path from dev to test to uat to prod.
    We have set up 2 identical environments for UAT and PROD.
    And using the Version Control part of LCM creating version control for a universe.
    Logged into VM in UAT
    We have selected a universe
    Added it to VM
    Made a change to the universe in Designer
    Exported it
    Then Checked it in
    Can now see 2 versions in the history and the VMS Version. All good
    I then click on swap system and log into PROD
    The VM history is also there in PROD
    I have a number of concerns and questions and can't seem to find the solution to them anywhere.
    1. VM seems to be lacking a controlled process from all the environments. Basically we want to deploy following this path;
    Dev - Test - UAT - PROD
    There does not seem to be any controls or security which would stop you from GET VERSION from the DEV environment and putting that straight into PROD. Obviously we would not want that to happen.
    We would only want to GET VERSION from UAT
    Similarly for UAT We would only want to GET VERSION from TEST
    And for TEST We would only want to GET VERSION from DEV.
    Granted, we currently only have 2 identical environments.
    But Is there controls that would stop you when in PROD from getting versions from any other system other than UAT?
    Also is there any reason why no promotion is required when using VM.
    This seems to negate the Promotion Function of the LCM
    Any advise would be greatly appreciated with this.
    Many thanks
    Eilish

  • What do colors mean for object type in Business Object Repository browser?

    Hi,
    I am a new guy in SAP. I have a question. The object typies in BOR browser, there are kinds of colors, blue, light blue, pink, red,.. And also, for some object type, there is check mark beside them. What do these mean?
    Thank you for your help.

    Hi,
    The following information will be helpful for you.
    [Business Object Repository |help.sap.com/saphelp_40b/helpdata/en/7e/5e128f4a1611d1894c0000e829fbbd/content.htm]
    [Repository Browser |help.sap.com/saphelp_nw70/helpdata/en/60/d6ba75ceda11d1953a0000e82de14a/content.htm]
    [Business Object Repository|http://help.sap.com/saphelp_nw04/helpdata/en/c5/e4ac87453d11d189430000e829fbbd/frameset.htm]
    Assign Points if helpful.
    Thanks and Regards,
    Naveen Dasari.

  • Cannot see Business Objects Repository in SAP production server from Worskpace - SMP 2.3

    Hi all,
    I have problems with reading RFC from production server, because BOR isn't visible at all in Mobile Workspace. Maybe I do something wrong so let me explain what am trying to accomplish. I need to make applications work on production server. Until now they worked and were tested on development server. Applications are native Android with MBO (SMP 2.3.3). So my guess is that I need to transport RFC functions from development to production, which I did, then to make new connection to production server in workspace and generate MBOs and code from them that will finally replace the old MBO code in Android application. If that is the procedure, then the only problem is that I can't see those RFC in production. My user have sap all privileges and in them S_RFC authorization object so I guess authorization isn't the problem. I also tried to switch the language in workspace connection because last time (on development) that was the problem. Any idea somebody?

    Well there is only one mobile server. I don't know exactly how they (client) think it will work but when I say production server I refer to SAP EIS production server.
    Anyway the solution to the problem with BOR visibility is this note:
    Note 706195 - BAPIs are missing in the component hierarchy display
    Thanks Midhun! I will probably have more questions..

  • Repository Manager Business Objects

    We create a new Repository Manager (Business Objects Repository) on the SAP Portal, following the procedure of SAP Documentation (particularly "Integrating SAP Business Objects XI 3.1 Tools with SAP Netweaver of Ingo Hilgefort among other documentation) named "boerm".
    When the users access to this KM Folder, "My Favorites" folder is outdated, and after several hours the new Favorite Link appears.
    The only way to refresh the folder content is selecting Folder -> Refresh, but that function doesn't exists in several LayoutSet of KM.
    How can we refresh the folder automatically?
    Regards.

    Hi,
    then you need to look into the code you are doing. thats a custom application which we have no knowledge about.
    ingo

  • Authorisation in Business Objects Explorer Infospaces created on BEx query

    Hello,
    We have installed Business Objects Explorer, created Universe on BEx query and created a Explorer Infospace on that universe. everything works fine but the authorisations created for the user in BEx query are not taken into consideration when I login using SAP username "leveraging" SSO.
    Is Explorer not designed to consider authorisations in BEX query?
    Whats happening during Indexing of an Infospace? Will the system save the data in Business Objects repository from the source of the data?
    Thanks in advance.
    /Suman

    Hi Suman,
    You are right , Explorer is not designed to leverage Authorisations in SAP BW.
    Polestar is indexing data and keeping it out side of BW.  Although you can log in with SSO , it doesn't check the authorization according to BW, it shows everything indexed.
    You can have a workaround if the case is simple such as;
    Suppose you have 3 region , you can create 3 infospaces and give these authorizations to users from CMC.
    But if you really want to use all features of authorization in BW , it is impossible for now.
    Regards,
    Ozan Eroglu

  • Business objects

    Hi,
    I have no idea about business objects.What are business objects and as a functional consultant what I can do with business objects meaning can I give some additional things with very little efforts to my client or may be some convinience in use of SAP using business objects ?
    WHat and where business objects can be useful ?
    Please suggest.
    Thanks in advance
    Regards,
    manOO

    Hi,
    <b>What are business objects and as a functional consultant what I can do with business objects?</b></b>
    http://help.sap.com/saphelp_46c/helpdata/en/59/ae4484488f11d189490000e829fbbd/frameset.htm
    <b>Business objects</b> are real world entities modeled as objects in an information system.
    Business objects encapsulate both data structures and the functions applied to the data, but hide their full complexity from other objects. This encapsulation of data and functions makes it easier to modify program components, because you can program with the relevant entities without having to know all the implementation details. You can also reuse existing functions.
    <b>WHat and where business objects can be useful ?</b>
    Client programs access business objects by reading their attributes, or by calling the methods that make up the object’s interface:
    Attributes
    Attributes describe the data stored in an object through a set of properties. They provide direct read access to the data structures of objects, but client programs cannot change them from outside.
    Methods
    Methods provide a way to encapsulate the data structures of business objects, and to process them. When accessing an object, the client program calls a method with parameters and gets back return parameters.
    Interface
    The interface is the set of methods associated with a business object, and determines how an object interacts with the outside world.
    The client program defines the object types to be used and, at runtime, creates object instances of those object types.
    SAP business objects are managed in R/3's Business Object Repository (BOR).
    Regards,
    Naveen.

  • Business Objects And ABAP Objects ?

    hi all!
    May be this is a repitition but still :
    Can anyone give me a clarification on Business objects and abap objects in termas of difference-relations b/w them.
    regards
    sachin

    Hi Sachin,
    Please refer the below links,
    Business Object Repository and Class Library
    business objects
    Hope this helps.
    Regards,
    Hema.
    Reward points if it is useful.

  • SAP Business Object attached to FB03 transaction

    Hi,
    Can any body tell me the SAP business object associated with the transaction FB03?
    Also please tell me how we can find it out?
    Regards,
    Ratheesh BS

    Hi,
    BUS3006 is the BO for FB03.
    IF yu want to search go to SWO1.
    ClicK on Business object repository button from menu bar then select second radion button(Businnes obejcts/organization types).
    Then click on ok.Then u will see all application components.from there u canserach BO for u r appliation component.
    Thanks

  • Problem in business object event linkage

    Hi all,
    When ever a material is created or extended via MM01 i can see business object A00MARA with event created/changed in event trace transaction SWEL but i cannot see the business object 'A00MARA' in business object repository swo1.
    please help......
    Regards,
    N

    Tty Trace off  and trace on , then create material and check that business object coming again. normally it should never come..

  • Business Objects - Discoverer

    Hi Folks,
    I have a customer with a number of business objects universe
    (V4) at a number of different sites.
    Is there any toolkits and/or white papers which can help to
    grease the transition to Discoverer.
    Many Thanks,
    Barry
    null

    Hi Barry,
    Look at the Discoverer documentation (in Appendix A I think).
    There was a migration kit that consisted of a PL/SQL packages
    that can map from a Business Objects repository to a Discoverer
    repository.
    The kit was shipped as part of the Discoverer 3.1 release.
    Regards
    John
    Barry McGillin (guest) wrote:
    : Hi Folks,
    : I have a customer with a number of business objects universe
    : (V4) at a number of different sites.
    : Is there any toolkits and/or white papers which can help to
    : grease the transition to Discoverer.
    : Many Thanks,
    : Barry
    Oracle Technology Network
    http://technet.oracle.com
    null

  • Business Object in BOR vs in ES Workplace

    Hi,
    Anyone know if the Business Objects in ES workplace and Enterprise Service Reporitory are the same as the once in Business Object Repository?
    Emma

    Hi Richard,
    Currently, the only way to view all of the deployed CAF services and related attributes is through the Service Browser.  There is nothing like the BOR.
    In Netweaver 2007, you will be able to publish CAF services to the Enterprise Service Repository (ESR) which will also contain all of the SAP Enterprise Services.  The ESR will be the single place to view all business objects and related services for an entire IT landscape.
    Best Regards,
    Austin.

  • Issue with EP KM integration with Business Objects

    Hi,
    We have integrated BOBJ with EP KM and are able to view the Business object repository (Inbox, MyFavorites & Root Folder) in KM.
    The issue is when a webi document is added to My Favourites in Business object Infoview, the same is not reflecting in the EP KM. It takes around 30 mins to show the latest content in KM
    Any clue on this.? While configuring BOBJ repository manager in KM, we dont specify any cache or pull mechanism to fetch the latest webi documents from BOBJ. Am I missing some configuration from portal end.?
    Thanks,
    Siva

    Any clue on this. I am still facing this issue and haven't got any work around.

  • Business object type for parked invoices

    Hi,
    We are using documentum to store documents that have been attached to business object types in SAP. The business object types are configured in transaction OAC3 to point to a pre-configured content repository.
    Having this configuration allows the object type to use the "services for objects" option, enabling it to store attachments.
    The business object types for invoices have been configured and we are able to store attachments. However this does not seem to work for "Parked invoices". The configuration in the "services for objects" component is not there and the feature to store the attachment is disabled.
    As the configuration needs to be done for all object types that need to be able to store attachments, maybe someone here can indicate what the object type is for parked invoices. Alternatively, maybe there is a way to look up the various business object types.
    Any help you can provide is appreciated.
    Thanks.
    Kind Regards,
    Giwan

    Hi ,
    Thank You for your reply.
    I created inquiry . it takes BUS2031.But BUS2031 is used for quotation.But that inquiry is open in VA12(Change Inquiry) Transaction,not open in VA22(Change Quotation).
    Is there any setting for BOR object types to Document Types.
    Please give me a reply as early as possible.It's very urgent.
    Thanks,
    Saritha

Maybe you are looking for

  • Text is wrong in the generated video file

    I have a short video with brief text at the beginning and brief text at the end.  The text is different however, I created the 2nd text by copying the first.  When I generate the video, the final video final has both text at the beginning of the vide

  • PC wont switch on with ipod connected

    I have recently purchased a brand new pc with running with an AMD chip. I have installed all of my old software, including the ipod/itunes disk that came with the mini, and updated the mini and pc with latest itunes software. Everything seems to be f

  • Delete all rows in a table

    I have read two articles how to use sql adapter with delete. http://btsguru.blogspot.se/2011/10/wcf-sql-adapter-table-operations.html http://social.technet.microsoft.com/wiki/contents/articles/29146.biztalk-server-2013-crud-operation-with-wcf-sql-ada

  • How to handle  a large table using a JTable

    I want to create a lookup for the customer master file. And there is over 5000 records. so, what is the way to handle this case? ( if adding the all elements to vector or array, i think it is very time consuming and request many memory) thank you.

  • GPS info in photo

    We took a picture at a small fruit stand in Puerto Rico. We'd like to send the owner a small gift. Is there'd a way to find the address from the GPS info in the photo?