7.7 Отчеты формируются неправильно

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем 1Счик, 14 июл 2010.

  1. TopicStarter Overlay
    1Счик
    Offline

    1Счик

    Регистрация:
    16 дек 2008
    Сообщения:
    46
    Симпатии:
    0
    Баллы:
    1
    Добрый день!

    С недавних пор все отчеты стали формироваться неправильно. Причем ИНОГДА они формируются правильно. ИНОГДА - это без какой-либо периодичности. Я обнаружил, что когда один пользователь формирует отчет, а второй пользователь при этом проведет документ - отчет формируется неверно. Я заметил, что во время формирования отчета при проведении документа расчет итогов, либо обработка операций в отчете прекращаются и "недоделанный" отчет выводится на экран. Это касается всех отчетов, которые формируются и через "БухгалтерскиеИтоги" и через "Запрос". База распределенная: три филиала в трёх городах. Везде такая же проблема. Работает она уже два года, до этого таких приколов не было замечено.

    База DBF - бухгалтерия, распределенная
    1С 7.7 релиз 27
    Пользователи подключаются терминально по локальной сети к серверу
    В каждом филиале свой сервер

    Размеры самых больших файлов в ЦБ (кстати, в филиалах почти такие же размеры файлов):
    1sentry.dbf - 1Gb
    1saccsel.dbf - 500Mb
    1sbkttl.dbf - 200Mb
    остальные файлы менее 100Mb
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В данном случае 1Gb - не критичный размер. Возможно критично кол-вор записей... Но для обычной бух не похоже. Никаких дополнительных библ не юзаете? Дело в том что при проведении документа 1с включает блокировку таблиц, так что если в это же время формируется отчет (без вкюченной транзации иначе не проводился бы документ) он априори вылетать не может. Едиственное что - если выскочит сообщение о заблокированных таблицах... И тем более в филиалах вылетать не должна (распределенка - в филиалах база меньше). Резюме: не очень похоже на траблы в 1с
  3. TopicStarter Overlay
    1Счик
    Offline

    1Счик

    Регистрация:
    16 дек 2008
    Сообщения:
    46
    Симпатии:
    0
    Баллы:
    1
    Да, совсем не похоже...

    Юзаем, но юзаем их давно. Достаю такую же базу из архива месячной давности - траблов нет (причем там те же библиотеки и т.п.).

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

    Не особо она там меньше, т.к. мигрируют практически все документы (так надо :) ).

    Я вообще не могу понять на что это похоже. На железо не погрешишь, т.к. на разных серверах в разных городах происходит одинаково.

    Кстати, в конфигурацию никаких серьезных изменений за прошедший месяц не вносили.

    ЗЫ: что-то не получается цитировать...
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    И все-таки: какие библы используете? (похоже что используете)
    Что считать под "несерьезными изменениями"?
  5. TopicStarter Overlay
    1Счик
    Offline

    1Счик

    Регистрация:
    16 дек 2008
    Сообщения:
    46
    Симпатии:
    0
    Баллы:
    1
    вот эти, причем давно и не в одной этой базе
    FormEx.dll
    SpreadSheet.dll
    V7PLUS.DLL

    Думаю, Вы предложите их отключить. Отключал уже. Результат пока тот же...

    Сейчас еще раз посмотрел: например, в документе "СчетФактура" изменена форма диалога, изменены права доступа к некоторым документам. Ничего особого. Даже в модулях документов ничего не делалось, не говоря уже о глобальном модуле или добавлении/удалении полей справочников/документов.
  6. Маргаринов
    Offline

    Маргаринов

    Регистрация:
    17 апр 2012
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Точно такая же ситуация, подскажите, пожалуйста, решение проблемы. Выгрузка-загрузка, удаление индексов и переиндексация, полный пересчет итогов результата не дали. Отчеты по моему неправильно формируются в момент проведения документов другими пользователями
  7. Маргаринов
    Offline

    Маргаринов

    Регистрация:
    17 апр 2012
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Нашел вот что то похожее на правду- сегодня ночью попробую установить.
    Цитата с _http://infostart.ru

    _http://infostart.ru/public/15577/

    Одним из недостатков 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 никакая реальная запись не попадёт.
  8. Маргаринов
    Offline

    Маргаринов

    Регистрация:
    17 апр 2012
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Информацию проверил - работает

Поделиться этой страницей