Answers.Body: <p>You can do that with SearchKit:</p>
  <p>See <a href="https://dmaster.demo.civicrm.org/civicrm/admin/search#/create/Contact?params=%7B%22version%22:4,%22select%22:%5B%22id%22,%22display_name%22,%22COUNT(DISTINCT%20Contact_Contribution_contact_id_01.financial_type_id:label)%20AS%20COUNT_Contact_Contribution_contact_id_01_financial_type_id_label%22%5D,%22orderBy%22:%7B%7D,%22where%22:%5B%5D,%22groupBy%22:%5B%22id%22%5D,%22join%22:%5B%5B%22Contribution%20AS%20Contact_Contribution_contact_id_01%22,%22INNER%22,%5B%22id%22,%22%3D%22,%22Contact_Contribution_contact_id_01.contact_id%22%5D,%5B%22Contact_Contribution_contact_id_01.receive_date%22,%22%3D%22,%22%5C%22this.month%5C%22%22%5D%5D%5D,%22having%22:%5B%5B%22COUNT_Contact_Contribution_contact_id_01_financial_type_id_label%22,%22%3D%22,%221%22%5D%5D%7D" rel="nofollow noreferrer">this link</a> on dmaster.</p>
  <p><a href="https://i.sstatic.net/wNJXD.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/wNJXD.png" alt="enter image description here" /></a></p>
  <p>If you don't see all the options, check you are on the latest release.  This works on current master which is 5.48.alpha1 (and maybe earlier).</p>
  <p>== edit ==</p>
  <p>From comments in chat, some may find a step-by-step explanation helpful. The SK interface is smart in that some options and parts of the interface are only shown if they are relevant given other selections, so the ordering is important.</p>
  <ol>
  <li>Go to <code>Search &gt; Search Kit &gt; New Search</code></li>
  <li>Click <code>+Entity</code> and select <code>Contact Contributions</code> (We want people with contributions meeting certain criteria.)</li>
  <li>Click <code>With (optional)</code> and change to <code>With (required)</code> (We aren't interested in people without any contributions)</li>
  <li>Click <code>Add Condition</code>, select <code>Date Received</code> (Condition fields become visible)</li>
  <li>Click <code>Pick Date</code>, select <code>Date Range</code> (Condition fields change)</li>
  <li>Click <code>Today</code>, select <code>This calendar month</code></li>
  <li>Click <code>Search</code> to see the results so far - should show Contact ID &amp; Display Name (If no results, try changing <code>This calendar month</code> to <code>This calendar year</code> etc)</li>
  <li>Click <code>Add</code> and select <code>Financial Type</code> under Contact Contributions. (We want to see financial types)</li>
  <li>Click <code>Search</code> again - should now show Financial Type as 'Donation', 'Event Fee' etc</li>
  <li>People with multiple contributions have multiple result lines.  We want one result line per person, so click <code>Group By</code> and select <code>Contact ID</code>. Note that the <code>Having</code> box is displayed now.</li>
  <li>Click <code>Search</code> again. There is one result line per person and those with multiple contributions show a list of financial types (eg 'Member Dues, Event Fee')</li>
  <li>Click <code>Field Transformations</code> to expand that section.</li>
  <li>Click <code>List</code> in front of 'Financial Type' and change to <code>Count</code>. (We want a number, not a list)</li>
  <li>Tick the <code>Distinct</code> checkbox. (We want the number of different types, not the total number of contributions)</li>
  <li>Click <code>Search</code> again and it should show '1', '2' etc for the number of financial types</li>
  <li>Now filter this list to only show the entries with '1': Click <code>Having</code> and select <code>(Count) Contact Contributions: Financial Type</code> and enter <code>1</code> in the box after <code>=</code></li>
  <li>Click <code>Search</code> - then <code>Save</code> if you want to.</li>
  </ol>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-09T19:36:08.067Z
Answers.Text: nice - great that SearchKit is able to answer these types of questions
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-09T13:51:58.377Z
Answers.LastActivityDate: 2022-02-15T16:41:58.483Z
Answers.LastEditDate: 2022-02-15T16:41:58.483Z
Answers.UserDisplayName: Aidan
Body: <p>we have an umbrella organisation that accepts donations (contributions) for multiple financial types (Artist 1, Artist 2, etc.). Some donors may contribute to more than one financial type.</p>
  <p>We want to find a way (report, search) to look for donors that have ONLY contributed to one financial type. That is, if they have donated to Artist 1 and Artist 2, we do not want to see that. How could one search for this?</p>
  <p>Something like find donor where # of financial types within certain date span has contributed to = 1 only financial type.</p>
  <p>Is this possible?</p>
  <p>Thanks,
  Steve Marfisi
  on behalf of Flyingbow</p>
  
Tags: <contributions><financial-types><searchkit>
Title: Multiple financial types from contributions - how does one search donors to find those that have contributed to only one financial type?
ThreadText: # Multiple financial types from contributions - how does one search donors to find those that have contributed to only one financial type?
  
  (Asked by: username_0 on 2022-02-08)
  
  we have an umbrella organisation that accepts donations (contributions) for multiple financial types (Artist 1, Artist 2, etc.). Some donors may contribute to more than one financial type.
  
  We want to find a way (report, search) to look for donors that have ONLY contributed to one financial type. That is, if they have donated to Artist 1 and Artist 2, we do not want to see that. How could one search for this?
  
  Something like find donor where # of financial types within certain date span has contributed to = 1 only financial type.
  
  Is this possible?
  
  Thanks,
  Steve username_0
  on behalf of Flyingbow
  
  **Tags:** contributions, financial-types, searchkit
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2022-02-09. Score: 4
  
  You can do that with SearchKit:
  
  See [this link](https://dmaster.demo.civicrm.org/civicrm/admin/search#/create/Contact?params=%7B%22version%22:4,%22select%22:%5B%22id%22,%22display_name%22,%22COUNT(DISTINCT%20Contact_Contribution_contact_id_01.financial_type_id:label)%20AS%20COUNT_Contact_Contribution_contact_id_01_financial_type_id_label%22%5D,%22orderBy%22:%7B%7D,%22where%22:%5B%5D,%22groupBy%22:%5B%22id%22%5D,%22join%22:%5B%5B%22Contribution%20AS%20Contact_Contribution_contact_id_01%22,%22INNER%22,%5B%22id%22,%22%3D%22,%22Contact_Contribution_contact_id_01.contact_id%22%5D,%5B%22Contact_Contribution_contact_id_01.receive_date%22,%22%3D%22,%22%5C%22this.month%5C%22%22%5D%5D%5D,%22having%22:%5B%5B%22COUNT_Contact_Contribution_contact_id_01_financial_type_id_label%22,%22%3D%22,%221%22%5D%5D%7D) on dmaster.
  
  [![enter image description here](https://i.sstatic.net/wNJXD.png)](https://i.sstatic.net/wNJXD.png)
  
  If you don't see all the options, check you are on the latest release. This works on current master which is 5.48.alpha1 (and maybe earlier).
  
  == edit ==
  
  From comments in chat, some may find a step-by-step explanation helpful. The SK interface is smart in that some options and parts of the interface are only shown if they are relevant given other selections, so the ordering is important.
  
  1. Go to `Search > Search Kit > New Search`
  2. Click `+Entity` and select `Contact Contributions` (We want people with contributions meeting certain criteria.)
  3. Click `With (optional)` and change to `With (required)` (We aren't interested in people without any contributions)
  4. Click `Add Condition`, select `Date Received` (Condition fields become visible)
  5. Click `Pick Date`, select `Date Range` (Condition fields change)
  6. Click `Today`, select `This calendar month`
  7. Click `Search` to see the results so far - should show Contact ID & Display Name (If no results, try changing `This calendar month` to `This calendar year` etc)
  8. Click `Add` and select `Financial Type` under Contact Contributions. (We want to see financial types)
  9. Click `Search` again - should now show Financial Type as 'Donation', 'Event Fee' etc
  10. People with multiple contributions have multiple result lines. We want one result line per person, so click `Group By` and select `Contact ID`. Note that the `Having` box is displayed now.
  11. Click `Search` again. There is one result line per person and those with multiple contributions show a list of financial types (eg 'Member Dues, Event Fee')
  12. Click `Field Transformations` to expand that section.
  13. Click `List` in front of 'Financial Type' and change to `Count`. (We want a number, not a list)
  14. Tick the `Distinct` checkbox. (We want the number of different types, not the total number of contributions)
  15. Click `Search` again and it should show '1', '2' etc for the number of financial types
  16. Now filter this list to only show the entries with '1': Click `Having` and select `(Count) Contact Contributions: Financial Type` and enter `1` in the box after `=`
  17. Click `Search` - then `Save` if you want to.
  
  > **Comments:**
  > **username_2**: nice - great that SearchKit is able to answer these types of questions  
  
  ---
  
  