been trying the excel plugin, I can obviously do everything it can query. but once I want to start comparing, calculating stuff I often run into trouble due to cell data compatibility or cell data types being wrong. I used a vba script to convert some things to text , but run into issues with other formula’s then.
For instance, I query the inventory for one char and notice it’s not uniqued, I run a unique in a new column and then want to do a SUMIFS to calculate the correct values in another column for the things that I uniqued. doesn’t work, get 0 everywhere.
Is there a more in depth-guide on how to handle these issues ? The real power would lie in the ability to use all this data to do calculations and I feel am hitting walls all the time.
Assets are returned as unique item ids with the type_id attached, so for counting things you’d have to filter by CHARACTER_ASSETS().type.id and sum the CHARACTER_ASSETS().quantity to get a total number.
Each cell is it’s own entity with its own fields so the approach is often to FILTER for what you need, if the function doesn’t contain helping parameters (like asset has a type_id_or_type_name parameter to ease the need of filter by type.id, so a call for sum of all rifters in a characters inventory could look like =SUM(CHARACTER_ASSETS(char_id, “Rifter”).quantity)
Note that the asset search parameter is unique in the way that if the string is an exact match to a type, such as Rifter, it will pre-filter the data by the items type_id for the function to be quicker to respond vs. doing an unfiltered assets call that needs to resolve all items, and their locations before returning.
Usual search filter parameters are done by substring matching, with an optional strict boolean parameter. fx. =EVEONLINE.CHARACTER_BLUEPRINTS(char_id, “Cap Booster”) returns all blueprints containing the word capbooster, but if you do (char_id, “Cap Booster”, TRUE) it’s going to return N/A unless you change it to Cap booster 400. Maybe not the best example but .INVENTORYSEARCH(“Rifter”) vs .INVENTORYSEARCH(“Rifter”, TRUE) is a better one.