Уведомления
Очистить все

1С ERP: Запись не верна! Значение поля "Организация" не может быть пустым!: ЗаданияКРаспределениюРасчетовСПоставщиками

1 Записи
1 Пользователи
0 Likes
3,499 Просмотры
96-150 Okolokompa Форум
(@sadovod)
Prominent Member
Присоединился: 4 года назад
Записи: 258
Создатель темы  

В 1С ERP не проводится / записывается документ "Приобретение товаров услуг".

Появляется такая ошибка:

Запись не верна! Значение поля "Организация" не может быть пустым!: ЗаданияКРаспределениюРасчетовСПоставщиками: 01.04.2020 0:00:00, 1, , ООО"Звезда"; Наименование нашей организации ООО; Звезда, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21 (Регистр сведений: Задания к распределению расчетов с поставщиками)
{ОбщийМодуль.ОбщегоНазначенияУТКлиент.Модуль(1929)}: Результат = Форма.Записать(ПараметрыЗаписи);
{Документ.ПриобретениеТоваровУслуг.Форма.ФормаДокумента.Форма(8435)}: ОбщегоНазначенияУТКлиент.ОбработатьЗаписьОбъектаВФорме(ЭтотОбъект, ПараметрыДляЗаписи);

по причине:
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
Запись не верна! Значение поля "Организация" не может быть пустым!: ЗаданияКРаспределениюРасчетовСПоставщиками: 01.04.2020 0:00:00, 1, , ООО"Звезда"; Наименование нашей организации ООО; Звезда, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21 (Регистр сведений: Задания к распределению расчетов с поставщиками)
{OKLineMES ОбщийМодуль.ВзаиморасчетыСервер.Модуль(93)}: НаборЗаписей.Записать();
{ОбщийМодуль.ПроведениеСерверУТ.Модуль(649)}: ВзаиморасчетыСервер.ОтразитьЗаданияКРаспределениюРасчетовСПоставщиками(Объект.Ссылка, Объект.ДополнительныеСвойства);
{Документ.ПриобретениеТоваровУслуг.МодульОбъекта(918)}: ПроведениеСерверУТ.СформироватьЗаписиРегистровЗаданий(ЭтотОбъект);

по причине:
Запись не верна! Значение поля "Организация" не может быть пустым!: ЗаданияКРаспределениюРасчетовСПоставщиками: 01.04.2020 0:00:00, 1, , ООО"Звезда"; Наименование нашей организации ООО; Звезда, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21, Приобретение товаров и услуг 0000-000131 от 10.04.2020 14:03:21 (Регистр сведений: Задания к распределению расчетов с поставщиками)

Причиной такой ошибки, могли быть некорректно созданные / записанные Партнёры и Контрагенты. (В нашем случае - База восстановлена после краха).

Одно из решений этой проблемы:

В документе "Приобретение товаров услуг" в реквизите "Хоз. операция" укажите: "Закупка через подотчетное лицо". Документ проведётся / запишется без проблем.

С хозяйственной операцией "Закупка у поставщика", документ - "Приобретение товаров услуг" в 1С ERP не проводится / записывается.

Другое решение:

Править будем экспортную процедуру "ОтразитьЗаданияКРаспределениюРасчетовСПоставщиками" в общем модуле "ВзаиморасчетыСервер".

Таким образом, при не заполненном параметре - Организация, передаваемом для записи в регистр сведений "ЗаданияКРаспределениюРасчетовСПоставщиками", будем заполнять его текущей организацией.

В нашем случае, это было сделано в виде расширения конфигурации, чтобы не изменять основную.

Процедура OKLineMES_ОтразитьЗаданияКРаспределениюРасчетовСПоставщиками(Документ, ДополнительныеСвойства)

СтруктураВременныеТаблицы = ДополнительныеСвойства.ДляПроведения.СтруктураВременныеТаблицы;
ВременныеТаблицы = СтруктураВременныеТаблицы.МенеджерВременныхТаблиц;

Если (ВременныеТаблицы.Таблицы.Найти("РасчетыСПоставщикамиЗаданияКЗакрытиюМесяца") <> Неопределено
ИЛИ ВременныеТаблицы.Таблицы.Найти("РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками") <> Неопределено)
И ПланыОбмена.ГлавныйУзел() = Неопределено Тогда // есть изменения в оперативном регистре

ШаблонВложенныйЗапрос = "
|ВЫБРАТЬ
| Таблица.Месяц КАК Месяц,
| Таблица.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| Ключи.Организация КАК Организация,
| Таблица.ОбъектРасчетов КАК ОбъектРасчетов,
| Таблица.Документ КАК Документ
|ИЗ
| &ТаблицаДанных КАК Таблица
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КлючиАналитикиУчетаПоПартнерам КАК Ключи
| ПО Ключи.Ссылка = Таблица.АналитикаУчетаПоПартнерам
|";

ШаблонТекстУничтожениеВТ = "
|;
|//////////////////////////////
|УНИЧТОЖИТЬ &ТаблицаДанных
|";

ТекстУничтожениеВТ = "";
ВложенныйЗапрос = "";
КоличествоТаблиц = 0;

Если ВременныеТаблицы.Таблицы.Найти("РасчетыСПоставщикамиЗаданияКЗакрытиюМесяца") <> Неопределено Тогда
ВложенныйЗапрос = СтрЗаменить(ШаблонВложенныйЗапрос, "&ТаблицаДанных", "РасчетыСПоставщикамиЗаданияКЗакрытиюМесяца");
ВложенныйЗапрос = СтрЗаменить(ВложенныйЗапрос, "Ключи.Организация", "Таблица.Организация");
КоличествоТаблиц = КоличествоТаблиц + 1;
КонецЕсли;

Если ВременныеТаблицы.Таблицы.Найти("РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками") <> Неопределено Тогда
Если КоличествоТаблиц = 0 Тогда
ВложенныйЗапрос = СтрЗаменить(ШаблонВложенныйЗапрос, "&ТаблицаДанных", "РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками");
ТекстУничтожениеВТ = СтрЗаменить(ШаблонТекстУничтожениеВТ, "&ТаблицаДанных", "РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками");
Иначе
ВложенныйЗапрос = ВложенныйЗапрос + "
|ОБЪЕДИНИТЬ ВСЕ
|"
+ СтрЗаменить(ШаблонВложенныйЗапрос, "&ТаблицаДанных", "РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками");
ТекстУничтожениеВТ = ТекстУничтожениеВТ + СтрЗаменить(ШаблонТекстУничтожениеВТ, "&ТаблицаДанных", "РасчетыСПоставщикамиПоДокументамЗаданияКРасчетамСПоставщиками");
КонецЕсли;
КоличествоТаблиц = КоличествоТаблиц + 1;
КонецЕсли;

Если КоличествоТаблиц = 1 Тогда
ТекстЗапроса = ВложенныйЗапрос + ТекстУничтожениеВТ;
Иначе
ШаблонТекстаЗапроса = "
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Таблица.Месяц КАК Месяц,
| Таблица.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
| Таблица.Организация КАК Организация,
| Таблица.ОбъектРасчетов КАК ОбъектРасчетов,
| Таблица.Документ КАК Документ
|ИЗ
| (
| &ВложенныйЗапрос
| ) КАК Таблица
|
|";
ТекстЗапроса = СтрЗаменить(ШаблонТекстаЗапроса, "&ВложенныйЗапрос", ВложенныйЗапрос) + ТекстУничтожениеВТ;
КонецЕсли;

Запрос = Новый Запрос(ТекстЗапроса);
Запрос.МенеджерВременныхТаблиц = ВременныеТаблицы;

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
НаборЗаписей = РегистрыСведений.ЗаданияКРаспределениюРасчетовСПоставщиками.СоздатьМенеджерЗаписи();
ЗаполнитьЗначенияСвойств(НаборЗаписей, Выборка);

//НАЧАЛО Добавленных изменений

Если Выборка.Организация = Справочники.Организации.ПустаяСсылка() Тогда
НаборЗаписей.Организация = Справочники.Организации.ОрганизацияПоУмолчанию();
КонецЕсли;

//КОНЕЦ Добавленных изменений

НаборЗаписей.НомерЗадания = Константы.НомерЗаданияКРаспределениюРасчетовСПоставщиками.Получить();
НаборЗаписей.Записать();
КонецЦикла;
КонецЕсли;

КонецПроцедуры

Всё.


   
Цитата
Поделиться: