Ну а что делать? Алгоритм в таком виде придумала 1С. Что можно сказать, глядя на него? Во первых, авторы заставили компьютер выделять память под переменную НомПикт, а так же ПодчДок при каждом вызове функции. Если бы этот кусок делал я, то сделал бы эти переменные действующими в рамках модуля формы журнала документов. С точки зрения "красивости" программирования это некорректно, так как остальным процедурам и функциям модуля они не нужны, но с точки зрения оптимизации быстродействия это нормальный прием и я выбрал бы его. Кстати, в VB есть такое понятие области видимости переменной, как Static, очень напрашивается к применению в данном случае, к сожалению, в 1С такое не реализовано (и в v8 тоже). Тут все переменные либо Private, либо Public.<br>Ну, и несомненно, основной тормоз в алгоритме - ПодчДок.ВыбратьПодчиненныеДокументы(...). Он нужен для того, чтобы по тем платежкам, на основании которых сделана выписка появлялся значок об этом свидетельствующий... Тут уж малой кровью ничего не поделаешь, наверное. Опять же... С точки зрения оптимизации быстродействия работы программы в ущерб "красивости" применяемых программных приемов я бы сделал так: в Платежном поручении сделал бы 2 скрытых реквизита шапки: ЕстьВыписки, ДатаПоследнейВыписки. Учитывая то, что платежное поручение - док, который никак не влияет на бух. итоги, легко можно реализовать при проведении выписки перезапись этих реквизитов в платежных поручениях, ссылки на которые имеет выписка. А в этой функции расчета нужной пиктограммы не мучать базу, а воспользоваться уже готовыми вычисленными значениями, которые хранятся в платежке. Соответственно, при отмене проведения выписок нужен алгоритм, который будет пересчитывать эти же значения в платежках. Но это все переделки базы! Если вы допускаете возможность этих изменений и для вас потом не составит труда обновлять конфигурацию, меняйте, делайте. Если же вы согласны пользоваться только типовой конфигурацией, ищите выход в обновлении оборудования, наверное.