Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Добрый день! Есть проблема: нужно данные отдной из таблиц базы sql-сервера(2005) выгрузить в excel. Вариант select, затем copy-paste отпадает, аариант с мастером экспорта-импорта тоже, так как пользователи не работают с SQL SERVER Management Studio.Процедура должна проводиться пользователем- щелчком кнопки на форме. Нашла вариант экспортнуть данные в excel, но данные экспортируются в папку на сервере, соответственно пользователь их не увидит. Как выгрузить данные на диск C:\ пользователя? Спасибо. |
9 апр 13, 09:39 [14154782] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
В самом Excel уже есть возможность соединится с sql server-ом и выбрать нужные данные. |
9 апр 13, 09:41 [14154793] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Да, спасибо, но пользователей этот вариант, скорее всего, не устроит. У них уже есть формочка, к которой работают не первый месяц. И на эту формочку хотят всего лишь добавить кнопку-расширить функционал. |
9 апр 13, 09:46 [14154805] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
А причем тут экспорт данных тогда ? |
||
9 апр 13, 09:48 [14154810] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Экспорт данных производится по кнопке. Нажали кнопку- получили табличку |
9 апр 13, 09:52 [14154830] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Т.е. у вас уже есть коннект к серверу ? Если да, то что мешает "формочке-кнопке" выгрузить результаты из этого коннекта в локальный файл ?? |
||
9 апр 13, 09:54 [14154850] Ответить | Цитировать Сообщить модератору |
Dima T Member Откуда: Сообщений: 15582 |
Надо в событие Click() кнопки написать чтоб прога послала запрос серверу и сохранила результат. На чем прога написана? |
||
9 апр 13, 10:00 [14154881] Ответить | Цитировать Сообщить модератору |
Scherbakov Member Откуда: Нижний Новгород Сообщений: 82 |
эт вам тогда на VBA-форум |
||
9 апр 13, 10:01 [14154884] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Описываю ситуацию более подробно: Есть приложение: WinForms+SQLServer. База приложения содержит данные о пользователях и их заявках на выполнение определенных работ. Доработка приложения состоит в том, чтобы данные из нескольких таблиц агрегировать и вывести в excel. Для пользователя этот процесс сводится к нажатию кнопки, которая производит выгрузку данных на их ЛОКАЛЬНЫЙ компьютер. Решение: 1. Создаем на сервере view, содержащую агрегированные данные 2. Создаем DTS- пакет, производящий выгрузку данных из view 3. Создаем процедуру, которая запускает DTS-пакет Проблема: при выполнении процедуры данные выгружаются не на комп пользователя, а на сервер. Если есть более простые варианты решения, буду благодарна за совет |
9 апр 13, 10:04 [14154903] Ответить | Цитировать Сообщить модератору |
Гость333 Member Откуда: Сообщений: 3683 |
См. 14154881 |
||
9 апр 13, 10:11 [14154939] Ответить | Цитировать Сообщить модератору |
Dima T Member Откуда: Сообщений: 15582 |
Вот приложение и должно решать эту задачу. Вопрос надо задавать в форуме по ЯП на котором написано приложение. Задача SQL сервера хранить данные и выдавать по их приложениям. Остальное задачи приложений. |
||
9 апр 13, 10:13 [14154943] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Если запускать DTS пакет на машине пользователя то и файл будет на локальном диске |
||
9 апр 13, 10:14 [14154945] Ответить | Цитировать Сообщить модератору |
angel_zar Member Откуда: Барнаул Сообщений: 902 |
Может вам посмотреть в сторону систем отчетов, что они далее с этим экселем делают??? Печатают и все??? |
9 апр 13, 10:39 [14155109] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Не хотела нагружать приложение, вот и решила действовать напрямую
А зачем тогда bcp, например? [quot Glory]
Если запускать пакет, то-да. Но пользователи пакеты не запускают. Я хотела, чтобы кнопочка приложения запускала процедуру, которая выполняет пакет. А если выполнить EXEC master..xp_cmdshell 'dtexec .....', то файлик сформируется на сервере |
||||||||||
9 апр 13, 10:53 [14155212] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
И что вам мешает то сделать, чтобы "кнопочка приложения" запускала пакет ? |
||
9 апр 13, 10:55 [14155220] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Ну в общем-то....надо пробовать |
||||
9 апр 13, 11:00 [14155260] Ответить | Цитировать Сообщить модератору |
Scherbakov Member Откуда: Нижний Новгород Сообщений: 82 |
talja, на событие нажатия боттона повесь вызов скрипта (я обычно на javscript пишу), а в скрипте хоть ДТС пакеты вызывай, хоть через stream данные в эксель пихай. да хоть не в эксель. |
9 апр 13, 11:14 [14155361] Ответить | Цитировать Сообщить модератору |
Dima T Member Откуда: Сообщений: 15582 |
Для админов. |
||
9 апр 13, 11:15 [14155371] Ответить | Цитировать Сообщить модератору |
talja Member Откуда: Krasnoyarsk Сообщений: 54 |
Glory, спасибо за совет- пакет ведь можно запускать и из Visual Studio. Правда, на деле решила вопрос так: закачала данные в Excel через RecordSet с помощью ADODB Connection Всем спасибо за участие! |
12 апр 13, 07:43 [14170673] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |