|
Программирование >> Программирование баз данных
подлежащий импорту. Перетащите объект Execute Process Task из окна Toolbox на вкладку Control Flow главного окна. За этим практически ничего не последует, не считая того, что в службе SSIS будет добавлена задача Execute Process на вкладке Control Flow (рис. 19.3). PdckagcdtsK [Design] * Start Pcsge 1 Control Flow \ DsteFlo! Event Handers Package E>;pbrer Execute Process Т.., Puc. 19.3. Задача Execute Process Для уточнения свойств новой задачи необходимо дважды щелкнуть на пиктограмме, которая ее представляет, и открыть окно программы Execute Process Task Editor (рис. 19.4). Следует отметить, что в окне Execute Process Task Editor выполнено переключение на опцию Process, поскольку она позволяет ознакомиться с большим объемом информации, чем опция General, но в целом следует отметить, что в этом окне могут использоваться команды, описанные в табл. 19.3, для выполнения необходимых действий и задания требуемых параметров. Таблица 19.3. Команды, применяемые в окне Execute Process Task Editor Команда Настройка General Name GeneraHDescription Processt=> Executable Processt=>Working Directory GeneratelmportFile Подготовка текстового файла, предназначенного для импорта Вызов на выполнение сценария CreateimportText .vbs (перед именем файла сценария следует указать полное обозначение пути к этому файлу) Ввод обозначения рабочего каталога (может быть условно указан каталог С:\ или какой-то другой каталог по усмотрению пользователя; необходимо лишь следить за тем, чтобы неизменно использовалось одно и то же значение) I ExEcute Process Task Editor Configure the properties used to run a Wn32 executable or a batch File as part oF the package. General Expresskre В Process RequireFullFileName True Executable Arguments WorkingDirectory StdnddrdlnputVariable 5t5ndardOutputVariable StendardErrorVariable FailTaskTFReturnCodelsNotSuccess True SuccessValue 0 TimeOut 0 T <z г .Y.i ri -J f. r:- F r - jcessAf terTlmeC 111 WtfidowStyJe Normal RequireFutlFiteName Indicates whether the task fails when the executable is not found on the specified path. Cancel aelp Puc. 19.4. Окно Execute Process Task Editor □ teneratelmport i 1- File Puc. 19.3. Стрелка на прямоугольнике, обозначающем задачу j Generatelmport - File Execute J SQLT3!;k Puc. 19.6. Формирование связи между задачами После внесения изменений, описанных в табл. 19.3, щелкните на кнопке ОК. Следует отметить, что на вкладке Control Flow не появятся какие-либо существенные изменения, не считая того, что вместо прежнего имени задачи будет показано имя Generate Import File. Затем перетащите на вкладку Control Flow объект Execute SQL Task и выберите задачу GeneratelmportFile. В результате этих действий должна появиться стрелка, исходящая из нижней части прямоугольника, обозначающего задачу (рис. 19.5). Теперь необходимо выполнить довольно сложные действия. Щелкните на выходе задачи GeneratelmportFile, т.е. щелкните там, где начинается указанная небольшая стрелка. Перетащите курсор в верхнюю часть обозначения задачи Execute SQL Task, и графический редактор соединит эти две задачи (как показано на рис. 19.6). Обратите внимание на то, что направление стрелки показывает, как должен проходить поток выполнения. Рассмотрим, какие сведения представлены с помощью стрелки. Дважды щелкните на стрелке, чтобы открыть окно Precedence Constraint Editor (рис. 19.7). Precedence Constraint Editor А precedence constraint defines the wo&f\cv4 between two executabfes. The precedence constraint can be based on a combination of the execution results and the evaluation of expressions ь Constraint options Evaluation operation: Success Eaaresion: Multiple constraints IF the constrained task has multiple constraints you can choose how the constraints interoperate to control the execution of the constrained task. © Loal AND. All constraints must evaluate to True О Logical OR One constraint must evaluate to True Cancel Help Puc. 19.7. Окно Precedence Constraint Editor Обратите внимание на то, что в этом окне определено, при каких условиях должно произойти продолжение дальнейших действий согласно этому потоку выполнения. В рассматриваемом случае показано, что переход к выполнению задачи Execute SQL Task произойдет только при условии успешного завершения задачи GeneratelmportFile. Безусловно, могут быть определены дополнительные ветви потока выполнения, позволяюш;ие регламентировать действия, осуществляемые при таких ситуациях, как неудачное завершение предыдущей задачи, или предусмотрено выполнение второй задачи после завершения первой без учета того, была ли первая задача выполнена успешно или завершилась неудачей (иными словами, осуществление дальнейших действий, невзирая на то, чем завершились предьщущие действия). Щелкните на кнопке Cancel, чтобы выйти из этого диалогового окна, и дважды щелкните на обозначении задачи Execute SQL Task, чтобы открыть окно Execute SQL Task Editor (рис. 19.8). Необходимо отметить, что имя следующей задачи также было немного отредактировано. После этого щелкните на знаке минус (-) рядом с обозначением опции SQL Statement, чтобы открыть диалоговое окно Enter SQL Query (рис. 19.9). В рассматриваемом примере диалогового окна показано, как предусмотреть в запросе проверку того, существует ли таблица, и в случае положительного ответа удалить ее. После этого, зная о том, что создаваемая таблица уже не может существовать (поскольку, даже если бы она существовала, была только что удалена), можно перейти к дальнейшим действиям и создать соответств)тошую таблицу назначения. Наконец, необходимо определить соединение, предназначенное для обмена данными. Для этого щелкните на опции Connection в окне, показанном на рис. 19.8, и выберите команду New Connection.... В результате откроется окно Connection Manager, которое уже рассматривалось в данной книге (рис. 19.10). На рис. 19.10 показан пример заполнения окна Connection Manager, соответствующий конфигурации, применяемой автором. В случае необходимости внесите изменения с учетом применяемой вами конфигурации. Прежде всего может потребоваться ввести другое имя сервера
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |