Обнаружено рассогласование при получении данных.

1. VID1234 146 20.01.24 22:22 Сейчас в теме
Здравствуйте. Подскажите в чем может быть причина, в динамическом списке возникает такая ошибка (Обнаружено рассогласование при получении данных.) возникает когда в строке поиска мы пытаемся что нибудь найти.
ВЫБРАТЬ
	ДокументЗаказКлиента.Ссылка КАК Ссылка,
	ДокументЗаказКлиента.ПометкаУдаления КАК ПометкаУдаления,
	ДокументЗаказКлиента.Номер КАК Номер,
	ДокументЗаказКлиента.Дата КАК Дата,
	ДокументЗаказКлиента.НомерПоДаннымКлиента КАК НомерПоДаннымКлиента,
	ДокументЗаказКлиента.ДатаПоДаннымКлиента КАК ДатаПоДаннымКлиента,
	ДокументЗаказКлиента.Проведен КАК Проведен,
	ДокументЗаказКлиента.Приоритет КАК Приоритет,
	ДокументЗаказКлиента.Партнер КАК Партнер,
	ДокументЗаказКлиента.Контрагент КАК Контрагент,
	ДокументЗаказКлиента.Организация КАК Организация,
	ДокументЗаказКлиента.Соглашение КАК Соглашение,
	ДокументЗаказКлиента.Договор КАК Договор,
	ДокументЗаказКлиента.Сделка КАК Сделка,
	ДокументЗаказКлиента.Валюта КАК Валюта,
	ДокументЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
	ДокументЗаказКлиента.СуммаВозвратнойТары КАК СуммаВозвратнойТары,
	ДокументЗаказКлиента.ГрафикОплаты КАК ГрафикОплаты,
	ДокументЗаказКлиента.ЖелаемаяДатаОтгрузки КАК ЖелаемаяДатаОтгрузки,
	ДокументЗаказКлиента.Склад КАК Склад,
	ДокументЗаказКлиента.Статус КАК Статус,
	ДокументЗаказКлиента.Менеджер КАК Менеджер,
	ДокументЗаказКлиента.ДополнительнаяИнформация КАК ДополнительнаяИнформация,
	ДокументЗаказКлиента.СуммаАвансаДоОбеспечения КАК СуммаАвансаДоОбеспечения,
	ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки КАК СуммаПредоплатыДоОтгрузки,
	ДокументЗаказКлиента.ДатаОтгрузки КАК ДатаОтгрузки,
	ДокументЗаказКлиента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
	ДокументЗаказКлиента.ПорядокРасчетов КАК ПорядокРасчетов,
	ДокументЗаказКлиента.Комментарий КАК Комментарий,
	ДокументЗаказКлиента.АдресДоставки КАК АдресДоставки,
	ВЫБОР
		КОГДА НЕ ДокументЗаказКлиента.Проведен
			ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ПустаяСсылка)
		ИНАЧЕ ЕСТЬNULL(СостоянияЗаказовКлиентов.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.Закрыт))
	КОНЕЦ КАК Состояние,
	ВЫБОР
		КОГДА НЕ ДокументЗаказКлиента.Проведен
			ТОГДА ЛОЖЬ
		КОГДА СостоянияЗаказовКлиентов.ДатаСобытия <> ДАТАВРЕМЯ(1, 1, 1)
				И &ДатаАктуальности > СостоянияЗаказовКлиентов.ДатаСобытия
			ТОГДА ИСТИНА
		ИНАЧЕ ЛОЖЬ
	КОНЕЦ КАК Просрочен,
	ВЫБОР
		КОГДА ДокументЗаказКлиента.Приоритет В
				(ВЫБРАТЬ ПЕРВЫЕ 1
					Приоритеты.Ссылка КАК Приоритет
				ИЗ
					Справочник.Приоритеты КАК Приоритеты
				УПОРЯДОЧИТЬ ПО
					Приоритеты.РеквизитДопУпорядочивания)
			ТОГДА 0
		КОГДА ДокументЗаказКлиента.Приоритет В
				(ВЫБРАТЬ ПЕРВЫЕ 1
					Приоритеты.Ссылка КАК Приоритет
				ИЗ
					Справочник.Приоритеты КАК Приоритеты
				УПОРЯДОЧИТЬ ПО
					Приоритеты.РеквизитДопУпорядочивания УБЫВ)
			ТОГДА 2
		ИНАЧЕ 1
	КОНЕЦ КАК КартинкаПриоритета,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаОплаты, 0) КАК СуммаОплаты,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентОплаты, 0) КАК ПроцентОплаты,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаОтгрузки, 0) КАК СуммаОтгрузки,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентОтгрузки, 0) КАК ПроцентОтгрузки,
	ВЫБОР
		КОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0) < 0
			ТОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0)
		ИНАЧЕ 0
	КОНЕЦ КАК НашДолг,
	ВЫБОР
		КОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0) > 0
			ТОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0)
		ИНАЧЕ 0
	КОНЕЦ КАК ДолгКлиента,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентДолга, 0) КАК ПроцентДолга,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.ДатаСобытия, ДАТАВРЕМЯ(1, 1, 1)) КАК ДатаСобытия,
	ЕСТЬNULL(СостоянияЗаказовКлиентов.ЕстьРасхожденияОрдерНакладная, ЛОЖЬ) КАК ЕстьРасхожденияОрдерНакладная,
	СостоянияЭД.СостояниеВерсииЭД КАК СостояниеВерсииЭД,
	ДокументЗаказКлиента.УТ_ВидПродажи КАК ВидПродажи,
	ДокументЗаказКлиента.УТ_ФормаОплаты КАК ФормаОплаты,
	ВложенныйЗапрос.ЗаказКлиента КАК ЗаказКлиента,
	ВложенныйЗапрос.Ссылка.Номер + " от " + СТРОКА(ВложенныйЗапрос.Ссылка.Дата) КАК ЗаказПоставщику
ИЗ
	Документ.ЗаказКлиента КАК ДокументЗаказКлиента
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЗаказовКлиентов КАК СостоянияЗаказовКлиентов
		ПО (СостоянияЗаказовКлиентов.Заказ = ДокументЗаказКлиента.Ссылка)
		{ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
		ПО (СостоянияЭД.СсылкаНаОбъект = ДокументЗаказКлиента.Ссылка)}
		ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
			ЗаказПоставщику.ДокументОснование КАК ЗаказКлиента,
			МАКСИМУМ(ЗаказПоставщику.Ссылка) КАК Ссылка
		ИЗ
			Документ.ЗаказПоставщику КАК ЗаказПоставщику
		ГДЕ
			ЗаказПоставщику.Проведен
		
		СГРУППИРОВАТЬ ПО
			ЗаказПоставщику.ДокументОснование) КАК ВложенныйЗапрос
		ПО ДокументЗаказКлиента.Ссылка = ВложенныйЗапрос.ЗаказКлиента
Показать

Скорее всего причина при получении этого поля ВложенныйЗапрос.Ссылка.Номер + " от " + СТРОКА(ВложенныйЗапрос.Ссылка.Дата) - этот запрос работал нормально, до того момента как появилось 2 заказа поставщику разным поставщикам, переделал так МАКСИМУМ(ЗаказПоставщику.Ссылка) (по дате тоже не получается, там 2 одинаковых даты у некоторых заказов поставщику) , ругается на повторяющуюся ссылку, от ссылки ушел с помощью этого МАКСИМУМ(ЗаказПоставщику.Ссылка) , но теперь непонятное рассогласование и информации мало, не знаю в чем причина.
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VID1234 146 21.01.24 18:44 Сейчас в теме
Сделал через событие формы:
ВЫБРАТЬ
    ДокументЗаказКлиента.Ссылка КАК Ссылка,
    ДокументЗаказКлиента.ПометкаУдаления КАК ПометкаУдаления,
    ДокументЗаказКлиента.Номер КАК Номер,
    ДокументЗаказКлиента.Дата КАК Дата,
    ДокументЗаказКлиента.НомерПоДаннымКлиента КАК НомерПоДаннымКлиента,
    ДокументЗаказКлиента.ДатаПоДаннымКлиента КАК ДатаПоДаннымКлиента,
    ДокументЗаказКлиента.Проведен КАК Проведен,
    ДокументЗаказКлиента.Приоритет КАК Приоритет,
    ДокументЗаказКлиента.Партнер КАК Партнер,
    ДокументЗаказКлиента.Контрагент КАК Контрагент,
    ДокументЗаказКлиента.Организация КАК Организация,
    ДокументЗаказКлиента.Соглашение КАК Соглашение,
    ДокументЗаказКлиента.Договор КАК Договор,
    ДокументЗаказКлиента.Сделка КАК Сделка,
    ДокументЗаказКлиента.Валюта КАК Валюта,
    ДокументЗаказКлиента.СуммаДокумента КАК СуммаДокумента,
    ДокументЗаказКлиента.СуммаВозвратнойТары КАК СуммаВозвратнойТары,
    ДокументЗаказКлиента.ГрафикОплаты КАК ГрафикОплаты,
    ДокументЗаказКлиента.ЖелаемаяДатаОтгрузки КАК ЖелаемаяДатаОтгрузки,
    ДокументЗаказКлиента.Склад КАК Склад,
    ДокументЗаказКлиента.Статус КАК Статус,
    ДокументЗаказКлиента.Менеджер КАК Менеджер,
    ДокументЗаказКлиента.ДополнительнаяИнформация КАК ДополнительнаяИнформация,
    ДокументЗаказКлиента.СуммаАвансаДоОбеспечения КАК СуммаАвансаДоОбеспечения,
    ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки КАК СуммаПредоплатыДоОтгрузки,
    ДокументЗаказКлиента.ДатаОтгрузки КАК ДатаОтгрузки,
    ДокументЗаказКлиента.ХозяйственнаяОперация КАК ХозяйственнаяОперация,
    ДокументЗаказКлиента.ПорядокРасчетов КАК ПорядокРасчетов,
    ДокументЗаказКлиента.Комментарий КАК Комментарий,
    ДокументЗаказКлиента.АдресДоставки КАК АдресДоставки,
    ВЫБОР
        КОГДА НЕ ДокументЗаказКлиента.Проведен
            ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ПустаяСсылка)
        ИНАЧЕ ЕСТЬNULL(СостоянияЗаказовКлиентов.Состояние, ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.Закрыт))
    КОНЕЦ КАК Состояние,
    ВЫБОР
        КОГДА НЕ ДокументЗаказКлиента.Проведен
            ТОГДА ЛОЖЬ
        КОГДА СостоянияЗаказовКлиентов.ДатаСобытия <> ДАТАВРЕМЯ(1, 1, 1)
                И &ДатаАктуальности > СостоянияЗаказовКлиентов.ДатаСобытия
            ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ КАК Просрочен,
    ВЫБОР
        КОГДА ДокументЗаказКлиента.Приоритет В
                (ВЫБРАТЬ ПЕРВЫЕ 1
                    Приоритеты.Ссылка КАК Приоритет
                ИЗ
                    Справочник.Приоритеты КАК Приоритеты
                УПОРЯДОЧИТЬ ПО
                    Приоритеты.РеквизитДопУпорядочивания)
            ТОГДА 0
        КОГДА ДокументЗаказКлиента.Приоритет В
                (ВЫБРАТЬ ПЕРВЫЕ 1
                    Приоритеты.Ссылка КАК Приоритет
                ИЗ
                    Справочник.Приоритеты КАК Приоритеты
                УПОРЯДОЧИТЬ ПО
                    Приоритеты.РеквизитДопУпорядочивания УБЫВ)
            ТОГДА 2
        ИНАЧЕ 1
    КОНЕЦ КАК КартинкаПриоритета,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаОплаты, 0) КАК СуммаОплаты,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентОплаты, 0) КАК ПроцентОплаты,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаОтгрузки, 0) КАК СуммаОтгрузки,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентОтгрузки, 0) КАК ПроцентОтгрузки,
    ВЫБОР
        КОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0) < 0
            ТОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0)
        ИНАЧЕ 0
    КОНЕЦ КАК НашДолг,
    ВЫБОР
        КОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0) > 0
            ТОГДА ЕСТЬNULL(СостоянияЗаказовКлиентов.СуммаДолга, 0)
        ИНАЧЕ 0
    КОНЕЦ КАК ДолгКлиента,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.ПроцентДолга, 0) КАК ПроцентДолга,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.ДатаСобытия, ДАТАВРЕМЯ(1, 1, 1)) КАК ДатаСобытия,
    ЕСТЬNULL(СостоянияЗаказовКлиентов.ЕстьРасхожденияОрдерНакладная, ЛОЖЬ) КАК ЕстьРасхожденияОрдерНакладная,
    СостоянияЭД.СостояниеВерсииЭД КАК СостояниеВерсииЭД,
    ДокументЗаказКлиента.УТ_ВидПродажи КАК ВидПродажи,
    ДокументЗаказКлиента.УТ_ФормаОплаты КАК ФормаОплаты,
    ВЫРАЗИТЬ(NULL КАК СТРОКА(50)) КАК ЗаказПоставщику
ИЗ
    Документ.ЗаказКлиента КАК ДокументЗаказКлиента
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЗаказовКлиентов КАК СостоянияЗаказовКлиентов
        ПО (СостоянияЗаказовКлиентов.Заказ = ДокументЗаказКлиента.Ссылка)
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
        ПО (СостоянияЭД.СсылкаНаОбъект = ДокументЗаказКлиента.Ссылка)}
Показать


В модуле формы добавил обработчик
и выполнил там:
&НаСервереБезКонтекста
Процедура СписокПриПолученииДанныхНаСервере(ИмяЭлемента, Настройки, Строки)

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

КонецПроцедуры
Показать

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

Спасибо за подсказку
timurhv на Мисте и автору статьи https://wonderland.v8.1c.ru/blog/obrabotka-i-oformlenie-dannykh-dinamicheskogo-spiska/
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот