Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Господа! Никто не поможет? Есть базовая функция возвращаюшая CLOB. Задача - вызвать из Forms-ов и результат функции записать в файл. Размер CLOB может быть до 20M. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 10:30 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Мне кажется, тут больше подойдет Reports. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 10:46 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
такой функции нет. Имеется ввиду одной функции (стандартной). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 10:59 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
а как насчет TEXT_IO? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:15 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
А можно по-подробнее о задаче? У тебя есть собственная функция на сервере, которая возвращает CLOB. Надо результат записать в файл на клиенте. Есть Forms. Если так, то предлагаю такой вариант. На сервере создаешь функцию, которая читает часть твоего CLOB (DBMS_LOB.SUBSTR) и возвращает ее как строку. Эту строку записываешь с помощью методов File I/O в файл. В цикле выполняешь операцию, пока не считаешь весь CLOB. Так как тип LOB - строковый, то проблем с типами файлов не должно быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:16 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Дело в том, что даже при выполнении триггера с текстом типа: declare v# clob; begin v#:=FunctionReturnClob(...); end; Формсы падают... :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:19 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Вот поэтому всю обработку перенеси на сервер. А в Forms возвращай Varchar2 - часть CLOB. Что-то типа: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:24 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Что касается TEXT_IO (как делается): Для записи в файл : 1.Объявить переменную управления файлом (file handle), которая будет служить указателем на файл для последующих обращений к процедуре TEXT_IO, чтобы манипулировать содержимым файла. 2.Открыть файл, вызвав FOPEN. Файл можно открыть для замены или для добавления текста. 3.Записать данные в файл, используя для этого процедуры PUT, PUTF или PUT_LINE. 4.Закрыть файл, вызвав FCLOSE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:28 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Получается, что функцию, которая возвращает clob надо вызывать столько же раз, сколько раз я буду доставать из нее varchar2? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:28 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
SqaimesЧто касается TEXT_IO (как делается): Для записи в файл : 1.Объявить переменную управления файлом (file handle), которая будет служить указателем на файл для последующих обращений к процедуре TEXT_IO, чтобы манипулировать содержимым файла. 2.Открыть файл, вызвав FOPEN. Файл можно открыть для замены или для добавления текста. 3.Записать данные в файл, используя для этого процедуры PUT, PUTF или PUT_LINE. 4.Закрыть файл, вызвав FCLOSE. Как пользовать TEXT_IO я в курсе. Проблема не в этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:30 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
vava04Получается, что функцию, которая возвращает clob надо вызывать столько же раз, сколько раз я буду доставать из нее varchar2?Да зачем! Вызывай один раз, сохрани CLOB в переменную пакета, а потом читай из переменной пакета ее части. И все... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:32 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Tolmachov Dmitiry vava04Получается, что функцию, которая возвращает clob надо вызывать столько же раз, сколько раз я буду доставать из нее varchar2?Да зачем! Вызывай один раз, сохрани CLOB в переменную пакета, а потом читай из переменной пакета ее части. И все... ок пробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:33 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Тем более, что для чтения нужен всего лишь локатор CLOB, а не сам CLOB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:34 |
|
||
|
CLOB и Oracle Forms 6i
|
|||
|---|---|---|---|
|
#18+
Sqaimesа как насчет TEXT_IO? я думал, что функция нужна в одном лице: получение CLOB и сохранение в файл. Вообще можно самому написать по получению CLOB это не сложон, типа указываешь таблицу, столбец и услвоия определения строки на вход, а она тебе CLOB или BLOB. А сохранить то не сложно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 11:46 |
|
||
|
|

start [/forum/topic.php?fid=51&msg=33601586&tid=1879329]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 393ms |

| 0 / 0 |
