Отправил раньше времени:
генерирует скрипт для изменений/вставки/удаления и прямо из интерфейса ErWin можно запустить экспорт.
Но вот на другие удаленные точки этот скрипт приходится расскидывать вручную.
Complete Compare в ErWin ведь как раз это и делает, сравнивает структуру в ErWine и в базе, достаточно не отлынивать от рисования таблиц перед вставкой их в БД.
Возвратить таблицу можно еще так: CREATE OR REPLACE
FUNCTION admin.virtual_date_table(p_num_rows in INTEGER, p_start_date IN DATE, p_end_date IN DATE)
RETURN virtual_date_table_type
IS
l_data virtual_date_table_type := virtual_date_table_type();
l_step NUMBER := 1;
BEGIN
l_step := (p_end_date - p_start_date) / p_num_rows;
FOR i IN 1 .. p_num_rows
LOOP
l_data.extend;
l_data(l_data.count) := p_start_date + i * l_step;
END LOOP;
RETURN l_data;
END;
/
select * from table(virtual_date_table(5, sysdate-5, sysdate))
Он скроется, а после всех операций отобразится?
Просто скрытие через параметры уже есть: Sequence props(1);
props[0].Name = OUString::createFromAscii( "Hidden" );
props[0].Value <<= hidden;
Библиотека весит всего 39кб.
Много места занимают другие вещи:
— OOAPI.rdb: 7,3мб (ну это впринципе можно сгенерировать прямо на машине)
— куча либ самого офиса. Хотя все эти библиотеки уже должны быть, после установки опен офиса и их достаточно будет скопировать в корень программы.
Все необходимые либы и пример программы для OO 3.2 есть в продолжении статьи: narod.ru/disk/8667452001/oo.zip.html
Скомпилировать статическую либу никто не мешает, решается все изменениями свойств проекта.
а вы про getOOPath(), то там действительно не очень кроссплатформено :) Другие способы у меня не заработали. Представленный будет работать в Linux только под Wine
Триггеры, процедуры и пакеты только в ErWin не ведем.
Рисовать полезно, когда будет 5000 с лишним таблиц, это будет серьезная помощь.
генерирует скрипт для изменений/вставки/удаления и прямо из интерфейса ErWin можно запустить экспорт.
Но вот на другие удаленные точки этот скрипт приходится расскидывать вручную.
В комментариях есть примеры из других языков
Взять любой провинциальный город, там еще хуже чем в Тае, но еще плюс все прелести Российской жизни…
CREATE OR REPLACE
FUNCTION admin.virtual_date_table(p_num_rows in INTEGER, p_start_date IN DATE, p_end_date IN DATE)
RETURN virtual_date_table_type
IS
l_data virtual_date_table_type := virtual_date_table_type();
l_step NUMBER := 1;
BEGIN
l_step := (p_end_date - p_start_date) / p_num_rows;
FOR i IN 1 .. p_num_rows
LOOP
l_data.extend;
l_data(l_data.count) := p_start_date + i * l_step;
END LOOP;
RETURN l_data;
END;
/
select * from table(virtual_date_table(5, sysdate-5, sysdate))
Думаю скорей да.
images.yandex.ru/yandsearch?text=%D0%BC%D0%B8%D0%BB%D0%B8%D1%86%D0%B8%D1%8F
www.google.ru/images?client=opera&rls=ru&q=%D0%BC%D0%B8%D0%BB%D0%B8%D1%86%D0%B8%D1%8F&oe=utf-8&channel=suggest&um=1&ie=UTF-8&source=og&sa=N&hl=ru&tab=wi
Просто скрытие через параметры уже есть:
Sequence props(1);
props[0].Name = OUString::createFromAscii( "Hidden" );
props[0].Value <<= hidden;
Непонятно как его обратно показать :)
А так во всем этот вариант проще.
Много места занимают другие вещи:
— OOAPI.rdb: 7,3мб (ну это впринципе можно сгенерировать прямо на машине)
— куча либ самого офиса. Хотя все эти библиотеки уже должны быть, после установки опен офиса и их достаточно будет скопировать в корень программы.
Все необходимые либы и пример программы для OO 3.2 есть в продолжении статьи: narod.ru/disk/8667452001/oo.zip.html
Скомпилировать статическую либу никто не мешает, решается все изменениями свойств проекта.