During my testing I have been unsuccessful at getting my desired results for a Campaign Target List export.
• For clarity I have defined 2 segments (Segment 1 and Segment 2)
• I am sharing a single query within the 2 segments (Last Gift $11-$20 – Catholic)
o This query is using the RFM definition business object and the NetContact
o When I run this query in ISA I get 69 records
• In the segment I am asking for segment 1 to retrieve 10 records
• Segment 2 will retrieve the rest
o I left this undefined in Segment 2 as stated by the documentation
o I have populated the segments and can see that the 2 segments have populated appropriately.
• Next I will setup my source codes for these 2 segments
• Source Code A is associated to Segment 1
• Source Code B is associated to Segment 2.
When I setup the Inserts and the Source definition within Source codes - I don't know which query type to use. Segment Definition or query. I think Segment Definition because I can select Segment 1 for Source Code A and it should retrieve the 10 records. But when I generate output - it fails - saying source code has empty source list. I go back to segments and look at Segment 1 and it has 10 records.
If I use the query definition and use the same query that I used in the segment definition (Last Gift $11-$20 – Catholic) - validation passes but I get all 69 records instead of 10 for Source Code A.
Segment Definition way to go
You should choose the segment definition query type for the reason that you have indicated - you can't 'split' the query results into 2 different groups other than using segmentation, or at least, that's the easiest way to do it.
I think the error has more to do with the source objects used for the query - you may get this error when the system can't identify a unique ID column in the query. What version are you working on?