Calgary is a list count data retrieval engine designed to perform analyses on large scale databases containing millions of records. One use case for a Calgary database in an App or Macro is to offer users certain predetermined criteria (e.g. geography) to select and then return the corresponding data to them. A back-end process can combine multiple data sources, format and pre-filter as needed, and load them into a Calgary database that can be queried quickly by the app or macro. This way, the bulk of the processing happens outside of the app or macro allowing data to be returned more quickly.
Within the app or macro, an Action tool is used to update values in the Calgary Input tool. In the below example, a List box tool is used to allow the user to select ZIP codes through the app interface which are then fed into the Calgary query to pull all records associated with the selected ZIP codes.
A macro works a little differently because it doesn't allow to build a custom list "behind the scenes". The list has to be built outside of the macro using a summarize tool and can then be fed into the macro:
Another option instead of a macro is the Calgary Join too l which allows users to join a list of values against a Calgary database. Depending on the size of the data, this might take longer to process than the macro option because it has to run a join against the database versus a query in the Calgary Input tool.