Как перенаправить после создания файла в SuiteScript 2.0 - PullRequest
0 голосов
/ 19 февраля 2019

Моя цель - перенаправить страницу после создания файла, но мой код ниже не создает файл, потому что он перенаправляет на другую страницу.Как я могу создать файл после перенаправления?Можно ли сделать это в сценариях на стороне сервера (Suitelet)?

Suitelet SuiteScript 2.0:

response.writeFile({
              file:loanPortFolio
            });

//There are no redirect before, only generate file, but because i can't generate again , 
//I need to refresh the page to generate again. so i Add this line of code to redirect me to same page.

 response.sendRedirect({
          type: http.RedirectType.SUITELET,
          identifier : 'customscript_loan_port_detailed_report',
          id : 'customdeploy_loan_portf_detailed_report',
          parameters: {
                    type : 'monthly'
                  }
 });

//Result? I can't generate because it redirect to another page -_-

1 Ответ

0 голосов
/ 22 февраля 2019

Простой ответ: у вас не может быть обоих: writefile и redirect: если один выполняется, другой будет «отменен».

Вы не указали полный код, но я предполагаю, чтовы используете форму в пакете и добавили кнопку отправки для своей формы, а в POST вы генерируете файл и используете writeFile.

Если это так, то один из способов достижения вашей целив посте, после генерации файла, вместо использования writeFile, вы можете добавить поле HTML в вашу форму и установить его значение примерно так:

'<a href=[url] target=_blank>Download file</a>'

с помощью: [url] - это ссылка, которую выможно получить из вашего файлового объекта (loanPortFolio).

При этом после отправки пользователь увидит ссылку, а поскольку target равен '_blank', файл будет сгенерирован в новой вкладке / окне и т. д.окно формы останется открытым и его можно будет использовать снова.

...