1с77 Свертка баз

Тема в разделе "1C и всё что с ней связано", создана пользователем vbs, 6 окт 2010.

  1. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    База ТиС 9.54. Подобные сворачивал уже раз двадцать, не меньше. Пользуюсь своими обработками
    (Штатная свертка базы умирает на 10+ часов, кстати, и конца не видно).
    В данном случае вообще вырожденная ситуация - надо только снять товарные остатки на нужную дату и запихнуть
    их в "ВводОстатковТМЦ" по складам. (База режется на 1 сентября, документы до 31.08 удаляются, остальные перепроводятся).
    Так вот, в этот раз при восстановлении последовательности обнаружил набившую оскомину проблему : "Не распределилось по партиям..."
    Вылечилось не просто перепроведением 4х документов "ВводОстатковТМЦ", а снятием их с проведения и последующим перепроведением.
    (Способ обнаружился экспериментально).
    Видимо, что-то не так при проведении программно созданных документов.
    1. Компетентные мнения приму с интересом
    2. Рекомендую взять на заметку тем, кто сворачивает базы "самопально"
     
  2. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    В модуле формы есть переменная.участвующая в проведении. При программном проведении она не заполняется и выдается косяк.
     
  3. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    А поподробнее ?
     
  4. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Поведение ОбработкаПроведения действительно несколько разнится. Но точно сказать нигде это не написано. Могу только покумекать:
    * заметил разницу, что если выполняется метод Рег.ВременныйРасчет(1) то при интерактивном проведении не критично отсутствие Рег.ВременныйРасчет(0). А вот при массовом перепроведении встает на дыбы.

    * Никогда не пользовался методом ГрупповаяОбработка() - боюсь рисковать. А оптимизировать можно было бы. Раз метод есть, значит среда в чем-то меняется.

    * Такое ощущение, что сама 1С при групповом проведении на первом док-те рассчитывает регистры, а на последующих их только корректирует.

    * В мой конфигурации был такой глюк: невозможно было перепроводить Приходные и Расходные за один проход. Смыл сообщения "Временный регистр не может быть использован" для меня до сих пор покрыт мраком. Потом как-то подлатал. А ведь в теории контекст одного дока не должен влиять на другой.
     
  5. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    Еще года два назад при аналогичной свертке также столкнулся с нераспределением по партиям.
    Чудесным образом натолкнулся на такой выход : откатывал ТА на раннюю безопасную приходную накладную, проводил ее руками,
    после чего все дышало. Действительно там где-то тайна во мраке.

    А временный расчет в моем нынешнем случае ни при чем.
    Внедрение в процедуру списания по партиям выявило, что при выгрузке итогов получается пустая таблица :ua:
    А что там, в итогах - черный ящик :(
    В общем, проблема преодолена, а осадок остался. Не люблю я такие вещи в ТиС с партиями.
    Подергаешь их и так, и сяк, починишь, а что за причина была и почему пропала - непонятно
     
  6. tanat

    tanat Well-Known Member

    Регистрация:
    2 мар 2007
    Сообщения:
    265
    Симпатии:
    0
    Не побоюсь показаться глупым и спрошу:
    1) А не проще было бы просто перенести остатки в новую ( чистую) базу, и в нее же перенести документы-справочники, и в этой ( вновь созданной) перепровести документы?
    Просто, как показывает моя практика, зачастую учет в организациях ( особенно бухгалтерский) подгоняется под отчетность, а следовательно, если перепроводить старые документы рискуем получить не те данные, что были представлены в отчетости. К Вашему случаю это, конечно, не относится, но все же.

    2) Я как-то наткнулся на *цензура*ожий случай, и мне помогла реиндексация базы данных. Я так понимаю, что при "откате" ТА на более ранний док происходит, в дальнейшем, пересчет итогов и опять же реиндексация? Или я ошибаюсь?

    (С 7-кой практически не работаю. Если вопросы кажутся глупыми-абсурдными-недостойными внимания - просьба башмаками по голове не бить ,а сказать в чем моя "дурость")) .
     
  7. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    Для базы "с нуля" такой вариант действительно предпочтительнее, ибо перенос документов - операция, занимающая существенное время.
    Но мне надо было оставить в базе последний месяц + 5 дней, в таком варианте это лишних часа два. Если бы речь шла о 3-5 днях, оба варианта сравнимы по времени
    Если бы не было заморочек с распределением по партиям, то временнЫе затраты таковы :
    1. Снятие остатков - 2 мин.
    2. Удаление документов предыдущего периода 3-4 мин.
    3. Внедрение остатков 3-4 мин.
    4. Восстановление последовательности 1-2 мин.
    5. При необходимости перенести взаиморасчеты с контрагентами, добавляем еще час-два (но это справедливо и для варианта создания новой базы, так что выигрыша нет)
    6. С занудством Катона старшего (Ceterum censeo Carthaginem esse delendam) еще раз выражу недовольство стандартной сверткой базы
     
  8. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    Если не ошибаюсь, в типовой бухгалтерии в модуле проведения (счет-фактуры?) есть переменная НомерРелиза. Она объявлена и заполняется при открытии формы и реквизитом документа не является. при программном проведении эта штука не заполнялась и у меня косячили документы.
     
  9. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    1. Верно. Только это на проведении никак не скажется, если при программном создании документа ЗАПОЛНИТЬ этот реквизит соответствующей константой.
    А СУЩЕСТВУЮЩИЕ документы перепроведутся без проблем
    2. Траблы у меня были в ТиС, свертка бухгалтерии проблем не вызывала ни разу, даже ПУБ удалось дважды успешно и быстро свернуть
     
  10. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    Во
    Ну в списке реквизитов документа я номеррелиза не нашел, зато нашел в переменных формы. Может меня конечно проглючило. Так вот не факт, что номеррелиза это единственная переменная, которую я пропустил, возможно в ТиС та же ситуация. Как вариант можно попробовать проводить через открытие формы документа (подшаманить приоткрытии)- если это нормально отработает, значит точно что-то заполняется при интерактивном открытии, а программном формировании пропущено. Мне скоро ТиС тоже сворачивать надо, если найду подобный косяк - попробую найти причину.
     
  11. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    Искать надо реквизит ВерсияОбъекта. Он и должен быть равен константе НомерРелиза. В Бух 4.5 он в 5-6 документах используется
     
  12. anrspb

    anrspb Member

    Регистрация:
    6 сен 2010
    Сообщения:
    11
    Симпатии:
    0
    Про свертку ТиС : слышал, что правильные пацаны не восстанавливает ГП ни в типовой, ни в нетиповой торговле после свертки.
    Кто-нибудь может рассказать о таких методах ?
     
  13. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    Ну раз это не канает - тогда более никаких соображений как програмное проведение документа может отличаться от интерактивного у меня нет.





    Добавлено:
    А что про них рассказывать? ТА туда, ТА сюда.... ;-) У vbs была хорошая тема про это дело.
     
Загрузка...

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