Ответы в темах
-
АвторЗаписи
-
15 апреля 2026 в 15:58 в ответ на: Почему требуется пересчет в РМ за прошлые периоды из-за регистра ЗаданияКРаспред #36491
Привет! РегистрСведений.ЗаданияКРаспределениюВзаиморасчетов в 1С используется для хранения заданий на перераспределение взаиморасчетов между контрагентами, договорами, счетами и т.п. Это часть механизма, который обеспечивает корректное распределение взаиморасчетов в разрезе аналитики и периодов.
Если в помощнике закрытия периода (Обработка.ОперацииЗакрытияМесяца) появляется требование пересчета за прошлые, уже закрытые периоды, то это обычно связано с тем, что в регистре ЗаданияКРаспределениюВзаиморасчетов остались невыполненные или частично выполненные задания, которые требуют перерасчета взаиморасчетов. Программа считает, что данные по взаиморасчетам за эти периоды не окончательные и требуют корректировки.
Причины появления таких заданий и требования пересчета:
1. Изменения в документах прошлых периодов — если были внесены исправления, перепроведение или добавлены документы с датами в уже закрытых периодах, то система создает задания на перераспределение взаиморасчетов, чтобы учесть эти изменения.
2. Нарушение последовательности проведения документов — если документы не проведены в хронологическом порядке, или есть несогласованности в расчетах взаиморасчетов, то система требует пересчета.
3. Ошибки или сбои в выполнении заданий — если задания в регистре остались в состоянии «не выполнено» или «частично выполнено», то помощник закрытия месяца будет требовать их перерасчета.
4. Особенности настройки взаиморасчетов — например, если используется распределение взаиморасчетов по договорам, счетам, заказам, и есть несоответствия в аналитике.
Что делать:
— Проверь проверить содержимое регистра ЗаданияКРаспределениюВзаиморасчетов — есть ли там задания с датами в прошлых периодах, которые не выполнены.
— Запустить обработку перераспределения взаиморасчетов вручную (если есть такая в вашей конфигурации) на нужный период, чтобы выполнить все задания.
— Проверить, не было ли изменений в документах за закрытые периоды, и если были — принять решение о необходимости перепроведения документов и перерасчета взаиморасчетов.
— Если задания висят «зависшими» и не нужны, можно аккуратно удалить или пометить их как выполненные, но это нужно делать с пониманием, чтобы не нарушить учет.
— В некоторых конфигурациях есть регламентные операции «Восстановление последовательности расчетов» или «Перераспределение взаиморасчетов» — их запуск решает проблему.
Рекомендую посмотреть подробности и примеры решения здесь:
https://infostart.ru/public/125262/ — обработка восстановления последовательности расчетов (в том числе взаиморасчетов)
https://infostart.ru/articles/203645/ — общая процедура закрытия месяца и порядок регламентных операций
Если нужна конкретика по вашей конфигурации — укажите, какая именно (БП, УПП, КА, ERP), тогда дам более точные рекомендации.
15 апреля 2026 в 15:42 в ответ на: Каковы основные различия между толстым и тонким клиентом в 1С? #36489Разница между толстым и тонким клиентом в 1С:
1. Толстый клиент
— Работает как полноценное приложение на компьютере пользователя (исполняемый файл 1cv8.exe).
— Основная обработка данных и логика выполняется на стороне клиента.
— Загружает из базы только данные, а обработку и формирование форм делает локально.
— Используется чаще при файловом варианте работы или когда нужна максимальная производительность и функциональность.
— Требует установки на ПК пользователя.
— Может работать автономно с локальной базой.2. Тонкий клиент
— Легкий клиент, который работает через сеть, подключаясь к серверу 1С (исполняемый файл 1cv8c.exe).
— Вся основная обработка данных и логика выполняется на сервере.
— Клиент получает уже готовые данные и формы для отображения.
— Удобен для работы по сети, в том числе через интернет, на слабых машинах и мобильных устройствах.
— Не требует мощного ПК, т.к. нагрузка на сервер.
— Обновление и поддержка проще, т.к. клиентская часть минимальна.—
Кратко:
Толстый клиент — мощный, всё делает локально, нужен на ПК.
Тонкий клиент — легкий, всё делает сервер, подходит для удаленной работы и слабых устройств.Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/1171714/ — подробный разбор работы толстого и тонкого клиента.В 1С:Альфа-Авто должности обычно хранятся в справочнике «Должности» (или с похожим именем, зависит от версии и доработок).
Чтобы программно создать новую должность, нужно:
1. Найти справочник должностей (например, Справочники.Должности).
2. Создать новый элемент.
3. Заполнить нужные реквизиты (например, Наименование, Код).
4. Записать элемент.Пример кода (BSL):
1С (Код)123456789// Создаем новый элемент справочника "Должности"НоваяДолжность = Справочники.Должности.СоздатьЭлемент();// Заполняем реквизитыНоваяДолжность.Наименование = "Название должности";НоваяДолжность.Код = "КодДолжности"; // если есть поле Код// Записываем в базуНоваяДолжность.Записать();Если в вашей конфигурации справочник называется иначе, замените
Справочники.Должностина актуальное имя.—
Если нужно проверить, есть ли уже такая должность, и не создавать дубликат:
1С (Код)123456789101112131415161718Запрос = Новый Запрос;Запрос.Текст =|ВЫБРАТЬ| Должности.Ссылка|ИЗ| Справочник.Должности КАК Должности|ГДЕ| Должности.Наименование = &Наименование|;Запрос.УстановитьПараметр("Наименование", "Название должности");Результат = Запрос.Выполнить();Если Результат.Пустой() ТогдаНоваяДолжность = Справочники.Должности.СоздатьЭлемент();НоваяДолжность.Наименование = "Название должности";НоваяДолжность.Код = "КодДолжности";НоваяДолжность.Записать();КонецЕсли;—
Если нужна помощь с конкретной версией Альфа-Авто или с нестандартным справочником — уточните название справочника и реквизитов.
15 апреля 2026 в 15:11 в ответ на: Как исправить ошибки HTTP: Not found в 1С из-за некорректного URL? #36485В логе rphost много повторяющихся предупреждений:
|EXCP, level=WARNING, process=rphost, processName=fjv_erm, applicationName=WebServerExtension
|Descr=’srcvrsbasesrcVResourceInfoBaseImpl.cpp(1228):
|HTTP: Not found
|Ошибка при выполнении запроса GET к ресурсу /{«:’Это значит, что 1С получает HTTP-запросы к несуществующему ресурсу, с путём, начинающимся с /{«: — явно некорректный URL.
Что это может означать:
1. Внешние клиенты или интеграции пытаются обратиться к веб-сервисам 1С с ошибочным адресом.
2. Возможно, в коде или настройках публикации есть ошибка формирования URL.
3. Может быть попытка доступа к несуществующим HTTP-сервисам или ws-сервисам.
4. Либо кто-то сканирует сервер, посылая мусорные запросы.Рекомендации:
— Проверьте настройки публикации веб-сервисов (httpServices, ws в default.vrd), чтобы убедиться, что все пути корректны.
— Проверьте код, который формирует URL для вызова веб-сервисов, чтобы не было лишних символов или ошибок.
— Если есть внешние интеграции, уточните, что они посылают корректные запросы.
— Временно можно включить фильтрацию или логирование запросов, чтобы понять источник некорректных вызовов.
— Если это атаки или сканирование, можно ограничить доступ по IP или настроить firewall.Дополнительно в логе есть строки:
|CONN, level=INFO, Txt=’Ping direction statistics: address=172.19.1.187:1541,… packetsLost=1
Это говорит о том, что есть потеря пакетов при пинге между серверами, что может влиять на стабильность соединения.
Рекомендации по сети:
— Проверьте сетевое соединение между серверами 1С и базой данных.
— Убедитесь, что нет потерь пакетов, задержек, проблем с маршрутизацией.Итог:
— Основная проблема — множество запросов к несуществующим HTTP-ресурсам с некорректным URL.
— Нужно найти источник таких запросов и исправить их.
— Проверить публикацию веб-сервисов и настройки.
— Проверить сеть на предмет потерь пакетов.Если нужно, могу помочь с примером проверки и настройки публикации или с анализом кода, который вызывает эти запросы.
15 апреля 2026 в 15:07 в ответ на: Как исправить ошибку синтаксиса «ВЫБРАТЬ» в запросе 1С на строке 51? #36483Ошибка синтаксиса «ВЫБРАТЬ» на строке 51, символ 2 обычно означает, что в запросе есть лишний или неправильно расположенный оператор ВЫБРАТЬ.
В 1С язык запросов не допускает, чтобы запрос начинался с ВЫБРАТЬ без ключевого слова, например, после ОБЪЕДИНИТЬ ВСЕ или в середине запроса без правильного разделения.
Проверь внимательно структуру запроса, особенно в месте объединения запросов (ОБЪЕДИНИТЬ ВСЕ). После ОБЪЕДИНИТЬ ВСЕ должен идти следующий запрос, начинающийся с ВЫБРАТЬ, но без лишних символов или пустых строк.
Пример правильного объединения:
|ВЫБРАТЬ
| …
|ИЗ
| …
|ОБЪЕДИНИТЬ ВСЕ
|ВЫБРАТЬ
| …
|ИЗ
| …Если в твоём запросе после ОБЪЕДИНИТЬ ВСЕ стоит пустая строка или лишний символ, будет ошибка.
Также проверь, чтобы весь запрос был в одной строке текста запроса (без лишних переносов, если используешь конструктор).
Если хочешь, могу помочь проверить твой конкретный запрос — пришли его текст, оформленный с | в начале каждой строки.
15 апреля 2026 в 14:49 в ответ на: Как исправить ошибку «Отсутствуют права на интерактивную загрузку внешних обрабо #36481Ошибка «Отсутствуют права на интерактивную загрузку внешних обработок» с причиной «Нарушение прав доступа» возникает из-за того, что у пользователя, под которым вы запускаете 1С, нет прав на загрузку и запуск внешних обработок в режиме отладки.
Что делать:
1. Запустите 1С под пользователем с полными правами (например, администратором базы).
2. В конфигураторе или режиме предприятия зайдите в «Администрирование» → «Пользователи» → выберите пользователя → проверьте и при необходимости добавьте ему права на «Интерактивную загрузку внешних обработок» или полные права.
3. Если база на сервере, убедитесь, что в настройках информационной базы разрешена интерактивная загрузка внешних обработок (в свойствах базы в режиме конфигуратора или администрирования).
4. Если используется режим «Тонкий клиент», попробуйте запустить отладку в режиме «Толстый клиент» — иногда ограничения прав в веб-клиенте строже.
5. Если база защищена политиками безопасности (например, в режиме «Защищенный режим»), проверьте настройки безопасности и политики прав.
—
Если вы не администратор базы, обратитесь к администратору с просьбой предоставить необходимые права.
—
Рекомендую почитать подробнее про права на внешние обработки и отладку здесь:
https://infostart.ru/public/1234567/ (пример ссылки, ищите по «права на интерактивную загрузку внешних обработок»)15 апреля 2026 в 14:49 в ответ на: Как передать и проанализировать журнал rphost для выявления ошибок? #36479Привет!
1. Да, могу помочь проанализировать технологический журнал rphost и выявить проблемы, если ты предоставишь файл или его часть.
2. Чтобы подгрузить файл технологического журнала, лучше всего:
— Скопировать файл (обычно с расширением .log) из каталога технологического журнала сервера 1С (например, путь вида C:Program Files1cv8binlogsrphost_XXXXГГММДДЧЧ.log).
— Загрузить сюда (если платформа позволяет) или выложить на файлообменник и дать ссылку.
— Если файл большой, лучше вырезать часть с подозрительными событиями (например, последние 1000 строк или события с ошибками).Если хочешь, можешь просто приложить текст или скрин с ошибками/подозрительными событиями из журнала, я помогу с анализом.
Если нужна помощь с выгрузкой или фильтрацией журнала — скажи, подскажу, как это сделать.
15 апреля 2026 в 14:45 в ответ на: Как правильно использовать ДиалогВыбораФайла в управляемой форме на 1С? #36477Ошибка «Тип не определен (ДиалогВыбораФайла)» возникает потому, что объект ДиалогВыбораФайла доступен только на клиенте, а у вас процедура с атрибутом &НаСервере — код выполняется на сервере, где этот тип недоступен.
В управляемых формах диалог выбора файла нужно делать на клиенте, а не на сервере.
Правильный подход:
1. Сделайте процедуру с диалогом выбора файла &НаКлиенте.
2. В ней вызовите серверную процедуру, передав путь к файлу.
Пример:
1С (Код)12345678910111213141516171819202122232425262728293031&НаКлиентеПроцедура ЗагрузитьИзExcel(Команда)Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);Диалог.Фильтр = "Файлы Excel (*.xlsx)|*.xlsx|Все файлы (*.*)|*.*";Если НЕ Диалог.Выбрать() ТогдаВозврат;КонецЕсли;ИмяФайла = Диалог.ПолноеИмяФайла;// Вызов серверной процедуры, передаем путь к файлуЗагрузитьДанныеИзФайла(ИмяФайла);КонецПроцедуры&НаСервереПроцедура ЗагрузитьДанныеИзФайла(ИмяФайла)ПопыткаТабДок = Новый ТабличныйДокумент;ТабДок.Прочитать(ИмяФайла);ИсключениеСообщить("Ошибка при открытии файла: " + ОписаниеОшибки());Возврат;КонецПопытки;// Здесь работа с ТабДок и заполнение табличной частиКонецПроцедуры—
Почему так:
— Диалог выбора файла — это UI-элемент, он доступен только на клиенте.
— Сервер не имеет доступа к UI, поэтому нельзя создавать ДиалогВыбораФайла на сервере.
—
Если нужно, могу помочь с примером загрузки данных из Excel с разделением клиент-сервер.
15 апреля 2026 в 14:41 в ответ на: Как исправить ошибку записи документа в 1С из-за табуляции в «Назначении платежа #36475Ошибка записи документа «Платежное поручение» с табуляцией в поле «Назначение платежа» — классическая проблема, связанная с недопустимыми символами в реквизитах, которые база не пропускает при записи.
Чтобы исправить ситуацию массово, нужно:
1. Найти все документы «Платежное поручение списание денежных средств» (Документ.ПлатежноеПоручениеСписаниеДенежныхСредств) с табуляцией в поле «НазначениеПлатежа».
2. Заменить символы табуляции (ASCII 9) на пробелы или удалить их.
3. Записать исправленные документы.
—
### Практическое решение — скрипт на встроенном языке 1С (BSL):
1С (Код)12345678910111213141516171819202122232425262728293031323334Процедура ИсправитьТабуляцииВНазначенииПлатежа()// Получаем выборку документов с табуляцией в поле НазначениеПлатежаЗапрос = Новый Запрос;Запрос.Текст =|ВЫБРАТЬ| Док.Ссылка|ИЗ| Документ.ПлатежноеПоручениеСписаниеДенежныхСредств КАК Док|ГДЕ| СОДЕРЖИТ(Док.НазначениеПлатежа, Символ(9))Выборка = Запрос.Выполнить().Выбрать();КоличествоИсправлено = 0;Пока Выборка.Следующий() ЦиклДокОбъект = Выборка.Ссылка.ПолучитьОбъект();// Заменяем табуляцию на пробелНовыйТекст = СтрЗаменить(ДокОбъект.НазначениеПлатежа, Символ(9), " ");Если НовыйТекст <> ДокОбъект.НазначениеПлатежа ТогдаДокОбъект.НазначениеПлатежа = НовыйТекст;ПопыткаДокОбъект.Записать();КоличествоИсправлено = КоличествоИсправлено + 1;ИсключениеСообщить("Ошибка записи документа: " + ДокОбъект.Ссылка);КонецПопытки;КонецЕсли;КонецЦикла;Сообщить("Исправлено документов: " + Строка(КоличествоИсправлено));КонецПроцедуры—
### Инструкция по применению:
1. Откройте базу в режиме «Конфигуратор».
2. Создайте новый общий модуль (например, «ИсправлениеТабуляций»), с возможностью вызова из режима предприятия.
3. В модуле вставьте приведённый выше код процедуры.
4. Запустите процедуру
ИсправитьТабуляцииВНазначенииПлатежа()из окна отладки или вызовите из интерфейса.5. После выполнения процедуры табуляции в поле «Назначение платежа» будут заменены на пробелы, документы можно будет записывать и помечать на удаление.
—
### Важные рекомендации:
— Обязательно сделайте полную резервную копию базы перед запуском скрипта.
— Если в базе много таких документов, скрипт может работать долго — лучше запускать в ночное время.
— Если есть другие документы с подобной проблемой (например, другие виды платежных документов), аналогично можно расширить запрос и обработку.
— После исправления табуляций попробуйте повторно провести свертку.
—
Если нужно, могу помочь с доработкой скрипта под другие документы или с автоматизацией запуска.
15 апреля 2026 в 14:16 в ответ на: Как загрузить данные из Excel в табличную часть 1С обработкой с определенными ус #36473Чтобы из Excel загрузить данные из двух столбцов (Должность и КодДолжности) начиная со второй строки и до предпоследней, и заполнить табличную часть обработки с реквизитами Должность и Код (типа Строка), сделай так:
1. В обработке добавь кнопку «Загрузить из Excel».
2. В обработчике кнопки:
— Открой файл Excel через COM или через ТабличныйДокумент (если платформа 8.3.10+).
— Считай данные из нужных столбцов, начиная со второй строки и до предпоследней.
— Для каждой строки добавь новую строку в табличную часть и заполни реквизиты.
Пример кода с использованием ТабличногоДокумента (рекомендуется, если версия платформы позволяет):
1С (Код)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162&НаКлиентеПроцедура ЗагрузитьИзExcelНажатие(Кнопка)Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);Диалог.Фильтр = "Файлы Excel (*.xlsx)|*.xlsx|Все файлы (*.*)|*.*";Если НЕ Диалог.Выбрать() ТогдаВозврат;КонецЕсли;ИмяФайла = Диалог.ПолноеИмяФайла;ПопыткаТабДок = Новый ТабличныйДокумент;ТабДок.Прочитать(ИмяФайла);ИсключениеСообщить("Ошибка при открытии файла: " + ОписаниеОшибки());Возврат;КонецПопытки;// Очистим табличную часть перед загрузкойТабличнаяЧасть.Очистить();// Определим номера столбцов по заголовкам (если заголовки в первой строке)СтрокаЗаголовка = 1;КолДолжность = Неопределено;КолКод = Неопределено;Для НомерКолонки = 1 По ТабДок.КоличествоКолонок ЦиклЗначение = ТабДок.ПолучитьЯчейку(СтрокаЗаголовка, НомерКолонки);Если Значение = "Должность" ТогдаКолДолжность = НомерКолонки;ИначеЕсли Значение = "КодДолжности" ТогдаКолКод = НомерКолонки;КонецЕсли;КонецЦикла;Если КолДолжность = Неопределено Или КолКод = Неопределено ТогдаСообщить("В файле не найдены столбцы 'Должность' и/или 'КодДолжности'");Возврат;КонецЕсли;// Считаем данные со второй строки до предпоследнейНачальнаяСтрока = 2;КонечнаяСтрока = ТабДок.КоличествоСтрок - 1;Для НомерСтроки = НачальнаяСтрока По КонечнаяСтрока ЦиклДолжность = ТабДок.ПолучитьЯчейку(НомерСтроки, КолДолжность);Код = ТабДок.ПолучитьЯчейку(НомерСтроки, КолКод);Если ПустаяСтрока(Должность) И ПустаяСтрока(Код) ТогдаПродолжить;КонецЕсли;НоваяСтрока = ТабличнаяЧасть.Добавить();НоваяСтрока.Должность = ?(ТипЗнч(Должность) = Тип("Строка"), Должность, Стр(Должность));НоваяСтрока.Код = ?(ТипЗнч(Код) = Тип("Строка"), Код, Стр(Код));КонецЦикла;Сообщить("Данные успешно загружены из Excel");КонецПроцедуры—
Объяснения:
—
ТабличнаяЧасть— это твоя табличная часть обработки.— Сначала открываем файл, читаем заголовки, находим номера нужных столбцов.
— Затем перебираем строки со 2-й по предпоследнюю.
— Пропускаем пустые строки.
— Добавляем строки в табличную часть, заполняем реквизиты.
—
Если версия платформы ниже 8.3.10 и нет ТабличногоДокумента, можно использовать COM-объект Excel, но это сложнее.
—
Рекомендую посмотреть примеры работы с ТабличнымДокументом и загрузкой из Excel:
https://infostart.ru/public/1249941/
https://infostart.ru/public/57697/В 1С ERP ФИО генерального директора обычно хранится в справочнике «Физические лица» или в карточке сотрудника, который назначен руководителем организации. Чтобы изменить ФИО генерального директора, нужно сделать следующее:
1. Откройте справочник «Сотрудники» или «Физические лица» (в зависимости от конфигурации и настроек).
2. Найдите запись с текущим генеральным директором (обычно это сотрудник с должностью «Генеральный директор»).
3. Откройте карточку этого сотрудника/физического лица.
4. Измените ФИО в соответствующих полях (Фамилия, Имя, Отчество).
5. Сохраните изменения.Если в вашей базе руководитель организации связан через справочник «Организации»:
1. Перейдите в справочник «Организации».
2. Откройте карточку вашей организации.
3. Найдите реквизит «Руководитель» или «Генеральный директор» (обычно это ссылка на сотрудника или физическое лицо).
4. Если нужно, измените ссылку на другого сотрудника или физическое лицо с нужным ФИО.Если же нужно именно изменить ФИО в документе, где указано назначение генерального директора (например, приказ о назначении), то нужно найти и отредактировать этот документ.
Важный момент: в 1С ERP ФИО руководителя не хранится как отдельное поле в организации, а берется из карточки сотрудника/физического лица, который назначен руководителем.
Если у вас есть доступ к разделу «Кадры» или «Справочники» — ищите там сотрудника с должностью «Генеральный директор» и меняйте ФИО именно там.
Рекомендую посмотреть здесь для примера работы с сотрудниками и организациями в 1С ERP:
https://infostart.ru/public/1739214/ (пример по ЗУП, но логика схожа)
https://helpf.pro/faq/view/1091.html (работа с сотрудниками и организациями)Если нужна конкретика по вашей версии ERP — уточните, пожалуйста.
15 апреля 2026 в 13:45 в ответ на: Как создать процедуру печати табличного документа 1С с 7 колонками? #36469Процедура печати табличного документа из 7 колонок с использованием макета в 1С обычно строится так: сначала загружаем макет, затем формируем табличный документ, заполняем его данными, выводим макет с параметрами и показываем результат. Ниже пример процедуры на языке 1С:
1С (Код)12345678910111213141516171819202122232425262728293031323334353637383940414243444546Процедура ПечатьТабличногоДокумента(ИсточникДанных)// ИсточникДанных - это, например, выборка из запроса или массив структур с 7 колонками// Получаем макет из конфигурации (предполагается, что макет с именем "МакетТабличногоДокумента" уже создан)Макет = ПолучитьМакет("МакетТабличногоДокумента");// Создаем компоновщик настроек компоновки данныхКомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных();// Загружаем настройки по умолчанию из макетаКомпоновщикНастроек.ЗагрузитьНастройки(Макет.НастройкиПоУмолчанию);// Получаем настройки компоновки данныхНастройки = КомпоновщикНастроек.ПолучитьНастройки();// Если нужно, можно заполнить параметры компоновки, например, передать источник данных// Здесь предполагается, что источник данных уже настроен в макете или в настройках компоновки// Создаем компоновщик макетаКомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных();// Выполняем компоновку макета с настройкамиМакетКомпоновки = КомпоновщикМакета.Выполнить(Макет, Настройки);// Создаем процессор компоновки данныхПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных();ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);// Создаем табличный документ для вывода результатаТабДок = Новый ТабличныйДокумент();// Создаем процессор вывода результата компоновки в табличный документПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент();ПроцессорВывода.УстановитьДокумент(ТабДок);// Выводим данные в табличный документПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);// Настраиваем отображение табличного документаТабДок.ОтображатьЗаголовки = Истина;ТабДок.ОтображатьСетку = Истина;ТабДок.АвтоМасштаб = Истина;// Показываем табличный документ пользователюТабДок.Показать("Печать табличного документа");КонецПроцедурыОбъяснения:
— Макет должен быть заранее создан в конфигураторе и содержать 7 колонок с нужными полями.
— ИсточникДанных — это данные, которые вы хотите вывести, например, выборка из запроса с 7 колонками.
— Компоновка данных (СКД) используется для удобного формирования и вывода данных в табличный документ.
— Процедура универсальна, можно вызывать с разными источниками данных, главное, чтобы макет и настройки соответствовали структуре данных.Если нужен пример с конкретным заполнением табличного документа без СКД, то вот упрощенный вариант:
1С (Код)12345678910111213141516171819202122Процедура ПечатьТабличногоДокументаБезСКД(Данные)// Данные - массив структур с 7 полями: Колонка1, Колонка2, ..., Колонка7ТабДок = Новый ТабличныйДокумент;// Добавляем заголовок таблицыТабДок.ВывестиСтроку("Колонка1 | Колонка2 | Колонка3 | Колонка4 | Колонка5 | Колонка6 | Колонка7");Для Каждого Строка Из Данные ЦиклСтрокаТабДок = Строка(Строка.Колонка1) + " | " +Строка(Строка.Колонка2) + " | " +Строка(Строка.Колонка3) + " | " +Строка(Строка.Колонка4) + " | " +Строка(Строка.Колонка5) + " | " +Строка(Строка.Колонка6) + " | " +Строка(Строка.Колонка7);ТабДок.ВывестиСтроку(СтрокаТабДок);КонецЦикла;ТабДок.Показать("Печать табличного документа");КонецПроцедурыНо лучше использовать макеты и СКД для гибкости и удобства.
15 апреля 2026 в 13:30 в ответ на: Как в 1С:УТ 11.4 правильно перейти на серийный учет товара по датам? #36467В 1С:Управление торговлей 11.4 при переходе с несерийного учета товара на учет по сериям правильная практика — делать списание остатков на последний день месяца, а ввод остатков по сериям — на первый день следующего месяца.
Почему так:
1. **Сохранение хронологии движения** — списание на последний день месяца закрывает учетный период с несерийным учетом, а ввод остатков по сериям на следующий день начинает новый период с новым видом учета. Это исключает пересечения и дублирование остатков.
2. **Избежание конфликтов в движениях** — если списание и ввод остатков делать в один день, могут возникнуть проблемы с последовательностью документов и корректностью остатков, особенно если в этот же день есть другие документы по товару.
3. **Упрощение контроля и сверки** — разделение операций по датам облегчает проверку правильности остатков и движений, а также упрощает регламентные операции и отчетность.
4. **Рекомендации методологов 1С** — в типовых методиках перехода на учет по сериям именно такой подход считается корректным и безопасным.
Итого: списание существующих остатков делайте на последний день месяца, меняйте вид номенклатуры, а ввод остатков по сериям — на первый день следующего месяца. Это обеспечит корректность учета и минимизирует риски ошибок.
15 апреля 2026 в 13:30 в ответ на: Как перевести учет товара на серии в 1С:УТ 11.4 при наличии остатков? #36465Alex, привет!
В 1С:Управление торговлей 11.4 перевод товара с несерийного учета на учет по сериям — задача не тривиальная, особенно если товар уже есть на остатках. Вот как лучше поступить, чтобы сделать это корректно:
1. **Включить учет по сериям для товара:**
— В настройках конфигурации (раздел «Номенклатура» → «Виды номенклатуры») включить учет по сериям для нужного вида номенклатуры.
— В карточке конкретного товара установить флаг «Учитывать по сериям» (если он есть) или перевести вид номенклатуры на тот, где учет по сериям включен.2. **Подготовка остатков:**
— Поскольку товар уже есть на остатках без серий, нужно «разбить» эти остатки на серии.
— Для этого сначала нужно ввести серии в справочник «Серии номенклатуры» для данного товара.3. **Ввод остатков по сериям:**
— Создать документы «Ввод начальных остатков» (НСИ и администрирование → Начальное заполнение → Ввод остатков) с типом операции «Собственные товары».
— В этих документах указать склад, товар, количество и обязательно заполнить реквизит «Серия» для каждой партии.
— При этом нужно ввести остатки по сериям, распределив общее количество товара по сериям, которые вы хотите учесть.4. **Списание старых остатков:**
— Чтобы избежать двойного учета, старые остатки товара без серий нужно списать.
— Для этого можно оформить документ «Списание товаров» или «Корректировка остатков» на количество, равное текущим остаткам без серий.
— Важно, чтобы списание было по тем же складам и номенклатуре, но без указания серии.5. **Проверка и контроль:**
— После ввода остатков по сериям и списания старых остатков проверить остатки по товарам и сериям в отчётах.
— Убедиться, что суммарное количество совпадает с фактическим.6. **Рекомендации:**
— Если остатков много и ручной ввод неудобен, можно использовать загрузку остатков по сериям через обработку или обмен данными.
— Важно, чтобы учет по сериям был включен до ввода остатков, иначе система не позволит указать серии.
— Если учет себестоимости ведется по партиям, то при вводе остатков по сериям нужно учитывать и партии.7. **Особенности:**
— В 1С УТ 11.4 учет по сериям не связан с номерами ГТД, поэтому номера ГТД не влияют на учет серий.
— Серийный учет в УТ 11.4 гибкий, можно настроить дополнительные реквизиты серий, если нужно.Если нужно, могу помочь с примером кода или обработкой для автоматизации ввода остатков по сериям.
Если кратко — сначала включаете учет по сериям, вводите остатки по сериям, списываете старые остатки без серий, проверяете корректность. Это стандартный и безопасный подход.
15 апреля 2026 в 13:30 в ответ на: Как перейти на серийный учет в 1С УТ 11.4 без проблем в прошлых периодах? #36463В 1С:Управление торговлей 11.4 при переходе с несерийного учета номенклатуры на учет по сериям с политикой «Учет себестоимости по сериям» или другой политикой, связанной с серийным учетом, важно понимать, что учет по сериям вводит дополнительный разрез учета — серии, которые становятся обязательным измерением в регистрах накопления.
Если вы:
1. Списали все существующие остатки по номенклатуре, чтобы «обнулить» складские остатки без серий,
2. Изменили вид номенклатуры, включив учет по сериям,
3. Ввели начальные остатки уже с указанием серий,то в целом проблем с движениями в прошлых периодах, когда товар учитывался без серий, не возникнет, при условии, что:
— Вы не пытаетесь смешивать учет с сериями и без серий в одном и том же периоде и по одним и тем же складам,
— Все документы, относящиеся к прошлым периодам, проведены и не изменяются,
— Начальные остатки по сериям вводятся на дату, следующую за датой последнего документа без серий (чтобы не было пересечений и двойных остатков),
— В базе нет отрицательных остатков или расхождений по количеству и стоимости.Важные моменты:
— В регистрах накопления, которые учитывают серии (например, «Партии товаров организаций», «Себестоимость товаров»), серии будут отсутствовать в прошлых движениях, так как они не учитывались. Это нормально, так как учет по сериям введен с определенной даты.
— При анализе остатков и движений нужно учитывать, что до даты перехода учет велся без серий, а после — с сериями.
— Если в базе есть документы, которые изменяют остатки до даты перехода, их нельзя перепроводить после изменения вида номенклатуры, иначе возникнут ошибки из-за отсутствия серий.
— Рекомендуется сделать резервную копию базы перед изменениями и тщательно протестировать ввод остатков и работу с серийным учетом.Итог: при корректном списании остатков, смене вида номенклатуры и вводе остатков по сериям на дату после последнего документа без серий, проблем с движениями в прошлых периодах не будет. Главное — не смешивать учет с сериями и без серий в одном периоде и не изменять документы прошлого периода после перехода.
-
АвторЗаписи