Услуги частного программиста 1С удаленно по РФ и с выездом по Москве

 
×

Предупреждение

JUser: :_load: Не удалось загрузить пользователя с ID: 762

Среда, 26 Октябрь 2022 10:00

Исправление фикса от 1с в обработке КонвертацияОбъектовИнформационныхБаз

Оцените материал
(2 голосов)

В обработке КонвертацияОбъектовИнформационныхБаз в конфигурации 

Бухгалтерия КОРП МСФО (3.1.17.20) (http://v8.1c.ru/buh8corp/)
Copyright (С) ООО "1C-Софт", 2009 - 2022. Все права защищены
(http://www.1c.ru)

Компания 1С добавила фикс, в методе ПрочитатьОбъект.

// Обход ошибки платформы 30178033.
// Порядок субконто в записи регистра бухгалтерии не соответствует порядку,
// который указан в счете учета.
УстранитьОшибкуНазначенияВидаСубконто(ЗагруженныеДвижения);

Суть фикса в корректировки порядке Вида Субконто. 

Компания 1с выпустила фикс, который упорядочивает субконто в соответствии с порядоком в базе приемнике. Но алгоритм фикса написан криво, в следствии чего субконто Дт может переехать в Кт. В код внесены изменения в следствии чего фикс выполняет свою задачу.

Исправленный код

ЕстьОшибка = Ложь;

ЗначенияДоИсправления = Новый Соответствие;

ПроверитьКоллекциюСубконто(СтрокаТаблицы, ЗначенияДоИсправления, "Дт", ЕстьОшибка);
ПроверитьКоллекциюСубконто(СтрокаТаблицы, ЗначенияДоИсправления, "Кт", ЕстьОшибка);

Если ЕстьОшибка Тогда

Для каждого ЭлементСоответствия Из ЗначенияДоИсправления Цикл

ОписаниеСубконто = ЭлементСоответствия.Значение;
Если НЕ ОписаниеСубконто.ЕстьОшибка Тогда

Продолжить;

КонецЕсли;

ФильтрДтКтЭлементСоответствия = Лев(ЭлементСоответствия.Ключ,2);

ИмяВидаСубконтоИсправляемого = "ВидСубконто" + ЭлементСоответствия.Ключ;

Для каждого АльтернативныйЭлемент Из ЗначенияДоИсправления Цикл

АльтернативноеОписание = АльтернативныйЭлемент.Значение;
Если НЕ АльтернативноеОписание.ЕстьОшибка
ИЛИ ЭлементСоответствия.Ключ = АльтернативныйЭлемент.Ключ Тогда

Продолжить;

КонецЕсли;

ФильтрДтКтАльтернативныйЭлемент = Лев(АльтернативныйЭлемент.Ключ,2);

Если ФильтрДтКтЭлементСоответствия <> ФильтрДтКтАльтернативныйЭлемент Тогда

Продолжить;

КонецЕсли;

ТипЗначенияСубконто = СтрокаТаблицы[ИмяВидаСубконтоИсправляемого].ТипЗначения;
Если СтрокаТаблицы[ИмяВидаСубконтоИсправляемого] = АльтернативноеОписание.ВидСубконто
И ТипЗначенияСубконто.СодержитТип(ТипЗнч(АльтернативноеОписание["Субконто"])) Тогда

СтрокаТаблицы["Субконто" + ЭлементСоответствия.Ключ] = АльтернативноеОписание["Субконто"];
Прервать;

КонецЕсли;

КонецЦикла;

КонецЦикла;

КонецЕсли;

 

 

 

 

Прочитано 2286 раз Последнее изменение Вторник, 29 Ноябрь 2022 08:29