Re: [pgAdmin4] [Patch] Implementation of the Data Grid and Query Tool

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: [pgAdmin4] [Patch] Implementation of the Data Grid and Query Tool
Date: 2016-04-06 14:58:53
Message-ID: CA+OCxoz4ejTML6cjwMvOLd7vg4Dcd1koz30StnH_huND61gdzg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi

On Tue, Apr 5, 2016 at 10:20 AM, Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com
> wrote:

> Hi All
>
> I have implemented the Data Grid and Query Tool as one component.
>
> *Functionality working for Data Grid*:
>
> - Add/Update/Delete rows if object is editable.
> - Copy row
> - Paste row
> - Refresh
> - Client Filter provided by the Backgrid.
> - Filter (User specified, By cell Selection, Exclude Selection
> - Add Limit to the query result
> - Download the data as CSV.
>
> *Todo's for the Data Grid*:
>
> - Find a way to select backgrid cell when rows are not editable. If
> backgrid rows are not editable then Filter by selection and Exclude
> selection won't work
>
> *Functionality working for Query Tool*:
>
> - Execute sql query.
> - Execute the Highlighted sql.
> - Cancel the running query.
> - Download the data as CSV
>
> *Todo's for the Query Tool*:
>
> - Open as SQL file.
> - Save to SQL file.
> - Auto Commit/ Rollback.
> - Output Panel should be resizable, so that user can
>
> Attached is the patch file. Please review it and let me know the review
> comments if any.
>

Initial feedback based on my playing with it, and discussion with Ashesh:

- The View Data menu option should be on the Object menu, which should
mirror the Context menu, except options should be disabled when not
applicable instead of hidden.

- The Query Tool menu icon should be a glyphicon, to match the others.

- Please merge the functionality of the Refresh and Execute buttons into
one button. We shouldn't have two buttons that do essentially the same
thing.

- In Edit Grid mode, the History panel should log all queries (SELECTs,
UPDATEs, DELETEs etc) as it would in the Query Tool.

- In Edit Grid mode, the Messages panel should display any messages from
the most recent action as it would in the Query Tool.

- Please add an SQL button. This should show/hide the SQL panel in *both*
Query Tool and Edit Grid modes. In Edit Grid mode, that textbox should be
read-only, but should display the SQL used (including any LIMIT/FILTER
clauses)

- Please remove the border from the SQL box, such that it fills all
available space.

- The Filter box should be in a modal overlay over the top of the SQL
box/Results tabs as required. Those elements should be grayed whilst it is
open.

- Please adjust the height of the Delete icon in the Edit Grid, such that
it doesn't force the row height to be higher than it should be.

- If a field has been edited, but not saved, can we highlight it somehow?
Maybe make the text dark blue?

- I think the names of the tabs are far too long. Can we change them to
"Query 1", "Query 2" etc, then rename them to the filename if the user
saves/loads a file?

- Ashesh and I discussed changing the History tab to be a grid, showing:
Date/Time, Query (first line only), Rows affected, Runtime and Status, in a
row per query executed. Ashesh suggested using a sub-form that can be
expanded for each row, which could show the full query and error details
(SQL State etc). New rows should be added to the top of the list.

- We should add an "Edit" button, which opens a drop-down menu. This would
eventually include options as found on the Edit menu in the pgAdmin3 query
tool, such as the "Clear SQL" option.

- Errors should be highlighted in the SQL box - a marker in the margin to
note the line, and spellcheck-style underlining for the error word.

- Query results should have spaces converted to "&nbsp;", so that proper
indenting is maintained (for example, on EXPLAIN queries).

- The "Add Row" button only works if you're on the last page of the
resultset.

- Can the "Copy Row" button also populate the clipboard with CSV data for
the row?

- In Edit mode, we need to be able to represent/set values to NULL.

- If I shutdown my pgAdmin server, then execute a query, I get no error, 0
rows displayed, and a message in the messages panel saying:

Total query runtime: 46 msec
3 rows retrieved.

If I restart the server, the query will execute correctly, however I should
see appropriate messages when it's not running.

- The layout of the result tabs should be maintained if new Query Tool or
Edit Grid tabs are opened.

Thanks!

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Surinder Kumar 2016-04-07 07:45:11 [pgAdmin4][Patch] - Disable PrivilegeControl for nodes visible under catalog
Previous Message Alexander Polyakov 2016-04-06 13:24:39 [Patch] Row level security support