• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Обмен с сайтом

  • Автор темы blackswanny
  • Дата начала
B

blackswanny

Конфигурация УТП
Был совершено обновление с 1.1.7 до 1.2.1.3 в БАЗА1, т.е. достаточно большая разница между релизами.
Затем новая 1.2.1.3 была накатана на другую базу БАЗА2.
В БАЗА2 перестала работать обработка ОбменССайтом, которая экспортирует в сайт на Битриксе товары в виде XML-файла. Конкретно выгружается только один товар, план обмена настраивали аналогично. При этом обмен с сайтом в БАЗА1 всё также работает. БАЗА2 была пустой в плане данных, её только начали заполнять товарами и документами.
Существует стандартный общий модуль "Процедуры обмена с сайтом", в нём докопался до процедуры

Процедура НастроитьПостроительОтчета(ПостроительОбъект) Экспорт

которая формирует запрос на составление списка выгружаемых товаров. Похоже, что запрос возвращает только одно значение
Код:
ВЫБРАТЬ РАЗРЕШЕННЫЕ
|	  Товары.НоменклатураСсылка КАК НоменклатураСсылка,
|	  Товары.НоменклатураСсылка.БазоваяЕдиницаИзмерения КАК ЕдиницаИзмерения,
|	  Товары.НоменклатураСсылка.ЕдиницаХраненияОстатков КАК ЕдиницаДляШтрихКода,
|	  Товары.НоменклатураСсылка.ВидНоменклатуры.Наименование КАК ВидНоменклатуры,
|	  Товары.НоменклатураСсылка.ВидНоменклатуры.ТипНоменклатуры КАК ТипНоменклатуры,
|	  Товары.НоменклатураСсылка.Производитель КАК Производитель,
|	  РегистрШтрихКоды.Штрихкод КАК ШтрихКод,
|	  Товары.ХарактеристикаСсылка КАК ХарактеристикаСсылка,
|	  ЗначенияСвойствХарактеристик.Свойство КАК ХарактеристикаСвойство,
|	  ЗначенияСвойствХарактеристик.Значение КАК ХарактеристикаЗначениеСвойства,
|	  ВЫБОР
|			  КОГДА ЦеныНоменклатуры.Цена ЕСТЬ NULL 
|					  ТОГДА ЦеныНоменклатурыБезХарактеристики.ТипЦен
|			  ИНАЧЕ ЦеныНоменклатуры.ТипЦен
|	  КОНЕЦ КАК ТипЦен,
|	  ВЫБОР
|			  КОГДА ЦеныНоменклатуры.Цена ЕСТЬ NULL 
|					  ТОГДА ЦеныНоменклатурыБезХарактеристики.Валюта
|			  ИНАЧЕ ЦеныНоменклатуры.Валюта
|	  КОНЕЦ КАК Валюта,
|	  ВЫБОР
|			  КОГДА ЦеныНоменклатуры.Цена ЕСТЬ NULL 
|					  ТОГДА ЦеныНоменклатурыБезХарактеристики.Цена
|			  ИНАЧЕ ЦеныНоменклатуры.Цена
|	  КОНЕЦ КАК Цена,
|	  ВЫБОР
|			  КОГДА ЦеныНоменклатуры.Цена ЕСТЬ NULL 
|					  ТОГДА ЦеныНоменклатурыБезХарактеристики.ЕдиницаИзмерения
|			  ИНАЧЕ ЦеныНоменклатуры.ЕдиницаИзмерения
|	  КОНЕЦ КАК ЕдиницаИзмеренияЦены,
|	  ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) + ЕСТЬNULL(ТоварыВРозницеОстатки.КоличествоОстаток, 0) + ЕСТЬNULL(ТоварыВНТТОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0) КАК Остаток,
|	  ЗначенияСвойствОбъектов.Значение КАК СвойствоНоменклатурыЗначение,
|	  ЗначенияСвойствОбъектов.Свойство КАК СвойствоНоменклатуры
|ИЗ
|	  (ВЫБРАТЬ
|			  Номенклатура.Ссылка КАК НоменклатураСсылка,
|			  Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаДляШтрихКода,
|			  ХарактеристикиНоменклатуры.Наименование КАК ХарактеристикаНаименование,
|			  ВЫБОР
|					  КОГДА ХарактеристикиНоменклатуры.Ссылка ЕСТЬ NULL 
|							  ТОГДА ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
|					  ИНАЧЕ ХарактеристикиНоменклатуры.Ссылка
|			  КОНЕЦ КАК ХарактеристикаСсылка,
|			  Номенклатура.СнятСПроизводства КАК СнятСПроизводства
|	  ИЗ
|			  Справочник.Номенклатура КАК Номенклатура
|					  ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
|					  ПО Номенклатура.Ссылка = ХарактеристикиНоменклатуры.Владелец
|	  ГДЕ
|			  Номенклатура.ЭтоГруппа = ЛОЖЬ
|			  И Номенклатура.ВидНоменклатуры.ТипНоменклатуры В(&МассивДопустимыхТиповНоменклатуры)
|	  {ГДЕ
|			  Номенклатура.Ссылка.* КАК Номенклатура}) КАК Товары
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствХарактеристик
|			  ПО (ЗначенияСвойствХарактеристик.Объект = Товары.ХарактеристикаСсылка)
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Штрихкоды КАК РегистрШтрихКоды
|			  ПО Товары.НоменклатураСсылка = РегистрШтрихКоды.Владелец
|					  И Товары.ХарактеристикаСсылка = РегистрШтрихКоды.ХарактеристикаНоменклатуры
|					  И Товары.ЕдиницаДляШтрихКода = РегистрШтрихКоды.ЕдиницаИзмерения
|			  ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
|					  ЗначенияСвойствОбъектов.Объект КАК Объект,
|					  ЗначенияСвойствОбъектов.Свойство КАК Свойство,
|					  ЗначенияСвойствОбъектов.Значение КАК Значение
|			  ИЗ
|					  РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
|			  ГДЕ
|					  ЗначенияСвойствОбъектов.Свойство.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенкл
атура)
|			  {ГДЕ
|					  ЗначенияСвойствОбъектов.Свойство КАК Свойство}) КАК ЗначенияСвойствОбъектов
|			  ПО Товары.НоменклатураСсылка = ЗначенияСвойствОбъектов.Объект
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаОтчета, {(ТипЦен).*}) КАК ЦеныНоменклатуры
|			  ПО Товары.НоменклатураСсылка = ЦеныНоменклатуры.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ЦеныНоменклатуры.ХарактеристикаНоменклатуры
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаОтчета, {(ТипЦен).*}) КАК ЦеныНоменклатурыБезХарактеристики
|			  ПО Товары.НоменклатураСсылка = ЦеныНоменклатурыБезХарактеристики.Номенклатура
|					  И (ЦеныНоменклатурыБезХарактеристики.ХарактеристикаНоменклатуры = ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка))
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаОтчета, {(Склад).*}) КАК ТоварыНаСкладахОстатки
|			  ПО Товары.НоменклатураСсылка = ТоварыНаСкладахОстатки.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРознице.Остатки(&ДатаОтчета, {(Склад).*}) КАК ТоварыВРозницеОстатки
|			  ПО Товары.НоменклатураСсылка = ТоварыВРозницеОстатки.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ТоварыВРозницеОстатки.ХарактеристикаНоменклатуры
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВНТТ.Остатки(&ДатаОтчета, {(Склад).*}) КАК ТоварыВНТТОстатки
|			  ПО Товары.НоменклатураСсылка = ТоварыВНТТОстатки.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ТоварыВНТТОстатки.ХарактеристикаНоменклатуры
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОтчета, {(Склад).*}) КАК ТоварыВРезервеНаСкладахОстатки
|			  ПО Товары.НоменклатураСсылка = ТоварыВРезервеНаСкладахОстатки.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ТоварыВРезервеНаСкладахОстатки.ХарактеристикаНоменклатуры
|			  ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&ДатаОтчета, {(Склад).*}) КАК ТоварыКПередачеСоСкладовОстатки
|			  ПО Товары.НоменклатураСсылка = ТоварыКПередачеСоСкладовОстатки.Номенклатура
|					  И Товары.ХарактеристикаСсылка = ТоварыКПередачеСоСкладовОстатки.ХарактеристикаНоменклатуры
|ГДЕ
|	  ИСТИНА
|{ГДЕ
|	  (ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) + ЕСТЬNULL(ТоварыВРозницеОстатки.КоличествоОстаток, 0) + ЕСТЬNULL(ТоварыВНТТОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0)) КАК Остаток}
|ИТОГИ
|	  МАКСИМУМ(ЕдиницаИзмерения),
|	  МАКСИМУМ(ЕдиницаДляШтрихКода),
|	  МАКСИМУМ(ВидНоменклатуры),
|	  МАКСИМУМ(ТипНоменклатуры),
|	  МАКСИМУМ(ШтрихКод),
|	  МАКСИМУМ(ХарактеристикаЗначениеСвойства),
|	  МАКСИМУМ(ТипЦен),
|	  МАКСИМУМ(Валюта),
|	  МАКСИМУМ(Цена),
|	  МАКСИМУМ(ЕдиницаИзмеренияЦены),
|	  МАКСИМУМ(Остаток),
|	  МАКСИМУМ(СвойствоНоменклатурыЗначение)
|ПО
|	  НоменклатураСсылка,
|	  ХарактеристикаСсылка,
|	  ХарактеристикаСвойство,
|	  СвойствоНоменклатуры
|АВТОУПОРЯДОЧИВАНИЕ
Он был немного изменён , добавлено поле Остаток (из регистров остаткой формируется).
Возможно в нём проблема, однако знаний для его анализа и понимания не хватает.
В чём может быть проблема? Куда копать?
 
S

Sangitam

Настройки обмена хотелось бы еще посмотреть.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!