powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Вопрос по DataStage 8.7
9 сообщений из 9, страница 1 из 1
Вопрос по DataStage 8.7
    #37890501
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер!

Скажите пожалуйста можно ли считать из БД DB2 9.7 XLS-файл и по ходу работы преобразовать его в CSV-файл с помощью DataStage Designer?
На сервере где стоит DataStage Engine настроил XLS2CSV.
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37891323
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет. Да, скорее всего можно.
На будущее, DataStage Designer - это средство разработки, с помощью него преобразования не делаются.
они делаются подпроцессами движка на основании составленной вами логики. =)
Идея такова, надо попробовать конечно, но, должно полететь...
Ваша цель - вытащить значение вашего поля из БД в файл на файловой системе сервера.
Сделать такое можно автоматически, надо лишь настроить DB2 Connector таким, образом, чтобы значение поля передавалось не in-line, а by reference (делал такое с большими XML, тип данных Long* && ArraySize=1&& TransactionSize=1 && Transfer Block Size >= max (XLS-файл)).
При передаче by reference в самом значении поля будет путь к локально хранящемуся файлу, когда все файлы будут на сервере, вы сможете над каждым из них выполнить XLS2CSV, а потом переработать, как CSV-файл.
Сиквенс может быть примерно таким
Main Seq:
1. Задание чтения из базы
2. Вызов shell-команды для преобразования локальных файлов - XLS2CSV
3. Задание чтения CSV-шников.
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37891327
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем вы только так извращаетесь... =) В одной ветке импортируете в базу XLS, в другой вычитываете с помощью DS и конвертируете в CSV... Не судьба сразу передать на DataStage сервер. конвертнуть, разобрать и разложить, попутно сохранив исходный файл? Ну это так... Подумать.
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37891530
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hunterik,

Доброе утро!

Вы как всегда не заменимы. )
Проблема в том, что пользователи заполняют шаблоны(XLS) и в БД заказчика сделано так, что шаблоны хранятся в самой БД.
Это условие задачи, что уж тут поделать?! ))
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37893103
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер. А вот, кстати, у меня и не получилось сделать так, как предположил...
=) Locator оказался не путём к файлу, а указанием, как достать содержимое из базы...
Надо будет поднять старое, посмотреть, как я xml вываливал, возможно через xmlOutput, там есть Write to file... Не суть.

Второй вариант - на каждое значение PK в таблице с XLS дёргайте export, пока всё не выкачаете.
В противном случае, все lob-ы вываливаются в один файл, а может как-то можно сразу раздельно всё вывалить...

EXPORT TO /tmp/fake.out OF DEL LOBS TO /tmp/LOBS/ LOBFILE xls_lob_file_name select file from test.test where id = 1;

Когда всех переберёте, пробуйте конвертировать и парсить...
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37893206
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HunterikДобрый вечер. А вот, кстати, у меня и не получилось сделать так, как предположил...
=) Locator оказался не путём к файлу, а указанием, как достать содержимое из базы...
Надо будет поднять старое, посмотреть, как я xml вываливал, возможно через xmlOutput, там есть Write to file... Не суть.

Второй вариант - на каждое значение PK в таблице с XLS дёргайте export, пока всё не выкачаете.
В противном случае, все lob-ы вываливаются в один файл, а может как-то можно сразу раздельно всё вывалить...

EXPORT TO /tmp/fake.out OF DEL LOBS TO /tmp/LOBS/ LOBFILE xls_lob_file_name select file from test.test where id = 1;

Когда всех переберёте, пробуйте конвертировать и парсить...


Доброе утро!

Мысль примерно понятна, спасибо!
Но вы не можете объяснить как дергать команды ОС из Designer Client, дело в том что руководство хочет чтобы все запускалось через джобы.
И первый вариант тоже покажите пожалуйста. Спасибо еще раз.
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37893209
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadipok,

А еще я раньше работал на SAS, там можно было создавать самому Stage.
В DataStage есть такая возможность?
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37893217
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дергать команды можно разными способами, для примера несколько вариантов:
1. Wrapper Stage посмотрите - это для параллельных заданий.
2. Из Sequence - стандартный RunCMD стейджик есть...
3. Из Серверных можете дергать, например, из трансформера, вызывая DataStage Server Routine, которая пишется на Basic
через Designer, Programmer Guide вам в помощь, DSExecute вызов насколько помню, в данный момент глянуть не могу.
Routine-ка может дергаться и из Sequence-а. Имеющиеся примеры посмотрите в папке проекта.

Стеджи писать самому можно:
1. На С/С++, сам пока не писал, на Developer Works есть примеры.
2. Java (Java Client|Transformer), пишете свой собственный класс, расширяя предоставленные вам классы, описываете методы.
Java Pack документация, там чуток совсем, но всё нормально написано.
3. Build Stage - разработка новых стейджей через Designer, опять же за примерами - в доку. Отличие от 1, в ограниченности по некоторым параметрам (определение линков и т.д...)
4. Можете писать внешние Parallel Routine (C/C++), собирать до уровня объектника или либы, а потом, через DataStage Designer - cretate parallel routine, указываете, где лежит собранный объект и описываете входные, выходные параметры.
...
Рейтинг: 0 / 0
Вопрос по DataStage 8.7
    #37900091
vadipok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вдруг кому-то тоже надо будет

http://plkhatri.wordpress.com/author/plkhatri/
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Вопрос по DataStage 8.7
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]