Rollup and Cube
can anyone xplain rollup and cube function in Groupby clause
Google "rollup and cube in oracle" or
http://www.psoug.org/reference/rollup.html
HTH
Girish Sharma
Similar Messages
-
ROLLUP AND CUBE OPERATORS IN ORACLE 8I
제품 : PL/SQL
작성날짜 : 2000-06-29
========================================
ROLLUP AND CUBE OPERATORS IN ORACLE 8I
========================================
PURPOSE
ROLLUP 과 CUBE Operator에 대해 설명하고자 한다.
Explanation
ROLLUP operator는 SELECT문의 GROUP BY절에 사용된다.
SELECT절에 ROLLUP 을 사용함으로써 'regular rows'(보통의 select된 data)와
'super-aggregate rows'(총계)을 구할 수 있다. 기존에는 select ... union select
를 이용해 구사해야 했었던 것이다. 'super-aggregate rows'는 'sub-total'
(중간 Total, 즉 소계)을 포함한다.
CUBE operator는 Cross-tab에 대한 Summary를 추출하는데 사용된다. 모든 가능한
dimension에 대한 total을 나타낸다. 즉 ROLLUP에 의해 나타내어지는 item total값과
column total값을 나타낸다.
NULL값은 모든 값에 대한 super-aggregate 을 나타낸다. GROUPING() function은
모든 값에 대한 set을 나타내는 null값과 column의 null값과 구별하는데 쓰여진다.
GROUPING() function은 GROUP BY절에서 반드시 표현되어야 한다. GROUPING()은 모든
값의 set을 표현합에 있어서 null이면 1을 아니면 0을 return한다.
ROLLUP과 CUBE는 CREATE MATERIALIZED VIEW에서 사용되어 질수 있다.
Example
아래와 같이 테스트에 쓰여질 table과 data을 만든다.
create table test_roll
(YEAR NUMBER(4),
REGION CHAR(7),
DEPT CHAR(2),
PROFIT NUMBER );
insert into test_roll values (1995 ,'West' , 'A1' , 100);
insert into test_roll values (1995 ,'West' , 'A2' , 100);
insert into test_roll values (1996 ,'West' , 'A1' , 100);
insert into test_roll values (1996 ,'West' , 'A2' , 100);
insert into test_roll values (1995 ,'Central' ,'A1' , 100);
insert into test_roll values (1995 ,'East' , 'A1' , 100);
insert into test_roll values (1995 ,'East' , 'A2' , 100);
SQL> select * from test_roll;
YEAR REGION DE PROFIT
1995 West A1 100
1995 West A2 100
1996 West A1 100
1996 West A2 100
1995 Central A1 100
1995 East A1 100
1995 East A2 100
7 rows selected.
예제 1: ROLLUP
SQL> select year, region, sum(profit), count(*)
from test_roll
group by rollup(year, region);
YEAR REGION SUM(PROFIT) COUNT(*)
1995 Central 100 1
1995 East 200 2
1995 West 200 2
1995 500 5
1996 West 200 2
1996 200 2
700 7
7 rows selected.
위의 내용을 tabular로 나타내어 보면 쉽게 알 수 있다.
Year Central(A1+A2) East(A1+A2) West(A1+A2)
1995 (100+NULL) (100+100) (100+100) 500
1996 (NULL+NULL) (NULL+NULL) (100+100) 200
700
예제 2: ROLLUP and GROUPING()
SQL> select year, region, sum(profit),
grouping(year) "Y", grouping(region) "R"
from test_roll
group by rollup (year, region);
YEAR REGION SUM(PROFIT) Y R
1995 Central 100 0 0
1995 East 200 0 0
1995 West 200 0 0
1995 500 0 1
1996 West 200 0 0
1996 200 0 1
700 1 1
7 rows selected.
참고) null값이 모든 값의 set에 대한 표현으로 나타내어지면 GROUPING function은
super-aggregate row에 대해 1을 return한다.
예제 3: CUBE
SQL> select year, region, sum(profit), count(*)
from test_roll
group by cube(year, region);
YEAR REGION SUM(PROFIT) COUNT(*)
1995 Central 100 1
1995 East 200 2
1995 West 200 2
1995 500 5
1996 West 200 2
1996 200 2
Central 100 1
East 200 2
West 400 4
700 7
위의 내용을 tabular로 나타내어 보면 쉽게 알 수 있다.
Year Central(A1+A2) East(A1+A2) West(A1+A2)
1995 (100+NULL) (100+100) (100+100) 500
1996 (NULL+NULL) (NULL+NULL) (100+100) 200
100 200 400 700
예제 4: CUBE and GROUPING()
SQL> select year, region, sum(profit),
grouping(year) "Y", grouping(region) "R"
from test_roll
group by cube (year, region);
YEAR REGION SUM(PROFIT) Y R
1995 Central 100 0 0
1995 East 200 0 0
1995 West 200 0 0
1995 500 0 1
1996 West 200 0 0
1996 200 0 1
Central 100 1 0
East 200 1 0
West 400 1 0
700 1 1
10 rows selected.
===============================================
HOW TO USE ROLLUP AND CUBE OPERATORS IN PL/SQL
===============================================
Release 8.1.5 PL/SQL에서는 CUBE, ROLLUP 이 지원되지 않는다. 8i에서는 DBMS_SQL
package을 이용하여 dynamic SQL로 구현하는 방법이 workaround로 제시된다.
Ordacle8i에서는 PL/SQL block에 SQL절을 직접적으로 위치시키는 Native Dynamic SQL
(참고 bul#11721)을 지원한다.
Native Dynamic SQL을 사용하기 위해서는 COMPATIBLE 이 8.1.0 또는 그 보다 높아야
한다.
SVRMGR> show parameter compatible
NAME TYPE VALUE
compatible string 8.1.0
예제 1-1: ROLLUP -> 위의 예제 1과 비교한다.
SQL> create or replace procedure test_rollup as
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
begin
select year, region, sum(profit), count(*)
into my_year, my_region, my_sum, my_count
from test_roll
group by rollup(year, region);
end;
Warning: Procedure created with compilation errors.
SQL> show errors
Errors for PROCEDURE TEST_ROLLUP:
LINE/COL ERROR
10/8 PL/SQL: SQL Statement ignored
13/18 PLS-00201: identifier 'ROLLUP' must be declared
SQL> create or replace procedure test_rollup as
type curTyp is ref cursor;
sql_stmt varchar2(200);
tab_cv curTyp;
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
begin
sql_stmt := 'select year, region, sum(profit), count(*) ' ||
'from test_roll ' ||
'group by rollup(year, region)';
open tab_cv for sql_stmt;
loop
fetch tab_cv into my_year, my_region, my_sum, my_count;
exit when tab_cv%NOTFOUND;
dbms_output.put_line (my_year || ' '||
nvl(my_region,' ') ||
' ' || my_sum || ' ' || my_count);
end loop;
close tab_cv;
end;
SQL> set serveroutput on
SQL> exec test_rollup
1995 Central 100 1
1995 East 200 2
1995 West 200 2
1995 500 5
1996 West 200 2
1996 200 2
700 7
PL/SQL procedure successfully completed.
예제 2-1: ROLLUP and GROUPING() -> 위의 예제 2와 비교한다.
SQL> create or replace procedure test_rollupg as
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
my_g_region int;
my_g_year int;
begin
select year, region, sum(profit),
grouping(year), grouping(region)
into my_year, my_region, my_sum, my_count,
my_g_year, my_g_region
from test_roll
group by rollup(year, region);
end;
Warning: Procedure created with compilation errors.
SQL> show error
Errors for PROCEDURE TEST_ROLLUPG:
LINE/COL ERROR
12/4 PL/SQL: SQL Statement ignored
17/13 PLS-00201: identifier 'ROLLUP' must be declared
SQL> create or replace procedure test_rollupg as
type curTyp is ref cursor;
sql_stmt varchar2(200);
tab_cv curTyp;
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
my_g_region int;
my_g_year int;
begin
sql_stmt := 'select year, region, sum(profit), count(*), ' ||
'grouping(year), grouping(region) ' ||
'from test_roll ' ||
'group by rollup(year, region)';
open tab_cv for sql_stmt;
loop
fetch tab_cv into my_year, my_region, my_sum, my_count,
my_g_year, my_g_region;
exit when tab_cv%NOTFOUND;
dbms_output.put_line (my_year || ' '||my_region ||
' ' || my_sum || ' ' || my_count ||
' ' || my_g_year || ' ' || my_g_region);
end loop;
close tab_cv;
end;
Procedure created.
SQL> set serveroutput on
SQL> exec test_rollupg
1995 Central 100 1 0 0
1995 East 200 2 0 0
1995 West 200 2 0 0
1995 500 5 0 1
1996 West 200 2 0 0
1996 200 2 0 1
700 7 1 1
PL/SQL procedure successfully completed.
예제 3-1: CUBE -> 위의 예제 3과 비교한다.
SQL> create or replace procedure test_cube as
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
begin
select year, region, sum(profit), count(*)
into my_year, my_region, my_sum, my_count
from test_roll
group by cube(year, region);
end;
Warning: Procedure created with compilation errors.
SQL> show error
Errors for PROCEDURE TEST_CUBE:
LINE/COL ERROR
10/4 PL/SQL: SQL Statement ignored
13/13 PLS-00201: identifier 'CUBE' must be declared
SQL> create or replace procedure test_cube as
type curTyp is ref cursor;
sql_stmt varchar2(200);
tab_cv curTyp;
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
begin
sql_stmt := 'select year, region, sum(profit), count(*) ' ||
'from test_roll ' ||
'group by cube(year, region)';
open tab_cv for sql_stmt;
loop
fetch tab_cv into my_year, my_region, my_sum, my_count;
exit when tab_cv%NOTFOUND;
dbms_output.put_line (my_year || ' '||
nvl(my_region,' ') ||
' ' || my_sum || ' ' || my_count);
end loop;
close tab_cv;
end;
Procedure created.
SQL> set serveroutput on
SQL> exec test_cube
1995 Central 100 1
1995 East 200 2
1995 West 200 2
1995 500 5
1996 West 200 2
1996 200 2
Central 100 1
East 200 2
West 400 4
700 7
PL/SQL procedure successfully completed.
예제 4-1: CUBE and GROUPING() -> 위의 예제 4와 비교한다.
SQL> create or replace procedure test_cubeg as
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
my_g_region int;
my_g_year int;
begin
select year, region, sum(profit),
grouping(year), grouping(region)
into my_year, my_region, my_sum, my_count,
my_g_year, my_g_region
from test_roll
group by cube(year, region);
end;
Warning: Procedure created with compilation errors.
SQL> show error
Errors for PROCEDURE TEST_CUBEG:
LINE/COL ERROR
12/4 PL/SQL: SQL Statement ignored
17/13 PLS-00201: identifier 'CUBE' must be declared
SQL> create or replace procedure test_cubeg as
type curTyp is ref cursor;
sql_stmt varchar2(200);
tab_cv curTyp;
my_year test_roll.year%type;
my_region test_roll.region%type;
my_sum int;
my_count int;
my_g_region int;
my_g_year int;
begin
sql_stmt := 'select year, region, sum(profit), count(*), ' ||
'grouping(year), grouping(region) ' ||
'from test_roll ' ||
'group by cube(year, region)';
open tab_cv for sql_stmt;
loop
fetch tab_cv into my_year, my_region, my_sum, my_count,
my_g_year, my_g_region;
exit when tab_cv%NOTFOUND;
dbms_output.put_line (my_year || ' '||my_region ||
' ' || my_sum || ' ' || my_count ||
' ' || my_g_year || ' ' || my_g_region);
end loop;
close tab_cv;
end;
Procedure created.
SQL> set serveroutput on
SQL> exec test_cubeg
1995 Central 100 1 0 0
1995 East 200 2 0 0
1995 West 200 2 0 0
1995 500 5 0 1
1996 West 200 2 0 0
1996 200 2 0 1
Central 100 1 1 0
East 200 2 1 0
West 400 4 1 0
700 7 1 1
PL/SQL procedure successfully completed.
Reference Ducumment
Note:67988.1Hello,
As previously posted you should use export and import utilities.
To execute exp or imp statements you have just to open a command line interface, for instance,
a DOS box on Windows.
So you don't have to use SQL*Plus or TOAD.
About export/import you may care on the mode, to export a single or a list of Tables the Table mode
is enough.
Please, find here an example to begin:
http://wiki.oracle.com/page/Oracle+export+and+import+
Hope this help.
Best regards,
Jean-Valentin -
Hi
I am new to use Rollup and Cubes.
I have one query with the correct syntax as per the tutorial, but i am getting the error.
Can anyone let me know where and what is the error in this ?
select cont,ctry,stat, sum(pop) ,
grouping(cont) as Continent,
grouping(ctry) as Country,
grouping(stat) as State
from dim1
group by rollup(cont,ctry,stat)
having (Continent = 1 and Country=1 and State=1)
or (Country=1 and State=1)
or (Continent=1 and State=1)
SQL> /
or (Continent=1 and State=1)
ERROR at line 9:
ORA-00904: "STATE": invalid identifier
Thanks
JCThat syntax is wrong:
SQL> create table dim1
2 as
3 select 'Europe' cont, 'Netherlands' ctry, 'Utrecht' stat, 1000000 pop from dual
4 /
Tabel is aangemaakt.
SQL> select cont,ctry,stat, sum(pop) ,
2 grouping(cont) as Continent,
3 grouping(ctry) as Country,
4 grouping(stat) as State
5 from dim1
6 group by rollup(cont,ctry,stat)
7 having (Continent = 1 and Country=1 and State=1)
8 or (Country=1 and State=1)
9 or (Continent=1 and State=1)
10 /
or (Continent=1 and State=1)
FOUT in regel 9:
.ORA-00904: "STATE": invalid identifierThe error is in the having clause. If we remove it, the SQL becomes valid again:
SQL> select cont,ctry,stat, sum(pop) ,
2 grouping(cont) as Continent,
3 grouping(ctry) as Country,
4 grouping(stat) as State
5 from dim1
6 group by rollup(cont,ctry,stat)
7 /
CONT CTRY STAT SUM(POP) CONTINENT COUNTRY STATE
Europe Netherlands Utrecht 1000000 0 0 0
Europe Netherlands 1000000 0 0 1
Europe 1000000 0 1 1
1000000 1 1 1
4 rijen zijn geselecteerd.If you want the having clause, you have to refer to the grouping functions, not the aliases:
SQL> select cont,ctry,stat, sum(pop) ,
2 grouping(cont) as Continent,
3 grouping(ctry) as Country,
4 grouping(stat) as State
5 from dim1
6 group by rollup(cont,ctry,stat)
7 having (grouping(cont) = 1 and grouping(ctry)=1 and grouping(stat)=1)
8 or (grouping(ctry)=1 and grouping(stat)=1)
9 or (grouping(cont)=1 and grouping(stat)=1)
10 /
CONT CTRY STAT SUM(POP) CONTINENT COUNTRY STATE
Europe 1000000 0 1 1
1000000 1 1 1
2 rijen zijn geselecteerd.Regards,
Rob. -
Roll up command and CUBE command
Please anyone explain me what is the use of ROLLUP and CUBE command in SQL and which situations it will be using.
Rollup and cube, both of these will be helpfull in aggregate function along with group by.
Roll up will results in data along with their summation.
and Cube results in summation of all possible combination.
It will be help when creating reports and some analytical data.
Below is an article which give further more explanation
http://www.oracle-base.com/articles/misc/rollup-cube-grouping-functions-and-grouping-sets.php -
How to delete the rollup and compress request from the cube
Hi Experts,
I have a requirement, one request was updated into the cube and it was been rollup and then compressed. As the request was compressed so based on request id we cant perform the deletion.
So it is possible with selective deletion. Now before performing the selective deletion do i need to deactivate the aggregates.
Help me out on this.
Regards
PrasadHi.........
U hav to deactivate the aggregates................bcoz.........Selective deletion is only possible with uncompressed requests...............ie from F fact table...........after compression data moves from F fact table to E fact table.............. you can't do selective deletion on E fact table.........So first deactivate the aggregates............then do the selective deletion..............then again activate the aggregates..............and do the aggregate filling job manually in RSA1..............but I will suggest u delete the request...............bcoz any how u hav to deactivate the aggregates............and in case of selective deletion u hav to be very particular................if ur load is not taking much time............then delete the request and repeat the load............
Regards,
Debjani........... -
Relation between Rollup and compression.
Hi All,
Is there a relation between rollup and compression ? i.e if i compress the cube, will the rollup job be faster ?Hi,
Thanks for all your replies. Now the picture is crystal clear.
1. A compression job moves data from F table to E table. This is also applicable for aggregates. If you schedule a compression job for a cube, the aggregates are automatically compressed( You can also compress aggregates of a cube without compressing the cube. There are programs avalibale for the same).
2. Assume that you have not done compression . If you load the data to base cube ,it takes more time to create the indexes after loading.
3) Assume that you have done compression . If you load the data to base cube ,it takes less time than 2 point to create the indexes after loading.
On similar lines, if aggregates of a cube are compressed before rollup, then rollup will be faster. This is what exactly I have experienced. I had a cube which had 1000 request. It was never compressed. The rollup job for the cube used to take around 60,000 seconds. I compressed 900 requests. Now the rollup job gets over in 2400 seconds.So the conclusion is the following:
<b>When aggregates of a cube are compressed, the rollup job runs faster.</b>
Message was edited by: Tej Trivedi -
Difference vs rollup and aggregation
Hey guys,
I know they are both the same i.e. Rollup and aggregate. i guess I need to know the difference between MAINTAIN AGGREGATE (when you click on an infocube it gives you the option to maintain aggregate) and ROLLUP (when you go to manage an infocube and click on the tab called Rollup. Also I need to know if there is a document or an article that would tell me the criteria of creating aggregate.
Thanks and your help is much appreciated as always,
RGHi Ram,
Rollup is like delta from Cube to the agggregates. When ever we post a new data into Cube, the need to be updated into t he aggregate tables to be visible in reporting. If you have aggregate on a cube, then when new data gets into the cube, there is a process to fill the new data into the aggregate and this process is called roll up.
Rollup is the process to load deltas into aggregate from cube.While you are creating the aggregate you have to fill the aggregateit is right.. that is initial fill. After that new data will come to cube, thisnew/delta data should be reflected in the aggregate for further reporting.o do this we use to run ROLLUP in the info cube manage option.f it's not rollup and the cube is having aggregate and the aggregate is in active mode, then you won't get latest information in your query.
<u><b>Importance of Rollup:</b></u>
1. once you load data into Infocube is to ensure that recent data is available for reporting.
2. Rollup analyze and updates database statistics for aggregate objects.
Pls check this link..
http://help.sap.com/saphelp_nw04/helpdata/en/9a/33853bbc188f2be10000000a114084/frameset.htm
When you try to maintain/create aggregates, inside the maintain aggregate window, from the drop down menu, there is a propose from query option, try that will help to build an aggregates for you
Criteria for Aggregation:
http://help.sap.com/saphelp_erp2005vp/helpdata/en/9a/33853bbc188f2be10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/75/21054da1392649948e5b94e4fc4bce/content.htm
http://help.sap.com/saphelp_erp2004/helpdata/en/82/f2dc37f0f12313e10000009b38f8cf/content.htm
**Pls assign points if info is useful*
Regards
CSM Reddy -
New fields addition to BW 3.5 version ODS and Cube and transport to PRD.
Hi,
We have a scenarion on 3.5 wherein there is a enhancement to ODS and Cube(few new fileds are added), this New ODS also feeds data to Cube. Since we do not had data on Quality system, we had no problem in adding fields to ODS and cube, but now we need transport these changes to Production, In production ODS and Cube has large data. we have few doubts.
1. Shall we need to delete data from ODS and Cube then Transport request to Production server.
2. Is it ok to move transport request without deleting data in ODS and Subsequent Cube in production system
Guys and Gals,
what is your suggestion on this one. WE are in BW 3.5 only. No BI7.
Please revert back.Hi
you can directly transport that to production.
the image will over write with the existing one and for the new object add , a new table space will be created.
it will not affect the Old data
But in the Cube even if the data is there there is a concept called remodeling
http://help.sap.com/saphelp_nw70/helpdata/en/58/85e5414f070640e10000000a1550b0/content.htm
hope this helps
santosh -
Hi Experts
Please..Please update me on in detail if possible with example ......Key Fields and Dimensions
How Data Records will be processed in DSO and Cube
I tried to search but i can't able to find what i am looking for
My Requirment:
I am extracting Employee Benefits records from Non SAP Source System (Oracle Tables)
In the Oracle there is no Date field avaliable and there won't be any history avaliable in oracle once the Benefits of an employee is changed the old record will be overwritten to new one so they can't track the employee benefits history...but in BW i need to store/show history of employee benefits by Cal day
Oracle Table Fields
Location (Primary Key)
Emp No (Primary Key)
Insurance Type
Call Allowance Type
Annual Leave (No of day Days)
Pension Schem
Company Laptop (Yes/No)hi,
key fields are the primary keys of ur ods tables. based on the key field values the data fields will get overwritten.
suppose if the key fields values were same then the data fields will get overwritten. but the changes were captured in the change log table, hence the history of changes is available.
Dimensions- are the prmary keys of cube. but in cube only addition of records will happen as default not overwrite as in ods.
dimension ids were generated based on the sid values of characteristics.
maximum of 16 key fields and dimensions can be there in ods and cube respectively.
for ur case, include 0calday field in the key fields and use the routine to update the field with system date(SY-Date). this keeps track/ else without date also , change log maintains history for each load.
have to add 0recordmode to the communication structure of the ods(infosource).
Ramesh -
How can i update data of DSO and Cube using ABAP??
Hello Experts
I have a requrement in which i need to update/ delete data from DSO and cube based on certain keys using ABAP.
Please let me know how can i modify contets of cube or active table of DSO.
Thanks
SudeepHi
I have requirement such that i need to update certain key figures in DSO after certain time.
for eg. say record with key a is loaded to DSO and currospoding key figure was loaded with value 10
after few days because of certain parameters changing in system i need to modify key figure value.
currently i am doing same using 1 self transformation i.e. by loading same data again in same DSO.
Amount of data is very huge and causing performance issues in system.
now A is not key but i need to modify record for few combinations which apperar multiple times in DSO.
Same DSO data is loaded into Cube regularly.
I may need to update data after gap of few weeks as well.
This design will be used as template and needto keep whole logic generic.
So wring Function module can make it generic.
Thanks
Sudeep -
How to do reconcilization of ODS data and CUBE data
Hi All,
How to do reconciliation of ODS data and CUBE data,I know how to do reconciliation of R/3 data and BW data.
Regards.
hariHi,
create a multicube based on your ODS and cube, identify commen characteristics and perform the key figure selections; create then a query showing both information from the cube and ODS with perhaps some formula showing differences between key figures.
hope this helps...
Olivier. -
Is the concept of Transactional DSO and Cube in BI 7?
Hi,
Is the concept of Transactional DSO and Cube in BI 7?
I see 3 type of Cubes[Standard or VirtualProvider (Based on DTP, BAPI or Function Module)]
but canu2019t see transaction Cube.
also
I see 3 type of DSO(Standard, Write-optimized, Direct update )
but canu2019t see transaction DSO
See this link on DSO, with examples etc:
http://help.sap.com/saphelp_nw04s/helpdata/en/F9/45503C242B4A67E10000000A114084/content.htm
I am looking for such summary also for Cubes have you see a similar one?
ThanksNew terminology in BI 7.x
Transactional ODS = DSO for direct update
Transactional Cube = Realtime Cube
Jen -
Why do we create indexes for DSOs and Cubes.What is the use of it?
Hi All,
Can you please tell me why are indexes created for DSOs and Cubes.
What is the use with the creation of indexes.
Thanks,
SravaniHI ,
An index is a copy of a database table that is reduced to certain fields. This copy is always in sorted form. Sorting provides faster access to the data records of the table, for example, when using a binary search. A table has a primary index and a secondary index. The primary index consists of the key fields of the table and is automatically created in the database along with the table. You can also create further indexes on a table in the Java Dictionary. These are called secondary indexes. This is necessary if the table is frequently accessed in a way that does not take advantage of the primary index. Different indexes for the same table are distinguished from one another by a separate index name. The index name must be unique. Whether or not an index is used to access a particular table, is decided by the database system optimizer. This means that an index might improve performance only with certain database systems. You specify if the index should be used on certain database systems in the index definition. Indexes for a table are created when the table is created (provided that the table is not excluded for the database system in the index definition). If the index fields represent the primary keys of the table, that is, if they already uniquely identify each record of the table, the index is referred to as an unique index.
they are created on DSO and cube for the performance purpose ..and reports created on them wil be also more efficent ..
Regards,
shikha -
Service Management: Contract data sources, Exrractors and cubes
Hi Fellows: I have never worked in Service Management before and I have been asked to locate the extract strucutres, data sources and cubes for some reports. The reports are for contracts, contract renewals, Contract repairs, Contracts Units End of Service, Contract customers, Contract Customer Report Card etc. Are there any standard extractors, data sources for contracts or service Management?
Contracts PLACE ID
Contracts
Contracts MODEL ID
Contracts SERIAL ID
Contracts Contract Start Date
Contracts Contract End Date
Contracts LINE VALUE
Contracts Contract ID
Contracts Contract Version
Contracts Invoice Date
Contracts Invoice ID
Contracts NAME
Contracts LOCATION
Contracts Address
Contracts City
Contracts Global Name
Contracts Name
Contracts Place ID
Contracts State
Contracts Zip
Contracts Sales Group B
Contracts Sales Group C
Contracts Contract ID
Contracts Version
Contracts Term of Contract
Contracts PO Number
Contracts Product Location
Contracts Phone
Contracts Model ID
Contracts Serial ID
Contracts Part ID
Contracts Quantity
Contracts Service Plan
***Contract Renewals:
Contract Version
Status of New Contract
New PG Description
Event Code
Event Created
New Price
New Travel Price
Old Price
Old Travel Price
****Contract repairs:
Problem Resolution
Received Date
Repair Center Info, name, address, ciy, state, postalcode, country
Repair Center Info, name, address, ciy, state, postalcode, country
Repair Center Info, name, address, ciy, state, postalcode, country
Repair Center Info, name, address, ciy, state, postalcode, country
Repair Center Info, name, address, ciy, state, postalcode, country
Repair Center Info, name, address, ciy, state, postalcode, country
Scheduled Ship Date
Serial # Received
Serial # Registered
Serial # Shipped
Service Repair (Work) Order #
Technicians name
Tracking #
Account IndicatorThis may help you..open the folders in left
http://help.sap.com/saphelp_nw70/helpdata/en/ed/9dfb3b699bde74e10000000a114084/frameset.htm -
Standard PS (WBS) Extractor and cube that contains data generated by CJR2
Hi Experts,
Can someone recommend a suitable standard extractor for us to extract plan data that was generated in R/3 PS, via transaction code CJR2, as well as a standard PS Cube that stores that data?
The extractor and Cube should be able to capture characteristics such as, sender cost center, Activity Type, WBS element, Activity quantity, total costs, version, posting periods, fiscal year etc.
I searched through those many extractors and cubes, but could not find one.
Thanks.Hi Ehab,
Go through this link, on Page No.7, you can see PS Cubes, ODS and standard queries.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c04e90b2-f31c-2a10-0595-8409b37914f3
Thanks
Sayed
Maybe you are looking for
-
Redundant X in the column name
Hi ! I'm trying to insert object into Oracle DB. The object's class has 'id' data member mapped on table primary key also named 'ID'. The problem is that in the INSERT SQL statement generated by KODO 'ID' table column replaced by 'IDX' table column.
-
When i click a link i get The Address wasn't understood
I use outlook. When I click on a link i get a message that "the address wasn't understood". I need to open links.
-
Working with RAW images in Aperture
I shoot with a Canon DSLR in RAW. I notice that certain adjustments when applied to a RAW file have no effect ie. sharpen, edge sharpen, noise reduction and maybe more. I suspect that these adjustments are applicable to either a TIFF of JPEG file. Co
-
Hi, Im migrating to a new pc and I'm having trouble loading DW 2004 (which I bought over the net) onto the new pc. It's asking me for a serial number which I have but it's also looking for a serial number from a previous DW which I really don't seem
-
Profile Parameter - Definition of Password Policy
Hello, i would know which possibilities exist to define password restrictions for ABAP Netweaver systems. It would be grateful to become some references where I can find information about this subject. Also it would be great to find out if i can conf