Ежечасная загрузка и обработка данных с экспортом результатов в HTML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | *(Вопрос) Каждый час я бы хотел, чтобы SPSS автоматически загружал данные из регулярно обновляемой базы данных (через драйверы ODBC), обрабатывал бы их и записывал результаты в файл HTML-формата в заданную папку. *(Ответ) Автор: Frank van Rooij, размещено 22.11.2001 в новостной группе SPSS Я - новичок в написании скриптов, но этот вариант у меня работает (версия SPSS 10.0.7). Вам потребуется подготовить 1 файл синтаксиса (*.sps) и 1 файл скрипта (*.sbs) Файл синтаксиса имеет примерно такую структуру: Get FILE='C:\\temp\\Datafile.sav'. * Тут вам нужно будет вставить спецификации драйверов ODBC для импорта данных. FREQUENCIES var1 . * Это блок анализа. Скажем, вас интересуют частоты SCRIPT 'C:\\temp\\script1.sbs'. * В конце вызывается следующий скрипт: Скрипт выглядит примерно так: Sub Main ' Следующие команды выполнят экспорт выдачи в файл .html, причём ' каждая новая выдача будет записываться поверх старой: Dim objOutputDoc As ISpssOutputDoc Set objOutputDoc=objSpssApp.GetDesignatedOutputDoc objSpssApp.Alerts = False objOutputDoc.ExportDocument (SpssAll, "c:\\temp\\outputfile.spo", SpssFormatHtml, True) ' Следующие команды очистят ваше окно выдачи, ' чтобы подготовить его к следующему запуску синтаксиса: Set objOutputDoc=objSpssApp.GetDesignatedOutputDoc objOutputDoc.SelectAll objOutputDoc.Delete ' Теперь ждём 1 час... Wait(3600) ' 3600 секунд = 1 час ' ...теперь снова запускаем файл синтаксиса на исполнение ' (убедитесь, что к этому моменту не будет других открытых файлов синтаксиса): Dim objSyntaxDoc As ISpssSyntaxDoc Set objSyntaxDoc=objSpssApp.GetDesignatedSyntaxDoc objSyntaxDoc.Run End Sub Процедура остановится если вы просто закроете файл синтаксиса. |
Related pages
...