![]() |
#1 |
Участник
|
![]()
У нас в документообороте участвует очень мнного файлов при хранении в одном каталоге возникают проблемы с администрированием.
привожу кусок кода, где каталоги организуются с учетом даты создания файлов т.е. файл созданный 14.04.04 порадет в директорию ../2004/04/ //Classes\Docu\archivePath // Параметр Date _date передается из метода // \Data Dictionary\Tables\DocuValue\Methods\path // дата соддания записи, на основании которой // затем возвращается путь к файлу типа // [что-то из настроек]\2002\07\ // Если такой путь отсутствует, он создается // Если вызов с пустой датой, то дата берется сегодняшняя PHP код:
// в класс Docu передается дата создания записи (сегодня), // на основании которой создается путь к файлу PHP код:
|
|
![]() |
#2 |
Участник
|
А в чем, собственно, вопрос?
![]() |
|
![]() |
#3 |
Участник
|
Собственно это ответ
![]() сама идея документооборота довольно интересна, но есть ряд неудобств. кстати еще есть баг в работе документооборота с виртуальными компаниями. если кому интересно - могу поделиться. ![]() |
|
![]() |
#4 |
Модератор
|
Цитата:
Изначально опубликовано mit
кстати еще есть баг в работе документооборота с виртуальными компаниями. если кому интересно - могу поделиться. ![]() ![]() PHP код:
|
|
![]() |
#5 |
Участник
|
Да нет же, приведенный код в начале топика не решает вопрос расширений (он у нас никогда и не возникал). Поясню еще раз проблему:
Есть папка, куда попадают файлы от документооборота - это базовая функциональность. У нас же в месяц в данной директории появляется ежемесячно примерно 1000 документов. Если заглянуть в недалекое будущее, нетрудно прикинуть, что через несколько лет у ОС начинаются проблемы с хранением. По поводу сервера w2k информации не встречал, но на '98 были ограничения - не более 1024. Понятно, что у w2k эта цифра больше, но все же. Попробуйте открыть директорию, где лежит пара - тройка тыс. файлов. Как быстро, после открытия директории, система позволит открыть любой из файлов? Еще одна проблема связанная с таким количеством файлов - это резервное копирование. Зачем архивировать несколько десятков тыс. файлов ежедневно? Можно это делать скажем раз в месяц, а ежедневно резервировать только последние 2-3 мес.(так как пользователи иногда возвращаются к этим документам и корректируют их). Так что, Vadik, это не баг, это модификация, позволяющая катологизировать документы в: папочка год, в ней папочки с месяцами, а уже в них сами файлы. Баг же в работе документооборота с виртуальными компаниями заключается в том, что если таблица входит в виртуальную компанию - то документ к ней не получтся прикрепить. Вернее получится, но при последующем открытии вы не увидите фашего документа. Система отрабатывает так: вы находитесь в компании dat, таблица - all. если прикрепляете документ к записи - документ метится как dat + RecId от записи из таблицы all... дальше думаю подолжать не стоит. ![]() |
|
![]() |
#6 |
Модератор
|
да я, в общем, в курсе..
![]() а в БД категорически не хотите хранить? |
|
![]() |
#7 |
Участник
|
Хранение в БД влечет за собой ряд неудобств. Например невозможно осуществить поиск по тексту в документе. понятно, что можно воспользоваться поиском по самой таблице, но это не совсем то, вернее совсем не то.
плюс размер базы, ну и главный наверное критерий - так исторически сложилось. ![]() |
|