R/3 Infoset join question
I'm not a big SQ02 user, but was hoping someone who has used it more could answer a question posed by one of our analysts. They would like to create an Infoset for some reporting needs where there is a join between VBAK and VEDA. No problem with this since it makes the connection based on the sales document field. However, they only want to bring in rows from VEDA where the item is 000000, not all the individual line items. Is there a way to accomplish this in the join definition (I couldn't see any way to restrict that there)? Or would you have to build in the VEDA item field as a parameter where it can be input as all zeroes?
Any input would be appreciated. Thanks... Jody
after creating the joins in infoset in sq02, goto sq01, create an infoset query, select your infotype from your usergroup.
here, below output button you have a drop down button as 'field group' and 'field catalog', from here make the line number as selection criteria(drag and drop in the right part of screen).
you will have this item in selection screen. pass 000000 here and execute...
i hope task done. any doubt?
Similar Messages
-
Infoset join two ODS no authrization
I have created an Infoset joining two ODS's the primary ODS (grey) has 0Orgunit in it and the second ODS's (white) hasn't. When you run the query against the infoset the authorization on the orgunit isn't working and you can see the whole of the organization no matter what level of authorization the user has.
I have looked in RSSM and you can not add the Infoset into the Authorization objects.
If anyone can shed any light on to why the authorization isn't working it would be appreciated.
Many thanks
JaneThanks for your reply but isn't the join different between a infoset and multiprovider .
Many thanks
Jane -
CBO (optimizer) nest-loop join question
OS: Red Hat Linux
DB: 11gR1
I have gotten two conflicting answers while reading books by Don Burleson and Dan Hotka. It has to do with the CBO and nested-joins:
One says the CBO will choose the 'smaller' table as the driving table, the other states that the 'larger' table will be the driving table. And both stick by this philosophy as the preferred goal of any SQL Tuning -- that is, one states that the 'smaller' table should be the driving table. The other says the 'larger' table should be the driving table.
I had always thought that the 'smaller' table should be the driving table. That in a nested loop the driving will not likely use an index even. Who is correct? (I am not going to say who said what, btw). :-)
But I got to let one of them know they got a 'typo' ... :-)
Thx.user601798 wrote:
It is an over-simplistic scenario but, as I mentioned, if all other things are 'equal' -- which would include 'access time/work', then I think the small table as the driving table has the advantage.
It is not possible for +"*all* other things to be equal"+. (my emphasis).
If by +'access time/work'+ you mean the total is the same then it doesn't matter which table is first, the time/work is the same either way round.
If you want to say that the +'access time/work'+ for acquiring the first rowsource is the same for both paths, and the +'access time/work'+ for acquiring related rows from the second table is the same FOR EACH DRIVING ROW, then the total +'access time/work'+ will be difference, and it would be better to start with the smaller table. (The example by Salman Qureshi above: Re: CBO (optimizer) nest-loop join question would apply.)
On the other hand, and ignoring any idea of "all other things being equal", smaller tables tend to have smaller indexes, so if your smaller rowsource comes from a smaller table then acquiring those rows may be cheaper than acquiring rows from a larger table - which leads to the observation that (even with perfectly precise indexing):
<ul>
smaller number of rows * larger unit cost to find related rows
</ul>
may produce a larger value than
<ul>
larger number of rows * smaller unit cost to find related rows
</ul>
Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
http://www.jlcomp.demon.co.uk
A general reminder about "Forum Etiquette / Reward Points": http://forums.oracle.com/forums/ann.jspa?annID=718
If you never mark your questions as answered people will eventually decide that it's not worth trying to answer you because they will never know whether or not their answer has been of any use, or whether you even bothered to read it.
It is also important to mark answers that you thought helpful - again it lets other people know that you appreciate their help, but it also acts as a pointer for other people when they are researching the same question, moreover it means that when you mark a bad or wrong answer as helpful someone may be prompted to tell you (and the rest of the forum) what's so bad or wrong about the answer you found helpful. -
hi
in 1 ods i have data like
date...........order....price$$...region
1/1/10........1001.......100.........east
2/1/10........2001.......100.........east
3/1/10........3001.......100..........west
4/1/10........4001.......100.........east
6/1/10........1001.......100.........east
so user runs query for Quarterly data
so for region East for Quarter 1 the price$$ are 200...
in ods2 i have data like
region.....Price$$....quarter
east........200..........q1
west.......200..........q2
now user want to see data in 1 BW Query as
Region....actual $ ...quarter.....plan$....
east........200.............q1............200$
how do i combine 2 ods data
i thought with INFOSET it will bring me the data as it shows above....
infoset join is on Reqion
but that design is not working
mutliprovider will not work as the structure of 2 ods are a lot different...Hi,
i do not think infoset is proper for your requirement. Here is what happens with different joins for infoset. Inner or outer you would get wrong data. Each row/record of the actual DSO links up the same record from the plan DSO again and again.
Region....actual $ ...quarter(Act)........quarter(Plan).....plan$....
east........100.............q1...............................q1...............200$
east........100.............q1...............................q1...............200$
You could create another DSO on top of actual, add quarter, remove order, date, etc and maintain same granularity as the plan DSO and create an infoset. That should work.
Or you may try loading both DSOs to a cube and create a report on it. -
Which Infoset join to use.
Hi,
I have a scenario in which I have one Infocube A and one ODS B.
I want to display all the data records from Infocube A and some of the fields for which I dont have data in A, I want to get it from DSO B.
Which Infoset Join should I use in this case and how to create that join?
Thanks.
Edited by: Hardik Luthra on Jun 17, 2010 9:01 AMHi,
with left outer Join from all the data recors of Cube A data will come , at the same time which ever records arr there common both targets tose records will come.
But in your case if some of the more records are there in DSO B ,which are not having in cube , if it is the case it will not fulfill your requiremnent.
Multiprovider is better option in both the targets which ever the records are all the records will be updated. but which ever the record are having common characterstics for those fields data will come , if the caharcters are differeent in both targets then some oh the values( which are not ahving in other target) we could not get.
Thanks & Regards,
sathish -
Hi gurus,
I am trying to create an infoset but a bit confused with the type and number of joins available, so can somebody kindly focus on
1. what is a join
2. Number & type of joins available
3. what is the effect of each join and when should we use it.
Any document will be very helpful.
Thanks and regards
NeelHi Neel,
You typically use either the "Inner" join or the left outer join with an Infoset.
Check these links on the joins:
Difference of Left - Outer - Inner and Equal InfoSET Join
http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ec77446011d189700000e8322d00/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/ed/084e3ce0f9fe3fe10000000a114084/frameset.htm
https://forums.sdn.sap.com/click.jspa?searchID=262255&messageID=407256
Bye
Dinesh -
Doughts on Infoset Joins with Cube and DSO in BI 7
Dear All,
I have a droughts on Infoset Joints.
I am working on a BI Query where I need to take 0Employee from Cube and Employee position time he holds in an Organization is coming form DSO, Apart for this I also have other requirement such as Address fields , Visa Status , are all coming from DSO.
I have created a Infoset for this where
1st is Cube and its 0Employee is linked to all DSO Employee and also Employee position I have linked with DSO and all are inner joints.
1>My doughty is that will this work with inner joins or I have to use other joints.
2>Is sequence of Data Target is correct
which is
1> Cube and in 2> all DSO in Parallel.
Please guide me on joints and sequence.
Thanks V V much in Advance,
Regards,Hi,
Check these links.
http://help.sap.com/saphelp_nw04s/helpdata/en/ed/084e3ce0f9fe3fe10000000a114084/frameset.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/2f5aa43f-0c01-0010-a990-9641d3d4eef7
http://help.sap.com/saphelp_nw04/helpdata/en/9c/6b7538c9a8ee45e10000009b38f8cf/frameset.htm
if this helpa assign points.
Thanks.....
Vasu..... -
Wondering if someone could guide me in the direction I need
to pull some results. I have a dynamic select box that I only want
to pull teams from if they are not involved in a challenge.
Question is, I'm not quite sure how to go about pulling this out.
I have a table name "team". Fields: id, captain, teamname
And a table holding the challenges called "teamchallenges"
Fields: id, team1, team2, team3, team1active, team2active,
team3active
What I want to do is display in this dropdown the id, captain
and teamname from "team" ONLY if they are not listed anywhere in
the "teamchallenges" table as being active.
The variable "team1" holds the id from the table "team" and
then the variable "team1active" is a yes or no. Same goes for the
variables 1 - 3.
I am stumped on what kind of coding I need to do this. I
think I need some type of inner join.Something like this should work for you (I have not verified
the syntax)
SELECT * FROM team
WHERE 1=1
AND NOT ID IN (SELECT team1 FROM teamchallenges WHERE
team1active= true)
AND NOT ID IN (SELECT team2 FROM teamchallenges WHERE
team2active= true)
AND NOT ID IN (SELECT team3 FROMteamchallenges WHERE
team3active= true)
cheers,
fober -
JOIN question... Join two tables without omiting rows
I ran into a problem that should have an easy solution (I hope), but I'm having a hard time coming up with a solution.
Basically, I have two tables, one with actual amounts and one with the budget. I am to write a sql select statement that joins these tables together and includes all of their rows. I've been able to join the tables together using JOIN, LEFT JOIN, and RIGHT JOIN, but it always omits rows that I need.
Below, I have examples of my tables (AMOUNT_TABLE and BUDGET_TABLE). For simplicity sake, I've built the examples to show the same values in the first four columns, with the 5th and 6th columns (SUB_ACCOUNT, AMOUNT, BUDGET) as the only values that are different. My actual tables aren't quite as simple, but I didn't think it was relavent for this question.
AMOUNT_TABLE
FISCAL_YEAR
PERIOD
ACCT_UNIT
ACCOUNT
SUB_ACCOUNT
AMOUNT
2013
1
11111
555555
0000
100
2013
1
11111
555555
1000
100
2013
1
11111
555555
2000
100
2013
1
11111
555555
3000
100
2013
1
11111
555555
4000
100
BUDGET_TABLE
FISCAL_YEAR
PERIOD
ACCT_UNIT
ACCOUNT
SUB_ACCOUNT
BUDGET
2013
1
11111
555555
3000
200
2013
1
11111
555555
4000
200
2013
1
11111
555555
5000
200
2013
1
11111
555555
6000
200
Here is the output I'm hoping for. Notice that SUB_ACCOUNTs 0000, 1000, and 2000 show amounts with no budget since there isn't a matching row in the BUDGET_TABLE. And likewise, for SUB_ACCOUNTs 5000 and 6000, they show budgets with no amounts since there isn't a matching row in the AMOUNT_TABLE.
(output)
FISCAL_YEAR
PERIOD
ACCT_UNIT
ACCOUNT
SUB_ACCOUNT
AMOUNT
BUDGET
2013
1
11111
555555
0000
100
0
2013
1
11111
555555
1000
100
0
2013
1
11111
555555
2000
100
0
2013
1
11111
555555
3000
100
200
2013
1
11111
555555
4000
100
200
2013
1
11111
555555
5000
0
200
2013
1
11111
555555
6000
0
200
Hopefully, my question is clear. Any help on this would be greatly appreciated. Thanks in advance.Use ANSI join syntax - FULL OUTER JOIN:
with amount_table as (
select 2013 fiscal_year,1 period,11111 acct_unit,555555 account,0000 sub_account,100 amount from dual union all
select 2013,1,11111,555555,1000,100 from dual union all
select 2013,1,11111,555555,2000,100 from dual union all
select 2013,1,11111,555555,3000,100 from dual union all
select 2013,1,11111,555555,4000,100 from dual
budget_table as (
select 2013 fiscal_year,1 period,11111 acct_unit,555555 account,3000 sub_account,200 budget from dual union all
select 2013,1,11111,555555,4000,200 from dual union all
select 2013,1,11111,555555,5000,200 from dual union all
select 2013,1,11111,555555,6000,200 from dual
select nvl(a.fiscal_year,b.fiscal_year) fiscal_year,
nvl(a.period,b.period) period,
nvl(a.acct_unit,b.acct_unit) acct_unit,
nvl(a.account,b.account) account,
nvl(a.sub_account,b.sub_account) sub_account,
nvl(a.amount,0) amount,
nvl(b.budget,0) budget
from amount_table a
full join
budget_table b
on (
a.fiscal_year = b.fiscal_year
and
a.period = b.period
and
a.acct_unit = b.acct_unit
and
a.account = b.account
and
a.sub_account = b.sub_account
FISCAL_YEAR PERIOD ACCT_UNIT ACCOUNT SUB_ACCOUNT AMOUNT BUDGET
2013 1 11111 555555 0 100 0
2013 1 11111 555555 1000 100 0
2013 1 11111 555555 2000 100 0
2013 1 11111 555555 3000 100 200
2013 1 11111 555555 4000 100 200
2013 1 11111 555555 6000 0 200
2013 1 11111 555555 5000 0 200
7 rows selected.
SQL>
SY. -
Complex query/join question
Not sure if this goes here, but I thought I'd try anyway.
I'm using Oracle 8i for a legacy app and the RDBMS won't be updated anytime soon. I'm trying to write a fairly complex sum and join query. I have two different tables with hours worked type information. I need to be able to sum the hours for a work day on each table and put, in a web table like a GridView, all rows, even if there isn't a match in the opposite table. So, for example
Table 1
ID SHOP WORKDATE SHOPHOURS
1 AM1 1/1/2008 4
1 AM1 1/1/2008 4
2 AM1 1/1/2008 8
3 AM1 1/1/2008 8
Table 2
ID WORKDATE PAYHOURS
2 1/1/2008 7
3 1/1/2008 8
4 1/1/2008 9
What I need to see is
ID SHOP WORKDATE SHOPHOURS PAYHOURS
1 AM1 1/1/2008 8 0
2 AM1 1/1/2008 8 7
3 AM1 1/1/2008 8 8
4 1/1/2008 8 9
Since i'm on 8i, I can't use a FULL OUTER Join, so i'm kind of stumped. Any suggestions would be greatly appreciated.You might want to post this to question to [SQL Forum|http://forums.oracle.com/forums/forum.jspa?forumID=75] instead for better result, but i can give you a solution. This is definitely not the best solution, but it works.
select nvl(table1.id,table2.id) id, shop,
nvl(table1.workdate,table2.workdate) workdate,
sum(nvl(shophours,0)) shophours, sum(nvl(payhours,0)) payhours
from table1, table2 where table1.id(+) = table2.id
group by nvl(table1.id,table2.id), shop,
nvl(table1.workdate,table2.workdate)
union
select nvl(table1.id,table2.id) id, shop,
nvl(table1.workdate,table2.workdate) workdate,
sum(nvl(shophours,0)) shophours, sum(nvl(payhours,0)) payhours
from table1, table2 where table1.id = table2.id(+)
group by nvl(table1.id,table2.id), shop,
nvl(table1.workdate,table2.workdate) Cheers,
[Nur Hidayat|http://nur-hidayat.net] -
Infoset Join condition on Key feilds and data fields
Hi Guys,
I have a requirement to biuld the Info set with join conditon on two DSO's the info objects which i am using in the JOin condition are defined as data fieds in one DSO and defined as key fields in another DSO, is it possible to define join condition on key fields and data fields.
The two info objects are
0AC_DOC_NO
0ITEM_NUM
These two info objects are defined as data fields in DSO : 0LIV_DS1 Invocie verificaion
key fields in DSO: 0FIAP_0o3 FI AP Line Item
Please suggest me is it possible to define join the condtion on the data fields and key feilds.
Thanks
Best regards
SGHi
yes you can create join, you will get any issue in reporting level.
example: Say i want to create Info Set on 0MATERIAL and Sales DSO.
In 0MATERIAL Info Object it is key filed, but in my DSO 0MATERIAL is data field.Still we can create
Creation of join is dependent on fields common in your source objects.
check out the below document
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/2f5aa43f-0c01-0010-a990-9641d3d4eef7?QuickLink=index&overridelayout=true
Regards,
Venkatesh
Edited by: Venkateswarlu Nandimandalam on Sep 27, 2011 2:26 AM -
I have assignment for sql query by asking list all products where designer of product lives in the same region as supplier of the product. However, I have no clue to solve it. Please assist.
Below are 4 tables I created:
CREATE Table REGION
RegCode Varchar2 (8),
RegName Varchar2 (40),
ShipDays Number (2),
PRIMARY KEY (RegCode)
CREATE Table SUPPLIER
SuppCode Number (3),
SuppName Varchar2 (50),
Rating Varchar2 (1),
RegCode Varchar2 (8),
PRIMARY KEY (SuppCode),
FOREIGN KEY (RegCode) REFERENCES REGION
CREATE table DESIGNER
FirstName Varchar2 (30),
Surname Varchar2 (30),
Email Varchar2 (45),
Gender Varchar2 (1),
RegCode Varchar2 (8),
PRIMARY KEY (FirstName, Surname),
FOREIGN KEY (RegCode) REFERENCES REGION
CREATE table PRODUCT
ProdCode Varchar2 (3),
ProdName Varchar2 (35),
SellingPrice Varchar2 (4),
CostPrice Varchar2 (4),
FirstName Varchar2 (30),
Surname Varchar2 (30),
SuppCode Number (3),
PRIMARY KEY (ProdCode),
FOREIGN KEY (FirstName,Surname) REFERENCES DESIGNER,
FOREIGN KEY (SuppCode) REFERENCES SUPPLIER
Thanks a ton,
MandyYou won't need the region table at all, because the region code in supplier and designer will be enough for you to know that they are the same.
Do you know how to join tables at all?
Write your query by starting with products. Then join it to supplies using the value that is the primary key in supplier and a foreign key in products. Then, join to designer in the same manner. The only tricky thing about the second join is that you'l need two fields to complete the join. After that, you'll be ready to find records where the region code is the same.
Good luck! I hope this is enough to get you started... -
SQL query -- self-join question?
SQL> l
1* select originator,destination,oaddress,daddress from (select * from activity where rownum<=3)
SQL> /
10099 10004 16196344392 16199375530
10064 10002 18454644069 18456563415
10065 10006 18302650166 16416609306
looking at the above query, i am just performing a simple select from one of my tables. Now i require the carriername for both originator and destination columns, and the names for these are found on another table carrier.
so, i am re-write the above query as: (join with carrier table)
SQL>
SQL> select originator,destination,oaddress,daddress,carriername from (select * from activity,carrier where originator=carrier_code and rownum<=3);
10006 10099 19182772772 19189553062 USA1
10004 10311 15096701636 15096692171 USA2
10000 10003 15125898141 15122930569 USA3
Now, i got the carrier name for my originator, how would i find the carriername for my destination also (in the same query). One way of doing it is joining the carrier table twice, but is there any other better approach.
Hope i am clear, any help will be greatly appreciated. Thanks.select
A.originator, A.destination, A.oaddress, A.daddress
, B.carrier_name name_originator
, C.carrier_name name_destination
from
activity A
,carrier B
,carrier C
where
A.originator = B.carrier_code
and A.destination = C.carrier_code -
I created an Infoset Query showing Quantity, Net Value and Exchange Rate. Is it possible to add a field to add a calculation NetValue*ExchangeRate?
Thanks,
Dipen.This is how you do this. Goto SQ01. Go to the next screen till you come to FIELDS section. Here in the menu <i>EDIT</i> you will get an option of <i>Short names->switchon/off</i>. Click and enter short name for Net value and Exchange rate.
Then use the option in the menu
<i>Local fields->Create</i>. Enter the name of the local field, description,heading. Select a suitable attribute for the field.Select <i>Complex calculation</i> and click on the button. Here you can put condition if you want to otherwise enter formaula using short names in the Otherwise section. This local field will now start appearing in the fields section. You need to selct this and use it.
Hope this helps. -
Hello, we have recently purchased ISE and are in the process of intial configuration. We have joined the applainces to our AD. Now in our firewall rules, we see the ISE applaince sending LDAP (389) traffic to all of our DC's. Is there a way to limit what DC's ISE will query, or does it just pull up a list of DC's from the domain that is joined? If I do an NSLOOKUP on just the domain, I see numerous DC's listed, but ISE is sending to DC's that are outside of this list as well. I am not an AD guy, so forgive me if I do not understand how this is populated, but I am very confused on how ISE is getting the IP's of all the DC's. ANd would really like to restrict if possible, since many of the DC's are behnid firewalls that we did not open up for ISE to talk to, so the traffic is just being denied and filling up our syslog with denies.
Also, is there a show command, CLI or GUI, to show what DC's the ISE applainces knows about?
We are running 1.1.1.268 code.
Thank you all in advance for your help.Hi,
If you are using sites and services in your DNS environment then ISE should only query the domain controllers that are sent in the dns response for GC and DC resolution requests. You may need to consult your AD and DNS folks in order to insure that the ISE is only given the correct domain controllers.
Thanks,
Tarik Admani
*Please rate helpful posts*
Maybe you are looking for
-
How to delete multiple contacts in iphone 5
how to delete multiple contacts in iphone 5
-
Problem in Mail: rejects correct password
My e-mail account won't connect in Mail (although I can open it fine on the web), even though I repeatedly put in the correct password.
-
Using Fortran Funcrions in Java
Hi, In my project I need to call some subroutine, made in fortran, into my java program but I don't know how to do it... My fortran subroutine is called: SUBROUTINE LETQUE(BUF,QUE,SIZE,BYPASS) What should i do to include in my java??? Thank, BV
-
Positioning a responsive composition in a containing DIV
OK, I may be having a fruit loop moment but I've spent 2 days trying to correctly position and size a responsive composition in a basic div. I have some old compositions that I am trying to update from 2013 but when the responsive scaling is selected
-
HT201272 Eminem Album Removed from UK Store
As far as I can make out 'The Slim Shady LP' (Explicit version) was removed from the UK iTunes Store. It just so happens that I deleted it from my computer and iPod, so now I can't get it back. Am I entitled to a refund or what's the deal?