ВопросКак сохранить файл на компьютере клиента в запросе AJAX

Здравствуйте Евгений

В Drupal 7 нужно решить задачу. Взять данные из таблицы, выгрузить в файл Excel и сохранить файл Excel на компьютере клиента. Данные экспортирую в файл Exel библиотекой PHPExel. Библиотека сохраняет файл на сервере. После того как файл сформирован, его нужно скачать на машину клиента и удалить.

  // Кнопка которая запускает процесс формирования файла
  $form['group_export_xls_submit'] = array('#type' => 'submit',
    '#value' => 'Экспорт в Exel',
    '#ajax' => array(
          'callback' => 'ajax_group_export_xls_callback',
        ),    
  );
 
function ajax_group_export_xls_callback ($form, &$form_state) {
 
    // Делаю запрос к базе данных
    ...............................   
 
    // Формирую файл Exel
    ...........................
 
    // Сохраняю файл Exel на сервере
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    $objWriter->save('test.xls');
 
    return array('#type' => 'ajax', '#commands' => $commands);  
}

Файл test.xls сформирован. Он лежит на сервере. Теперь нужно скачать его на машину клиента.
Руководство предлагает делать это так:

        // Redirect output to a client web browser (Excel5)
        header('Content-Type: application/vnd.ms-excel');
        header('Content-Disposition: attachment;filename="test.xls"');
        header('Cache-Control: max-age=0');
 
        // Сохранить в файле
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
        $objWriter->save('php://output');
        exit;

Внутри процедуры AJAX я не могу это сделать. Там формируются свои заголовки.
Как после выполнения запроса AJAX сразу запустить скрипт который читал бы сформированный файл на машину клиента ?
И как должен выглядеть этот скрипт ? Ведь страница с которой он выгружается не должна перегружаться