Document toolboxDocument toolbox

Measuring Microbizz

It is assumed that it is sufficient to know the number of times a module / functionality has been used in the last few months.

When a measurement says “recent” it means “within the last 3 months” unless else is stated. Likewise if a measurement involves counting the number of times a file was accessed.

The speed logs, DB logs and API logs are usually stored for 4 months. Access to specific files can be extracted from the LogProfile data, see below.

Many functionalities are used rarely even though they may be important to the customer. E.g.. subscription that generate an invoice every 6 months.

I suggest that we generate and store the measurements every week or every other week, even though many measurements cover months of usage.

Modules (web)

For modules the info can be extracted from the LogProfile data that is collected on system15. The file /var/log/mb/summaryCCCC_YYYY-MM-DD.log holds a JSON encoded list of which scripts were called in each 5 minutes period of the date. CCCC is a contract number, YYYY-MM-DD is a date.

We can simply look in this list for scripts named sys/MODULE/.

Modules (app)

Perhaps Andreas should be consulted. It is probably not possible to extract the info from the existing data, so we will need the app to report this in some way.

Functionality

A functionality is assumed to be in use if it is enabled and the conditions listed below are fullfilled.

Task module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Accord-system

Number of times /sys/todo/settleaccord/ has been accessed

not relevant

Anchor budgets

Number of AnchorBudgets objects that have been changed within the last month

Number of recent API calls to GetAnchorBudgetsByLastChange

Checkpoints

Task setting ‘Check lists?’ must enabled; number of recent entries in DB table ‘todo_check_log’

not relevant

Extended image functionality

Number of times /sys/report/imagelocation/index.php has been accessed

not relevant

Gantt diagrams

Number of times /sys/todo/details/gantt/ has been accessed

not in API

HTML description

Used whenever you edit a task, so number of times /sys/todo/edit/ has been accessed

not relevant

Microbizz Innovate

Number of times /sys/todo/hitlist/xnet/ has been accessed

not relevant

Repeated tasks (exact)

Number of recent tasks of this type, plus number of recent hour registrations on a task of this type

same as for web

Repeated tasks (loose)

Number of recent tasks of this type, plus number of recent hour registrations on a task of this type

same as for web

Subcontractors

Number of recently edited tasks where the subcontractor field is set

same as for web

Task budget

Number of recent TodoBudgetPosts

not in API

Task estimate matrix

Number of TodoEstimate matrices objects

not in API

Task maps

Number of times /sys/todo/details/map/index.php was accessed

not in API

Task projects (project v1)

Number of times /sys/todo/details/projedit/index.php was accessed

not in API

Task SLA

Number of tasks with SLA that was created within the last month

same as in web

Task SMS

No way to determine this

not in API

Workpools

Number of recent workpool entries in DB

same as in web

CRM module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Additional addresses

Number of recent addresses; number of recent tasks with “invoicetoaddress” set

not in app

CRM budget

Number of recent BudgetActivity objects; number of recent tasks that have the field ‘budgetactivityref’ set

not in API

Depot orders

Number of recent DepotOrderline objects

not in app

Floorplans

Number of MapLayer objects with context=”floorplan”

not relevant

Map functions

Number of times /sys/customers/details/map/ was accessed

not in API

Procedures

Number of times /sys/customers/details/procedures/ was accessed

not in app

Product numbers

Number of rows in the DB table “customer_productno_map”

not in API

Relations

Number of rows in the DB table “custrel_bindings”

not in API

Stocks

Number of recent InvoiceLines / InventoryTodoItem that have a stock

same as in web

Subscriptions

Number of CustomerSubscription that expire sometime in the future or expired less than 1 year ago

not in app

VAT no integration

Number of times /sys/customers/edit/fromcvr/ was accessed

not relevant

Hours module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Automatic registration

Number of users who have registration_policy=AUTOMATIC

not relevant

Custom registration

Number of recent Registration objects with non-empty values in the field customregistrations

same as in web

Re-assign

Number of times /sys/registration/reassign/ was accessed

not relevant

Sales module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Budget

Number of rows in DB tables “sales_userbudget” and “sales_teambudget” for this year or future years

not in app

Calls

Number of SalesCall objects for the future or less than 1 year ago

not in app

Campaign

Number of rows in DB table “sales_campaign2cust” where enterdate is less than 1 year ago

not relevant

HTML description in quotations

Number of SalesContract objects created within the last year

not in app

Interest

Number of rows in “sales_interest2cust”

not relevant

Quotations and orders

Number of SalesContracts with finishdate less than 1 year ago, plus number of active SalesContracts

not in app

Planning module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Capacity view

Number of times /sys/prodplan/capacity/ was accessed

not relevant

Full days

Number of times /sys/prodplan/fulldays/ was accessed

not relevant

Old version

Number of times /sys/prodplan/planedit2/ was accessed

not relevant

Route planning

Number of times /sys/prodplan/routing/suggest.php was accessed

not relevant

Routes

Number of RouteAssignment objects with a date in the future or less than 1 year ago

not relevant

Users modul

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Competences

Number of recent UserSkills objects

not in API

Linked accounts

Number of Exchange objects

not relevant

Salary

Number of times /sys/users/salary/export/ or /sys/users/salary/report/ was accessed

not relevant

Extranet module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Confirm files

Number of File objects where the field confirmreq has a value that is greater than 1685500000 (timestamp of summer '23)

not relevant

Extranet version 2

Number of times /x2/ was accessed

not relevant

Invoices module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Cost groups on invoice

Number of recent InvoiceExportLines where the field costgroupref is set

not in API

Discounts & profits & new product use

Number of recent InventoryTodoItem + InvoiceExportLine objects

same as in web

Fees on invoices

Number of recent InvoiceExportLines where the field reftype is = 3 (fee)

not relevant

Time extration

Number of times /sys/invoiceexport/customers/index.php or /sys/todo/doinvoice/index.php was accessed

not relevant

System module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Currency functions

Number of recent InvoiceExportLines where the field itemprice_foreigncurrency is set

not in API

Expression custom field

Number of CustomFields of the subtypes 4 or 6

not relevant

Form actions

Number of QuestionAction objects that belong to a QuestionForm that has been completed recently

not in API

Form scripts

Number of times obj/Question/php/executescript.php was accessed

not relevant

Layout

Number of rows in the DB table “layoutassignment”

not relevant

Mail-integration

(only mailimport, not EDI import or note import)

Number of “Mailimport - “ lines in system log

not relevant

New messages system

Number of recent Thread objects where the field modcode is empty

same as for web

New notes system

Number of recent Thread objects where the field modcode is set

same as for web

New UI

They use it if is enabled

not relevant

PDF

Assume it is used by most customers

not relevant

Script custom fields

Number of CustomFields of the subtypes 5

not relevant

Script plugins

Number of recent lines in the “app_events” log that start with “Executing script”

not relevant

Translations

Number of rows in the DB table “translations”

not relevant

Whitelist

Number of rows in the DB table “ipwhitelist”

not relevant

Project module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Gantt tab in projects

Number of times /sys/project/details/gantt/ was accessed

not relevant

Equipment module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Geofence

Number of recent ToolHistory objects where eventtype=GEOFENCE

not in API

Invoices

Number of recent ToolInvoice objects

not in API

Reservation

Number of recent ToolReservation objects

not in API

Service

Number of times /sys/tools/history/service.php was accessed

Number of recent calls to ToolServiceProtocol

Service agreement on equipment

Number of Tool objects where the field serviceagreement is set and which has a least 1 recent ToolHistory object

not in API

Work plan module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Lunch system

Number of times /sys/workplan/lunch/ was accessed

not relevant

Regional holidays

Number of future holidays where country is set

not relevant

Person module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Mail campaigns

Number of rows in the DB table “mcamp_hist” that are less than 6 months old

not in API

Roles

Number of Person objects where the field typeref is set

same as for web

Start module

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

News

Number of recent NewsInternal objects

not in API

On location

Number of times /sys/startpage/onlocation/ was accessed

not relevant

Other things

Functionality

How to measure (web)?

How to measure (app)?

Functionality

How to measure (web)?

How to measure (app)?

Mail import as one (on CRM, task and person)

Number of recent Custmail objects

not relevant

Stock

Number of recent StockItem objects

same as for web

Checkin on day

No way to determine this

Number of times DoDayCheckIn was called