gifts2017

Символьные ссылки - Быстрый и удобный способ обновления регламентированной отчетности для программы 1с Бухгалтерия 7.7

Опубликовал Андрей (Bambor) в раздел Администрирование - Системное

Символьные ссылки - Быстрый и удобный способ обновления регламентированной отчетности для программы 1с Бухгалтерия 7.7
Данный способ обновления подходит тем, у кого есть несколько бухгалтерских баз с одинаковой системой налогообложения.


Системные требования:
Windows 2000, Windows XP, Windows 2003 Server, Windows Vista, Windows 2008 Server, Windows 7
Файловая система NTFS

Ключевые преимущества:
1. Обновляя регламентированную отчетность в одной базе, обновляются сразу все базы, для которых настроен этот способ обновления. Проводя обновление регламентированной отчетности в одной базе, происходит модернизация сразу всех баз, для которых...
2. Экономия времени на копирование файлов отчетности из одной информационной базы в другую, или же на обновление каждой базы по очереди.
3. Экономия места на диске, отчетность за несколько лет занимает внушительное количество мегабайтов, а если перемножить на количество бухгалтерских баз, то счет может пойти на гигабайты.

Символьные ссылки в деле:
Мало кому из пользователей Windows известно такое функция как Junction, и еще меньше пользователей применяют ее в жизни. Тем не менее, это очень полезная функция и в ряде случаев может избавить Вас от лишней траты времени.
Junction представляет собой функцию, которая позволяет на файловой системе NTFS создать виртуальную папку, которая будет ссылаться на другую папку на файловой NTFS любого диска в системе. (В Windows 7 ярким примером Junction является папка "Documents and Settings", которая ссылается на папку “Users” - это сделано для поддержания совместимости со старыми приложениями).

На практике это выглядит так:
На диске C: у нас есть папка “1с” в которой находятся две папки с бухгалтерскими базами “Сено” и “Солома”, нам известно, что регламентированная отчетность находится в папке “ExtForms”.
Предположим, что основной папкой с отчетностью у нас будет “C:\1c\Сено\ExtForms\”
В папке “Солома” мы удаляем папку с отчетностью “ExtForms” и делаем ссылку c таким же именем “ExtForms” на папку “C:\1c\Сено\ExtForms\”. Теперь записывая файл в папку “C:\1c\Сено\ExtForms\” он так же будет отображаться в папке “C:\1c\Солома\ExtForms\”.

Как это делается:
Увы, стандартных визуальных средств для этих целей в Windows не предусмотрено.
В Windows Server 2008, Windows Vista и Windows 7 это можно сделать при помощи команды mklink.
Для нашей ситуации команда выглядит вот так: “mklink /D /J C:\1c\Солома\ExtForms C:\1c\Сено\ExtForms”.
Для Windows 2000, Windows Server 2003 и Windows XP стандартной команды вообще нет, для этих целей нужно использовать дополнительную программу linkd из состава Microsoft Windows Resource Kit, или же более продвинутую версию junction.exe из состава Windows Sysinternals.

Сторонние программы для комфортной работы с Junction:
1. Я предпочитаю для этих целей команду ALT+F6 в программе FarManager.
2. Для программы Total Commander потребуется дополнительный плагин под названием NTFS Links.
3. В стандартном Проводнике рекомендуется использовать дополнительное расширение в виде программы Link Shell Extension.

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Александр Лыткин (TrinitronOTV) 24.03.12 11:48
2. v_id (v_id) 24.03.12 14:37
Автору спасибо за статью.
TrinitronOTV - в школу, язык учить.
3. ter ysb_ (ysb_ter) 24.03.12 16:38
Хотелось бы уточнить - правильно ли написан пример команды в разделе "Как это делается"
для тех условий, которые заданы в разделе "На практике это выглядит так":
“mklink /D /J C:\1c\Солома2\ExtForms C:\1c\Сено\ExtForms”.
Правильно "Солома" или всё-таки "Солома2" ?

Возможна ли аналогичная настройка для сетевой папки, например подключенной как сетевой диск ?
4. q_i 25.03.12 01:52
в некоторые моменты жизни очень в винде не хватало возможности сделать "ln -s", а оно оказывается есть! спасибо за инфу!
насчёт размещения отчётности в одной общей папке на несколько баз - тут главное не напороться на коллизии, когда из разных баз будет идти запись в одни и те же файлы в папке с отчётностью. как минимум под вопросом файл настроек отчётности.
5. Саша (Хряк) 25.03.12 08:45
будет ли работать обработка Обслуживание рагл.отчетности (из комплекта отчетности) для 2-й базы?
6. Дмитрий Литовченко (kompas-dm) 25.03.12 10:41
(0) Технология регламентированной отчетности прозрачна и универсальна.
Взял на обслуживание холдинг, а в нем более 70 преприятий...
Запустил эту технологию http://infostart.ru/public/21622/.
1. Вынести всю рег. отчетность в отдельный каталог
2. Привести в порядок реквизит "КаталогОтчетов" справочника "Фирмы" каждой ИБ: (ПрАТ "МЕН______Т ТЕХНОЛ_____З") -> Мен_хнол
(кратко, понятно, без пробелов и спец символов)
3. В каждой базе добавил константу "КаталогРегОтчетов", строка 30-50 "\\orion_plus\baCe1c\1C_REG\"
4. В каталог "1C_REG" поместил рег отчеты, теперь они общие для всех фирм:
ExtForms

Rp11q2.grp
Диллер
Легал
Резерв
Rp12q1.grp
Диллер
Легал
Резерв
и т.д .
4. Небольшая корректировка отчета (Отчеты.Регламентированные)

Процедура Заполнить()

....................

Если пустоезначение(константа.КаталогРегОтчетов)=1 тогда
предупреждение("Определите общий каталог Регламентированных оичетов",5);
Каталог = КаталогИБ()+"ExtForms\";
иначе
Каталог = сокрлп(константа.КаталогРегОтчетов)+"ExtForms\";
конецесли;
....................
При выходе новых отчетов: распаковать, добавить в общий каталог "1C_REG"
7. Андрей (Bambor) 25.03.12 11:25
(3) ysb_ter,
Спасибо, в примере действительно была опечатка. Для сетевых дисков данная технология не работает, все операции только в рамках NTFS томов.

(4) q_i, Использую эту технологию с 2005 года пока что проблем особых не не было, разве что бухгалтера сохраняли свои отчеты в папку с отчетностью, но этот вопрос легко решается.

(5) Хряк, С точки зрения программы это всего лишь файлы на диске, обе базы видят их абсолютно одинаково.

(6) kompas-dm, зачем тут рекламировать свое решение, да и при чем в полном объеме, если оно действительно хорошее оно не останется не замеченным. Есть так же нормальные способы поднять статью используя денежку.
8. Дмитрий Литовченко (kompas-dm) 25.03.12 13:50
(7) Не мое это решение. Все это заложено в 7.7. Мое- пять строчек кода.
Эту фишку с Рег отчетами многие не знают. Мучаются с обновлениями ... .
Рекламированием ? не страдаю ...
10. Андрей (Bambor) 27.03.12 10:09
(9) Pin,
В статье об этом уже написано, вы до конца прочитали?
11. Алексей Ситников (SiAl) 28.03.12 00:44
Сам так уже давно делаю. Лениво было расписывать.
12. Николай . (Kolunya) 28.03.12 01:45
ставлю плюс)
Хотя сам стараюсь не менять стандартные механизмы там где в этом нет особой необходимости...
но, слава богу, нету в обслуживании серверов с 70 БД)))
поэтому обхожусь загрузкой отчетности в одну БД, и копированием RP**q*.grp из каталога данной БД во все остальные..
13. Кошки Рулят (Кошки рулят) 28.03.12 15:38
Данный способ обновления подходит тем, у кого есть несколько бухгалтерских баз с одинаковой системой налогообложения.


Что за чушь? При чем тут одинаковая система? Что мешает ставить полный комплект отчетов?
Или автор полагает, что УСН и ОСН 1С выпускает разные рег.отчеты?
В целом, идея автора дурная.
Даже, если кому-то вломы раз в квартал/месяц/неделю переписать папку с места на место, то для этих целей есть
на диске ИТС утилита, которая раскидает заданный каталог/файл по всем ExtForms'ам указанных в списке баз.
Поэтому публикация может рассматриваться как средство для безграмотных и лодырей.
На вскидку, возможные глюки:
- Все внешние отчеты будут одинаковые во всех базах. Поскольку, базы могут быть совершенно разные, ясно что какие-то внешние отчеты из Сервис-ДопВозможности будут вываливаться с ошибками или, что еще более чревато,
показывать неверные данные. Тоже самое относится к внешним печатным формам.
- В папке ExtForm также находятся папки с данными сохраненных рег.отчетов. Довольно распространенная ситуация, когда бухгалтеры делают копии своих рабочих баз и в них начинают экспериментировать с формированием отчетности. Это может привести к тому, что бухгалтер выгрузит данные рег.отчетности из рабочей базы не подозревая, что выгружает их фактически из копии. Тут можно таких косяков нахватать, мало никому не покажется.
- В папке ExtForm есть также файлы-счетчики. Они тоже будут работать некорректно.
Это только навскидку ...
Моя оценка публикации: вредоносная идея, почти вирус; при определенных условиях позволит разрушить информационные базы без возможности их последующего восстановления ...
14. Андрей (Bambor) 28.03.12 19:44
Чуши тут ни какой нет.
Комплекты отчетности для ОСН и УСН различаются.
Полный комплект отчетов ставить мешает скажем размер жесткого диска или в этом просто нет необходимости.
Исходя из комментариев выше, можно понять что люди в той или иной форме используют объединение папок exforms в одну папку, даже на предприятиях где 70 баз.
Что касается последних строк то безусловно любые необдуманные действия могут привести к потере данных, даже простое копирование, именно по этому регулярное резервное копирование ни кто не отменял.
15. Максим Шивирдинов (Ветер в поле) 29.03.12 11:48
Пользуюсь решением из пункта 6.
Правда, немного исправленным - я сохраняю настройку списка отчетов не в стандартном cfg-файле пользователя (слишком быстро растет и начинает тормозить), а в папке пользователя (каждому кварталу свой файл). Т.е. использую ЗначениеВФайл, а не СохранитьЗначение.
Использовать же решение статьи... Слишком неудобно - для 2-3 баз еще куда ни шло, но с десятком-другим... Да и проблему с ростом cfg-файла оно не решает, а значит все равно придется патчить конфигурацию.
16. soba (soba) 31.03.12 16:12
(6) kompas-dm, Решение-то конечно красивое, если бы не нужно было ковыряться при обновления конфигураций бухгалтерии, которые не сильно реже , чем регламентированные отчеты. Получается все-же, что этот способ практичнее
17. Татьяна (tana1257) 03.04.12 15:22
Очень интересное решение.
18. pakko (pakko) 11.05.12 10:12
Для 1С это использовать точно не буду, однако предположу вот какую идею.
Если базы разбросаны по разным дискам (ну не хватает на каждом диске места), можно их виртуально объеденить в одну папку для более удобной работы.
Проверено. Ссылки можно делать на других дисках.
Я, вот, например, хочу C:\Progra~1\ часть файлов таким образом перетащить на другой диск, дабы освободить таким образом место. А то, что-то мал мой диск C:
19. Сергей Вн (EmpireSer) 09.08.12 14:48
(7) Bambor,

Спасибо, в примере действительно была опечатка. Для сетевых дисков данная технология не работает, все операции только в рамках NTFS томов.


Если говорить о чистых символьных ссылках, то им без разницы где папка или файл находится.

В NTFS разделяют 3 вида ссылок такого рода:
1. Символьная ссылка. Она работает как на каталог, так и на файл и не зависимо от месторасположения. Windows при работе подменяет эту ссылку полным путём к папке/файлу с которым она связана. Т.е. по работе похож на работу ярлыка (отчасти похож).
2. Жёсткая ссылка (связь) - устанавливает связь с файлом только в пределах одного логического раздела. Зато можно свободно перемещать связанные файлы по этому диску - связь не потеряется. Этот механизм тоже напоминает, но уже другую часть, работу ярлыка (происходит связь с идентификатором файла - уникальным в пределах логического раздела).
3. Соединение на каталог. Работает только с каталогами и только в пределах логического раздела, но так же их можно свободно по нему размещать.
20. krreezz krreezz (krreezz) 04.07.13 16:23
на диске ИТС утилита, которая раскидает заданный каталог/файл по всем ExtForms'ам указанных в списке баз

Что за утилита, подскажите?
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа