Форумы Интермех
 ° Начало ° Ответить ° Статистика ° Регистрация ° Поиск ° RSS ° Wiki °

Форумы Интермех / Search, ImProject / Удалить файл из архива
Автор Сообщение
Algont
Участник
АЛГОНТ

Дата: 15 Мар 2013 09:57:07


К документу, который лежит в архиве (введен по извещению), прикреплен дополнительный файл размером где-то 300 МБ. Нужно ввести очередное изменение документа, но при попытке включить документ в извещение ничего кроме сообщения Insufficient memory for this operation не происходит. Архив в файловом шкафу под управлением СУБД Oracle. Виноват явно этот дополнительный файл.

Посоветуйте, пожалуйста, какое-нибудь решение. Собственно этот файл не очень нужен и хотелось бы его малой кровью просто убрать из архива не разломав всю базу.

Algont
Участник
АЛГОНТ

Дата: 15 Мар 2013 12:08:15


Если просто удалить злополучный файл из таблицы ADVANFILES?

LLirik
Участник
НПО "Автоматика"

Дата: 15 Мар 2013 12:09:37


Если можно, то лучше конечно Исключить дополнительный файл из документа. Когда возможностей Search не хватает, то можно полазить в саму базу.

Вы точно решили что файл вам не нужен?
Если не ошибаюсь тело файла хранится в таблице S4Linked, где ABS(FILE_ID) идентификатор документа к которому подключен. Удалять строки не надо(есть еще информация в таблице ADVANFILES).
По мне так находим в той же таблице любой другой файл поменьше, и переписываем поля FILESIZE и FILEBODY в интересующую нас запись (так как расширения доп. файлов вполне могут не совпадать то и открываться этот файл не будет, хотя создаваться вполне нормально). После этого можно взять документ на изменение и удалить доп. файл.
Как вариант.

Algont
Участник
АЛГОНТ

Дата: 15 Мар 2013 13:08:29 ° Поправил: Algont


Цитата: LLirik
Вы точно решили что файл вам не нужен?

Спасибо за ответ. Файл точно не нужен. Хотелось бы его совсем удалить. Как вы думаете, если в ADVANFILES и S4LINKED просто удалить соответствующие строки? В других таблицах следов дополнительных файлов нет?

LLirik
Участник
НПО "Автоматика"

Дата: 15 Мар 2013 18:16:00


К сожалению не знаю об отсутствии остальных следов, поэтому и предлагаю переписать данные и уже средствами системы почистить.

Теоретически можете запустить отслеживание SQL запросов на сервере и удалить любой тестовый доп. файл, проанализировать запросы при удалении и определите есть ли еще следы.

Ваш ответ

Bold Style  Italic Style  Underlined Style  Image Link  Insert URL 
...



Перед отправкой "нелатинского" текста проверьте кодировку броузера!
 » Логин  » Пароль 
 

На форуме сейчас: гостей - 1
пользователей - 0
Наибольшее количество посетителей: 87 [1 Янв 2017 02:23:26]
гостей - 87 / пользователей - 0


miniВВ © 2001-2022