Re: [pgAdmin4][Pattch] - RM #3673 - "Download as .csv" F8 does NOTwork when one of joined files is a TEMPORARY file

Поиск
Список
Период
Сортировка
От Khushboo Vashi
Тема Re: [pgAdmin4][Pattch] - RM #3673 - "Download as .csv" F8 does NOTwork when one of joined files is a TEMPORARY file
Дата
Msg-id CAFOhELeLpXHsOfX95DXPtiiWbVe_adfnpbknv5ELSx1Huzakcw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [pgAdmin4][Pattch] - RM #3673 - "Download as .csv" F8 does NOTwork when one of joined files is a TEMPORARY file  (Dave Page <dpage@pgadmin.org>)
Ответы Re: [pgAdmin4][Pattch] - RM #3673 - "Download as .csv" F8 does NOTwork when one of joined files is a TEMPORARY file  (Dave Page <dpage@pgadmin.org>)
Список pgadmin-hackers
Hi Dave,

On Mon, Feb 18, 2019 at 4:49 PM Dave Page <dpage@pgadmin.org> wrote:
On Mon, Feb 18, 2019 at 10:51 AM Khushboo Vashi
<khushboo.vashi@enterprisedb.com> wrote:
>
>
>
> On Mon, Feb 18, 2019 at 3:08 PM Dave Page <dpage@pgadmin.org> wrote:
>>
>> On Mon, Feb 18, 2019 at 9:08 AM Khushboo Vashi
>> <khushboo.vashi@enterprisedb.com> wrote:
>> >
>> >
>> >
>> > On Thu, Feb 14, 2019 at 4:12 PM Dave Page <dpage@pgadmin.org> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Thu, Feb 14, 2019 at 6:56 AM Khushboo Vashi
>> >> <khushboo.vashi@enterprisedb.com> wrote:
>> >> >
>> >> > Hi,
>> >> >
>> >> > Please find the attached patch to fix the RM #3673 - "Download as .csv" F8 does NOT work when one of joined files is a TEMPORARY file
>> >> >
>> >> > To fix this issue, used the existing query tool connection instead of a new connection to download the CSV file.
>> >>
>> >> That side of it seems to work well, however, I can still attempt to
>> >> execute queries in the tool whilst it's running. We need to display
>> >> the same gray screen with the spinner whilst a CSV download is
>> >> executing as we do when a normal query is executing. We also need to
>> >> ensure the button bar behaves appropriately - e.g. the execute options
>> >> should be disabled, the cancel button should be enabled etc.
>> >>
>> > We use an iframe to download the CSV file. So, after attaching the proper URL to the iframe, the browser handles the download part.
>> > So, the main problem is catching the event after the download completes.
>> >
>> > Any suggestion?
>>
>> We only used the iframe because we wanted to make it run
>> asynchronously didn't we?
>
> Yes, that's right. By using iframe the query tool page remains as it is and side by side we download the file.
> So, now I can think of only one solution, to set a cookie just to verify that the report has been sent to the browser and the connection is now free now.

Are there no examples of people doing something similar on the
internet? Seems like it might be a common problem.

 
I have found 2 ways which are widely used to download the file:

1. Iframe
  - With this option, we can download the file without disturbing the current page which we have implemented, but the drawback is that the download part will be handled by the browser itself, so we can not catch the event where we can disable the query tool buttons and put the loader.
2. Anchor tag with Download attribute with AJAX
  - With this option, we can achieve what we required now. I have attached the patch for the same. One drawback, it is not supported on Safari 10 which is our supported platform. It is supported on Safari 10.1 and above

Or does it even matter once the download has begun?

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

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

Вложения

В списке pgadmin-hackers по дате отправления:

Предыдущее
От: Neel Patel
Дата:
Сообщение: [Patch]: Minor change in dependency_inventory file to generatelibrary file
Следующее
От: Akshay Joshi
Дата:
Сообщение: [pgAdmin4][Patch]: RM #3958 Query Tool commits after SELECTstatements regardless of 'Auto commit' setting