Drilling across to another table

Hi, I'm trying to drill to another taher table.
I have a star model and I need to make drill with double click in a sheet and get data from other table that is out of the star model.
For example, the granularity level from my star model is the daily sales from a store and in other table I have the items that are the sales of the store.
I want to go from the daily sales to the items details.
Someone know how to do that??
Thanks a lot
Javier

Are you using Discoverer Viewer (either 4i or 9iAS)?
If so, it's fairly easy to set up a calculated column using Discoverer Admin, that builds a URL that links through to a detail-level worksheet.
For details on how to do this (the syntax is for Disco 4i, but it's a similar process for Disco 9iAS) take a look at http://otn.oracle.com/products/discoverer/htdocs/hints/htm/plus_drill.htm
hope this helps
Mark Rittman

Similar Messages

  • Creating a Detail Table Based on an Action in Another Table or Matrix to Display in the Same Report (Not a Drill-Through)

    Hello,
    I was wondering if it's possible have a matrix which shows total credits by month and have drill-down groupings to display the invoice numbers for each credit.  Then, once the drill-down is expanded for a particular month, be able to click on the invoice
    number and have another table under the matrix display the details of the invoice. 
    I don't really want a drill-through because that opens a different report in the window, what I want to be able to do is stay on the main report.  I also don't want to drill-into the invoice details from the matrix as that expands the matrix out and
    makes it unruly and ugly.  I've been playing with subreports but not able to get what I want out of it.
    I hope this makes sense - is there a way to do this in SSRS?
    Thanks!!

    Hi AvenueStuart,
    After testing the issue in my environment, we can refer to the steps below to work around the issue:
    Create a new table with the details of the invoice under the matrix.
    Add a parameter named invoice which get available values from the invoice field in the dataset.
    Right-click the [Sum(invoice)] cell to add an action with “Go to report” option, and specify the same report with the parameter below:
    Name: invoice                                                                 
    Value: [invoice]
    Right-click the table to add a filter in the table:
    Expression: [invoice]
    Operator: =
    Value: [@invoice]
    If there are any misunderstanding, please elaborate the issue for further investigation.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • Ain't getting it: insert into table by determing value from another table

    I have a table (PERCENTILE_CHART) with percentiles and test scores for different tests:
    Structure:
    Percentile, Reading_Test, Writing_Test
    Data:
    30,400,520
    31,450,560
    97,630,750
    98,630,780
    99,640,800
    The data is currently in ascending order by Percentile.
    If a person took the Reading test and scored 630 he or she would be in the 98th (not 97th) percentile of the class taking that test.
    I wrote a statement to return the percentile:
    select Percentile
    from ( select ROWNUM, PERCENTILE
    from PERCENTILE_CHART
    where READING_TEST <= '650'
    order by READING_TEST desc)
    where ROWNUM < 2 order by PERCENTILE desc;
    This select works and is able to determine the highest percentile for a score.
    Ok, now I want to process all the records in a STUDENT table which have
    test scores and insert them in a new table along with the percents, normalizing the data in the process.
    Have this:
    STUDENT:
    Student_Name,Student_ID,
    John Smith,121,Reading,98,Writing,90
    Maggie Smithe,122,Reading,95,Writing,96
    And needs to be moved to into SCORES with the percentiles, so I get this:
    SCORES:
    Student_Name,Student_ID,Test_Name,Percentile
    121,Reading,98
    121,Writing,90
    122,Reading,95
    122,Writing,96
    This is were I get confused. How do I insert the data into the SCORES table with the percentile? I think calling a function in package is the way to do it:
    function oua_Test_Percentile_f (
    p_Test_Name in char,
    p_Test_Value in char)
    return char as
    -- Declare variables
    c_Return_PTile char(2);
    begin
    select PERCENTILE into c_Return_PTile
    from (select ROWNUM, PERCENTILE
    from PERCENTILE_CHART
    where p_Test_Name <= '&p_Value'
    order by p_Test_Nmae desc)
    where ROWNUM < 2 order by PERCENTILE desc;
    return c_Return_PTile;
    end;
    But this function doesn't return the percentile even though it is based on my working select mentioned earlier. It returns a blank for all tests.
    And even if it is working how do I then populate the SCORES table?

    You may want to use analytical functions so that you can determine the percentile across all of the different scores:
    SQL> with
    2 PERCENTILE_CHART as
    3 (
    4 select 30 PERCENTILE, 400 READING_TEST, 520 WRITING_TEST from dual union all
    5 select 31 PERCENTILE, 450 READING_TEST, 560 WRITING_TEST from dual union all
    6 select 97 PERCENTILE, 630 READING_TEST, 750 WRITING_TEST from dual union all
    7 select 98 PERCENTILE, 630 READING_TEST, 780 WRITING_TEST from dual union all
    8 select 99 PERCENTILE, 640 READING_TEST, 800 WRITING_TEST from dual
    9 )
    10 select
    11 max(percentile) over (partition by reading_test) HIGHEST_READING,
    12 max(percentile) over (partition by writing_test) HIGHEST_WRITING,
    13 percentile_chart.*
    14 from
    15 percentile_chart
    16 /
    HIGHEST_READING HIGHEST_WRITING PERCENTILE READING_TEST WRITING_TEST
    30 30 30 400 520
    31 31 31 450 560
    98 97 97 630 750
    98 98 98 630 780
    99 99 99 640 800
    SQL>
    I wasn't exactly sure how you wantd to coorelate this to the student records though; the student table had only two column name headings but there were four rows listed as examples and had fewer rows than in the percentile_chart table...
    If you join the student table to the able query it might be what you are looking for.
    You can create another table based on the output of your query by doing:
    create table scores
    as select * from
    (insert your query here)
    /

  • Comparing data size in one table to column widths in another table

    I have data in a table that has a large number of columns, many of them nvarchar of varying widths.  Im trying to take that data and insert it into another table but Im getting the warning message about string or binary data being truncated.  I
    suspect there is a field somewhere that is not large enough for the data.  However, I run across this often enough I would like to come up with a better solution than just eyeballing the data.
    I found this example
    http://www.sqlservercentral.com/Forums/Topic1115499-338-2.aspx
    (credit goes to poster in the linked thread above)
    Select columns
    into #T
    from MyDataSource;
    select *
    from tempdb.sys.columns as TempCols
    full outer join MyDb.sys.columns as RealCols
    on TempCols.name = RealCols.name
    and TempCols.object_id = Object_ID(N'tempdb..#T')
    and RealCols.object_id = Object_ID(N'MyDb.dbo.MyTable)
    where TempCols.name is null -- no match for real target name
    or RealCols.name is null -- no match for temp target name
    or RealCols.system_type_id != TempCols.system_type_id
    or RealCols.max_length < TempCols.max_length ;
    Why a full outer join ?  Why not just a left join, since I really only want to see the matches on my source table?
    When Im running this against the table im interested in, it doesnt seem to find matches between my target table and my temp table 

    As an outer join of any type, that query won't work well.  For example, suppose you do a left join.  So the query begins by getting every row from tempdb.sys.columns (whether it is in #T or not).  Consider a row for a column which is not in
    #T, you look for matches for rows in Mydb.sys.columns ON
    on TempCols.name = RealCols.name
    and TempCols.object_id = Object_ID(N'tempdb..#T')
    and RealCols.object_id = Object_ID(N'MyDb.dbo.MyTable)
    Notice that since the row you are considering is NOT a column in #T, the second part of the ON condition is not true, so the whole ON condition will not be true.  But this is a left join.  So the join keeps this row with NULL's in the columns coming
    from the RealCols table.  Then you do the where condition, but the connections are all OR and one of the conditions is RealCols.name is null (which it is because there was no match), your output will include a row for this column in tempdb even though
    this column is not in #T.  So if you use a left join, the output of this query will include a row for every column in every table in tempdb not named #T.
    Similarly, if you do a right join, you get a column for every row of every table in MyDb which is not a column in dbo.MyTable.
    And a full join (which you are doing above) will return a row for every column in every table in both tempdb and MyDb.
    This query will sort of work if you make it an inner join.  But even then it won't find every possible cause of string or binary truncation.  For example, you are doing RealCols.max_length < TempCols.max_length.  But in sys.columns, if
    you have a varchar(max) column, max_length is stored as -1.  So if a column in RealCols is varchar(50) and the same column in TempCols is varchar(max), that column will not show up as an exception, but of course, you can get truncation if you attempt
    to store a varchar(max) in a varchar(50).
    I would run a query more like
    Create Table FooX(a int, b varchar(20), c int, d varchar(20), e int, f varchar(20), g decimal(4,0));
    Select a, b, 1 as x, 'abc' as y, Cast('' as varchar(max)) As f, Cast(25.1 as decimal(3,1)) as g
    into #T
    from FooX;
    Select 'In Real, not in or different in Temp' As Description, name, column_id, system_type_id, max_length, precision, scale, collation_name From sys.columns Where object_id = Object_ID(N'FooX')
    Except Select 'In Real, not in or different in Temp' As Description, name, column_id, system_type_id, max_length, precision, scale, collation_name From tempdb.sys.columns Where object_id = Object_ID(N'tempdb..#T')
    Union All
    Select 'In Temp, not in or different in Real' As Description, name, column_id, system_type_id, max_length, precision, scale, collation_name From tempdb.sys.columns Where object_id = Object_ID(N'tempdb..#T')
    Except Select 'In Temp, not in or different in Real' As Description, name, column_id, system_type_id, max_length, precision, scale, collation_name From tempdb.sys.columns Where object_id = Object_ID(N'FooX')
    Order By name, Description;
    go
    Drop Table #T
    go
    Drop Table FooX
    The output of that is
    In Real, not in or different in Temp c 3 56 4 10 0 NULL
    In Real, not in or different in Temp d 4 167 20 0 0 SQL_Latin1_General_CP1_CI_AS
    In Real, not in or different in Temp e 5 56 4 10 0 NULL
    In Real, not in or different in Temp f 6 167 20 0 0 SQL_Latin1_General_CP1_CI_AS
    In Temp, not in or different in Real f 5 167 -1 0 0 SQL_Latin1_General_CP1_CI_AS
    In Real, not in or different in Temp g 7 106 5 4 0 NULL
    In Temp, not in or different in Real g 6 106 5 3 1 NULL
    In Temp, not in or different in Real x 3 56 4 10 0 NULL
    In Temp, not in or different in Real y 4 167 3 0 0 SQL_Latin1_General_CP1_CI_AS
    From which you can quickly see that the differences are c, d, and e are in the real table and not the temp table, f is in both tables but the max_length is different, g is in both table, but the precision and scale are different, and x and y are in the temp
    table, but not the real table.
    Tom

  • Drill across (joining facts) using Discoverer

    Hi,
    I've read a few books and article on DW talking about drilling across. It seems a good idea to build multiple star schemas with "conforming" dimensions and then join fact tables (drill across) when needed.
    I have tried this solution, and afer a few tests, got to the conclusion that it is preferable to UNION ALL the related facts using a view or a custom folder. Of course this solution is less flexible because we need to find all the required combinations of facts.
    Any comments?

    OK,
    I have 3 dimensions : D1, D2, D3 and 2 facts : F1, F2.
    Dimensions D1, D2 are related to fact F1.
    Dimensions D1, D2, D2 are related to fact F2.
    I want to query on fact F2 based on values of dimensions D1 and D2, and then join F1 to get corresponding measures.
    When running the query I get the following error:
    Invalid combination of joins using different join keys - query cannot be resolved.
    I use Oracle Discoverer 9.0.2.53.12.
    What would be the best way to work around this restriction?

  • Drilling across in Hyperion Financial Reporting

    Hello,
    We are migrating a few reports from BO to HFR. The BO reports have a functionality to drill across another dimension. Does anyone have an idea about how to implement the drill across functionality in HFR.
    Thanks,

    HFR supports two kinds of "drilling"
    Related content links allow you to link FR with other Hyperion products for more Ad hoc analysis.
    Cell document links allow you to link actual reports or documents with a particular HFR cell.
    Hope this helps,
    Brian Chow

  • Drill Across fields mapping with calculate field

    I create a calculation field in one view, then when config drill across, i set the calculation field to mapping to a Parameter of target view
    Save report
    Then, i open the report in view mode, click the view which config drill across, it get JavaScript error in DrillAcrossModifierManager.js line 272, Object required

    Hi,
    I'm using BAM 11.1.1.4, and I have a report wich calls another report through DrillAcross.
    Both reports have no calculated fields and I am receiving the same error message:
    Mensagem: object required
    Linha: 273
    Caractere: 5
    Código: 0
    URI: http://server:9001/OracleBAM/13846/reportserver/scripts/drilling/drillacross/DrillAcrossModifierManager.js
    Any idea about the cause of this error?
    Thanks.
    Luciano Gomes

  • How to drill across sections in Dashboards

    I hav got this through this site.
    (if i click on a department name in department section in dashboard, the corresponding employees details should be shown in the adjacent column/section without rendering to a new page)
    http://oraclebizint.wordpress.com/2007/12/26/oracle-bi-ee-101332-drills-across-sections-in-a-dashboard/
    i hav got the total thing done.
    i'm doing this for an department table on department name.
    for which when i drill on department name, corresponding employees list should be shown.
    my problem is
    1. if the dept name contains a spaces like 'Human Resources', then the URL is taking only Human and its ignoring the rest.(if it doesn't contain spaces, its showing correctly.!)
    the URL looks like this
    http://l3f0372:9704/analytics/saw.dll?GO&path=/shared/New/3.Emp&Action=Navigate&P0=1&P1=eq&P2=Departments.%22Department%20Name%22&P3=Human
    2. the drill down can be implemented on varchar datatypes only.
    but not on number types like dept_id. Is there any way to that?
    Edited by: user10564344 on Nov 23, 2008 10:48 PM

    Thank you Naresh for responding to my problem..
    But, if we use Navigate, the drilling will be to a new page.
    but the client requirement is like this.
    intially there are two sections, one shows dept details and other shows emp details(of all depts)
    when we click on a particular dept name, the emp details of that department only should be shown and in the same section only(i.e., without navigating to a diff page).
    the procedure i'd got from the website mentioned in the earlier post worked fine with the department name containing no spaces.
    but when there is a space in the department name(ex.Human Resources),, the URL is taking till Human only(due to anchor tag in column properties on dept name).here the anchor tag is used to call emp details section and pass the respective dept name called.But when a space occurs in URL, that anchor tag is taking till a space.
    (ex.: http://l3f0372:9704/analytics/saw.dll?GO&path=/shared/New/3.Emp&Action=Navigate&P0=1&P1=eq&P2=Departments.%22Department%20Name%22&P3=Human )
    so, how to pass a value with space using anchor tag dynamically..?
    Thanks in advance..:)

  • Drilling Across in Discoverer

    Discoverer 10.1.2.X
    We have datamarts which have uniformly conforming dimensions and the facts and dimensions are laid out in a star schema.
    Point of Sale(POS) is a separate fact table and Shipments is a separate fact table too. Stores belong to the customer dimension and Dates belong to the calendar dimension. Both POS and Shipments share the stores and calendar dimension. There is appropriate foreign key relation ship between the fact and dimension tables in the database too.
    POS
    \|/
    |
    Stores
    |
    /|\
    Shipments
    POS
    \|/
    |
    Calendar
    |
    /|\
    Shipments
    The problem:
    Now I would like to Drill across in Discoverer i.e. for a given store and date range I would like to get two measures from different facts -> POS and Shipments by day. When I execute the report from Discoverer, the query that is generated looks like the one pasted below and I don't think this is a proper query because cus_dimn_customer and day_dimn_cal_hdl do not have any relationship. The query also runs very long-
    SELECT fx100 AS e100048, fx101 AS e100135, SUM (fx107) AS e100620_sum,
    SUM (fx102) AS e100363_sum
    FROM (SELECT SUM (o100611.quantity) AS fx107, o100611.cus_key AS fx108,
    o100611.day_key AS fx109
    FROM ebiprod.bil_fact_billing_v o100611
    GROUP BY o100611.day_key, o100611.cus_key),
    (SELECT SUM (o100357.sale_qty) AS fx102, o100357.cus_key AS fx104,
    o100357.day_key AS fx106
    FROM ebiprod.pos_fact_retail_sales_v o100357
    GROUP BY o100357.day_key, o100357.cus_key),
    (SELECT o100019.chain_code AS fx100, o100107.cal_date AS fx101,
    o100019.cus_key AS fx103, o100107.day_key AS fx105
    FROM ebiprod.cus_dimn_customer_v o100019,
    ebiprod.day_dimn_cal_hdl_v o100107
    WHERE (o100107.cal_date =
    TO_DATE ('20050521000000', 'YYYYMMDDHH24MISS')
    AND (o100019.chain_code = 278))
    WHERE ((fx103 = fx108(+) AND fx105 = fx109(+))
    AND (fx103 = fx104(+) AND fx105 = fx106(+)))
    GROUP BY fx101, fx100
    Questions:
    1) Is this an example of Fantrap ? i.e. Discoverer detects a fantrap and creates the query accordingly to resolve the Fantrap.
    2) I don't think the outer join is needed and I do not understand why the conditions created in the report cannot be applied to every nested SQL. How do I change the way Discoverer generates queries ?
    3) If any one has experience in enabling Drilling across in Discoverer and how it is implemented ?
    Any help would be appreciated
    Thanks
    Manav

    The joins in the SQL are controlled by the joins made in the admin edition. A check box determines if it is outer joni, one to one, one to many. The outer join would not be present unless it was present in your Business area. Click the options tab in the join in Admin.
    As for a fan trap, I have always thought of it as a cyclical join. Discoverer can't determine which path to take to get the correct information. If you have the option turned on it will not allow you to build the workbook if a join such as this is determined.
    The query you attached appears to be a crosstab in-line view. Try the workbook in a page detail and see if the query time improves.
    One other method I have used is a hierarchy in a DW with multipath branches. This allows for drilling from summary into detail down a predetermined path. It has worked well for me but does take some effort in design to make sure the drill down is ALWAYS true, no exceptions.
    HTH.

  • UPDATING A TABLE WITH SAME INFO FROM ANOTHER TABLE ON THE SAME DB

    0down votefavorite
    I am trying to update a table with info from another table on the same db with same table name. I just want the info to be the same , no primary key or constraint involve just a straight replacement of records and I keep getting errors WITH THE TABLE not
    being recignize. below is my query:
    UPDATE
    VNDFIL
    SET EOBTYP
    =  VNDFIL.EOBTYP, 
    EDI_X12_835_VERSION =  VNDFIL.EDI_X12_835_VERSION
    FROM
    AGERECOVERY
    WHERE
    VNDFIL.EOBTYP
    = VNDFIL.EOBTYP
    AND
    VNDFIL
    .EDI_X12_835_VERSION
    = VNDFIL.EDI_X12_835_VERSION

    Hi rotary,
    If those two same named tables are in the same database then they have to be in different schemas. If you mean they are in the same server instance, then they may be in different databases, besides the "table not being recognized" error,
    anyway you should use the fully qualified table names, that is database.Schema.Table(If across instances, ServerName should be prefixed) to avoid the table unrecognized error.
    Using Identifiers As Object Names
    With the fully qualified names, your update statement can be like below.
    UPDATE
    db1.schema1.VNDFIL
    SET EOBTYP = srcTbl.EOBTYP, EDI_X12_835_VERSION = srcTbl.EDI_X12_835_VERSION
    FROM
    db1.schema2.VNDFIL srcTbl
    WHERE
    db1.schema1.VNDFIL.EOBTYP = srcTbl.VNDFIL.EOBTYP AND
    db1.schema1.VNDFIL.EDI_X12_835_VERSION = srcTbl.VNDFIL.EDI_X12_835_VERSION
    If you have any question, feel free to let me know.
    Eric Zhang
    TechNet Community Support

  • UPDATE SQL string substitution from another table

    Hi - I've come across a tricky situation where I would want to update a column in all the relevant rows of a table with values obtained from another table WITHIN the same column update using string concatenation. im not getting any clean way of doing this.
    The goal is to achieve something like this:
    UPDATE table1 set col1 =
    'LANG_ID=(%s),'||
    '_CHALLENGE_RESPONSE_=(%s),'||
    'CRDN_NAM=(%s),'||
    'CLNT_MODE=(%s),'||
    'PTY_ID=(%s),'||
    'CRDN_VAL=(%s),' ||
    'USER_TZ_COD=(%s),' ||
    'GTS_USER_ID=(%s),'||
    'SP_ID=(%s),' ||
    'SP_ALIAS=(%s),' ||
    'ORIG_CLNT_ID=(%s)'
    where table1.col1 is null
    and to substitute the (%s) with data from another table2*. An example is:
    update table1 set col1=
    'LANG_ID=(select LANG_ID from table2* where USER_ID = (select USER_ID from table1))' ||
    '_CHALLENGE_RESPONSE_=((select CHALLENGERESPONSE_ from table2* where USER_id = (select USER_ID from table1)),' ||
    etc for the rest of the values

    I tried this -although the database shows that the affected rows are updated! but querying the table doesn't show the values in the column!
    select col1 from table1 where col1 is null
    shows back the original content (DESPITE it showing me xxx rows updated!)
    UPDATE table1 t1
    SET col1 = (SELECT 'LANG_ID=('||lang_id||')_CHALLENGE_RESPONSE_=('||
    CHALLENGERESPONSE_|| ...*
    FROM table2 t2
    WHERE t1.user_id = t2.user_id)
    WHERE t1.col1 is null;

  • What is the difference between drill across and drill down?

    Hi Friends,
    Please give a clarification about Drill across,Drill down,Drill through With Examples?
    Thanks in Advance
    Rani

    Hi,
    1 - Drill Down: When we are at a higher level of aggregation and want to go to a lower level within the same size. Ex Time Dimension: year to quarter to month ...
    2 - Drill UP: When we are in a lower level of aggregation and want to go further in the same size. Ex Time Dimension: trimenstre for months to years.
    3-Drill Across: When we are in a lower level of aggregation and want to go to a minor or vice versa, in different environments. Ex Dimenão Time: year quarter in a Data Mart for Essbase Dimension in Time: months in a DW in a relational database.
    4 - Drill Through: When we are at a level of aggregation within any one dimension of this level and go to another in another dimension. Ex Product dimension: product name to Dimension Client: client name, or want to know what products or those that customers bought.
    For more Kindly refer:
    http://gerardnico.com/wiki/dat/obiee/drill
    http://gerardnico.com/wiki/analytic/drill_down_up
    http://gerardnico.com/wiki/analytic/drill_across
    http://gerardnico.com/wiki/analytic/olap_operation
    http://obieetips.blogspot.com/2009/05/obiee-drill-throughdrill-down.html
    Thanks
    Deva
    Edited by: Devarasu on Dec 12, 2011 4:28 PM

  • How to dynamically display the data from a table base on row selection of another table in ADF

    Hi ,
    I have a requirement in ADF. I need to change the data of a table  based on row selection of another Table . Both the table have a Parent Child relationship between them. They have a common attribute say department_id.
                                                                                         For this I created bind variable in view object of employees table and wrote a where clause in the sql query using that bind variable. Then I created method for selection listener of department Table in java bean.
    My method is following
        public void onrowselection(SelectionEvent selectionEvent) {
            RichTable richTable = (RichTable)selectionEvent.getSource();
                            CollectionModel tableModel = (CollectionModel)richTable.getValue();
                            JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
                            Object selectedRowData = richTable.getSelectedRowData();
                            JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
                    oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
                    Number pallet = newVal.bigDecimalValue();
                    System.out.println("Selected values " + pallet);
            BindingContext bindingctx = BindingContext.getCurrent();
                          BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
                          DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
                  DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
                          ViewObject vo =dciter.getViewObject();
                          vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
                          vo.executeQuery();
    It is printing the selected value of department id from department table in the log. But it is not able to pass the value to employees view. It is showing the following error in the log
    "Definition DepartmentId of type Variable is not found in EmployeesView1."
    I will be very thankful if someone helps me to solve this errror or is there any other way to achieve the same requirement.
    Thanks
    Nilesh

    Note quite sure why you simply wont create a viewlink for the viewobject the tables are based on..
    The viewlink attribute will be based on the departmentId and it's a simple master detail relationship which automatically uses ppr.
    However, if both tables are on the same page; using your hack about;
    On the underlying viewobject, define a viewcriteria e.g. "listById" and set your bind variable here.
    I would bind table two to a RichTable component:
    RichTable t2;
    public void onrowselection(SelectionEvent selectionEvent) {
            RichTable richTable = (RichTable)selectionEvent.getSource();
                            CollectionModel tableModel = (CollectionModel)richTable.getValue();
                            JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
                            Object selectedRowData = richTable.getSelectedRowData();
                            JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
                    oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
                    Number pallet = newVal.bigDecimalValue();
                    System.out.println("Selected values " + pallet);
                   refreshTable2(pallet);
            BindingContext bindingctx = BindingContext.getCurrent();
                          BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
                          DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
                  DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
                          ViewObject vo =dciter.getViewObject();
                          vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
                          vo.executeQuery();
    private void refreshTable2(Number pallet){
    RichTable x=getT2();
    CollectionModel cm=(CollectionModel)x.getValue();
    JUCtrlHierBinding jcb=(JUCtrlHierBinding)cm.getWrappedData();
    BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
    DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
    DCIteratorBinding dciter = bindingsImpl.findIteratorBinding(jcb.getName()+"Iterator");
    ViewObject vo =dciter.getViewObject();
    ViewCriteriaManager vcm=vo.getViewCriteriaManager();
    ViewCriteria vc=vcm.getViewCriteria("listById");
    vo.applyViewCriteria(vc);
    vo.setNamedWhereClauseParam("DepartmentId",pallet);
    vo.executeQuery();
    AdfFacesContext.getCurrentInstance().addPartialTarget(getT2());

  • How to populate rows in the detail table of a form from another table.

    please can someone help me here:
    i have a master/detail page. the master data is created and then i would like to do this: when one goes to the detail page (when first created), i would like somehow to populate all the rows in the detail table from rows retrieved in another table (with conditions).
    i am new to apex so if this is a stupid question i apologise in advance!

    Hi
    Firstly, there are no stupid questions, we all start somewhere!
    However, I could do with some more detail (or even better an example on apex.oracle.com). Please can you post exactly what you have so far and what you want to achieve with simple details of the tables involved.
    It sound like you may need to create a custom process to populate the details. You say 'with conditions'... what conditions?
    Cheers
    Ben
    http://www.munkyben.wordpress.com
    Don't forget to mark replies helpful or correct ;)

  • Inserting data from one table into another table using PL/SQL

    HI,
    I am trying to insert values from one table into another using PL procedure, the values I want to retrieve from the table riverside1 are charac_id and charac_type and insert these values into another table called riverside2 , the stored procedure zorgs_gorfs(x,y) accepts two parameters which are 2 charac_id's of d characters in riverside1 then using insert statements inserts these characters from riverside1 into riverside2.
    CREATE OR REPLACE PROCEDURE zorgs_gorfs(x IN NUMBER, y IN NUMBER) AS
         BEGIN
              INSERT INTO riverside2
                   (charac_id)
              VALUES
                   (x);
    INSERT INTO riverside2
                   (charac_id)
              VALUES
                   (y);
          END zorgs_gorfs;
    /This works but the problem im having is that when I also try to insert the charac_type as well as the charac_id it doesnt work below is the code:
    CREATE OR REPLACE PROCEDURE zorgs_gorfs(x IN NUMBER, y IN NUMBER) AS
         BEGIN
              INSERT INTO riverside2
                   (charac_id,charac_tye)
              VALUES
                   (Select
                        charac_id,
                        charc_type
                   FROM
                        riverside1
                   WHERE
                        charac_id = x);
          END zorgs_gorfs;
    /can someone kindly sort me out

    modify this sql
    INSERT INTO riverside2
                   (charac_id,charac_tye)
              VALUES
                   (Select
                        charac_id,
                        charc_type
                   FROM
                        riverside1
                   WHERE
                        charac_id = x);as
    INSERT INTO riverside2
                   (charac_id,charac_tye)
              VALUES
                   (Select
                        charac_id,
                        charc_type
                   FROM
                        riverside1
                   WHERE
                        charac_id in ( x,y));But my suggestion would be consider revising your approach. It does not look that good.
    Thanks,
    karthick.

Maybe you are looking for