Monday 7 April 2014

Diffrence Between EBC & VBC

EBC VS VBC

Base Table:

·         EBC: EBC is based on external table and uses data source defined on BC and Table to retrieve data.
·         VBC: VBC has no base table and it is based on special class. It uses a Business Service to retrieve data.

Business Layer VS Database Layer:

·         EBC: While creating EBC you import external table definition into Siebel which results in a proxy table being created in Siebel which points to external table so we can say that EBC integrates Siebelto external applications at Database Layer.
·         VBC: No table is involved in creation of a VBC and we need to use either Vanilla BS such as XML Gateway service or custom BS that will retrieve data through Siebel Business Layer.

Purpose:

·         EBC: The purpose of an EBC is to view, update, insert and delete data available in external database. It is always used to integrate with external applications.
·         VBC: The purpose of VBC is usually to view external data that we don’t want to store in Siebel. It is not necessary to use VBC only for integration. For example If I want to view Product Configurator information in typical Siebel Applets and Views then I can use VBC to achive this.

Effort:

·         EBC: It is very easy to create and configure EBC. You just need to import external tabe definition and after that you can use usual Siebel Configuration techniques and create BC, Applets and Views based on EBC without any difficulty
·         VBC: You have to write script for handling each and every event that you want your VBC to support such as Query, Insert and Init etc. So, I would say effort required is greater in VBC
I have tried to list the difference between EBC and VBC in layman’s language. If anybody thinks that they have more relevant and better differences than listed above please feel free to voice your opinion. Your valuable comments are always welcomed.


Virtual Business Component

Virtual Business Component (VBC)

VBC Provides the ability to display and manipulate non-Siebel data from within Siebel applets without storing it in the Siebel database.

A virtual business component (VBC) provides a way to access data that resides in an external data source using a Siebel business component. The VBC does not map to an underlying table in the Siebel Database. You create a new VBC in Siebel Tools and compile it into the siebel.srf file. The VBC calls a Siebel business service to provide a transport mechanism.
You can take two approaches to use VBCs, as
§     Use the XML Gateway business service to pass data between the VBC and one of the Siebel transports, such as the EAI HTTP Transport or the EAI MSMQ Transport.
§     Write your own business service in Siebel eScript or in Siebel VB to implement the methods.

Advantage of using VBC:
·         Display and manipulate non-siebel data from within Siebel applets without storing it in the Siebel database.
·         New class of business component based on data stored outside of the Siebel database
·         Defined and behave like standard business components.


External Business Component

External Business Component (EBC)
External Business Component (EBC) is another way of integrating Siebel with External Applications. It is another tool available at your disposal to achieve integration.
EBC as really easy and robust way to integrate Siebel.
  • You get a DDL of a table located in external database.
  • Import that into Siebel tools and a table is created in Siebel pointing to external table.
  • You create a data source to connect to external database.
Then you do the usual configuration of creating a BC, BO, View and Applets based on that Table.
In EBC we create a pseudo table structure within the Siebel schema using the External Table Schema Import Wizard, create a BC based on this table and then create an ODBC connection to the external table to fetch the data from the other database and display it in the Siebel GUI
When you access that view Siebel in real-time using that data source connects to external table and displays you the data. You even have option to update, insert and delete records from Siebel.
Limitations:
  1. If you import a database view instead of DDL then you cannot update or inserts records.
  2.  Joins to base tables in EBC usually don’t work
  3. External database must be accessible directly to Siebel
  4. Performance can be an issue if database connectivity is not good
Advantages:
  1. You can integrate with external application with minimal of effort.
  2. Siebel BC can base joins on External table and display information
  3. You can import tables from different database such as DB2, MS SQL, Siebel Analytics.