---
title: Admin/Developer info
slug: admindeveloper-info
createdAt: 2023-03-26T13:31:32.000Z
---

## Installation

To work its magic, QuickQuery overrides certain built-in components, which naturally increases the chance that it will cause a collision with existing customizations. To mitigate this issue, we took certain steps to ensure it's easy to make things work on customized instances.

### Client-side

On the client-side, QuickQuery overrides `BaseFilterLayout`, `BaseFilterQuicksearchView`,  `BaseFilterRowsView`, and `ProfileactionsView`. However, the actual implementations are extracted to a file in `vendor/` and get called from the overridden controller. This keeps the actual controllers clean and makes it easy to merge QuickQuery customizations with existing ones.

The names of the methods describe exactly when they should be called (in relation to the `_super` implementation), and from which method.

::Image[]{src="https://api.archbee.com/api/optimize/fRibh2_2NwaS_4MGgrZuA/0yetT3CvJxsYbDKztb5ys_devhelp.png" size="72" width="694" height="370" position="center" showCaption="false"}

Review the installation files to fully understand what needs to be done.

Additionally, QuickQuery overrides the handlebars template for `QuicksearchView` and PHP metadata for `ProfileactionsView`. It should be fairly straightforward to merge these with any customizations you may have implemented.

### Server-side

One the server-side, QuickQuery overrides the implementation of numerous APIs. As with the client-side, the actual code is implemented separately, and called by the overridden APIs. The code is extremely simple, and you should have no problem integrating it into your existing customizations.

::Image[]{src="https://api.archbee.com/api/optimize/fRibh2_2NwaS_4MGgrZuA/NzGyIMkSVIvY7565kZXzq_devhelp2.png" size="74" width="771" height="409" position="center" showCaption="false"}

Review the installation files to fully understand what needs to be done.

## Logging

To log the queries generated by QuickQuery, add the following to **`config_override.php`**:

:::BlockQuote
$sugar\_config\['quickQueryLogs'] = *true*;
:::

This will cause a "BEFORE" and "AFTER" section to be logged by QuickQuery, which shows the SQL generated by SugarQuery before and after QuickQuery does its magic. QuickQuery will also print the internal [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) generated by the query.

![](https://api.archbee.com/api/optimize/fRibh2_2NwaS_4MGgrZuA/hiCGVaCQ2F-nczHLo3bWA_logs.png)

