Introduction
Podio, in and of itself, is a great tool to digitalize and model your business data but it cannot use that data to make combinations, selections, decisions, ... in other words, create business logic. They do, however, have a tool in place that lets you add this logic manually. This tool is called calculations.
Calculations can do two things:
- It can add business logic involving data of the current item and any items referenced.
- It compensates for missing features in Podio (e.g. sections, filtering, ...)
In essence, a calculation is just another type of field you can add to an app. In this calculation field you can then write javascript code that can take data from other item fields and use this to create simple as well as very complex scripts. These scripts expend upon Podio in ways you never imagined. The possibilities are fairly limitless. Don't take our word for it, though, just watch the following video to get an idea. LINK TODO
Now, it is not our intention to teach you javascript. That would be too complex. We do, however, want you to have a high-level grasp of what a calculation consists of.
Creating a calculation
When you want to create a calculation, you need to ask yourself the following questions:
What inputs will do I need?
Inputs are data from other app fields. All different kinds of fields can be used in calculations (even other calculations)
1. What inputs will you use (may be none). What types do they have? Are there incoming/outgoing relations?
2. What output TYPE do I want (text, number, date)
3. What output do I want?
- detail point 1) Inputs
- inputs have 4 types (maybe here too make a spreadsheet with first column screenshot of fields, then 4)
- text: text / text calculation / location / category / unique id (metadata) / created by (metadata)
- number: number / number calculation / money / duration / progress
- date: dates / date calculations / created on (metadata)
- arrays (lists): multiple category, linked ALL OF fields. In these arrays we can then find again
- you only have fields of the current app + 1 level down
- with the level down you can get (maybe make a small google spreadsheet overview tabel with V and X )
- ALL of ... for text/number/dates
- ALL of ... with nulls for text/number/dates. (short example for the difference?)
- Sum / avg for numbers (not dates/texts)
- min / max for numbers/dates (not texts)
Sidenote, you can never get the relation item directly. You always fetch a field within that relation. For example, you cannot get the car brand by itself. You can only get the car brand name, the car brand country, ...
know the difference between incoming and outgoing (maybe screenshot with 1 example. Car brands + car models app. The brand thus has incoming car model items)
- detail point 2
- text: useful to combine different fields, sorting, , (NOT FILTERABLE)
- number: to calculate total hours, $, ... Or to add custom filters
- dates: when working with deadlines, invoice dates, ... Can optionally be shown in calendar
- detail point 3
- That's enterily up to you. Get inspiration from our EasyCal library of examples
Comments
0 comments
Article is closed for comments.