3

Our memberships aren't being updated from "pending" to "current". I've done the following without success.

The membership status rules are as follows:

  • Pending--> start event is member since; end event is member since; ;
  • Current--> start event is start date; end event is end date; start event adjustment is 1 day; end event adjustment is 1 year.

I've run the job "update membership statuses" multiple times. There's a message under that job:

WARNING: Membership renewal reminders have been migrated to the Schedule Reminders functionality, which supports multiple renewal reminders. API Entity: Job API Action: process_membership

Summary of job is

finished execution of update membership statuses with result: Success (processed 291 records. Updated 0 records.)

I've also run the job "scheduled reminders", just in case

  • Could you post details of your membership status rules, from /civicrm/admin/member/membershipStatus?reset=1 ? Were the memberships pending because linked to pending contributions? If so, have the contributions been updated & if so, how? Which CiviCRM version? – davejenx Jul 16 '15 at 16:11
  • When you run the Scheduled Job (not reminder!) what do you get in its log? ie at civicrm/admin/joblog?jid=10&reset=1 – petednz - fuzion Jul 16 '15 at 20:30
  • Here are the membership status rules: – Marilyn Schiffman Jul 17 '15 at 23:10
  • Sorry for the last post, I thought I'd be able to paste to this window. – Marilyn Schiffman Jul 17 '15 at 23:12
  • Sorry for the last post, I thought I'd be able to paste to this window. The membership status rules are as follows: Pending--> start event is member since; end event is member since; ; Current-->start event is start date; end event is end date; start event adjustment is 1 day; end event adjustment is 1 year. Summary of job is "finished execution of update membership statuses with result: Success (processed 291 records. Updated 0 records.) – Marilyn Schiffman Jul 17 '15 at 23:17
1

Marilyn - I didn't see your CiviCRM version but from what I see (CiviCRM 4.4) status of members w/end date in the past is not changed from the initial status ('New') and the job logs 'success' every time after examining x 'memberships', updated 0 records. I suspect the job is only logging status- I'll try debugging, and send a patch. BTW, I tried this on the 'Demo' system (WP) and it seems to work.

So - have you checked the 'Membership Status Rules' (Administer>CiviMember>Membership Status Rules)? You have to set those rules up to make your memberships transition from one status to the next, there are optional grace periods etc. Also, what is the weight of your pending status rule? The 'weight' governs the order your memberships transition, another post had an issue w/that: https://forum.civicrm.org/index.php?topic=13921.0

Finally, there is this: http://wiki.civicrm.org:8090/confluence/display/CRMDOC22/Update+Pending+Memberships (mind you this doc is from 2009) HTH

1

I was having this problem or one like it. Some memberships were Expired that should have been in Grace, and running the CRON job "Update Membership Statuses" (in Scheduled Jobs /civicrm/admin/job) had no effect, even after I fixed a problem with the status rules. I found a recommendation to set membership status to NULL, because once status is Expired it can't go back to Grace, but PHPMyAdmin/MySQL wouldn't allow that because of some relationship (I'm not an expert). Solution was in a PHPMyAdmin Query to reset all memberships to New status, and then run the CRON job. I used:

UPDATE `civicrm_membership`
SET    status_id = 1 

Then I ran the CRON job manually from the Scheduled Jobs page (repeatedly until it stopped crashing from PHP timeout on shared hosting) until all 2300 memberships had processed—it worked!

1

Please be aware that updating the membership with a new status should give implications when the status is manually overridden. So if you are going to update this via the database, it would be a bit safer to use the following and then run the Update Membership Statuses job:

UPDATE `civicrm_membership`
SET    status_id = 1 
WHERE  is_override is NULL

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.