IBO Dues - Problem adding a new VOL item to an existing record that has already made a dues payment


Here is the scenario:

Have an existing record on Annual dues that has already made their yearly dues payment (Paid thru 12/31/08 on all relevent records). The member wants to add a VOL item after that initial dues payment.

The IBO is creating and adding the new subscription to the collection successfully, but when going through the normal motions to make the payment against the subscription object and pay the item, nothing is happening from a transaction perspective, no Trans records getting created, batch amount not getting updated, no actual transactions in the batch, etc. The new subsctiption record does get created in iMIS after the process is run. I am using the BillSingleNonDueSubs method after adding the VOL item to the subscription collection.

No errors are getting thrown, I have traced the process in SQL, and no internal SQL errors look like they are getting thrown either.

I have the code boiled down to focus on what I am trying to accomplish, I would be happy to provide that to you off line.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Bill, I've created this as

Bill, I've created this as an issue in our internal tracking system so it can be analyzed.

Can you send your source code to me at emeans@advsol.com, and reference "Issue 2372" in the subject line so I can add it to the issue?


Please check your code as follows

Using the sample code provided, and adjusting for our data, I noticed the following:

This statement:

Dim iboPay = Commerce.CSubscription.PayDues(iboWebUser, objSubRecCollection, iboPayObj, objBatch)

was failing because the iboContact.Subscriptions array was being passed to PayDues. PayDues() totals up the AmountPaid values for all CSubscriptions items, and compares it to iboPayObj.Amount. It created an error because these values did not match.

The error was not thrown as an exception because iboWebUser.ThrowExceptionOnError was not set to true. The error was not caught because iboPay was not checked.

If I set objSubRecCollection to be only the VOL type item being billed/paid, then PayDues was successful and the Trans records were created. I also had to ensure that iboWebUser's JoinDate and PaidThroughDate were set correctly.

I also noticed that the CSubscription for the VOL item is not saved after its Balance is set to 0.

Please see if your code is exhibiting the same behavior, and if the changes I made solve your problem. Thank you.