What is an infoset and infoset query?

hello  can anyone tell me about
infoset and infoset query.

Infoset is based on Joins. Infocube, DSO and infoobject can be used to make infoset.
How to Create Infoset Query (SAP Query)
Steps on how to proceed to create a Query:
ADHOC QUERY
A query can be created to extract information from master records  i.e  Infotypes.  For example, by creating a query , the data relating to an employee contained in various Infotypes can be extracted.
Proceedure :  
Decide on  the various Infotypes we  want to make the query.  Decide on the area where we  want to query  i.e  Global area or Standard area.  Standard area is client specific and globel area will include all clients.
Menu : HR – PM – Admn -  Information System -  Adhoc Query
Select area standard and select the  user group already created
Creation of new query  :  
TC SQ03  -  Select Environment – Select Standard Area -  Enter  --  If new user group is to be created, enter name of the user group, click on create and enter necessary information and  exit after saving
TC SQ02  -  Enter name of the Infoset – Create – enter name of Infoset -  Data source -- >  Table join by basis table – give name of table e.g  pa0000 -  Enter -  Click on insert table if we  want to include more tables – give name of table one by one and after finishing,  place cursor on the joining lines and right click to delete unwanted relationships  - check  - and go back  - field groups  -  include all table fields  - click on generate button   -  go out
TC SQ03  -  Select user group  -   eg.  Payroll
Infoset  - Enter name of newly created Infoset 
Assign users and Infosets  -  Assign infosets  -  put tick on payroll  - save and go back
TC  PAAH  -  Expand the nodes and put tick on relevant fields depending upon necessity
Save the query  by giving the same name as infoset for easyness.
If this answer helps, pls assign points.
Thanx in advance.

Similar Messages

  • Tarnsport infoset and SAP Query

    Hi All,
    I have created infoset and SAP quesry and user group.
    When i created user group it asked me the transport request.IT has been tarnsported to dev to QA.
    But infoset and query are not moved to QA.
    It is not asking me for create transport reuest.
    Please let me know how to tarnsport infoset(SQ02) and Query(SQ01).
    Thanks

    Hi all,
    Thanks for u r reply.
    My query is in global area not in standard area.
    Any way i solved the problem but how to transport the variant.
    When i read the documentation it is saying that we have create the system variant then only we can transport.
    IS it so pleas let me know.
    Thanks,

  • I have transport Infoset and Query from DEV to QAS

    Dear Expert,
    I have created an Infoset and Query. My Infoset and My Query have been copied to Query Global Areas and have been transport to QAS server. (I have created Request Transport, the number request is generated by system in DEV)
    But when I look with tcode SQ01 and SQ02 in QAS, there are none of my infoset or query appeared.
    Please, what should I do?
    Best regards,
    Dedy.W

    Check wether yr request transported correctly since these type of requests generally locked..
    After removing lock only we can transport these..
    Check in quality..
    Tcode.. STMS
    Check here for yr request wether transported or not..

  • Query, infoset and Logical database tuning?

    Hi, All:
    I created infoset z_infoset based on logical database DDF.
    then based on infoset z_query based on infoset z_infoset.
    then run the z_query, the performance is too bad.
    take long time.
    How to tuning logical database, infoset and query.
    Thanks,

    These are what I am dealing with:
      Transaction ME80FN
      /SAPQUERY/ME, ME80FN query.
      Another way to word the question is: How can I make a copy of the global query /SAPQUERY/ME, ME80FN to have that nifty bottom toolbar that transaction ME80FN has?
      At first glance, they are the same entity... But the toolbar in the transaction and display options via the last button on the toolbar differentiate the two.
       Thanks....

  • When to go for generic extraction using view and infoset query?

    Hi,
                        Can anyone clarify me when we should go for generic extraction using view and when we should go for generic extraction using infoset query....
    Also what is the difference between view and infoset?
    I tried but could not find out....
    Regards,
    Kalyani.

    Hi Kalyani,
    We normally go for View or infoset when the data to be fetched in BW is distributed in different tables in SAP R/3.
    Had the data been available in one table we can easily build our datasource on that table but if there are more tables then its not possible to do it without Views or Infosets. You can use Function Modules to build your datasource in case it involves complex logic to figure out the data from various tables.
    Depending upon the table relationships we create view and include various fields from these tables in that view. Same is with the Infosets, you can have more flexible options like Outer Join, left outer Join etc.
    Regards,
    Pratap Sone

  • Infosets and Query

    Hello Everybody,
    Can someone tell me what is the difference between Infoset and Query in R/3?
    Can you also tell me how and where we can create them, in detailed steps?
    All the help is appreciated.
    Thanks,
    Sneha Singh.

    hi
    this is a good pdf and you can understand well.
    http://help.sap.com/printdocu/core/Print46c/EN/data/pdf/BCSRVQUE/BCSRVQUE.pdf
    Regards
    Sajid

  • What is infoset and bw statistic cubes?

    hi experts can u give me some idea about the following topics.
    1) what is Infoset and why it is used?
    2) what are Bw statistic cubes and why are they used?
    thanks bye

    Hi
    Infoset is based on Joins. Infocube, DSO and infoobject can be used to make infoset.
    How to Create Infoset Query (SAP Query)
    Steps on how to proceed to create a Query:
    ADHOC QUERY
    A query can be created to extract information from master records i.e Infotypes. For example, by creating a query , the data relating to an employee contained in various Infotypes can be extracted.
    Proceedure :
    Decide on the various Infotypes we want to make the query. Decide on the area where we want to query i.e Global area or Standard area. Standard area is client specific and globel area will include all clients.
    Menu : HR ? PM ? Admn - Information System - Adhoc Query
    Select area standard and select the user group already created
    Creation of new query :
    TC SQ03 - Select Environment ? Select Standard Area - Enter -- If new user group is to be created, enter name of the user group, click on create and enter necessary information and exit after saving
    TC SQ02 - Enter name of the Infoset ? Create ? enter name of Infoset - Data source -- > Table join by basis table ? give name of table e.g pa0000 - Enter - Click on insert table if we want to include more tables ? give name of table one by one and after finishing, place cursor on the joining lines and right click to delete unwanted relationships - check - and go back - field groups - include all table fields - click on generate button - go out
    TC SQ03 - Select user group - eg. Payroll
    Infoset - Enter name of newly created Infoset
    Assign users and Infosets - Assign infosets - put tick on payroll - save and go back
    TC PAAH - Expand the nodes and put tick on relevant fields depending upon necessity
    Save the query by giving the same name as infoset for easyness.
    Limitations of Infoset query:
    1)Atleast one common infoboject should be present in all the data targets.
    2)In BI 7.0 you can include the infocubes also at infoset,but the limitation is max two number of Cubes.
    3)According to some join condition only you have to buidl the infoset.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/67/7e4b3eaf72561ee10000000a114084/content.htm
    Details related to infoset query.
    http://help.sap.com/saphelp_nw04/helpdata/en/d2/cb43b2455611d189710000e8322d00/frameset.htm
    Regarding infosets :
    http://help.sap.com/saphelp_nw04s/helpdata/en/ad/2225391d4f000be10000000a114084/frameset.htm
    See here for BW statisticss:
    http://help.sap.com/saphelp_nw04/helpdata/en/b2/e50138fede083de10000009b38f8cf/content.htm
    BW and BIW
    Re: SAP BW in relation with....??
    Bi stands for business intelligence and Biw stands for business information warehouse. It is basically the same thing. YOu can find more info in previous posts.
    check this link out..
    BW & BI
    **BI vs biw
    Re: BW & BI
    Hope it solves u issue
    regards
    gaurav

  • What is Infoset and How to create

    HI Experts
    Can any one please explain me what is the purpose of INFOSET in BW
    and how to create a info Set between A Info Object and Cube
    Thanks

    Dear bw user,
    Check the below link
    http://help.sap.com/saphelp_nw04s/helpdata/en/ed/084e3ce0f9fe3fe10000000a114084/content.htm
    Purpose is,
    1.To join required data from basic InfoProviders
    2.This allows building a relational BI data model with unified views for reporting (seeveral InfoProviders,but only one view). Therefore, we recommend keeping data in smaller, basic InfoProviders that can be flexibly joined for reporting purposes.
    3. To allow BEx Reporting on a DataStore object without turning the BEx Reporting indicator on
    4. To evaluate time dependencies (for example, join time dependent master data InfoObjects)
    5. To be able to create self joins and left outer joins
    Creatind in simple steps
    Infoset is a Virtual Infoprovider.
    Click on InfoProvider under modeling in RSA1 > Select InfoArea > right click Create Infoset > give name and description.
    Select the ODS / Master Data Object or more than one ODS and maintain the link.
    Infoset works on Join operation.
    you can include Infocube if it is BI 7.
    chk this link...
    http://help.sap.com/saphelp_nw70/helpdata/en/a3/96663bd194a978e10000000a11402f/frameset.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/2f5aa43f-0c01-0010-a990-9641d3d4eef7
    Aslo see this link contents
    Creating InfoSets
    Prerequisites
    Make sure that the objects for which you want to define the InfoSet are active. Create any required InfoObjects that do not
    exist already and activate them.
    Instead of creating a new InfoSet, you can transfer one of the InfoSets that are delivered with SAP Business Content.
    Procedure
    1. You are in the InfoProvider tree of the Modeling function area in the Administrator Workbench.
    Choose the Create InfoSet function from the context menu (right mouse-click) of the InfoArea in which you want to create an
    InfoSet. You get to the Create InfoSet dialog box.
    2. Type in the following information for your new InfoSet:
    ¡ technical name
    ¡ long description
    ¡ short description
    3. In the Start with InfoProvider section, you determine which InfoProvider you want to use to start defining the InfoSet.
    ¡ Select one of the object types that the system offers you:
    ODS Object
    InfoObject
    Choose an object.
    If you want to choose an InfoObject, it must be a characteristic with master data. The system provides you with the
    corresponding input help.
    4. Choose Continue. You get to the Change InfoSet screen. For more information on editing InfoSets see Editing InfoSets.
    When you create an InfoSet, the system generates a corresponding entry for this InfoSet in the subtree of the InfoArea. The
    following functions are available from the context menu (right mouse-click) of this entry:
    • Change
    • Delete
    • Object overview
    Editing InfoSets
    Prerequisites
    Before you can get to the screen where you edit InfoSets, the following prerequisites have to be met:
    • You have created a new InfoSet.
    • You have selected the Change function from the context menu of an InfoSet entry in the InfoProvider tree of the Modeling
    function area in the Administrator Workbench.
    • You have called the InfoSet Builder transaction, and selected the Change function. You can find additional information
    under Additional Functions in the InfoSet Builder .
    Procedure
    1. You are in the Change InfoSet screen.
    Choose a layout for the InfoProvider tree:
    InfoArea
    InfoProviders Used
    All ODS Objects
    All InfoObjects
    For more information on the screen layout, particularly the layout of the InfoProvider tree, see Screen Layout: Changing
    InfoSets.
    2. Use the function Where-Used List via AWB to determine which BW objects use the InfoSet that you have selected. You get to
    the Administrator Workbench: Where-Used List screen. You are able to work out what would happen in the system if you made
    changes to the InfoSet. This helps you to decide whether or not it is sensible to make these changes at this particular point
    in time.
    3. You define the InfoSet by inserting one or more InfoProviders into the join.
    There are several ways of inserting an InfoProvider into the join control:
    ¡ From the InfoProvider tree:
    § In the InfoProvider tree, double-click on the entry that corresponds to the InfoProvider that you want to add to the join
    control.
    § Use the drag-and-drop function to move the InfoProvider into position.
    ¡ Choose the Add InfoProvider function, to add a particular ODS object or a particular InfoObject independently of the
    current layout of the InfoProvider tree. You get to the dialog box of the same name. Enter the data that the system asks you
    for.
    If you know the technical name of the InfoProvider that you want to add, this method is quicker than switching the layout of
    the InfoProvider tree.
    When this function is complete, the InfoProvider that you selected is displayed in the join control. For more information on
    the structure of the join control, see Join Control.
    4. Define the join conditions. For more information see Defining Join Conditions.
    5. You can get general information such as object version, date created and date changed via Goto ® Global Settings. You can
    also set the indicator Most recent Reporting for InfoObjects from here. You can find additional information under Most recent
    Reporting for InfoObjects.
    6. Via the button Documents, which appears on the pushbutton bar, you can access document editing for this InfoSet.
    7. You can use Check to check the correctness of the InfoSet definition. The log display is shown in the screen area under
    the join control.
    8. Save the InfoSet. The log display is shown in the screen area under the join control.
    9. Activate the InfoSet. After activation, the system executes the checks. The result of the activation is displayed in the
    log in the screen area under the join control.
    Additional Functions in the InfoSet Builder
    You can also use transaction RSISET to call up the InfoSet Builder when you want to edit an InfoSet. Select the InfoSet that
    you want to edit. Value help is available for this. Additional functions are also available to help you edit and manage your
    InfoSet.
    Compare
    You use this function from the main menu to check if the InfoProviders used in the InfoSet have been changed and the InfoSet
    needs to be adjusted as a result. For more information, see Matching InfoSets.
    Jump to object maintenance
    You use the InfoObjects and ODS Objects functions to jump to the maintenance screen for the InfoProviders included in the
    InfoSet definition.
    Info functions
    There are various info functions on the status of the InfoSets:
    • The Object Catalog Entry
    • The log display for the save, activate, and delete runs of the InfoSet.
    Display in tree
    You use this function to display in a tree structure all the properties of the A version (active) of the selected InfoSet.
    • Header data
    • InfoProvider and its fields
    • On condition
    • Wherecondition
    The display is empty, if no active version is available.
    Version comparison
    You use this function to compare the following InfoSet versions:
    • The active (A version) and modified (M version) versions of an InfoSet
    • The active (A version) and content (D version) versions of an InfoSet
    • The modified (M version) and content (D version) versions of an InfoSet
    The Display InfoSet screen appears. Depending on which option you choose, the system displays either all of the differences
    between the two versions of the selected InfoSet or all of the properties of both versions in a tree structure.
    Transport connection using AWB
    You use this function to transport an InfoSet into another system.
    The Administrator Workbench: Transport Connection screen appears.
    The system has already collected all the BW objects that are needed to guarantee the consistency of the target system.
    InfoSet data display
    You use this function to access the data target browser. If you have already loaded data into the InfoProviders included in
    the InfoSet, you can display this data.
    Delete
    You use this function to delete an existing InfoSet.
    Copy
    You use this function to copy an existing InfoSet and, if necessary, edit it further.
    Show/hide technical names
    You can use this function to show alias names for fields. These alias names are necessary in InfoSets, for example to be able
    to map self joins. Field alias names start with F, followed by a five-digit number.
    Defining Join Conditions
    Use
    A join condition determines the combination of records from the individual objects that are included in the resulting set.
    Before an InfoSet can be activated, the join conditions have to be defined in such a way (as equal join condition) that all
    the available objects are connected to one another either directly or indirectly.
    Usually, however, only rows containing a common InfoObject or rows containing InfoObjects that share the same basic
    characteristic are connected to one another.
    Connect tables T1 and T2 using a join and set as a join condition that the F1 field from T1 must have the same value as F2
    from T2. For a record from table T1, the system determines all records from T2 for which F2(T2) = F1(T1) is true. In
    principle, as many records from T2 can be found as required. If one or more records are found, the corresponding number of
    records is included in the result set, whereby the fields from T1 contain the values from the record from T1 under
    consideration, and the fields from T2 contain the values of the records found from T2.
    Procedure
    There are various ways of defining join conditions:
    Using a mouse-click
    Position the cursor over a row in an InfoObject. Press the left mouse-button and, keeping the left mouse-button pressed down,
    trace a line between this row and a row in another object. Providing that the join condition between the two rows that you
    have indicated is a valid join condition, the system confirms the join condition by displaying a connecting line between the
    two rows.
    Using the Link Maintenance pushbutton
    You get to the Link Maintenance dialog box.
    In a tree structure on the left-hand side of the screen, all of the InfoProviders that are already included in the join are
    displayed along with their fields or attributes. If you double-click on one of these fields or attributes, the system
    displays on the right-hand side of the screen all of the fields or attributes with which you are able to create a join
    condition.
    In the Selection column, set one or more of the indicators for the fields or attributes for which you want to create a join
    condition. The system generates valid join conditions between the fields or attributes that you specify.
    You use the Delete Links pushbutton to undo all of the join conditions.
    You use the All Characteristics or the Basic Characteristics Only pushbutton to choose between the corresponding display
    variants.
    We recommend that you use the Basic Characteristics Only option. The All Characteristics setting displays all of the
    technical options involved in a join. If you are not able to find a join condition on the basic characteristic level, then
    the All Characteristics setting is useful, but this is an exceptional case.
    When you have finished making your settings, click on the Continue icon.
    We recommend this method, because the system searches for all the possible join conditions for any field or attribute that
    the user specifies, ensuring that the join conditions are defined without errors.
    Using the Context Menu Left Outer Join – Inner Join
    Usually inner-join operators connect all the objects in a join to one another. You can also connect each object with any of
    the many other objects by using a left outer join operator.
    You can find additional information about usage and special features under Left Outer Join.
    If you want to use a left-outer join operator to connect an object, select the object and choose the corresponding function
    from the context menu.
    The system displays all of the valid join conditions that originate from this object. The connecting lines that represent
    these join conditions are labeled as Left Outer Join . InfoProviders, on which a left outer join condition is affixed, are
    differentiated by color from the InfoProviders that are connected using an inner join operator.
    If you used a left outer join operator to connect two objects, you have to make sure that all on conditions are linked except
    for these two objects with the formulation of join conditions.
    Note that you cannot add an object, which you have already connected by using the left outer join operator, to another
    object.
    If you want to use an inner-join operator instead of the left-outer join operator, select the object that you want to
    connect, and choose the Inner Join option from the context menu. Again the system displays all the valid join conditions that
    originate from this object, and labels the connecting lines accordingly.
    Result
    Once the join conditions have been defined in such a way as to connect all the available objects to one another, either
    directly or indirectly, the InfoSet is ready to be activated.
    You click on the Check pushbutton in the pushbutton toolbar to find out if these preconditions for the activation have been
    met.
    For objects that are joined by a left-outer join operator, there is one extra condition that has to be met, namely that all
    the other objects have to be connected to one another either directly or indirectly.
    http://help.sap.com/saphelp_erp2004/helpdata/en/ed/084e3ce0f9fe3fe10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/ed/084e3ce0f9fe3fe10000000a114084/content.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/a3/96663bd194a978e10000000a11402f/frameset.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/2f5aa43f-0c01-0010-a990-9641d3d4eef7
    Hope itr helps
    Regards
    Bala
    Also

  • SAP Query and infoset rename

    HI
    Is it possible to rename sap query and infoset at a same time instead of changing one by one.?
    Thanks
    reg
    cns

    Dear Sathya,
    SAP does not allow you to rename SAP Query & Info set at a same time.
    Note:
    The system has to lock the following objects before you are able to use the Rename SAP Info set function:
    User group catalog
    Info Set catalog
    Query catalogs for user groups to which the Info Set that you are renaming is assigned,
    Queries using this Info Set
    Once all these locks have been set, the system can carry out the function.
    Renaming an Info Set can, however, be very time-consuming. These locks may also prevent other users from working in the system for as long as it takes to rename the Info Set.
    Thanks & Regards
    Dinu

  • Sapquery , adhoc query and Infoset query

    any body having any material for ADHOC QUERY , SAP QUERY and Infoset query with detail explanation and steps for creation.
    plz forward it to me??????????

    hi,
       sap query r used to design reports to see the data according to our selections in this daa is fetched from diff tables its  much easier to desing reports using this
                 infoset query is somthign used with BI ints used to read data form PSA some temp storage loc
               if i am wrong someone correct me
    reward if useful
    ravi

  • Change in EIC Authentication Query and Infoset

    Hi
    There was a requirement to see "Bank Name" as an aunthetication ques/ans in the EIC Aunthentication query, so I changed the Infoset and added a addtional field in IT0009, and wrote code for the same.
    I added the field in the query and ticked on List field also, the answer reflects on the screen but the label 'Bank Name' does not reflect in QUes area.
    Any idea how to bring it there?
    Thanks
    Bhavna

    not required

  • Change area of query and infoset.

    Hello experts ,
    I have query and infoset that it save in client specific , if i want to transfer them into the Q.A system
    Which i must to save them to global area ? if yes , how can i to change area of query and infoset from client specific to global area without  create them from the beginning ?
    Thanks for your help.
    Avi.

    No relationships of any sort can exist between objects from different query areas
    You have to create the same query from beginning in Global area and then transport it as follows :
    1. By using the standard program u2018RSAQR3TRu2019
    2. By using the transport option available on the application bar in Transactions SQ02 or SQ03.
    Note : Order of transport should be :
                     User Group transport
                     Infoset transport
                     Queries transport
    Edited by: harsh bhalla on Mar 26, 2009 11:42 AM

  • Generic Extraction - query view and infoset query difference

    Hi Guys,
    I want to know the Generic datasource difference between Extraction from view and Extraction from Query .I have read some threads and documents, still i am not getting the exact difference.
    My understanding :
    Views: combination of tables to view the end result , we use views.
    Infoset query also with help of SQ01, 02, 03  : we combine tables to see the result.
    both use primary key to select the data.
    Please help me.
    Thanks ,
    Nithi.

    Hi Nithi ,
    When we build the datasource on the View
    View is basically a table in which you can take data from many table combniation  .
    in view you can specify the table join condtion and selection condtion
    View data gets updated as the data in the source table gets updated
    When we build the datasource on the Infoset
    Data source str gets filled from the infoset query .you need to use SQ01 and Sq02 transaction for this
    in infoset you can define the tables from which you want to read the date .There is also facilty to write ABAP code which will process the data and fill the the data source str using infoset query
    infoset query read the data from infoset and transfer to data structure
    Thanks
    Rajendra

  • How to create Infoset&user group query--(query report)

    Hi Guys,
      how to create Infoset&user group query--(query report),
      Pls send me the exact procedure with Example....
                                                                              Regards:
                                                                              Kumar .G

    goto SQ03 and create an User Group If U want to create Ur Own.
    Goto SQ02 to create Ur Infoset by Giving Logical database name or Simple Database table
    Then Choose What ever data U need to be included in The Qurey in field Groups.
    Then Generate the Infoset
    Now Assign the infoset to user group
    Now goto SQ01 and Click on Other user group Button and choose Ur user Group.
    Then in the USer group select Ur Infoset and then create Ur own Query and save this.
    Now select the infoset query and goto More functions under Query menu and Generate report name.
    Now Create a transaction code for the report name generated.
    Now use the Tcode.
    Hope U have got the basic idea of creating Queries.
    ~BiSu

  • 2 INFOSETs INTO ONE QUERY

    Hi all,
    I have created two infosets and was wondering if i can execute both of them in one query (ONE REPORT)?
    Thanks

    the multi provider is not working for me, im using common fields MATERIAL, PLANT and COMP CODE and FISCAL YEAR VARIANT. I initially tried to take all six Infoproviders in one Infoset but it seems that not all material numbers were showing. I tried the outer join and it worked for 3 infoproviders and as soon as i added the 4th IP it filtered the Material number down to 32 from 265. All 6 IP's have the MATERIAL and PLANT. What can i do in this situation?
    Edited by: DANIEL GREEN on May 30, 2008 6:11 PM

Maybe you are looking for

  • Only Financial modules implementation

    Hello Everybody, I have two different issues which I want to resolve and want to know what the best process would be. # New Implementation # Release 12.1.3 # One Company from another big ERP System to EBS # Other Companies from different legacy syste

  • Automate cable TV recording.....

    Hi, Does anyone know of a Macintosh program that will allow me to record Component Video through my BlackMagic Intensity pro like a DVR or VCR? I don't mind doing it the old fashioned way ie.; set the start time and tell it how long.... and then walk

  • Installing japanese fonts on solaris 8 system

    Hi All I have installed the japanese locale on my sparc solaris system. If i type locale -a ,it gives all the available locale.. But i dont know how to set up the japanese font on that system.. if any body knows about this issue Thanks

  • Application Infrastructure Management Survey

    We would like to know your opinions by getting your answers to this survey. Thank you in advance for your survey participation and feedback. thanks, Madhu Konety Go to: http://www.zoomerang.com/survey.zgi?ATKCTR8JG87H7LG5MHW7YXD5 Please click this li

  • Is Dreamweaver cs5 compatible with Windows 8

    Not Dreamweaver cs5.5, but cs5. Is it fully compatible with Windows 8?  It works with Windows 7.