# Report summarizing by every month based on an active date

We have a custom object which we call 'Subscription'. It has the following:

Start Date End Date

We would like a report which can give us a breakdown of 'Active' subscriptions for the next, say, 6 months, broken down by month. E.g.:

January 2013 Subscription 1 Subscription 2 February 2013 Subscription 1 Subscription 2 Subscription 3 March 2013 Subscription 3 April 2013 -- none May 2013 -- none June 2013 Subscription 4

and so on. If we get this basic structure then we can summarize by Subscription price to see how much we get for next X months and so on. Being quite new to this I am at a loss as to how to create such a report though I am sure it is possible. Can anybody help?

Many thanks, M

• It requires a logical approach. Did you tried something? – Ashwani Sep 1 '13 at 15:50
• Hi responsive - not sure what you mean by your comment? – user3707 Sep 2 '13 at 13:32

Are your subscriptions monthly? And do your Subscription records reflect this month-to-month renewal? You can get the report you want if this is true.

If each of your customer accounts has one Subscription record for every month of the subscription, you can create a report that's grouped by *Start Date" which would yield a report chart like the following.

• There is one subscription entry for the duration of the 'contract'. I.e. - a 12 month subscription will have a Subscription record with a start date of 01/01/2013, end date of 31/12/2013. We would want that subscription appearing in the report for Jan, Feb, Mar, Apr etc – user3707 Sep 2 '13 at 11:08
• In that case I'm not sure what you want is possible without additional customization or development. :-( In my mind the lesser evil would be to create a detail object to Subscription labeled "Subscription Month" (or similar) with a Start Date field, then add a trigger to adjust the related records to match whatever Start Date and End Date show in the Subscription. Reporting on the child object will allow you to get a chart like the one above. – Marty C. Sep 3 '13 at 3:37

Marty C's answer sounds like a good approach - create child objects under the subscription for each month (with the monthly subscription Dollar amount) and then report on them. You could create a button on the subscription that populates the child objects with the appropriate information (but you'll need to do some custom Apex coding to make it work).

A difficulty could arise if your subscriptions can change during the course of the term, then you would have to re-do your child objects. This would be fine, but you might lose your historical accuracy if you don't account for that.

If that isn't solving the problem, you may want to look at the Encore app. Encore is a renewals & subscriptions management app that’s built entirely on Salesforce.

http://www.kineticgrowth.com/encore-salesforce-renewals-subscriptions-billing/

Encore automatically creates and emails invoices based on your subscription billing requirements and gives you customizable reporting options. In addition, Encore can automatically process recurring payments. For example, it can automatically charge a customer’s credit card every month. And Encore can also provide a website/portal where customers can view their accounts on the web and make online payments. All entirely within Salesforce.

Here's the Encore AppExchange listing:

https://appexchange.salesforce.com/listingDetail?listingId=a0N30000007rRGLEA2

Month(Start_Date__c) + " " + Year(Start_Date__c)