Плановые проводки на регистре
Загрузить пример
решения будущих проводок
для SQL-версии (87Kb)
Пример проверен на 15 и 18 релизах 1С:Предприятия для SQL.
После продолжительного обсуждения, решение для SQL-версии предложил Алексей Мазуркин (Marshak_IX). Спасибо, брат. Ты крут.
Еще раз повторю: решение только для SQL-версии. На DBF версии это решение приводит к передаче всех плановых проводок по сети.
Суть решения:
- используются не ресурсы, а реквизиты регистра (таким образом избавляемся от стандартного механизма итогов. Нет итогов — нет проблемы с большими объемами итогов)
- по регистру делается запрос. Запрос должен быть как можно проще, чтобы 1С смогла сгенерировать группировку и суммирование на сервере (так избавляемся от передачи огромных данных по сети)
Хинт: в качестве даты планирования лучше использовать не справочник, а обычную дату.
Таким образом, SQL занимается суммированием всех проводок (это нормально — работа у него такая), а по сети передаются только необходимые данные.
Почему решение было найдено и почему я раньше считал, что задача неразрешима? Я искал решения для любой версии 1С. Алексей Мазуркин предложил решение для практически значимой для данной задачи версии. Я согласен с Алексеем, если перед предприятием стоит нормальная (не игрушечная) задача планирования, то у предприятия наверняка достаточно большой объем фактических данных и использование SQL версии очень оправдано.
Трехвалютный учет в 1С
Загрузить пример
решения, который прислал
alex8r (92Kb)
После выхода статьи Поколение 1С было несколько писем, в которых обсуждалась проблема трехвалютного учета в 1С. Работающий пример прислал axex8r.
Суть решения:
- используется два плана счетов
- настройки счетов в разных планах счетов должны быть одинаковы
- в одном плане счетов реквизит Сумма означает рубли, во втором - сумму в корпоративной валюте. Предполагается, что валюта и валютная сумма интерпретируется одинаково для обоих планов счетов. В том числе и для неуказанной валюты (!).
Практически есть только ограничение: когда вводятся проводки в корпоративный план счетов, то проводка БЕЗ валюты означает проводку в РУБЛЯХ, а не проводку в КОРПОРАТИВНОЙ валюте, а для корпоративной суммы валюту указывать ОБЯЗАТЕЛЬНО. Для того, чтобы обеспечить это ограничение, необходимо сделать соответствующие проверки в коде и обучить пользователей. Кроме того, alex8r изменил термин — вместо рублевый эквивалент он использует термин "валюта бухгалтерского учета".
В качестве побочного эффекта, в стандартных отчетах в корпоративном плане счетов показывается два раздела для рублей: итоги по безвалютным проводкам и итоги по проводкам в рублях.
Однако, готов согласится с alex8r — в стандартной версии 1С ведет себя точно также и по рублевым проводкам. Остаются только проверки и обучение пользователей — пользователи должны помнить, что секция без валюты это суммы в рублях.
Пока не готов исследовать какие еще побочные эффекты появятся... alex8r уверяет, что их не будет.
Почему решение было найдено, а я раньше считал, что решения не существует? Все, и я в том числе, пытались следовать идеологии хранения и соответствия сумм и валют в разных планах счетов. Может быть и зря... но пока мне мерещатся страшные побочные эффекты в стандартных отчетах, если этой идеологии не следовать. Думаю, что окончательно на вопрос о побочных эффектах ответит только реальное внедрение. В любом случае, формально решение от alex8r полностью удовлетворило все требования, который я выдвигал в техническом задании.
Огромное спасибо всем, кто принял участие в обсуждении и в создании работающих примеров. Отдельное спасибо Алексею Мазуркину (Marshak_IX) и alex8r.
Буду рад Вашим замечаниям и предложениям.
Мазуркин Сергей, mazzy@mazzy.ru