calculation Monthly expense
i have an app where i create 1 item for each expense that and also capture the date when the expense happened. i have also categorized the expense. the categories are stored in a different app which is related to the expenses app. e.g. i have a category called Movies, and i can create multiple items in the expenses app related to Movies. i'm now trying to get a total of how much i spend on movies this month, but when i try to do that, i get a total oh how much was spent on Movies, but not specific to each month (or this month). i there a way i can get this calculation in Podio?

  • Hi Jacob, believe me, it isn't complicated :) Looks only complicated. You could copy my code and paste it into a calculation field. You only have to change the @fieldnames to your field names. Rainer
  • Hi Jacob, you can create a report in app view like Mitchell suggested, it's the fastest and easiest way. If you want it in a calculation field in the categories app you can do some nice things, e.g you can define the report period as you like. Create in the Expense Categories App 2 date fields: Report StartDate Report EndDate The code in the calculation field: var exp = @all of expense // the field with the amount; var expDate = @all of expense date; var start = moment(@Report StartDate).format("YYYYMMDD"); var end = moment(@Report EndDate).format("YYYYMMDD"); var reportAmount = 0 for(var i = 0; i < exp.length; i++){ if(moment(expDate[i]).format("YYYYMMDD") >= start && expDate[i]).format("YYYYMMDD") <= end){ reportAmount +=exp[i] }}; reportAmount This shows you the amount of expenses in the chosen period. You can also define fixed periods, e.g. current month, last month, last 2 weeks, this year - as you like it. You don't need the date fields for it. 2 Examples: Create a multi choice category field "Period" with categories (= fixed periods): current month, last month and 2 calculation fields. Calc field 1: current month var exp = @all of expense // the field with the amount; var expDate = @all of expense date; var period = @period var periodDate = moment().format("YYYYMM") var curMonthAmount = 0 for(var i = 0; i < exp.length; i++){ if(period.indexOf(moment(expDate[i]).format("YYYYMM") == periodDate){ curMonthAmount +=exp[i] }}; period.indexOf( "current month") > -1 ? curMonthAmount : "" Calc field 2: last month var exp = @all of expense // the field with the amount; var expDate = @all of expense date; var period = @period var periodDate = parseInt(moment().format("YYYYMM"),10)-1 var lastMonthAmount = 0 for(var i = 0; i < exp.length; i++){ if(moment(expDate[i]).format("YYYYMM") == periodDate){ lastMonthAmount +=exp[i] }}; period.indexOf( "current month") > -1 ? lastMonthAmount : "" You can use as many categories (periods) as you like. Everytime you select one of the categories the values will be updated. You can also have them all in one field. But if you have an own field for each period, you could create another app "Reports "with an own calculation field for each type of expense so that you have an overview of all expenses for a chosen period (which period you want to see, you can control in the "Report" app with a category field "Period" or with start/end Date fields - or with a combination of both). Rainer rg@delos-consulting.com
    Expand Post
  • Using reports you can accomplish this for this month and last month quite easily. Check out these resources: https://help.podio.com/hc/en-us/articles/204206708-Video-App-views-and-reports https://help.podio.com/hc/en-us/articles/201019638-Views-filters-and-reports You would create 2 views: One filtering the date field for current month One filtering the date field for last month I don't know if it would be worth coding this in a calculation field since reports makes it so easy. Mitch Ogden LevlUp
This question is closed.