Answers.Body: <p>I think there are a couple things in civi that unintentionally depend on civicontribute. Easier to hide/remove menu items than fight it.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-07T20:49:57.723Z
Answers.Text: though i would suggest these were intentionally dependent - certainly any membership process that involves payments has to involve civicontribute
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-07T20:56:46.213Z
Answers.Text: Agreed but I think there are some paths where it's all free stuff even when only handled through the backend that still hit code like this. Not sure if this particular one is one of them but I've seen that kind of dependence before.
Answers.UserDisplayName: Demerit
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-09T18:35:06.123Z
Answers.Text: @petednz-fuzion, You are right. But in our situation we do not care what the contribution is, as it is the responsibility to each member organization to set it and get it.
Answers.UserDisplayName: Webmaster COVS
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-09T18:36:29.937Z
Answers.Text: Furthermore, if this is a coupled dependency, then why bother splitting it into two components (and have the hassle when one of them is disabled)?
Answers.UserDisplayName: Webmaster COVS
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-09T18:38:02.270Z
Answers.Text: Issue found: https://lab.civicrm.org/dev/core/-/issues/702
Answers.UserDisplayName: Webmaster COVS
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-10T18:14:05.553Z
Answers.Text: A lot of users may require Contribution but not Membership. it is the other scenario that causes problems. perhaps if a simple msg was added saying something like CiviMembership (requires CiviContribute for paid memberships) ?
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-06T18:08:15.613Z
Answers.LastActivityDate: 2021-11-06T18:08:15.613Z
Answers.UserDisplayName: Demerit
Body: <p>I am experiencing another problem with Price Sets and Financial Types after upgrading from 5.42.1 to 5.43.0. These seems to be due to enabling and disabling CiviContribute in the past.</p>
  <p>The latest problem is not being able to update a membership:</p>
  <p><code>TypeError: Argument 1 passed to CRM_Financial_BAO_Order::setPriceSetID() must be of the type int, null given, called in /home/covsa/domains/a.covs.nl/public_html/sites/all/modules/civicrm/CRM/Financial/BAO/Order.php on line 902 in CRM_Financial_BAO_Order-&gt;setPriceSetID() (regel 465 van /home/covsa/domains/a.covs.nl/public_html/sites/all/modules/civicrm/CRM/Financial/BAO/Order.php). </code></p>
  <p>Trying to create a new price set:</p>
  <p><code>SELECT id, entity_id FROM </code>civicrm_entity_financial_account<code> WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id' at line 4]</code></p>
  <p>Now if I enable CiviContribute, the problems vanish.</p>
  <p>What should I do?</p>
  <ul>
  <li>try to solve these leftovers;</li>
  <li>enable CiviContribute but prohibit users to use it.</li>
  </ul>
  
Tags: <civicontribute><civimember><price-sets><financial-types>
Title: Disabling CiviContribute causes problems
ThreadText: # Disabling CiviContribute causes problems
  
  (Asked by: username_0 on 2021-11-06)
  
  I am experiencing another problem with Price Sets and Financial Types after upgrading from 5.42.1 to 5.43.0. These seems to be due to enabling and disabling CiviContribute in the past.
  
  The latest problem is not being able to update a membership:
  
  `TypeError: Argument 1 passed to CRM_Financial_BAO_Order::setPriceSetID() must be of the type int, null given, called in /home/covsa/domains/a.username_0.nl/public_html/sites/all/modules/civicrm/CRM/Financial/BAO/Order.php on line 902 in CRM_Financial_BAO_Order->setPriceSetID() (regel 465 van /home/covsa/domains/a.username_0.nl/public_html/sites/all/modules/civicrm/CRM/Financial/BAO/Order.php).`
  
  Trying to create a new price set:
  
  `SELECT id, entity_id FROM` civicrm\_entity\_financial\_account `WHERE ( account_relationship = AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AND entity_table = 'civicrm_financial_type' ) ORDER BY entity_id' at line 4]`
  
  Now if I enable CiviContribute, the problems vanish.
  
  What should I do?
  
  * try to solve these leftovers;
  * enable CiviContribute but prohibit users to use it.
  
  **Tags:** civicontribute, civimember, price-sets, financial-types
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2021-11-06. Score: 3
  
  I think there are a couple things in civi that unintentionally depend on civicontribute. Easier to hide/remove menu items than fight it.
  
  > **Comments:**
  > **username_2**: though i would suggest these were intentionally dependent - certainly any membership process that involves payments has to involve civicontribute  
  > **username_1**: Agreed but I think there are some paths where it's all free stuff even when only handled through the backend that still hit code like this. Not sure if this particular one is one of them but I've seen that kind of dependence before.  
  > **username_0**: @username_2, You are right. But in our situation we do not care what the contribution is, as it is the responsibility to each member organization to set it and get it.  
  > **username_0**: Furthermore, if this is a coupled dependency, then why bother splitting it into two components (and have the hassle when one of them is disabled)?  
  > **username_0**: Issue found: https://lab.civicrm.org/dev/core/-/issues/702  
  > **username_2**: A lot of users may require Contribution but not Membership. it is the other scenario that causes problems. perhaps if a simple msg was added saying something like CiviMembership (requires CiviContribute for paid memberships) ?  
  
  ---
  
  