- Pharmacy Base
- Covered Pharmacy
- Pharmacies with Availability
- Penetration
- Availability Checks
- Availability Checks with Availability
- In Stock
- Orders
- SKU
- Brand
- Control Check Brand
Pharmacy Base
- Only organizations classified as Point of sale are included.
- All active filters affect calculations.
Displays the total number of pharmacies included in the selected reporting scope. Represents the target pharmacy universe used for coverage and penetration analysis.
DAX Formula
CALCULATE(
DISTINCTCOUNT(crm_owner_v2_csv[key_cleint_id]),
crm_company_dictionary_v2_csv[Sales Point] = "Point of sale"
)Calculation Logic
Calculates the unique number of pharmacies (sales points) assigned to the selected reporting scope.
Covered Pharmacy
- Only completed visits are included.
- Multiple visits to the same pharmacy are counted once.
- Only organizations classified as Point of sale are included.
Displays the number of pharmacies visited during the selected reporting period. Measures pharmacy coverage achieved by field activities.
DAX Formula
CALCULATE(
DISTINCTCOUNT(crm_task_fact_v2_csv[key_cleint_id]),
crm_company_dictionary_v2_csv[Sales Point] = "Point of sale",
crm_task_fact_v2_csv[key_task_isfinish] = 1
)Calculation Logic
Calculates the unique number of pharmacies where at least one completed visit was recorded.
Pharmacies with Availability
- Availability is confirmed when control_float1 > 0.
- Results depend on selected brands and filters.
Displays the number of pharmacies where product availability was confirmed during visits. Measures product presence across covered pharmacies.
DAX Formula
VAR ClientsWithAvail =
CALCULATETABLE(
VALUES(crm_task_fact_v2_csv[key_cleint_id]),
crm_company_dictionary_v2_csv[Sales Point] = "Point of sale",
KEEPFILTERS(crm_companypreparation2_csv[control_float1] > 0)
)
RETURN
CALCULATE(
DISTINCTCOUNT(crm_owner_v2_csv[key_cleint_id]),
TREATAS(ClientsWithAvail, crm_owner_v2_csv[key_cleint_id])
)
Calculation Logic
Calculates the unique number of pharmacies where product stock is greater than zero.
Penetration
- Calculated only for covered pharmacies.
- Recalculated dynamically when filters are applied.
Displays the percentage of covered pharmacies where the selected product or brand is available. Measures how widely the product is represented within visited pharmacies.
DAX Formula
DIVIDE([Pharmacy with avail], [Pharmacy visited])Calculation Logic
Calculates the ratio of pharmacies with confirmed availability to visited pharmacies.
Availability Checks
Displays the total number of performed availability checks. Measures execution of pharmacy audit activities.
DAX Formula
COUNTROWS(
FILTER(
crm_companypreparation2_csv,
NOT(ISBLANK(crm_companypreparation2_csv[control_flag2]))
)
)Calculation Logic
Counts all records where availability information was entered.
Availability Checks with Availability
Displays the number of availability checks where stock presence was confirmed. Helps evaluate actual product availability across pharmacies.
DAX Formula
VAR AvailableCount =
COUNTROWS(
FILTER(
crm_companypreparation2_csv,
crm_companypreparation2_csv[control_flag2] = 1
)
)
RETURN AvailableCountCalculation Logic
Counts all records where availability was explicitly confirmed.
In Stock
Displays the total stock quantity recorded during pharmacy checks. Provides visibility into product inventory levels in pharmacies.
DAX Formula
SUM(crm_companypreparation2_csv[control_float1])Calculation Logic
Calculates the sum of all recorded stock quantities.
Orders
Displays the total quantity ordered during pharmacy visits. Helps evaluate demand and ordering activity.
DAX Formula
SUM(crm_companypreparation2_csv[control_int1])Calculation Logic
Calculates the total ordered quantity recorded during pharmacy audits.
SKU
Displays the number of unique SKUs identified during pharmacy visits. Measures product assortment represented in pharmacies.
DAX Formula
DISTINCTCOUNT(crm_companypreparation2_csv[control_prep_id])Calculation Logic
Counts unique products recorded during pharmacy checks.
Brand
Displays the number of unique brands available in pharmacies. Measures brand presence and breadth of product representation.
DAX Formula
CALCULATE(
DISTINCTCOUNT(crm_sku_dictionary_csv[Brand]),
FILTER(
ALLSELECTED(crm_sku_dictionary_csv),
[Control check brand] > 0
)
)Calculation Logic
Counts unique brands for which at least one product was identified during pharmacy audits.
Control Check Brand
Technical flag used to determine whether a brand is present in the current filter context.
DAX Formula
INT(NOT ISEMPTY(crm_companypreparation2_csv))Calculation Logic
Returns:
- 1 if at least one product record exists
- 0 if no product records exist
Used internally in Brand calculations.