|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
How to filter a dataset using relationships like a sqlcommandI have a dataset with many ralated datatables, i need execute filter that gives back datarows to me that gives back to me if outside the following SQL command. SELECT distinct GE_SERVICE_TYPE.SERVICE_TYPE_ID, GE_SERVICE_TYPE.DESCRIPTION FROM PS_PACKAGE_TYPE, CC_COMMERCIAL_PLAN, PS_PRD_MOTIV_PACKAGE, CC_PRODUCTS_BROCHURE, PS_PRODUCT_MOTIVE, GE_SERVICE_TYPE, PS_PRODUCT_TYPE WHERE PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = CC_COMMERCIAL_PLAN.PACKAGE_TYPE_ID AND PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = PS_PRD_MOTIV_PACKAGE.PACKAGE_TYPE_ID AND CC_COMMERCIAL_PLAN.COMMERCIAL_PLAN_ID = CC_PRODUCTS_BROCHURE.COMMERCIAL_PLAN_ID AND PS_PRD_MOTIV_PACKAGE.PRODUCT_MOTIVE_ID = PS_PRODUCT_MOTIVE.PRODUCT_MOTIVE_ID AND PS_PRODUCT_MOTIVE.PRODUCT_TYPE_ID = PS_PRODUCT_TYPE.PRODUCT_TYPE_ID AND GE_SERVICE_TYPE.SERVICE_TYPE_ID = PS_PRODUCT_TYPE.SERVICE_TYPE_ID AND (CC_PRODUCTS_BROCHURE.MARKETING_SEGMENT_ID = :MARKETING_SEGMENT_ID) Which is the best way to obtain this? Thanks beforehand for the collaboration. Greetings. Alvaro. Alvaro,
As I see it as this, why don't you than get it as a datatable fromt he databaseserver using this select? Cor Show quote "Alvaro E. Gonzalez" <AGonzal***@gmail.com> schreef in bericht news:OgjnEe0YGHA.3532@TK2MSFTNGP05.phx.gbl... > Hi, > > I have a dataset with many ralated datatables, i need execute filter that > gives back datarows to me that gives back to me if outside the following > SQL command. > > SELECT distinct GE_SERVICE_TYPE.SERVICE_TYPE_ID, > GE_SERVICE_TYPE.DESCRIPTION > FROM PS_PACKAGE_TYPE, > CC_COMMERCIAL_PLAN, > PS_PRD_MOTIV_PACKAGE, > CC_PRODUCTS_BROCHURE, > PS_PRODUCT_MOTIVE, > GE_SERVICE_TYPE, > PS_PRODUCT_TYPE > WHERE PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = CC_COMMERCIAL_PLAN.PACKAGE_TYPE_ID > AND > PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = > PS_PRD_MOTIV_PACKAGE.PACKAGE_TYPE_ID AND > CC_COMMERCIAL_PLAN.COMMERCIAL_PLAN_ID = > CC_PRODUCTS_BROCHURE.COMMERCIAL_PLAN_ID AND > PS_PRD_MOTIV_PACKAGE.PRODUCT_MOTIVE_ID = > PS_PRODUCT_MOTIVE.PRODUCT_MOTIVE_ID AND > PS_PRODUCT_MOTIVE.PRODUCT_TYPE_ID = PS_PRODUCT_TYPE.PRODUCT_TYPE_ID > AND > GE_SERVICE_TYPE.SERVICE_TYPE_ID = PS_PRODUCT_TYPE.SERVICE_TYPE_ID > AND (CC_PRODUCTS_BROCHURE.MARKETING_SEGMENT_ID = :MARKETING_SEGMENT_ID) > > Which is the best way to obtain this? > > Thanks beforehand for the collaboration. > > Greetings. > > Alvaro. Alvaro,
I am afraid that you have to wait for Linq to do this real in an efficient way. However, maybe sees somebody else a clue. Cor "Alvaro E. Gonzalez" <AGonzal***@gmail.com> schreef in bericht news:ujuWfu7YGHA.1228@TK2MSFTNGP02.phx.gbl... Hi,Because the collected data are not in a data base, they are in XML files that are loaded in the DataSet and must maintain this schema. I did select for better understanding. The schema picture : Cor Ligthert [MVP] wrote: Alvaro, As I see it as this, why don't you than get it as a datatable fromt he databaseserver using this select? Cor "Alvaro E. Gonzalez" <AGonzal***@gmail.com> schreef in bericht I have a dataset with many ralated datatables, i need execute filter that news:OgjnEe0YGHA.3532@TK2MSFTNGP05.phx.gbl... Hi, gives back datarows to me that gives back to me if outside the following SQL command. SELECT distinct GE_SERVICE_TYPE.SERVICE_TYPE_ID, GE_SERVICE_TYPE.DESCRIPTION FROM PS_PACKAGE_TYPE, CC_COMMERCIAL_PLAN, PS_PRD_MOTIV_PACKAGE, CC_PRODUCTS_BROCHURE, PS_PRODUCT_MOTIVE, GE_SERVICE_TYPE, PS_PRODUCT_TYPE WHERE PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = CC_COMMERCIAL_PLAN.PACKAGE_TYPE_ID AND PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = PS_PRD_MOTIV_PACKAGE.PACKAGE_TYPE_ID AND CC_COMMERCIAL_PLAN.COMMERCIAL_PLAN_ID = CC_PRODUCTS_BROCHURE.COMMERCIAL_PLAN_ID AND PS_PRD_MOTIV_PACKAGE.PRODUCT_MOTIVE_ID = PS_PRODUCT_MOTIVE.PRODUCT_MOTIVE_ID AND PS_PRODUCT_MOTIVE.PRODUCT_TYPE_ID = PS_PRODUCT_TYPE.PRODUCT_TYPE_ID AND GE_SERVICE_TYPE.SERVICE_TYPE_ID = PS_PRODUCT_TYPE.SERVICE_TYPE_ID AND (CC_PRODUCTS_BROCHURE.MARKETING_SEGMENT_ID = :MARKETING_SEGMENT_ID) Which is the best way to obtain this? Thanks beforehand for the collaboration. Greetings. Alvaro. Alvaro,
In addition to Cor's comments. What are you expecting back? It sounds like you want an Exception Join, Data Sets don't support Exception Joins in fact Data Sets don't directly support any join. There is a JoinView available as a sample DataView at: http://support.microsoft.com/default.aspx?scid=kb;en-us;325682 That you might be able to modify to do an Exception Join... If the (possibly modified) JoinView doesn't do what you want, I would probably simply iterate over each table copying selected rows I wanted to keep to a new data table. Alternatively I would iterate over each table deleting selected row that I did not want to keep. Depending on the percentage of the results compared to the input... -- Show quoteHope this helps Jay B. Harlow [MVP - Outlook] ..NET Application Architect, Enthusiast, & Evangelist T.S. Bradley - http://www.tsbradley.net "Alvaro E. Gonzalez" <AGonzal***@gmail.com> wrote in message news:OgjnEe0YGHA.3532@TK2MSFTNGP05.phx.gbl... | Hi, | | I have a dataset with many ralated datatables, i need execute filter | that gives back datarows to me that gives back to me if outside the | following SQL command. | | SELECT distinct GE_SERVICE_TYPE.SERVICE_TYPE_ID, | GE_SERVICE_TYPE.DESCRIPTION | FROM PS_PACKAGE_TYPE, | CC_COMMERCIAL_PLAN, | PS_PRD_MOTIV_PACKAGE, | CC_PRODUCTS_BROCHURE, | PS_PRODUCT_MOTIVE, | GE_SERVICE_TYPE, | PS_PRODUCT_TYPE | WHERE PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = | CC_COMMERCIAL_PLAN.PACKAGE_TYPE_ID AND | PS_PACKAGE_TYPE.PACKAGE_TYPE_ID = | PS_PRD_MOTIV_PACKAGE.PACKAGE_TYPE_ID AND | CC_COMMERCIAL_PLAN.COMMERCIAL_PLAN_ID = | CC_PRODUCTS_BROCHURE.COMMERCIAL_PLAN_ID AND | PS_PRD_MOTIV_PACKAGE.PRODUCT_MOTIVE_ID = | PS_PRODUCT_MOTIVE.PRODUCT_MOTIVE_ID AND | PS_PRODUCT_MOTIVE.PRODUCT_TYPE_ID = | PS_PRODUCT_TYPE.PRODUCT_TYPE_ID AND | GE_SERVICE_TYPE.SERVICE_TYPE_ID = PS_PRODUCT_TYPE.SERVICE_TYPE_ID | AND (CC_PRODUCTS_BROCHURE.MARKETING_SEGMENT_ID = :MARKETING_SEGMENT_ID) | | Which is the best way to obtain this? | | Thanks beforehand for the collaboration. | | Greetings. | | Alvaro. |
|||||||||||||||||||||||