Using Database Views in XI

Hi Guys,
We have come across requirement where we have to use Views rather then Database Tables...
Kindly share your knowledge and views..:
1. Is there any difference in handling the views as compred to Tables....?
2. Like Tables do we have to create the similar type of source and target message types for views also...?
3. From XI point ...where we can expect the difference views/ tables..in terms of developing design and configuration objects..?
Regards,

Hi
Views are windows to the tables.When you create views in the DB, technically there is not much difference between them.
Therefore just like tables we have to create similar type of source and target messages for views also.
Moreover while developing design and configuration objects also no difference will be observed.
Thanks

Similar Messages

  • Using database views in ADF mobile client application

    Hi,
    I am using Jdeveloper 11.1.1.4 and WLS 10.3.4.
    I have developed a POC in ADF mobile client application both with and without synchronization. However, both work with entity objects based on tables.
    I need to use database views instead of tables. When I try to include entity object (based on views) in the view object, it shows an error saying "Only the entity objects based on tables can be selected"
    Please guide me if there is a work around for this.
    Also, please let me know if there is way to develop an ADF mobile client application skipping the use of entity objects at all and using view objects directly to specify the database query and fetch data from the database.
    Thanks in advance.
    Ansh
    Edited by: ansh on Mar 28, 2011 5:40 AM

    Hi, Ansh:
    Currently, out of box, ADF Mobile Client does not support synchronization against Database Views. This is because Mobile Server imposes some schema restrictions to ensure synchronization with multi-table views would work correctly. This schema restriction requires, for example, the view must have a primary parent table with key defined, and also all base table must be included in the data publication. These dependencies requires manual resolution and advanced planning, and is managed outside of the ADF Mobile Client/JDeveloper project.
    To continue development, you would need to create server Entity Objects directly against the base tables. You can then create the mobile ADF Business Component (EOs, VOs, etc). You can then create View Objects in your ADF Mobile Client application based on the database views, in order to retrieve the data you need exactly. In other words, instead of basing EO on the database view, create View Objects in the mobile applicaiton to mimic what you had in the View Object.
    Is there any other reason why you would need to access data via database views, instead of directly against base tables?
    Thanks,
    Joe Huang

  • How to use Database views in XI

    Hi Folks,
    Any idea about how to use Database views for sending and receiving messages in XI ?
    Regards,

    Farooq,
    My doubt is do i have work in the same fashion as if i am working on a Database Table...?
    For Ex :
    Creating Source and Target Data structure for JDBC adapter in the same format....etc
    Regards.

  • Is the best practice to use database views or view objects?

    Hi everyone,
    If the option is available, is it preferable consolidate as much data as possible into a database view instead of doing this through view view objects? It seems the answer would be yes, but I would like to hear the pros and cons related to performance, etc.
    While I do not mind a detailed discussion, practical "rule-of-thumb" advice is what I am after; I am a newbie that needs general guidelines - not theories.
    James

    Performance is the main driver behind the question because I am wondering if it is faster to send a single large record set across a network or several small ones and "assemble" them at the client level.
    Probably is better to send one large record, but you will need to take in account time required to create this one large record in db(maybe oracle object types, or arrays of oracle object types).
    Check this for some VO performance advices: Advanced View Object Techniques  (especially property: "In Batches Of" which defines number of roundtrips between app server and db)
    As far as creating an updatable database view, I know there are minor tricks that are required to make that happen from a strictly SQL standpoint. But, I am curious the best way to go in JDeveloper.
    Some solutions:
    Using Updatable Views with ADF | Real World ADF
    Andrejus Baranovskis's Blog: How to Update Data from DB View using ADF BC DoDML Method
    Dario

  • TABLE FUNCTION - Using database view - send parameters to the function.

    Hi everybody:
    1.- I have a function returning a TABLE OF, and that function recieve 2 parameters of type NUMBER.
    2.- I'm able to call this function as a table function like this:
    SELECT * FROM TABLE(my_function(3,4))
    3.- I want to create a database View, To use this query in diferent places of my app.
    CREATE OR REPLACE VIEW NAME_OF_MY_VIEW AS SELECT * FROM TABLE(my_function(:_idOne,:idTwo))
    4.- My problem is, that I want to send the parameters dinamically to the function, and use those parameters to populate the rows, using a database view, the previous code does not compile... and I don't know another way to do this.
    Please help.
    thnks in advance.
    Alex.

    Yes you can:
    SQL> CREATE PACKAGE pkg
    AS
       a_global   VARCHAR2 (30);
       FUNCTION f (a VARCHAR2)
          RETURN varchar_tab;
       FUNCTION ret_global
          RETURN VARCHAR2;
       FUNCTION set_ret_global (ret_global VARCHAR2)
          RETURN INTEGER;
    END;
    Package created.
    SQL> CREATE OR REPLACE PACKAGE BODY pkg
    AS
       FUNCTION f (a VARCHAR2)
          RETURN varchar_tab
       AS
          l_varchar_tab   varchar_tab := varchar_tab ();
       BEGIN
          FOR i IN 1 .. 10
          LOOP
             l_varchar_tab.EXTEND;
             l_varchar_tab (i) := a;
          END LOOP;
          RETURN l_varchar_tab;
       END f;
       FUNCTION ret_global
          RETURN VARCHAR2
       AS
       BEGIN
          RETURN a_global;
       END ret_global;
       FUNCTION set_ret_global (ret_global VARCHAR2)
          RETURN INTEGER
       AS
       BEGIN
          a_global := ret_global;
          RETURN 1;
       END set_ret_global;
    END pkg;
    Package body created.
    SQL> CREATE OR REPLACE VIEW v
    AS
       SELECT *
         FROM TABLE (pkg.f (pkg.ret_global))
    View created.
    SQL> SELECT *
      FROM v
    WHERE 1 = pkg.set_ret_global (5)
    COLUMN_VALUE                                                                   
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    5                                                                              
    10 rows selected.
    SQL> SELECT *
      FROM v
    WHERE 1 = pkg.set_ret_global (4)
    COLUMN_VALUE                                                                   
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    4                                                                              
    10 rows selected.

  • Using Database Views in ADF

    Hi,
    There are Two Views in My Database and I need to join these Views as one new VO in my ADF app. (and then I need to join this VO with another entity in my app)
    I tried to make Entity object of those Views but it seems that you can not make an Entity out of a Database View (and it reasonable !)
    but how can I accomplish such scenarios ?
    JDeveloper : 11.1.1.6
    Thank you
    Shahab

    this is to poster.
    am not hijacking this thread., i had a question with frank.
    However, for CRUD operations this could soon become hairy.
    go by creating two entities. Dependent on what needs to be updated in the database, you then override the doDML method of the EntityImpl classes with calls to >e.g. stored proceduresthis is to frank.
    i need a confirmation for above statement.
    if a dbview involves more than 1 dbtable means say as example: 3 table means
    if i take a dbview as a single entity object means, how could i perform CRUD operation?it's not possible.. am right?.
    so only you are saying take 2 eo make it a view (access through eo object),do crud operation seperate beyind business need.
    so only you are saying become hairy

  • Using Database views in source qualifier

    Hi,
    I have a view in my database which when ran from SQL developer returns me around 1202527 records.
    But using the same view, when I write source qualifier in the Informatica Mapping (straight forward mapping without any filter etc), the number of records that get loaded into the target table is 1206771.
    There is clearly an increase in the number of records which are there in the view and which are loaded.
    Has anyone faced the same issue?
    If I can get any pointer to resolve this issue, I will be grateful.
    Thanks in advance.
    Anamika

    1. were you able to identify the extra records?
    2. were you able to confirm these records exists in original table (not in view)
    3. did your view includes any language, etc filters? usually when you execute in sql developer it returns for current language if you language filter in our view, so analyse view definition

  • Database View do not refresh in ADF application

    Greetings,
    im facing a weird problem in my application (JDeveloper 11.1.2.4.0 - ADF). All this time i was working directly with tables (VO), but now i also started using database views.
    Everything works fine, when i add a new row in a table that my Database Views is associated with, it refresh properly.
    BUT if i delete rows manually from my database, the View do not refresh in my application, not by refreshing the page,
    redeploying application, even executing the view object query inside the view object. The only way for the DB View to be
    refresh inside the JDeveloper and on deployment time is by restart JDeveloper. I try adding an action on my OV to re-execute them when
    i do something specifically, hopefully the will reset the cache and retrieve the DB view again, but with no luck..
    Correction: now it doesnt even refresh on restart jdeveloper.
    Just for the clarification, im talking about Database Views, and not just Object Views. I create a Object View inside the application to retrieve the data
    from the Database View results.
    Can you help me on this please?

    Yes the queries in SQLDeveloper was showing me correct results.
    But i feel disappointed.. When i went to close SQLDeveloper to try something, it pop me a message to commit/rollback changes.
    After i commit them, my app show correct results too.

  • Snowflake dimension: named query vs. database view

    A test question features a Product table with a Product Size code; Product Size description is taken from ProductSize table. As far as I can tell, the question asks me to choose between (a) setting up a database view joining Product and ProductSize, and
    (b) doing the join in a data-source-view named query. I don't see a clear winner. (My thinking is as follows.  Yes, he view would speed up the processing, even if not materialized. On the other hand, with a small dataset, the performance gain would be
    minor in absolute terms. Do I want to have an extra database object in the picture?) Yet the question's author does. Can anyone advise please?  

    Hi Demyan,
    According to your description, you want to know which is better, using named query in datasource view or using database view, right?
    Based on my research, there is no performance differences between using named query in datasource view and using database view because they both result in SQL query being sent to the source system. Here is a blog which discuss this issue.
    Consistency: If you already have logic in database views, I would continue to use them. As long as you know that you go to one spot to view/change the logic. Putting the logic in 2 different spots could lead to confusion.
    Security Permissions: often you may not have permission to alter the source databases, in this case you have no choice but to setup named queries in the dsv.
    Reference
    http://geekswithblogs.net/darrengosbell/archive/2006/09/05/90278.aspx
    http://bennyaustin.wordpress.com/2013/07/16/dbview/
    Regards,
    Charlie Liao
    TechNet Community Support

  • 'GROUP BY' clause in Database views

    Hi,
    I use SE11 to create database view from a table. I wonder if it is possible to specify a 'GROUP BY' clause? Basically I need a database view that looks like this:-
    SELECT FISCAL_PERIOD, SUM(QUANTITY)
    FROM TABLE A
    GROUP BY FISCAL_PERIOD
    Please help!
    Thanks,
    CH

    Yes. I want to create a view that has values that are already aggregated by a field.
    Example view that i created directly in SQL database:
    CREATE VIEW ABC (F1, SUM_QTY)
    AS SELECT F1, SUM(QTY)
    FROM TABLE1
    GROUP BY F1
    My question is how to achieve the same result using Database view in SAP through transaction SE11 or any others?
    Thanks,
    CH

  • Regading Database View

    Hi,
    I have joined two tables KNA1 and KNVV using Database View. The Problem is that the Records are not getting filtered On the basis of fields from KNVV (VKORG, VTWEG,VKBUR etc) , however records are getting filtered on the basis of fields from KNA1.  What might be the problem???Please Help...

    Hai,
    In the join conditions reverse the conditions like:
    Instead of table1-field1 eq table2-field1
    Use table2-field1 eq table1-field1.
    Make sure that client (Key fields )are also be there in the join condition.
    Hope this helps you.
    Regds,
    Rama .Pammi

  • Include or create a view in the database and use this view?

    Well, I need to get related data of the main table from another related tables, so one way to do that is to use the Include method in Entity Framework to get this related data.
    However, I am thinking in another option, create a view in the database and use this view in entity framework. In this way, I avoid the needed of the include, because I think that is expensive in resources. But I am no very sure about that.
    I would like to know if the use of views on entity framework is a good idea to improve the performace or is better to use the include.
    For example, if I use the include I have the advantage that I get only one the main record and all the related data I have in the navigation properties, so the info is more shorted.
    Which is the advanteges and disadvantages of both methods to get related data in entity framework?
    Thank so much.

    Hello ComptonAlvaro,
    >>I would like to know if the use of views on entity framework is a good idea to improve the performace or is better to use the include.
    If your view would use a Join syntax to query master-child relationship tables, it actually is similar with the Include() method which actually results a duplicate records from master table, you could check this
    link for detail description.
    >>Which is the advanteges and disadvantages of both methods to get related data in entity framework?
    One visible difference is that records from Views are not editable by default(if you want edit them, you could refer to this
    blog).
    In your case, my suggestion that you could use the lazying load which will load the matter table once and disable the trace if you only need to display data.
    Regards.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Bad performance when using  complex database view with Toplink

    Hi
    Problem description
    1. I have a complex query that collects the data from many DB tables. For this reason I create a database view based on this select. Using EJB 3.0 with Toplink I
    mapped this view to a java object the same way I map database tables. The method I use to get the results is:
    snippet code...
    public List<VwKartela> VwKartela(Integer pperid) {
    List<VwKartela> results = null;
    Session session = getSessionFactory().acquireSession();
    ExpressionBuilder bankfile = new ExpressionBuilder();
    Expression exp1 = bankfile.get("perid").equal(pperid);
    ReadAllQuery query = new ReadAllQuery();
    query.setReferenceClass(VwKartela.class);
    query.setSelectionCriteria(exp1);
    results =(List<VwKartela>)session.executeQuery(query);
    When running the select on the view prom SQL Plus I haven’t any performance problem.
    2.Question: How can I improve the performance? I referenced to Toplink docs but I didn't improve the it.
    Have anyone any experience is such cases?
    Thank you
    Thanos

    Hi
    After my last tests I conclude at the followings:
    The query returns 1-30 records
    Test 1: Using Form Builder
    -     Execution time 7-8 seconds
    Test 2: Using Jdeveloper/Toplink/EJB 3.0/ADF and Oracle AS 10.1.3.0
    -     Execution time 25-27 seconds
    Test 3: Using JDBC/ADF and Oracle AS 10.1.3.0
    - Execution time 17-18 seconds
    When I use:
    session.setLogLevel(SessionLog.FINE) and
    session.setProfiler(new PerformanceProfiler())
    I don’t see any improvement in the execution time of the query.
    Thank you
    Thanos

  • Use of view in database.

    What is the use of view? What is the difference between table and view?

    Your best bet is to review the [concepts guide|http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/toc.htm] for the answer:
    ViewsViews are customized presentations of data in one or more tables or other views. A view can also be considered a stored query. Views do not actually contain data. Rather, they derive their data from the tables on which they are based, referred to as the base tables of the views.
    Like tables, views can be queried, updated, inserted into, and deleted from, with some restrictions. All operations performed on a view actually affect the base tables of the view.
    Views provide an additional level of table security by restricting access to a predetermined set of rows and columns of a table. They also hide data complexity and store complex queries.>
    TablesTables are the basic unit of data storage in an Oracle database. Database tables hold all user-accessible data. Each table has columns and rows. A table that has an employee database, for example, can have a column called employee number, and each row in that column is an employee's number.

  • How to find Logical database name using selection view

    Hi Experts,
                      How can we find logical database name using selection view in se36.
    Regards,
    Mani

    Hi,
    If you want to see the logincal database used in the report ( tcode se38) in the intial screen select the attribute tab
    and click display you will bw able to see the logical datbase ysed for the report.
    Thanks.

Maybe you are looking for

  • Converting Word files to pdf- Output is black and white

    Hello - I recently updated the Adobe 9.0 Reader on my computer and now when I try to convert a Word file with pictures and/or difffent colors of fonts to a pdf the output is ALL black and white.  I've seen some people here on the forum saying their p

  • ESS child iviews are not coming in PCD.

    Dear All. We are working on ESS Implementation and we installed Netviewer 7.01 sp6. Our ECC version is 5.0. We deployed SAP_ESS  100 SP21                        SAP_MSS  100 SP21                        SAPPCUI_GP  100 SP21                        BP_E

  • Pixcelated in full screen problem

    My edited pictures look great in my organisor but when I look at them in full veiw they are very grainy and pixelated. Can anyone help?

  • Freight amt to be included in stock for excisable item

    Hi Experts, What settings i have to do for including freight amount in stock for both excisable & Non Excisable Item.

  • How to read  and write XML in java

    I have a code that reads a large XML file, splits it into smaller files, filters and then writes it into a new XML file. My problem is that I had coded the input file name into the code, so that only the specified file can be read. How can I rewrite