compucorp / uk.co.compucorp.civicrm.pivotreport

CiviCRM Pivot table reporting solution
Other
8 stars 13 forks source link

Label translation mismatch #136

Open samuelsov opened 3 years ago

samuelsov commented 3 years ago

Data label don't match data. I suspect that it is only happening in translated instance.

In the example below, Contact ID is associated with a date field: Screenshot 2021-07-02 at 18-28-47 Membership Pivot Report ‹ Groupe BIM du Québec — WordPress

For now, the workaround I've found is to use the field names instead of the label but of course not ideal.

diff --git a/CRM/PivotData/DataMembership.php b/CRM/PivotData/DataMembership.php
index e5ef564..fb0a4f2 100644
--- a/CRM/PivotData/DataMembership.php
+++ b/CRM/PivotData/DataMembership.php
@@ -131,6 +131,9 @@ class CRM_PivotData_DataMembership extends CRM_PivotData_AbstractData {
           }
           $result[$group . '.' . $key] = $value;

+          // [SV] quick hack to avoid problem with label being mixed up
+          $value['title'] = $value['name'];
+
           if (is_array($value)) {
             $result[$group . '.' . $key]['optionValues'] = $this->getOptionValues($value);
           }

I suspect there is a ksort somewhere that mess the matching between labels and data.