Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hideColumns/showColumns not working in Metadata API #3582

Closed
tsteur opened this issue Nov 26, 2012 · 8 comments
Closed

hideColumns/showColumns not working in Metadata API #3582

tsteur opened this issue Nov 26, 2012 · 8 comments
Assignees
Labels
Bug For errors / faults / flaws / inconsistencies etc. Major Indicates the severity or impact or benefit of an issue is much higher than normal but not critical.
Milestone

Comments

@tsteur
Copy link
Member

tsteur commented Nov 26, 2012

Hi,

I found those "hideColumns/showColumns" parameters in API documentation. As I do always display only one value in Piwik Mobile App, this could be an interesting way to reduce the amount of transferred data a lot.

When using showColumns + Metadata.getProcessedReport I get a division by zero.

URL:
http://demo.piwik.org/index.php?idSite=25&date=today&hideMetricsDoc=1&filter_sort_column=nb_visits&hideColumns=nb_visits&apiModule=VisitTime&apiAction=getVisitInformationPerServerTime&period=year&filter_limit=30&module=API&format=json&method=API.getProcessedReport&language=en&

Answer:

Warning: Division by zero in /home/piwik/www/demo.piwik.org/core/DataTable/Filter/AddColumnsProcessedMetrics.php on line 59 

Backtrace -->

#0 Piwik_ErrorHandler(...) called at [/home/piwik/www/demo.piwik.org/core/DataTable/Filter/AddColumnsProcessedMetrics.php:59]
#1 Piwik_DataTable_Filter_AddColumnsProcessedMetrics->filter(...) called at [/home/piwik/www/demo.piwik.org/core/DataTable.php:388]
#2 Piwik_DataTable->filter(...) called at [/home/piwik/www/demo.piwik.org/plugins/API/API.php:807]
#3 Piwik_API_API->handleTableReport(...) called at [/home/piwik/www/demo.piwik.org/plugins/API/API.php:723]
#4 Piwik_API_API->getProcessedReport(...) called at [:]
#5 call_user_func_array(...) called at [/home/piwik/www/demo.piwik.org/core/API/Proxy.php:190]
#6 Piwik_API_Proxy->call(...) called at [/home/piwik/www/demo.piwik.org/core/API/Request.php:128]
#7 Piwik_API_Request->process(...) called at [/home/piwik/www/demo.piwik.org/plugins/API/Controller.php:27]
#8 Piwik_API_Controller->index(...) called at [:]
#9 call_user_func_array(...) called at [/home/piwik/www/demo.piwik.org/core/FrontController.php:138]
#10 Piwik_FrontController->dispatch(...) called at [/home/piwik/www/demo.piwik.org/index.php:53]

Am I doing something wrong? Please login when calling this method.

"showColumns" doesn't crash but seems to be simply not working. If I unterstand it right, the report below should contain only "nb_visits" column.
http://demo.piwik.org/index.php?idSite=25&date=today&hideMetricsDoc=1&filter_sort_column=nb_visits&showColumns=nb_visits&apiModule=VisitTime&apiAction=getVisitInformationPerServerTime&period=year&filter_limit=30&module=API&format=json&method=API.getProcessedReport&language=en&

When using "showColumns" on reports like VisitsSummary.get I get another error:

Fatal error: Call to a member function getRows() on a non-object in /home/piwik/www/demo.piwik.org/plugins/API/API.php on line 920

http://demo.piwik.org/index.php?idSite=25&date=today&hideMetricsDoc=1&filter_sort_column=nb_visits&showColumns=nb_visits&apiModule=VisitsSummary&apiAction=get&period=year&filter_limit=30&module=API&format=json&method=API.getProcessedReport&language=en

Please also give feedback since which version those parameters are available.

@mattab
Copy link
Member

mattab commented Dec 12, 2012

Thanks for the report. Indeed it would help. Also this could help with SVG Maps which uses metadata API and only need a subset of columns.

hideColumns/showColumns are available since Piwik 1.8.4

@diosmosis
Copy link
Member

Hi @tsteur, if you want to show only one or more columns and hide the rest you'd use showColumns=column1,column2. If you wanted to hide one or more columns you'd use hideColumns=column1,column2. The two latter URLs are correct, but their output isn't. I'll look into what's causing the bug(s).

@diosmosis
Copy link
Member

(In [7696]) Fixes #3582, fix bug w/ showColumns/hideColumns params where processed metrics that shouldn't have shown in reports were shown.

@diosmosis
Copy link
Member

@tsteur I fixed the problem w/ the first two URLs. There's no problem for me w/ the third one (can't reproduce). Let me know if there are any lingering issues.

@mattab
Copy link
Member

mattab commented Dec 24, 2012

Looks good, just one feedback:

  • it should also remove the columns from others keys where they can appear eg. <metricsDocumentation>

@diosmosis
Copy link
Member

(In [7697]) Fixes #3582, apply hide/show metrics to metrics docs & metrics in processed reports.

@diosmosis
Copy link
Member

(In [7698]) Refs #3582, hide processed metrics w/ showColumns/hideColumns.

@diosmosis
Copy link
Member

(In [7699]) Refs #3582, fix bug in last commit.

@tsteur tsteur added this to the 1.10 - Piwik 1.10 milestone Jul 8, 2014
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug For errors / faults / flaws / inconsistencies etc. Major Indicates the severity or impact or benefit of an issue is much higher than normal but not critical.
Projects
None yet
Development

No branches or pull requests

3 participants