Kernel3x - решение проблемы 1 гигабайта для DBFной версии 1С:Предприятие 7.7

Публикация № 15577

Разработка - Практика программирования

113
Одним из недостатков DBFной версии “1С:Предприятие 7.7” является ограничение на размер файлов – 1 гигабайт. При этом если система эксплуатируется в однопрограммном режиме, то размер файла может быть 2 гигабайта, однако если появится второй пользователь, а файл будет больше 1 гигабайта, то система 1С начинает сбоить по ЧТЕНИЮ, у одного пользователя, если другой выполняет запись/обновление данных. Например, если выполнять цикл по выборке данных, то он может “тихо” прекратиться в любой момент, не предоставив программе всего множества объектов.

O сути проблемы - FoxPro совместимом формате доступа к DBFам.
Для управления блокировками записи используется функции Win API LockFile() и UnlockFile(). Эти функции обеспечиваю блокировку участка файла “полностью” и по записи и по чтению. Если использовать эти функции непосредственно к участкам файла эквивалентным самим записям DBFа, то теряется возможность чтения записи. Поэтому в FoxPro принят “хитрый алгоритм” – блокируются участки файла начиная со 2GB, упрощенно говоря, отдельные куски файла логически сопоставленные с номерами реальных записей DBFа. Таким образом, реальный участок файла можно читать, т.е. моделируется блокировка по записи, но не по чтению. Если же реальные записи начинают располагаться после 1GB, то “технологические блокировки” наезжают на процесс чтения. Возникает сбой по чтению. В 1С не обрабатывается должным образом аварийный код возврата. Например, в функциях найти по ключу в 1С - получают аварийны код возврата, а в программу пользователя (конфигурацию) возвращают признак – объект не найден.
В Kernel33 делается очень простая вещь. Все обращения к функциям Win API отправляются в kernel32. А для функций LockFile() и UnlockFile() к параметру, указывающему стартовый адрес блокировки, добавляется число 2GB и так отправляется в kernel32. Таким образом, технологические блокировки уходят в 4GB. А так как существует уже другое ограничение на размер DBFов в 2GB, то в 4GB никакая реальная запись не попадёт.

Другие решения для снятия ограничения на размер информационной базы данных в “1С:Предприятие 7.7”:
1) http://www.etersoft.ru/index.php?option=com_content&task=view&id=157&Itemid=1
2) //infostart.ru/projects/1359/
3) //infostart.ru/projects/811/
В разработках номер 2,3 размер таблицы ограничивается количеством записей – 2147483647 штук, а не размером файла.

113

Скачать файлы

Наименование Файл Версия Размер
-
.1204118412 41,60Kb
08.05.12
1277
.1204118412 41,60Kb 1277 Скачать бесплатно
-
.1223930460 12,30Kb
08.05.12
517
.1223930460 12,30Kb 517 Скачать бесплатно
Kernel33.zip
.zip 16,61Kb
08.05.12
240
.zip 16,61Kb 240 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. artbear 1158 27.02.08 17:43 Сейчас в теме
Интересно, нужно посмотреть.
2. withoutface 27.02.08 23:52 Сейчас в теме
А что это за ограничение "на размер файлов – 1 гигабайт"? 2 - знаю, 1 - нет.
И можно узнать ноу-хау разработки?
3. hogik 429 28.02.08 00:28 Сейчас в теме
“И можно узнать ноу-хау разработки?”

Вот мой ответ (номер 21) на аналогичный вопрос от “СергейК” в “форуме” под разработкой http://infostart.ru/projects/811/. Там же (в обсуждениях) есть и более подробная информация на эту тему.

Сначала о самой сути проблемы - FoxPro совместимом формате доступа к DBFам.
Для управления блокировками записи используется функции Win API LockFile() и UnlockFile(). Эти функции обеспечиваю блокировку участка файла “полностью” и по записи и по чтению. Если использовать эти функции непосредственно к участкам файла эквивалентным самим записям DBFа, то теряется возможность чтения записи. Поэтому в FoxPro принят “хитрый алгоритм” – блокируются участки файла начиная со 2GB, упрощенно говоря, отдельные куски файла логически сопоставленные с номерами реальных записей DBFа. Таким образом, реальный участок файла можно читать, т.е. моделируется блокировка по записи, но не по чтению. Если же реальные записи начинают располагаться после 1GB, то “технологические блокировки” наезжают на процесс чтения. Возникает сбой по чтению. В 1С не обрабатывается должным образом аварийный код возврата. Например, в функциях найти по ключу в 1С - получают аварийны код возврата, а в программу пользователя (конфигурацию) возвращают признак – объект не найден.
В Kernel33 делается очень простая вещь. Все обращения к функциям Win API отправляются в kernel32. А для функций LockFile() и UnlockFile() к параметру, указывающему стартовый адрес блокировки, добавляется число 2GB и так отправляется в kernel32. Таким образом, технологические блокировки уходят в 4GB. А так как существует уже другое ограничение на размер DBFов в 2GB, то в 4GB никакая реальная запись не попадёт.
4. vasilykushnir 28.02.08 16:03 Сейчас в теме
(3) Толково обяснил. Коммет спокойно можно перенести в описание обработки. (Эх жаль, нет книги знаний....)
5. фокусник 24 05.03.08 14:11 Сейчас в теме
Времена ограничения файла в 1ГГб канули в лета ещё в 1997 году. Максимальный размер файла такого размера, был ещё когда работали на VS 6.0.
http://msdn2.microsoft.com/en-us/library/3kfd3hw9(vs.71).aspx. Сейчас как видно по ссылке ограничения в 2 гига, и ограниченны они максимальным размером который поддерживает операционка -4096 МГб. Хотя в целом идеология описана првильно. Вот если ты сделаешь максимальный размер файла в 4 ГГб или более, это будет хорошо, а так пока минусую. У нас файл остатков в начале 2007 года был под один гиг, а к концу достиг 1,9 ГГб. При размере 1,7 ГГб начались проблемы, но подкинули дисков, убрали остальные базы, и ничего, доработали до конца года без глюков.
6. ded00786 346 05.03.08 15:19 Сейчас в теме
7. hogik 429 05.03.08 17:21 Сейчас в теме
Если каждый, не умеющий читать, “Фокусник” будет ставить минусы разработчикам, то все “в минусах ходить будем”. Всё, что Вы написали, не имеет никакого отношения, к описанной мной проблеме 1GB в 1С 7.7.
Теперь по пунктам:
1) “Максимальный размер файла такого размера, был ещё когда работали на VS 6.0.” – А 1С 7.7 и её СУБД написаны именно на VS 6.0. Но проблем не из-за этого.
2) “Сейчас как видно по ссылке ограничения в 2 гига, и ограниченны они максимальным размером который поддерживает операционка -4096 МГб.” – Думаю Вам пора переходить на другую ОС. Сейчас ограничения на размер файла другие. А ограничения на 4GB (или меньше) зависят от конкретной программы. Загляните в описание Win32 API.
3) “Хотя в целом идеология описана првильно.” – Жаль, что Вы её не поняли.
4) “Вот если ты сделаешь максимальный размер файла в 4 ГГб или более, это будет хорошо,” – Это уже сделано. Посмотрите другие мои разработки на этом сайте.
5) “размере 1,7 ГГб начались проблемы, но подкинули дисков, убрали остальные базы, и ничего, доработали до конца года без глюков.” – Важны не события, а наше отношение к ним. А НЕзнание – сила.
6) “а так пока минусую” – Жаль, что разработчики сайта запретили ставить минусы на комментарии к собственной разработке. Прошу считать мой Вам ответ как огромный минус.
acanta; victuan; Timesoft; savvateev_den; Bazil; Абыр; soft_warrior; g26516; brr; Sanario; vugluscr1991; knight; via; Cthulhu; const000; pegas6; fart07; afk; корум; Ёпрст; АндрейКр; ev-kov; Al-X; mihast; rovix; Kapitan911; lefthander; zarius; artbear; vasilykushnir; +30 Ответить
8. vasilykushnir 06.03.08 15:01 Сейчас в теме
9. hogik 429 06.03.08 16:46 Сейчас в теме
(8) Спасибо.
Но так хочется похвалы от “Фокусник”-а. ;-)
10. rovix 08.10.08 11:04 Сейчас в теме
при использовании Вашей разработки перестали работать ВК от romix (plugin_sleep_dbf.dll для обработки 100% загрузки процессора при ожидании блокировки таблиц, vk_log_write_doc.dll - для регистрации запуска внешних отчетов запускаемые с помощью hook_1c, не работает также ВК vk_sleep_1C.dll запускаемая из ГМ. Пробовали Вашу ВК kernel37.dll - тоже без эффекта :(
Может неправильно пытались ее использовать? Мы переименовали ее в kernel33.dll, а все остальное уже было сделано для решения проблемы 1Г. Может надо было положить ее рядом с kernel33.dll?
11. rovix 08.10.08 13:34 Сейчас в теме
извинюсь, с kernel37.dll все получилось
12. hogik 429 08.10.08 16:29 Сейчас в теме
(10-11)(rovix)
"с kernel37.dll все получилось"
Думаю, Вы ошибаетесь. Она просто лежит рядом с 1С и ничего не делает. Посмотрите сообщение #28 в http://infostart.ru/projects/1515/.
13. rovix 09.10.08 10:29 Сейчас в теме
(12)(hogik)
hogik 26.12.2007
Цитирую:
>> Кстати, как работает с Kernel33.dll от http://infostart.ru/projects/811/ ? Глючит?
Да. Поэтому и появился Kernel37. Но алгоритм у romix лучше.
>> Может в вашей компоненте заложить снятие ограничения в 1ГБ для ДБФ баз?
Данный алгоритм должен включатся до открытия файлов DBF. А алгоритм разработки может включаться и позже. Проще в разработке romix учесть при перехвате еще и имя Kernel33.
Из этого поста делаю заключение, что в kernel37 все же существует алгоритм решения 100% загрузки проца, так что она лежит не просто рядом, а выполняет две функции снятие проблемы 1Г и 100% загрузки.
Сегодня еще раз проверил по методике описанной в описании разработки http://infostart.ru/projects/1515 - работает.
Спорить не буду хуже-лучше, но РАБОТАЕТ!!! И за это ей (и автору спасибо)
а вот как быть с vk_log_write_doc.dll?
14. hogik 429 09.10.08 16:10 Сейчас в теме
(13)(rovix)
Я не вижу связи (конфликта) между vk_log_write_doc и Kernel3x.
Поясните, пожалуйста, в чем суть вопроса (проблемы).
15. rovix 09.10.08 17:42 Сейчас в теме
Я не зная, конфликт там или недопонятки у них (дээлэлок :)), но факт на лицо :(
До применения kernel33(37) исправно регистрировались открытия всех внешних отчетов, а после не регистрируется ни одного открытия.
То есть, либо vk_log_write_doc не грузится совсем, либо не получается у нее перехватить нужное событие.
16. hogik 429 10.10.08 02:27 Сейчас в теме
(15)(rovix)
Я проверил совместимость Kernel3x с vk_log_write_doc (версия от 25.10.2006). Да, в журнал ничего не пишется. Но и без Kernel3x ничего в журнал не пишется. Возможно я чего либо не так делаю. Я пробовал на тесте, включенном в эту разработку. И там про регистрацию "открытия ... внешних отчетов" ничего не говориться.
17. rovix 10.10.08 09:45 Сейчас в теме
у нас версия от 17.10.2006 идущая в составе разработки hook_1c. Библиотека подгружалась с помощью hook_1c.dll при старте 1С. Для того чтобы работала hook_1c.dll делался патч seven.dll
Цитата из прилагающейся документации:
Установка:
1) Скопировать в папку 1cv7\Bin файлы
- Hook_1C.dll
- patch_Hook_1C.exe
- папку Plugins.
Сделать резервную копию папки BIN.
2) Запустить программу-патчер patch_Hook_1C.exe
3) В файле Hook_1C.ini указать, какие плагины требуется загружать.
Ненужные в данный момент плагины можно закомментировать символом ';'
конец цитаты.
vk_log_write_doc пишет не в журнал, а в папку LOG_ERT в каталоге базы данных.
18. hogik 429 10.10.08 17:46 Сейчас в теме
(17)(rovix)
Я пробовал http://www.kb.mista.ru/article.php?id=380&edition=4 В этой разработке нет "hook_1c". И, как я понимаю - не требуется. Дайте ссылку на то, что Вы используете. Или пошлите мне эту разработку на адрес из описания Kernel3x.
19. rovix 13.10.08 09:02 Сейчас в теме
(18)(hogik)
Приношу свои извинения, речь шла про компоненту log_ert.dll из http://www.kb.mista.ru/article.php?id=277
20. hogik 429 13.10.08 19:25 Сейчас в теме
(19)(rovix)
Проверил совместимость plugin_log_ert.dll (версия от 17.10.2006) с Kernel3x. Не работает и без установки Kernel3x. Однако по исходным текстам plugin_log_ert я не обнаружил возможных конфликтов с Kernel3x. Почему оно не работает - я не разбирался. Обратитесь к Роману (roMix).
21. hogik 429 13.10.08 22:48 Сейчас в теме
+(20)
(19)(rovix)
Дополнение к собственной фразе: "...я не обнаружил возможных конфликтов с Kernel3x".
Это при условии, что не проводится замена имени Kernel32 на Kernel33 в библиотеке Seven.dll. Для решения "проблемы 1 гигабайта", на самом деле, достаточно модифицировать только библиотеку DBEng32.dll. См. сообщения 33-34 в http://infostart.ru/projects/811/?cp=all
22. rovix 14.10.08 14:55 Сейчас в теме
да, действительно, если убрать kernel33 из seven.dll, то все начинает работать. Спасибо.
23. Montecrizto 105 30.08.09 04:59 Сейчас в теме
Спасибо автору за разработку выручил (еще один + )
24. soft_warrior 13 22.10.09 08:52 Сейчас в теме
у нас похожая проблема - при попытке провести документы (притом не все, на некоторых проходит нормально) выпадет сообщение с заголовком "DATABASE ERROR" из dbeng32.dll функции по адресу call 1F113900
место входа в отработку ошибки- :1F110ECE
содержит в первом сообщении -310 corrupt index file,
во втором вообщении еще имеется строка IDELETED
зависимости пока не нашел, но база не дошла до 1 гб ниодним файлом:
макс CDX 975605750 байт 1SACCSEL.CDX
макс DBF 757236620 байт 1SACCSEL.DBF
в ней же макс число записей - 16827474.
после упаковки смотрел 1SACCSEL.DBF
было 16827474 записей
стало 16925928 записей (тут уже работа идет - так что возможно просто прибавились)
индексы были 975 мегов, стал 440 мегов
он получается что файл не чистится?
пока удалось вылечить лишь сжатием базы до полугодия.

25. soft_warrior 13 22.10.09 10:30 Сейчас в теме
продолжение сообщения 24...
1SACCSEL.DBF остался одним и темже размером - просто не сжимали помеченные на удаление записи в файлах.
26. Altair777 639 22.10.09 10:56 Сейчас в теме
(0) по первой ссылке ( http://www.etersoft.ru/index.php?option=com_content&task=view&id=157&Itemid=1 ) не пускает без регистрации
У Вас нет прав для просмотра этого ресурса.
Вы должны зайти как пользователь.


Это такая раскрутка сайта? :)
27. SVR27 25.01.10 08:57 Сейчас в теме
Когда в базе стали проявляться разночтения при формировании отчетов, база была пропатчена (Kernel37 на терминальном сервере win 2003), работоспособность восстановилась, база работает до сих пор (размеры 6 самых больших файлов за 1гб в сумме весят 8гб). В другой базе, где 1с работает под win 2003 x64, 2 таблицы переросли 1гб и начались проблемы. Может ли разрядность операционки влиять на работоспособность этой бибилиотеки? Может кто-то сталкивался с такой проблемой, расскажите как её решали?
28. hogik 429 25.01.10 20:52 Сейчас в теме
(27) (SVR27)
"...под win 2003 x64...начались проблемы"
1) Проблемы начались после установки Kernel3x ?
2) Как проявляются проблемы ?
P.S. См. сообщение (24) данной темы. У Вас такая ошибка? Мне, по таким случаям, много приходит писем. И у всех стоит Win2003 x64. Эта ошибка не имеет отношения к проблеме "1 гигабайт". И применение Kernel3x её не лечит.
29. SVR27 26.01.10 10:02 Сейчас в теме
В общем ситуация следующая: файл одного из регистров перерос 1гб. При открытии периода выходит ошибка codebase error -310. Собственно так и было примерно год назад на другой базе, которая работает под обычной 32-битной виндой. Её пропатчили kernel37 и проблема исчезла. Сейчас в той базе 6 таблиц размером больше 1гб и всё отлично работает. На 64-битной системе сделан абсолютно такой же патчинг, но получается даже с ним стали вылетать ошибки индексов.
p.s. Индексы восстанавливаю ежедневно (путем удаления *.cdx и запуска в монопольном режиме)
31. hogik 429 26.01.10 20:38 Сейчас в теме
(29)(SVR27)
"...даже с ним стали вылетать ошибки индексов"
Могу, только, повторить еще раз. Ошибка -310 никак не связана с проблемой "1 гигабайта" и с помощью Kernel3х не лечится. По приходящим мне письмам складывается впечатление, что возможные причины ошибки -310 в следующем:
0) Действительно испорченные индексы.
1) Количество индексируемых записей в таблице больше 3-5 миллионов.
2) Большой размер ключа.
3) Выполняется большое обновление таблицы с ключевыми значениями с обратным порядком индекса.
4) Маленькая страница индексного файла. Её размер - 512 байт. И изменить это невозможно.
При этом сказывается различное сочетание событий пунктов 1-4.
Для себя я сделал вывод, что это ошибка в движке (CodeBase) на котором работает 1С 7.7 DBF-ной версии. В большинстве, приходящих мне, писем говорится об использовании "Windows 2003 x64" в терминал серверном режиме. Т.е. негативное влияние ОСа, на появление данной ошибки, я не исключаю.
В "CodeBase 6.5" такой ошибки не возникало. Кроме этого в нём можно увеличить размер страницы индексного файла.
32. hogik 429 27.01.10 15:38 Сейчас в теме
(29)(SVR27)
Сергей.
Проверьте, пожалуйста, как себя поведет 1С, если у всех пользователей сделать доступ к каталогу базы данных, как к сетевому ресурсу (для "Windows 2003 x64" в терминал серверном режиме). Т.е. в запуске сессий 1С поставить "\\Сервер\Ресурс". Скорость работы 1Са снизится. А, интересно, ошибка -310 будет возникать?
33. SVR27 02.02.10 22:34 Сейчас в теме
(32) попробовал, ошибка возникает.
Кстати, интересный факт, очередной период (1 февраля) открылся без ошибок. Если смещать ТА назад например на 25 января, то ошибка возникает.
34. hogik 429 02.02.10 22:57 Сейчас в теме
(33)(SVR27)
Я бы, на Вашем месте, еще проверил работоспособность системы с этой базой:
1) В терминал серверном режиме на НЕ x64.
2) В файл серверном режиме.
И если ошибка будет возникать, то - переходить на другую СУБД...
35. SVR27 03.02.10 07:33 Сейчас в теме
(34)
1) Это я уже проверил, ситуация аналогичная.
2) Т.е. помимо описанного в (32) трюка ещё и с другой машины? (upd. Проверил, не помогает).
Теоретически можно перейти на SQL версию, но мне она нравится меньше. Одна база у меня работает на ней, по умолчанию все работало очень медленно. После замены ключевых тормозов на прямые запросы стало терпимо, но другие базы на SQL переводить все равно не хочется. Да и ситуация с 310 ошибкой на самом деле не совсем ужасная. И опыт борьбы с ней уже кое-какой имеется. помогает уменьшение файла, т.к. ошибка начинает появляться на файле большого размера, из-за чего и делался неверный как оказалось вывод о связи с проблемой гигабайта. Если штатными средствами ужать файл не получается, режу остатки за начальный период работы (например пару месяцев), обращение к которым маловероятно: в Foxе DELETE ALL FOR Rg283.period<{^2009-02-01} или DELETE FROM ra283 WHERE iddoc in (select iddoc FROM 1sjourn WHERE date<{^2009-02-01}) или DELETE FROM dt833 WHERE iddoc in (select iddoc FROM 1sjourn WHERE date<{^2009-02-01}), это мои 3 проблемных файла. А вообще скоро уже базу буду сворачивать резать, как это происходит ежегодно.
Такие вот дела, спасибо за ваши советы и помощь.
Кстати, уважаемый (hogik), насколько я понимаю в (32), когда упоминали другую СУБД имели в том числе и Ваши наработки по использованию CodeBase и Advantage?
36. hogik 429 03.02.10 23:50 Сейчас в теме
(35)(SVR27)
"... упоминали другую СУБД .... в том числе ... CodeBase и Advantage?"
Да. Но сравниться по скорости с родными DBF-ами в терминальном режиме, может только разработка на "CodeBase 6.5" в режиме ПДБД. Работает ОНО быстрее и нет проблем с размером таблиц...
39. SVR27 03.05.10 12:10 Сейчас в теме
Если уж тема немного ожила, добавлю еще немного из практического опыта. Практика действительно опровергает причастность "ошибки -310" к ограничению 1гб. Вывод я для себя сделал, когда в очередной раз возникла ошибка и я отрезал описанным в (35) способом все файлы, переросшие 1 гб. Результат был нулевой, т.е. все файлы базы были размером меньше гигабайта, а ошибка все равно возникала :) Путем дальнейших поисков была выявлена "таблица-героиня", которой оказалась 1SCRDOC.DBF (её размер был "всего" 852 мб), в которой на тот момент было около 17 млн. строк. Я ее тоже немного "подрезал", удалив все ссылки на подчиненные документы с датой раньше, чем рабочий период базы. Ошибка исчезла. Но возникла вновь спустя каких-то 2 недели. Здесь я уже не стал тревожить большие таблицы, а сразу порезал перекрестные ссылки. Правда по ошибке вместо одного месяца удалил один день, и через день ошибка снова выскочила как чёртик из табакерки, т.е. получилось - отрезал день, получил возможность работать день. А патч на 1гб. - он работает. База, про которую я писал в (27), прекрасно работает с таблицами свыше 1 гб. (размер максимального файла 1,853 гб) на той же конфигурации. Так вот там 1SCRDOC.DBF весит 247 мб и около 7 млн. записей и повторюсь, все работает.
Так что (резюмируя), для себя я сделал выводы, что в действительности причиной ошибки 310 скорее всего является слишком большое число записей в какой-либо таблице (предположение высказывал hogik в (31) ), критическая граница в моем случае около 16-17 млн. записей. Хотя может истинная причина лежит поглубже, подожду коментариев более подкованных товарищей.
Возможно offtop, но может кому пригодится.
Zefiroute; soft_warrior; g26516; АндрейКр; fedor40; hogik; +6 Ответить
30. soft_warrior 13 26.01.10 10:50 Сейчас в теме
используя давно забытые со школы умения, поглядел библиотеку.
точек входа в эту ошибку вообщето далеко не одна, а как минимум 4,
и относятся к файлам индексов.
Так что патчем одной ошибки это врядли ограничится.
37. kas4info 30.04.10 15:30 Сейчас в теме
чем редактировать файлы библиотек?
38. hogik 429 30.04.10 16:28 Сейчас в теме
(37)(kas4info)
1) "...файлы..." - см. сообщение (21) данной темы.
2) "чем редактировать..." - http://ru.wikipedia.org/wiki/HEX-%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80
40. AlexFF 22.11.10 16:56 Сейчас в теме
После замены kernel32.dll на 33, выходит следующая ошибка:
Приложение или библиотека c:\1См77\BIN\DbEng32.dll не является образом программы Windows NT. Проверьте назначение установочного диска.

Подскажите, что я сделал не так.
41. hogik 429 23.11.10 04:19 Сейчас в теме
(40)
"Подскажите, что я сделал не так."(с)
Алексей.
Не так внесли исправления в библиотеку. Чаще всего, в момент редактирования стоял режим "сдвига"(вставки), а не "забой" в HEX-редакторе.
42. AlexFF 23.11.10 13:18 Сейчас в теме
Я менял с помощью WordPad. Не мог найти в интернете бесплатный Hex-редактор
43. hogik 429 25.11.10 02:55 Сейчас в теме
(42)
См. сообщение #38 данной темы.
rinari_AVA; +1 Ответить
44. rinari_AVA 30.11.10 18:43 Сейчас в теме
Проблема Следущая:
база в DBF формате, весит уже 8Гб. 2 таблицы больше 1 ГБ одна из них dbf -ка проводок,2-я CDX отбор счетов. Пользователей 20.
Воспользовалась kernel33.dll. Начали работать и вроде все ок Но примерно ч/з час снова начало выбивать ошибки либо не пускает в программу (пишет, что не может прочитать константу) либо тормозит проведение ожидание захвата таблицы. Установила vk_TerminalSleep,эффект тот же.Чем дальше тем у большего числа пользователей. После переиндексации какое-то время работает , потом снова. Может подскажите, что еще можно сделать?
45. hogik 429 30.11.10 19:25 Сейчас в теме
(44)
1) "снова начало выбивать ошибки "(с)
http://infostart.ru/public/77617/
2) "После переиндексации какое-то время работает"(с)
http://infostart.ru/public/15211/
http://www.wirth.ru/publ/test_1_v7dbnet/1-1-0-1 (
3) "Может подскажите, что еще можно сделать?(с)
а) 1С 8.х
б) 1С 7.7 + MS SQL + http://1cpp.ru
4) "Установила vk_TerminalSleep"(с)
Меня это удивляет. Вы читали описание Kernel3x ?
46. rinari_AVA 01.12.10 14:43 Сейчас в теме
(45)3б) это и собираемся делать, но надо найти временное решение пока переведем, т.к в конфе используются свои классы и после простой конфертации наши классы не работают. А на базе работать весьма проблематично, а это розн. магазин продуктовый постоянный большой документооборот.
4 Читала, там предлагалост еще kernel37.dll. и ссылка на vk_TerminalSleep. Не утверждаю что использовала это правильно, т.к с такими манипуляциями столкнулась впервые.
47. hogik 429 01.12.10 17:42 Сейчас в теме
(46)
"...с такими манипуляциями столкнулась впервые."(с)
Огромная к Вам просьба!!!
Наймите (пригласите) на работу программиста и покажите ему нашу переписку.
48. rinari_AVA 01.12.10 18:28 Сейчас в теме
(47)Очень информативно, а главное "помогло". Я так поняла все возможные варианты вы дали в предыдущем сообщении и других нет.
А последнее сообщение="Посмотрите какой я умный". Поздравляю,но я спрашивала не об этом. "Не стыдно чего-то не знать, стыдно не хотеть знать"
49. hogik 429 01.12.10 19:47 Сейчас в теме
(48)
Очень странная и обидная, для меня, оценка моего сообщения. :-(
В конце описаний моих разработок написан мой e-mail.
У Вас есть возможность "списаться" со мной и получить мой номер телефона.
Позвонить мне и получить от меня любую консультацию по любой, известной мне, проблеме (задаче). Многие люди так и делают. Я денег за это не прощу и не получаю. Единственно, что от Вас требуется - понимать то, что я Вам буду говорить. А говорить мы будем очень о многом и очень долго. И начнем мы разговор с выяснения какие "начало выбивать ошибки"(с). Т.е. её содержание, а не сам факт появления ошибки...
P.S. А показать нашу переписку надо программисту, т.к. в моих сообщениях, думаю, есть решение (временное) проблем в Вашей системе. И у Вас, возможно, появится время для спокойного перехода на другие системы. Мой совет "показать программисту" - это не попытка "ткнуть Вас", а облегчение программисту поиска готовых (в рамках его специальности) решений.
P.P.S. У меня есть огромное подозрение, что база данных в Вашей системе сильно попорчена в результате сбоев. И избавление от факта "выбивания ошибок" - это не всё, что придется делать программисту.
50. yra111 17.01.11 19:29 Сейчас в теме
Сервак 2003виндовс х64, юзеры в терминалке работают,12Гб оперативки,,1С 7.70.026 ,DBF УПП,4Гб общий размер(в архиве 400кб),самая закабаневшая ДБФка 2Гб.Ведется с 2005 года, но обрзеалово ничего толкового не даст,росла она нелинейно по времени. если срезать по 2009г включительно - размер ополовиниваеться.
Как это вообще по мировым стандартам, много ли?

Ну и наблюдаеться следующая проблемма: формируем анализ счета или еще какойнить стаддартный отчет,видим что у Иванова по 71 счету СКД 200$, жмем много раз ОБНОВИТЬ и там уже 300$,или нуль вообще ,у кого как. Не по всем субконтам но по многим.
кернелл33 тут поможет?Или как еще можно выкрутиться?
51. hogik 429 17.01.11 20:04 Сейчас в теме
(50)
1) "закабаневшая ДБФка 2Гб"(с)
Ограничение на DBF - 2 гигабайта.
2)"Как это вообще по мировым стандартам, много ли?"(с)
Для DBF - очень много.
3) "...кернелл33 тут поможет?"(с)
Для решения этой проблему и сделан.
4) "Или как еще можно выкрутиться?"(с)
Переходить на другую СУБД.
52. yra111 17.01.11 20:33 Сейчас в теме
Ограничение на DBF - 2 гигабайта.<>Для решения этой проблему и сделан.
тоесть к33 снимет это ограничение, и базе можно будет отожраться до 4х ГБ ?
54. hogik 429 17.01.11 22:47 Сейчас в теме
(52)(53)
Проблема типа "жмем много раз ОБНОВИТЬ и там уже 300$,"(с) возникает при размере файла больше 1 гигабайта. Именно эту проблему решает Kernel3x. А ограничение в 2 гигабайта снимается применением других СУБД. Это ограничение заложено в FoxPro совместимом формате DBF.
53. yra111 17.01.11 21:13 Сейчас в теме
"Таким образом, технологические блокировки уходят в 4GB. А так как существует уже другое ограничение на размер DBFов в 2GB, то в 4GB никакая реальная запись не попадёт."
тоесть к33 снимет 2Гб ограничение, и базе можно будет отожраться до 4х ГБ ?
55. sss999 38 20.04.11 10:59 Сейчас в теме
А что за истрия про жмем много раз обновить?
56. yra111 20.04.11 13:00 Сейчас в теме
так написано выше... при размере самой толстой ДБФки приближающемся к 2Гб итоги начинают "плавать" - тоесть один раз формируем бух. ит. по чемнибудь получаем одну сумму, формируем через 5 секунд еще раз с теми же параметрами - получаем другую... есстесственно за эти 5 секунд никто по этому счету ничего не вносил.
57. hogik 429 24.08.11 02:48 Сейчас в теме
Пришло мне сообщение на электронный ящик:
"Новый голос за "Kernel3x - решение проблемы 1 гигабайта для DBFной версии 1С:Предприятие 7.7" от пользователя andrewbc.
Оценка: -1"

Заглянул в тему. Минус стоит. Причина (комментарий) - отсутствует.
Автор "минуса" - может напишете причину?
Ошибка в программе? Или еще - что?
58. andrewbc 270 24.08.11 17:45 Сейчас в теме
(57) "Одним из недостатков DBFной версии “1С:Предприятие 7.7” является ограничение на размер файлов – 1 гигабайт." - это абсолютно не верно, даже с добавкой "При этом если система эксплуатируется в однопрограммном режиме, то размер файла может быть 2 гигабайта, однако если появится второй пользователь, а файл будет больше 1 гигабайта, то система 1С начинает сбоить по ЧТЕНИЮ". Поэтому и минус (это мое личное мнение, основанное на 7-летнем опыте работы с 7.7). Владимир, я уважаю Вашу работу в плане глубокого тестирования платформы 1с, но могу со 100% уверенностью сказать, что по крайней мере 5 из известных мне баз работает с dbf-файлами размером более 2.5 - 2.7 Гб, а одна даже с 3.7, (регистры партии, покупатели, проводки, ссылки счетов), причем 2 из них работают в распределенном режиме, с одновременным количеством пользователей от 10 до 30. Проблема, наверное, не в размере файла, а размере конкретного файла (например, журнала документов или констант и периодических реквизитов, может, еще чего, нужно тестировать конкретную базу и конфигурацию) или алгоритмов обработки.
59. hogik 429 24.08.11 18:15 Сейчас в теме
(58)
Андрей.
Спасибо, что пояснили своё "личное мнение, основанное на 7-летнем опыте работы с 7.7"(с) при вынесении вердикта - "минус". ;-)
В свой "список", известных Вам больших баз, можете добавить информацию о "моей" базе - 10 ГБ одних DBF-ов. Работает на родном движке 1С-а более 10 лет. Кстати, без единой свертки за это время. ;-) Но проблему "1ГБ" мы получили на второй год. Т.к. размер ОДНОГО файла превысил этот размер. У нас, примерно, на 0.9 ГБ в год прирастало.
В описании моей "разработки" написано:
"Одним из недостатков DBFной версии “1С:Предприятие 7.7” является ограничение на размер файлов – 1 гигабайт."(с) Там нет слов - ВСЕХ файлов. :evil:
И, если прочесть хотя бы второе предложение из моего описания "...а файл будет больше 1 гигабайта, то..." - это становится совсем очевидно. :-)
Не надо присоединяться к сообществу "фокусник"-ов (сообщение #5 данной темы).
Думаю, Вы не "фокусник", а программист... ;-)
60. andrewbc 270 25.08.11 13:55 Сейчас в теме
(59) К сожалению, уважаемый автор неправильно истолковал смысл моего комментария. "по крайней мере 5 из известных мне баз работает с dbf-файлами размером более 2.5 - 2.7 Гб, а одна даже с 3.7" - это значит, что не ВСЕ файлы, а размер по крайней мере ОДНОГО из файлов в данных базах имеет указанный объем. А общий размер каждой из этих ИБ - от 10 до 25 Гб. А к "фокусам", как вы правильно заметили, я не имею никакого отношения. Хочу только добавить, что, наверняка, ваша разработка не вредит работе 1с, но позиционировать ее как панацею от несуществующей на мой взгляд проблемы, думаю, не стоит. Повторюсь, наверное, стоит все-таки обратить внимание на совершенствование алгоритмов, имеющихся в конфигурации. Думаю, что с вашими способностями программиста это вполне реально и может принести гораздо большую пользу. :) Хотя, если в вашей базе разработка решает какие-то проблемы, определенно, она имеет право на существование. В качестве примирения снимаю -, поставив +. Ок?
61. hogik 429 25.08.11 17:43 Сейчас в теме
(60)
Андрей.
Верните, пожалуйста, "минус" обратно.
Я пытался дать Вам шанс выйти из глупой ситуации с честью.
Вы этого не захотели или не смогли сделать. :-(
Мне будет приятней, если Ваше мнение о моей "разработке" будет "располагаться" рядом с "фокусник"-ом.

Visual FoxPro System Capacities:
http://msdn.microsoft.com/en-us/library/3kfd3hw9(VS.80).aspx
http://www.codebase.com/support/kb/?article=C01089

Корни "проблемы" (текст из MSDN):
System Capacities for FoxPro 2.5 for MS-DOS
Last reviewed: April 18, 1995
Article ID: Q106269
The information in this article applies to:
Microsoft FoxPro for MS-DOS, versions 2.5, 2.5a, and 2.5b
SUMMARY
Below is a list of the system capacities for FoxPro for MS-DOS.
MORE INFORMATION
Some capacities may be limited by available memory. A indicates that the actual file size (in bytes) cannot exceed 2 gigabytes (GB) for single user or exclusively opened multiuser .DBF files. Shared multiuser .DBF files with no indexes or .IDX indexes cannot exceed 1 GB. Shared multiuser .DBF files with structural .CDX indexes cannot exceed 2 GB.

P.S. Дам пояснение по Вашей фразы: "автор неправильно истолковал смысл моего комментария"(с)
Естественно, я его иначе и не мог истолковать, исходя из ограничения размера одного DBF файла (СОВМЕСТИМОГО с FoxPro форматом) в 2 гигабайта. Или Вы о других базах и СУБД говорите?
Прикрепленные файлы:
Ёпрст; +1 Ответить
62. CheBurator 3400 26.08.11 02:54 Сейчас в теме
Все... побежал за попкорном и колой...
63. www1 15.09.11 08:25 Сейчас в теме
Столкнулся с проблемой 1Gb (W2k3 x64). Kernel очень выручил - дал время для подрезки базы. Спасибо автору!
64. Pilokarpios 32 19.10.11 12:25 Сейчас в теме
65. Pilokarpios 32 19.10.11 12:27 Сейчас в теме
66. Makdir 18.12.11 17:33 Сейчас в теме
Ставлю Плюс.
Считаю подобные разработки бесценными, эти все проблемы в свое время должна была решить сама 1С, но они пошли другим путем - удачным маркетингом. Надежд на появление альтернатив мало, поэтому радует, что хоть кто-то латает существенные дыры программы.
67. mimos 22.12.11 14:03 Сейчас в теме
Что то не разу не сталкивался на ограничение 1ГБ. Впёрся на 2 гигабайта - думал поможет )) но не помогло. Автору плюс за решение проблемеи.
68. hogik 429 22.12.11 16:14 Сейчас в теме
(67)
"Что то не разу не сталкивался на ограничение 1ГБ"(с)
.....(mimos)
Скачайте Test.zip и столкнитесь. ;-)
Существует три причины "не сталкиваться" с этим ограничением.
1) В системе всегда работает один пользователь.
2) Уникальная схема базы данных и/или алгоритмы работы с информацией.
3) Пользователь не замечает ошибки. ;-)
69. porese 26.12.11 10:54 Сейчас в теме
Неоднократно сталкивался с проблемой 1гб, выглядить так: в монопольном режиме все ок, в разделенном при работе нескольких пользователей запросы по регистру (в данном случае партии более 1 гига) каждый раз разные результаты. Лечил обрезкой базы, но все равно пару месяцев приходилось работать в таком режиме (обрезка 1 раз в год в феврале по текущий год).
Использую hook_1c с разными плагинами в том числе sleep (решение проблемы 100% загрузки проца), его немного поправил по подобию kernel33, т.е. перехватил не только lookfiles но и unlookfiles и младший dword адрес при вызове оригинала увеличиваю на 2 гига. Проблема 1 гига решилась. Если кому интересно, выложу.
71. hogik 429 26.12.11 16:58 Сейчас в теме
(69)
.....(porese)
Конечно выкладывайте, отдельной публикацией.
У Романа решение проблем через hook_1c сделаны лучше.
Но!!!
Надо не забывать, что использование запросов через FoxPro могут вызвать проблемы при изменении способа блокировки. И, думаю, имеет смысл разделять (иметь возможность управлять активизацией) решение проблем "100% CPU" и "1GB". Т.к. первая проблема донимает всех, а вторая возникает только в "экзотических" случаях... ;-)
P.S. Управление должно быть до запуска (активизации) сессии 1С-а, а не на уровне ВК.
70. Builder 8 26.12.11 14:46 Сейчас в теме
Будем проводить испытания. Спасибо!
72. mustakh 06.02.12 12:05 Сейчас в теме
Скажите пожалуйста кто нибудь еще продолжает писать на FoxPro? В свое время кажется 80% СССР писали в этой СУБД, кто знал это знали и структуру DBF
74. hogik 429 06.02.12 17:25 Сейчас в теме
(72)(73)
Алик (mustakh).
Это вопросы, утверждения, предложения, пожелания, размышления, просьба, ... ?
Что требуется от автора публикации?
73. mustakh 06.02.12 12:09 Сейчас в теме
У нас часто DBF размер превышает 1Гб, SQL ставит дорогвато, наш спец разработал обработеку для ужаления старых записей, и после сжатия DBF становится нормальным, но это надо делать вручну, запускать обработку , выяснять какой dbf превысли размер 1 Гб
76. zelenprog 06.09.12 10:20 Сейчас в теме
Я не совсем понял :(
Владимир, скажи пожалуйста точно: каков допустимый максимальный размер CDX и DBF файлов, при использовании этой разработки?

У меня DBF-база, самые большие файлы - это регистры:
регистр1: DBF - 1.949.676.528 байт, CDX - 1.043.525.120
регистр2: DBF - 1.062.751.702 байт, CDX - 697.588.736
остальные файлы - менее 1Гб.

Сейчас возникла необходимость добавить в этих регистрах галочки "отбор движений", соответственно перестроится структура индексов, и размеры индексов увеличатся и скорее всего перевалят за 2Гб.
Получается после этого моя база перестанет работать?

Будет ли работать база после увеличения индексов если использовать эту разработку?
77. hogik 429 06.09.12 15:12 Сейчас в теме
(76)
"Получается после этого моя база перестанет работать?"(с)
Да.
"Будет ли работать база после ... если использовать эту разработку?"(с)
Нет.
"скажи пожалуйста точно: каков допустимый максимальный размер CDX и DBF файлов"(с)
Для CDX - 2ГБ. Но, еще до достижения такого размера система перестанет работать по другим причинам.
Для DBF - 2ГБ при ОдноПользовательском использовании, 1 ГБ - при разделенном режиме.
При использовании "Kernel3x" - 2ГБ в обоих режимах.
78. zelenprog 06.09.12 15:55 Сейчас в теме
(77)
а как же у меня сейчас работает?
ведь два ДБФ-файла регистров превышают 1Гб, режим работы - разделенный
79. hogik 429 06.09.12 17:38 Сейчас в теме
(78)
"а как же у меня сейчас работает?"(с)
Понятие "работает" относительное. ;-)
В "публикации" описано как это проявляется.
И если в Вашей системе пользователи этого не замечают, то Ваша система - работает.
zelenprog; +1 Ответить
80. АндрейКр 128 17.11.12 03:35 Сейчас в теме
Уже давно использую kernel3x. Не представляю что бы я делал без этой разработки. Спасибо!
Есть такой вопрос. Совместима ли kernel3x с использованием прямых запросов для DBF базы, реализованных в 1cpp?
81. hogik 429 17.11.12 04:36 Сейчас в теме
(80)
Андрей (АндрейКр).
Естественно - нет.
Это следует из самой сути данной "разработки" - она меняет "FoxPro совместимый формат доступа к DBFам".
Пробуйте использовать: http://infostart.ru/public/15977/
82. basil_m 17.12.12 13:22 Сейчас в теме
hogik, подскажите, при установке написано, что в библиотеке Seven.dll контекст "Kernel32.dll" заменить 2 раза,а в DBEng32.dll – один раз. У меня платформа 7.70.027. В Seven.dll нашел только 1 раз, а в DBEng32.dll не нашел вообще. Такое возможно?
83. basil_m 17.12.12 14:32 Сейчас в теме
Нашел. Оказалось все просто. Просто было написано заглавными буквами, а я искал только по строчным.
user592099_sockomservis; +1 Ответить
84. hogik 429 17.12.12 17:50 Сейчас в теме
(83)
Ещё см. (21) сообщение данной темы.
85. basil_m 18.12.12 11:24 Сейчас в теме
hogik, т.е. для решения проблемы 1Гб можно seven.dll не модифицировать, а только DBeng32.dll ? Я правильно понял?
86. hogik 429 18.12.12 16:59 Сейчас в теме
87. CheBurator 3400 21.03.13 12:17 Сейчас в теме
кернел33 - стоит, однако припроведении доков вываливается ошибка -310, подробности отписал в личку. Что делать?
88. hogik 429 21.03.13 16:12 Сейчас в теме
(87)
Сергей.
А по телефону мне позвонить не получается? :-)
Ставить http://infostart.ru/public/77617/ и получить запас времени.
Далее сворачивать или переходить на SQL.
Ставить http://infostart.ru/public/15211/ общаясь со мной по телефону или Skype.
89. yra111 13.05.13 16:07 Сейчас в теме
1. Есть ли олее простой способ проверить активировалась ли KERNEL32.dll ,чем садить десяток бухгалтеров чтобы они писали в базу и читали одновременно и смотрели не скачут ли итоги?
2.У меняверсия 1с 7.70.026, работает на серверной 2003 винде через сервер терминалов,в инструкции сказано что тестировали на 018 версии 1с и 2000 винде,на 0.26 будет работать?
3.может быть есть у вас уже отредактированные ДЛЛ от 026 версии?
90. hogik 429 15.05.13 00:52 Сейчас в теме
(89)
1) Использовать содержание Test.zip файла.
2) Тестировалось на 18,25,27 в Win2000,WinMe,WinXP,WinXPx64(ядро от Win2003x64).
В этих версиях файл DBEng32.dll не изменялся. Надеюсь, что и в 26 не изменялся.
3) Нет.
91. yra111 21.05.13 17:24 Сейчас в теме
если используеться распределённая ИБ, можно ли на основной базе юзать кернелл33, а на удалённой стандартные длл? Может ли чтото сломаться в базах в процессе обмена выгрузками?
92. hogik 429 21.05.13 21:13 Сейчас в теме
93. rеd80 21.05.13 21:58 Сейчас в теме
решение проблемы 1 гигабайта для DBFной версии 1С:Предприятие 7.7
Решение проблемы - 1С v8.
94. hogik 429 21.05.13 22:59 Сейчас в теме
(93)
Вот, первые строчки из файла описания разработки:

"Kernel3x - решение проблемы 1 гигабайта для DBFной версии 1С:Предприятие 7.7
Разработано в 2001 году."©
95. yra111 23.05.13 14:25 Сейчас в теме
Поставил на терминалку 2003виндовс сервера - чтото периодически при запуске 1с рунтайм еррор вылезает, не всегда , но частенько.Что можно пошаманить попробовать?
97. hogik 429 23.05.13 17:00 Сейчас в теме
(95)
"рунтайм еррор вылезает"(с)
Подробнее, пожалуйста. ;-)
(96)
"и потом этот самый еррор"(с)
Если есть подозрение на Kernel3x - отключите. И подождите раза три по "полдня"(с).
Отпишите о результатах...
96. yra111 23.05.13 14:32 Сейчас в теме
ожидание захвата таблицы константы для записи... и потом этот самый еррор, перезагрузить сервак помогает но потом опять надо перезагружать через полдня..
98. porese 23.05.13 17:40 Сейчас в теме
не может из за него вылетать, опенконфиг не стоит случайно (из за него было не раз, лечилось переустановкой опенконфа). И кстати стоит сервер поставить 2008, по сравнению с 2003 - небо и земля, сбоев меньше гораздо и работает шустрее. может еще какие хуки стоят или зараза кернел перехватывает.
Кстати база весит 12 гигов (файл проводок 1.6 гиг, партии 1.4гиг...), использую хук на основе керлер33, но переписанный со слипом. Проблем нет. Если кому интересно выложу.
99. Ёпрст 1036 23.05.13 17:46 Сейчас в теме
(98) опенконф никакого отношения к режиму "Предприятие" не имеет вообще, он только для Пофигуратора предназначен.
100. porese 24.05.13 10:38 Сейчас в теме
Если кого интересует (98) хук называется sleep_dbf_1g кинул на https://www.dropbox.com/sh/u8pc48stjuq4nvd/EGNstMZGm2
(99) если появляется только в режиме предприятия то да.
Оставьте свое сообщение

См. также

Особенности разделения объектной модели документа и базы данных в 1С 7.7. Забавный глюк 3

Статья Программист Архив с данными v77::ОУ Абонемент ($m) Практика программирования

Когда занимаешься разработкой в среде 1С, редко задумываешься о том, что программным кодом ты работаешь с объектной моделью базы данных, а не с самой базой данных. И что это вообще разные вещи. Ты создаешь объекты: документы и справочники, записываешь их - и в базе данных появляются соответствующие записи. Это настолько привычно, что когда сталкиваешься с нетипичным поведением платформы, первым делом думаешь: надо протестировать базу, она битая. В этой статье я хочу разобрать одну интересную ситуацию, которая как раз демонстрирует такое поведение. Описанная ниже ситуация воспроизводится как в файловом, так и в клиент-серверном (SQL) варианте. Тестировалось на версии платформы 1с77 релиз 027.

1 стартмани

16.05.2018    6332    2    Vortigaunt    26       

Ведомость по остаткам ТМЦ на складах с ценой номенклатуры по типу и валюте для ТиС 9.2 2

Отчеты и формы Программист Бухгалтер Внешний отчет (ert,erf) v77::ОУ 1С7:ТиС Россия УУ Windows Учет ТМЦ Ценообразование, анализ цен Абонемент ($m) Ценообразование, прайсы Практика программирования Управленческие

Модификация типового отчета является фактически прайс-листом при формировании по цене продажи на текущие сутки. Может использоваться для грубого анализа себестоимости продукции и как отчет по стоимостной оценке склада. В типовой отчет добавлена колонка "цена" на конечную дату отчета с возможностью указания типа цены и валюты (при управленческом "многовалютном" учете в ТиС 9.2). Проверялась на отраслевой конфигурации 1С 7.7 "Агент плюс" на базе ТиС 9.2 Также показана методика разработки для начинающих программистов, кто столкнулся с устаревшей Торговля+склад 9.2 (или отраслевых аналогов типа Агент-Плюс...).

1 стартмани

05.11.2015    16427    17    jobkostya1c8    3       

Как получить номер и дату договора из наименования справочника договоров? 5

Инструменты и обработки Программист Внешний отчет (ert,erf) v7.7 1cv7.md Windows Абонемент ($m) Практика программирования Обработка справочников

В типовых конфигурациях платформы "1С:Предприятие 7.7" часто номер и дата договора указаны в самом наименовании договора. Что создает сложности в тех случаях, когда эти реквизиты надо знать, например, при конвертации данных в конфигурации платформы "1С:Предприятие 8", где номер и дата договора - отдельные реквизиты.

1 стартмани

24.09.2015    16567    2    SiAl    7       

Методы для группировки данных по полю,полям в Таблице Значений на примере универсального метода списания по партиям, а также отбора строк в ТЗ по произвольному условию. Для 8.x и 7.7 4

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 v8 1cv8.cf 1cv7.md Windows Абонемент ($m) Практика программирования Универсальные функции

Я очень часто использую группировку данных по полю и полям, как в восьмерке, так и в семерке. Это аналог запроса Итоги, но там строится дерево, а в большинстве случаев нужны "плоские данные". Да и делать запрос в большинстве случаев более накладный процесс, чем работа с ТЗ. Все достоинства такого подхода приведены на примере метода универсального списания по париям, а так же отбора строк в ТЗ по произвольному условию. Для 7.7 еще отчеты сравнения двух ТЗ. Работая с различными базами для упрощения сравнения номенклатуры, или как аналог джойнов(join), сделал сравнение двух таблиц значений по нескольким полям. Пока группировки полей должны быть уникальны. Часто приходится искать дубли, для универсального поиска есть ДублиВТзПоПолю и пример в Тест.ert.

1 стартмани

25.06.2015    21173    4    Serginio    1       

Предельные базы взносов в ПФР, ФСС, ФФОМС 2015 в 1С: Бухгалтерия 7.7 0

Инструменты и обработки Программист Конфигурация (md, cf) v77::БУ 1С7:Бух Россия БУ Windows Зарплата Абонемент ($m) Практика программирования

Реализация Постановления Правительства РФ 1316 от 04.12.14 для типовой конфигурации "Бухгалтерский учет 7.7" рел. 7.70.590

1 стартмани

31.12.2014    16504    10    Sergey1CSpb    2       

Онлайн резервирование товаров 1

Инструменты и обработки Программист Подсистема v77::ОУ 1С7:ТиС Windows Абонемент ($m) Практика программирования

Бывало ли у Вас такое: зарезервировали товар по телефону, собрались проводить документ, а товара уже нет в доступном остатке на складе? Пока Вы разговаривали, кто-то успел провести документ, который зарезервировал товар. Что делать? Есть одна идея.

1 стартмани

10.10.2013    9429    1    Вадимко    1       

Изменение структуры баз 1С 7.7 без долгой реструктуризации. Часть 1. Справочники 31

Статья Программист Нет файла v7.7 1cv7.md Windows Абонемент ($m) Практика программирования

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    16515    4    Reptile    5       

Ошибка в регламентированной отчетности за 2-й квартал (форма-4 ФСС: Титульный лист, релиз 13q2001) 9

Инструменты и обработки Программист Бухгалтер Внешний отчет (ert,erf) v77::БУ 1С7:Бух Россия БУ Windows ФОМС, ПФ, ФСС Абонемент ($m) Регламентированная отчетность Практика программирования

В регламентированной отчетности за 2-й квартал (форма-4 ФСС: Титульный лист, релиз 13q2001) для конфигурации "Бухгалтерский учет, редакция 4.5" при открытии ранее сохраненного титульного листа дата подписания всегда будет "01.04.2013" независимо от того, какая там была дата при сохранении.

1 стартмани

27.06.2013    11084    18    user77    8       

Итоговая строка в форме "Требование-накладная" М-11 в 1С: Бухгалтерия 7.7 2

Статья Бухгалтер Нет файла v77::БУ 1С7:Бух Россия БУ Windows Абонемент ($m) Практика программирования

Появилась необходимость видеть итог в Требовании-накладная М-11 по колонке "Сумма" Выкладываю - как написать

1 стартмани

15.04.2013    14014    10    Доня    3       

[Разработчику] Любая таблица значений в OLAP 20

Инструменты и обработки Программист Архив с данными v7.7 1cv7.md Windows Абонемент ($m) Инструментарий разработчика Практика программирования Универсальные обработки

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    24333    49    venger    7       

Реализация условий в прямых запросах к журналу расчета. 8

Статья Программист Нет файла v77::Расчет 1С7:ЗиК Windows Зарплата Абонемент ($m) Практика программирования

Обзор методов реализации условий и функций с условиями в обращениях к журналу расчетов при помощи прямого запроса.

1 стартмани

06.12.2012    11406    5    nicotin    5       

Библиотека кода 1С 7.7 (накопленная за 8 лет) 69

Инструменты и обработки Программист Внешний отчет (ert,erf) v7.7 1cv7.md Абонемент ($m) Практика программирования

Весь код на 1С 7.7, собранный для повторного использования за 8 лет работы.

10 стартмани

25.11.2012    23459    247    adhocprog    51       

Групмейкер для таблицы значений. 24

Инструменты и обработки Программист Внешний отчет (ert,erf) v7.7 v77::ОУ v77::БУ v77::Расчет 1cv7.md Windows Абонемент ($m) Инструментарий разработчика Практика программирования Универсальные обработки

Универсальная функция и обработка для свертки и группировки таблицы значений. Очень простой способ подвести итоги по призвольным группам в произвольном порядке любой таблицы значений для быстрого вывода на печать нужной пользователю последовательности и детализации группировок.

1 стартмани

20.11.2012    19829    59    dusha0020    15       

Выгрузка на сайт через EXСEL, с таймером (с повторениями выгрузки через заданный промежуток времени). 7.7 ТиС Украина 4

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v77::ОУ 1С7:ТиС Украина Windows Абонемент ($m) Практика программирования Загрузка и выгрузка в Excel WEB

Данная обработка состоит из двух обработок, т.к. таймер в 1С реализован крайне криво, я старался как мог. Первая обработка запускает таймер, и настройки выгрузки (а точнее вторую обработку, которая выгрузкой и занимается непосредственно). Выгрузка данных в EXСEL осуществляется согласно логу, т.е. выгружаются исключительно те данные, которые редактировали ближайшие два дня. Также обработка автоматически удаляет все экселевские файлы, лежащие в указанной папке более трех дней (можно эту функцию отключить) Подробная инструкция по установке в описании

1 стартмани

03.09.2012    8380    15    serko8547    1       

Сохранить активный табличный документ на рабочий стол в XLS 0

Инструменты и обработки no Внешняя обработка (ert,epf) v77::ОУ v77::БУ v77::Расчет 1cv7.md Казахстан Windows Абонемент ($m) Практика программирования

Удобное, БЫСТРОЕ сохранение табличного документа. Средствами йокселя. Сохраняет открытый документ на рабочий стол.

1 стартмани

22.08.2012    10621    6    Maximysis    3       

Баги 1С 7.7 - добро или зло: непосредственный ввод "а ля 1С 8.х" без использования ВК 44

Инструменты и обработки Программист Архив с данными v7.7 1cv7.md Россия Абонемент ($m) Практика программирования

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

1 стартмани

25.06.2012    19834    33    MarSeN    21       

Скрипт обработки повторов принадлежности видов расчетов к группам расчетов при сравнении конфигураций ЗИК 0

Инструменты и обработки Программист Компонента, плагин (dll, vbs,..) v77::Расчет 1С7:ЗиК Россия Абонемент ($m) Практика программирования

При сравнении конфигураций 7.7 ЗИК у групп расчетов и видов расчетов присутствуют строки, относящиеся одновременно к удалённым и добавленным видам/группам. Скрипт анализирует отчет о сравнении конфигураций и удаляет лишние строки.

1 стартмани

05.06.2012    3582    2    bubblegum    1       

Внешний отчет Книга покупок 2012 для старых релизов Бухгалтерии 7.7 16

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v77::БУ 1С7:Бух Россия БУ Розничная торговля Абонемент ($m) Практика программирования Анализ учета

Внешний отчет Книга покупок 2012 для старых релизов Бухгалтерии 7.7 (протестировано на релизе 445 типовой конфигурации).

1 стартмани

26.04.2012    7973    159    ddv68    8       

Печать РКО и ПКО за период 5

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::БУ 1С7:Бух 1С7:Комплекс Россия БУ Кассовые операции Абонемент ($m) Печатные формы документов Практика программирования

Пакетная печать приходных и расходных кассовых ордеров за период. Возможность отправить документы на просмотр или сразу на печать

1 стартмани

25.04.2012    4582    38    Leannet    7       

Добавление стран из классификатора сохраненного в таблице значений 3

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ 1С7:ТиС Россия Windows Абонемент ($m) Практика программирования

В связи с тем, что в новой форме счет-фактуры указываются коды стран-производителей товара, столкнулся с ситуацией, когда в классификаторе стран находится много стран-дублей, а коды стран не соответствуют общероссийскому классификатору. Чтобы в дальнейшем, при добавлении стран, ситуация не повторялась решено было реализовать механизм позволяющий только выбирать страну из классификатора (предварительно сохраненного в ТаблицеЗначений).

1 стартмани

23.04.2012    4266    9    noknown    2       

Исправление ошибки в отчете "Журнал счетов-фактур по Постановлению № 1137" в 1С Бухгалтерии 7.7 537-7.7.538 релиз 12

Статья Программист Нет файла v77::БУ 1С7:Бух Россия БУ Абонемент ($m) Практика программирования

В отчете "Журнал счетов-фактур по Постановлению № 1137" в печатной форме не выводятся суммы НДС по ставке 10%, внесенные вручную в документе "Счет-фактура полученный"

1 стартмани

12.04.2012    9575    22    ksv74    1       

Выяснение ID'а объекта в базе SQL по его внутреннему идентификатору 1С 7

Инструменты и обработки Программист Внешняя обработка (ert,epf) openconf v77::БУ 1cv7.md Windows Абонемент ($m) Практика программирования Универсальные функции

Обработка позволяет узнать ID в базе SQL конкретного агрегатного объекта конфигурации (метаданных) 1С 7.7.

1 стартмани

27.03.2012    25055    14    born85    41       

Вывод и перенумерация отчета с заранее неизвестным количеством группировок. 19

Инструменты и обработки Программист Внешняя обработка (ert,epf) openconf v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m) Практика программирования Работа с интерфейсом

1C v.7.7 Пример вывода отчета с заранее неизвестным количеством группировок, с возможностью изменять уровень вложенности группировок из списка значений на форме, с нумерацией конечного отчета, с выводом структуры вложенности группировок (с помощью внешней компоненты Йоксель - http://yoksel.net.ru/Hotfixes). В приложенном файле показан пример вывода отчета из сформированной таблицы значений. Код я старался закомментировать как можно подробней. Хоть семерка и вымирающая платформа, думаю еще есть люди, которые только начинают ей заниматься, и им это может пригодиться.

1 стартмани

21.03.2012    23124    20    unichkin    11       

Исправление ошибки вычисления суммы удержанного НДФЛ в ЗиК 320-322 14

Статья Программист Нет файла v77::Расчет 1С7:ЗиК Россия БУ Зарплата НДФЛ Абонемент ($m) Практика программирования

При заполнении таблицы ДоходыВычетыНалогиСотрудников в функции глобального модуля глСобратьДанныеДляНДФЛ2011() есть ошибка при вычислении колонки "НУ1" (суммы удержанного НДФЛ для целей налогового учёта). Данная статься посвящена её исправлению.

1 стартмани

18.03.2012    15227    30    andrewks    33       

Проверка и исправление реквизитов контрагентов в соответствии с сайтом STA.GOV.UA 5

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ v77::БУ 1cv7.md Украина Абонемент ($m) Практика программирования Разное

Отчет-Обработка для заполнения в украинской конфигурации реквизиты контрагентов в соответствии с сайтом STA.GOV.UA. Проверку можно осуществлять как по ИНН таки по ЕДРПОУ. Можно сделать только отчет. А если понадобится то установив соответствующие флажки сделать необходимые изменения. Можно делать как для отдельного контрагента (выбрав его в отчете) так и для всех контрагентов сразу (для этого поле контрагента оставить пустым). Сделал Отдельно для "ТиС" и Отдельно для "Бухг учет"- Конфигурации для Украины

1 стартмани

12.03.2012    8773    7    volodya1122    6       

Журнал "Общий". Меню кнопки "Время" вынесено отдельными кнопками 0

Инструменты и обработки Программист Архив с данными v77::БУ 1С7:Бух Россия Абонемент ($m) Практика программирования

Для удобства, что бы не вызывать меню из кнопки "Время". Пользуюсь часто. Экономит моё время.

1 стартмани

01.03.2012    3767    5    andr12    9       

Исправление ошибки в печати справок 2-НДФЛ в 1С Бухгалтерии 7.7 535 релиз и УСН 189 38

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v77::БУ 1С7:Бух Россия БУ Зарплата НДФЛ Абонемент ($m) Справки Практика программирования

При подборе в печати справок возникает ошибка "Если Элемент.ОсновнойЭлемент Элемент Тогда {Отчет.СправкиПоНДФЛ.Форма.Модуль(4782)}: Поле агрегатного объекта не обнаружено (ОсновнойЭлемент)"

1 стартмани

30.01.2012    15090    72    Intelligent    21       

Взаимозачет по партиям для регистра "ПартииНаличие" 10

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v77::ОУ 1С7:ТиС Россия БУ Учет ТМЦ Абонемент ($m) Практика программирования Анализ учета

В процессе работы с конфигурацией ТИС, в разрезе одной номенклатуры могут накапливаться как положительные так и отрицательные остатки по различным партиям. Данная обработка содержит модуль проведения регламентного документа, который можно было бы создать в конфигурации и условно назвать "КорректировкаПартий", посредством которого можно провести взаимозачёт таких партий.

1 стартмани

02.01.2012    8319    122    Digo65    19       

Хранение любых файлов в конфигурации бух 4.5 1С77 с привязкой их к справочникам и документам (облегченная) 3

Инструменты и обработки no Конфигурация (md, cf) v77::БУ 1cv7.md Абонемент ($m) Практика программирования

Небольшая доработка типовой конфигурации 1С77 Бухгалтерский учет 4.5. После доработки конфигурация позволяет "крепить" к любым документам и справочнику Договоры любые файлы (картинки, сканы документов, xls файлы расчетов, rtf файлы документов и договоров).

1 стартмани

22.12.2011    5553    17    zspr    8       

Хранение любых файлов в конфигурации бух 4.5 1С77 с привязкой их к справочникам и документам 15

Инструменты и обработки no Конфигурация (md, cf) v77::БУ 1С7:Бух Windows Абонемент ($m) Практика программирования

Небольшая доработка типовой конфигурации 1С77 Бухгалтерский учет 4.5. После доработки конфигурация позволяет "крепить" к любым справочникам и документам любые файлы (картинки, сканы документов, xls файлы расчетов, rtf файлы документов и договоров).

1 стартмани

20.12.2011    6415    40    zspr    30       

Устранение дубликатов номенклатуры в справочнике и документах 0

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v77::БУ 1С7:ББУ Россия Абонемент ($m) Практика программирования Обработка справочников

Обработка создана для устранения дубликатов номенклатуры в справочнике, проводках, а также документах, без перепроведения.

1 стартмани

10.12.2011    6757    52    Borometr    10       

Миниклавиатура для ТиС 9.2 7.7 5

Инструменты и обработки Системный администратор Бухгалтер Внешняя обработка (ert,epf) v77::ОУ 1С7:ТиС Россия УУ Учет ТМЦ Абонемент ($m) Практика программирования

Обработка для подбора по коду товара, можно адаптировать под различные варианты. Написал так, ради интереса.

1 стартмани

22.11.2011    4100    11    volsh77    3       

Редактор и исполнитель программного кода в режиме Предприятие (1С 7.7) 68

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 1cv7.md Россия Абонемент ($m) Практика программирования

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

1 стартмани

19.11.2011    19085    134    dusha0020    44       

Плагин для лечения выгрузки и загрузки больших баз в 1С 7.7 (портирование под Win7) 61

Инструменты и обработки Системный администратор Компонента, плагин (dll, vbs,..) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Windows Абонемент ($m) Практика программирования

В связи с изменением состава DLL в Wiindows 7 оригинальный плагин выложенный здесь http://infostart.ru/public/15364/ перестал работать в Windows7/WindowsServer 2008 R2. (Что именно там изменилось можно посмотреть здесь http://ru.wikipedia.org/wiki/MinWin) Данный плагин - это простое портирование оригинального плагина под Windows 7

1 стартмани

31.10.2011    49567    572    avgreen    90       

Загрузка данных из MXL 4

Инструменты и обработки Программист Внешняя обработка (ert,epf) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m) Практика программирования Внешние источники данных

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

1 стартмани

25.10.2011    10820    65    YChemodanov    7       

Исправление ошибки ЗиК 314 в отчете "Расходы предприятия за счет ФСС" 27

Отчеты и формы Программист Бухгалтер Внешний отчет (ert,erf) v77::Расчет 1С7:ЗиК Россия БУ Зарплата ФОМС, ПФ, ФСС Абонемент ($m) Регламентированная отчетность Практика программирования Специальные

При формировании расчета базы и взносов по определенному подразделению в разделе "Расчет по начисленным страховым взносамна ОСС от несчастных случаев" неправильно считаются выплаты и иные вознаграждения, на которые не начисляются страховые взносы

1 стартмани

21.10.2011    11864    23    Intelligent    12