Исправление ошибки в порядке субконто в записи проводок регистра бухгалтерии при обмене данными
Задачи пользователя - Адаптация типовых решений
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Проверено: Бухгалтерия КОРП (3.0.175.24), Платформа 8.3.24.1548
Была задачка: через обмен данными перенести документы в копию базы.
После обмена данными выявилось расхождение в порядке субконто по многим проводкам.
Отладчик помог выявить данную ошибку.
В обработке КонвертацияОбъектовИнформационныхБаз в конфигурации фирма "1С" добавила заплатку, в методе ПрочитатьОбъект.
// Обход ошибки платформы 30178033.
// Порядок субконто в записи регистра бухгалтерии не соответствует порядку,
// который указан в счете учета.
УстранитьОшибкуНазначенияВидаСубконто(ЗагруженныеДвижения);
Суть фикса в корректировки порядке Вида Субконто.
Фирма "1С" выпустила заплатку, которая упорядочивает субконто в соответствии с порядком в базе приемнике. Но алгоритм заплатки написан криво, вследствие чего субконто Дт может переехать в Кт. В код внесены изменения, вследствие чего заплатка корректно выполняет свою задачу.
Исправленный код процедуры УстранитьОшибкуНазначенияВидаСубконто:
Для каждого СтрокаТаблицы Из ЗагруженныеДвижения Цикл
ЕстьОшибка = Ложь;
ЗначенияДоИсправления = Новый Соответствие;
ПроверитьКоллекциюСубконто(СтрокаТаблицы, ЗначенияДоИсправления, "Дт", ЕстьОшибка);
ПроверитьКоллекциюСубконто(СтрокаТаблицы, ЗначенияДоИсправления, "Кт", ЕстьОшибка);
Если ЕстьОшибка Тогда
Для каждого ЭлементСоответствия Из ЗначенияДоИсправления Цикл
ОписаниеСубконто = ЭлементСоответствия.Значение;
Если НЕ ОписаниеСубконто.ЕстьОшибка Тогда
Продолжить;
КонецЕсли;
ФильтрДтКтЭлементСоответствия = Лев(ЭлементСоответствия.Ключ,2);
ИмяВидаСубконтоИсправляемого = "ВидСубконто" + ЭлементСоответствия.Ключ;
Для каждого АльтернативныйЭлемент Из ЗначенияДоИсправления Цикл
АльтернативноеОписание = АльтернативныйЭлемент.Значение;
Если НЕ АльтернативноеОписание.ЕстьОшибка
ИЛИ ЭлементСоответствия.Ключ = АльтернативныйЭлемент.Ключ Тогда
Продолжить;
КонецЕсли;
ФильтрДтКтАльтернативныйЭлемент = Лев(АльтернативныйЭлемент.Ключ,2);
Если ФильтрДтКтЭлементСоответствия <> ФильтрДтКтАльтернативныйЭлемент Тогда
Продолжить;
КонецЕсли;
ТипЗначенияСубконто = СтрокаТаблицы[ИмяВидаСубконтоИсправляемого].ТипЗначения;
Если СтрокаТаблицы[ИмяВидаСубконтоИсправляемого] = АльтернативноеОписание.ВидСубконто
И ТипЗначенияСубконто.СодержитТип(ТипЗнч(АльтернативноеОписание["Субконто"])) Тогда
СтрокаТаблицы["Субконто" + ЭлементСоответствия.Ключ] = АльтернативноеОписание["Субконто"];
Прервать;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Информация по данной ошибке я нашел только на одном ресурсе:
http://1c-key.ru/index.php/statyi/itemlist/category/18-ispravlenie-oshibok-tipovykh-konfiguratsij
Примечание: на официальном сайте https://bugboard.1c.ru/ информации по указанной ошибке 30178033 отсутствует
Проверено на следующих конфигурациях и релизах:
- Бухгалтерия предприятия, редакция 3.0, релизы 3.0.175.24
Вступайте в нашу телеграмм-группу Инфостарт