Ошибка при загрузке курсов валют. Комплексная автоматизация 2.2 (ошибка в типовой)

Программирование - Практика программирования

комплексная автоматизация 2.2 ошибка

1
При вызове обработки "Загрузить курсы валют" в конфигурации "Комплексная автоматизация 2.2" рел. 2.2.2.157 программа выдавала ошибку

При вызове обработки "Загрузить курсы валют" в конфигурации "Комплексная автоматизация 2.2" рел. 2.2.2.157 программа выдавала ошибку:

{Обработка.ЗагрузкаКурсовВалют.Форма.Форма.Форма(252)}: Запись не верна! Значение поля "Организация" не может быть пустым!: ЗаданияКРаспределениюРасчетовСПоставщиками: 01.01.2017 0:00:00, 37, , GRAND CHINA IMP.& EXP. TRADING CO.,LTD (Folangsi); ЗАО "Компания "АИСТ"; GRAND CHINA IMP.& EXP. TRADING CO.,LTD (Folangsi); Contract № I-01/17 от 11.0, Заказ поставщику 0000-000013 от 12.01.2017 11:38:12,  (Регистр сведений: Задания к распределению расчетов с поставщиками)
  ВызватьИсключение(Результат.КраткоеПредставлениеОшибки);

Искал варианты долго, где должна подставляться Организация.

Не знаю, прав я или нет, но мне кажется, что дело в некоррекктном запросе в общем модуле "ЗакрытиеМесяцаУТВызовСервера"

В процедуре ПроверитьНеобходимостьПереоценки(ДополнительныеСвойства, Движения, Отказ) в строке 610 есть текст запроса:

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


И его дальнейшая обработка:

 

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

Так вот, в выделенной строке команда заполняет набор записи регистра. Но в результате запроса отсутствует значение "Организация"

После изменения текста запроса на:

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


задание по загрузке курсов валют выполняется.

Может, я, конечно, чего-то недоглядел и надо было сделать что-то, чего я не понял? Но после 4 часов бесплодных попыток найти что-либо об этом в инете я посчитал, что это решение моих проблем.

1

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. Gizmo_esu 63 18.01.17 09:28 Сейчас в теме
Ошибка была зарегистрирована 1С и предложен способ обхода https://bugboard.v8.1c.ru/error/000024953.html
wolfsoft; +1 Ответить
4. serg1c 20 18.01.17 10:34 Сейчас в теме
(1) Спасибо за ссылку. Жаль раньше не увидел
2. vld_trade 26 18.01.17 09:40 Сейчас в теме
Количество ответов говорит о количестве внедрений...
Да, грустноватенько.
Но, serg1c, ИМХО надо раскрыть детали.
Причем здесь переоценка при "вызове" обработки загрузки курсов валют? Что такое "вызов", откуда?
Я использую эту конфигурацию, она у меня тоже на 2.2.2.157, задач по ней не всплывало. Обработка загрузки курсов валют ведет себя корректно.
3. and_sk 14 18.01.17 09:53 Сейчас в теме
(2) возможно у вас нет валютных операций
5. serg1c 20 18.01.17 10:42 Сейчас в теме
(2) согласен с предыдущим ответом. Если нет операций с валютами, то ошибок и не будет
6. Meloman1 18.01.17 18:13 Сейчас в теме
Спасибо! Ваш метод помог.
7. sonGodv 40 27.01.17 14:56 Сейчас в теме
Потратил 2 часа, пока искал. Думал юзеры накосячили, А тут опять подарочек от 1С
Спасибо
Оставьте свое сообщение