Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 20:47

Выборка данных в ТЗ

Автор CrIsSaLiT, 12 фев 2019, 14:28

0 Пользователей и 1 гость просматривают эту тему.

CrIsSaLiT

Цитата: antoneus от 13 фев 2019, 16:05
А как вы поместили в переменную Выб выборку из справочника? А таблицу значений в переменную ТЗ? А добавленную в ТЗ строку в переменную НоваяСтрока? С помощью знака равенства, конечно.

Название_Команды = "Название команды, по которой мне нужно отобрать игроков";

Или

Если Выб.Команда = "Название команды, по которой мне нужно отобрать игроков" Тогда


Пробовал, не получается, выборка не происходит.

Выб = Справочники.Игроки.Выбрать();
Название ="Miami Heat";
Пока Выб.Следующий() Цикл
    Если Выб.Команда = Название Тогда
       ЗаполнитьЗначенияСвойств(ТЗ.Добавить(), Выб);
    КонецЕсли;
   
КонецЦикла;


alexandr_ll

Цитата: CrIsSaLiT от 14 фев 2019, 09:41
Цитата: antoneus от 13 фев 2019, 16:05
А как вы поместили в переменную Выб выборку из справочника? А таблицу значений в переменную ТЗ? А добавленную в ТЗ строку в переменную НоваяСтрока? С помощью знака равенства, конечно.

Название_Команды = "Название команды, по которой мне нужно отобрать игроков";

Или

Если Выб.Команда = "Название команды, по которой мне нужно отобрать игроков" Тогда


Пробовал, не получается, выборка не происходит.

Выб = Справочники.Игроки.Выбрать();
Название ="Miami Heat";
Пока Выб.Следующий() Цикл
    Если Выб.Команда = Название Тогда
       ЗаполнитьЗначенияСвойств(ТЗ.Добавить(), Выб);
    КонецЕсли;
   
КонецЦикла;

Вы сравниваете ссылку на элемент справочника со строкой. Операции сравнения должны выполняться по одинаковому типу. Какой тип значения у Выб.Команда?

CrIsSaLiT

Цитата: alexandr_ll от 14 фев 2019, 09:51
Цитата: CrIsSaLiT от 14 фев 2019, 09:41
Цитата: antoneus от 13 фев 2019, 16:05
А как вы поместили в переменную Выб выборку из справочника? А таблицу значений в переменную ТЗ? А добавленную в ТЗ строку в переменную НоваяСтрока? С помощью знака равенства, конечно.

Название_Команды = "Название команды, по которой мне нужно отобрать игроков";

Или

Если Выб.Команда = "Название команды, по которой мне нужно отобрать игроков" Тогда


Пробовал, не получается, выборка не происходит.

Выб = Справочники.Игроки.Выбрать();
Название ="Miami Heat";
Пока Выб.Следующий() Цикл
    Если Выб.Команда = Название Тогда
       ЗаполнитьЗначенияСвойств(ТЗ.Добавить(), Выб);
    КонецЕсли;
   
КонецЦикла;

Вы сравниваете ссылку на элемент справочника со строкой. Операции сравнения должны выполняться по одинаковому типу. Какой тип значения у Выб.Команда?

Это ссылка на реквизит справочника Игроки,Команда.Справочники.Игроки.Выбрать(Команда).

alexandr_ll

Этот реквизит какой тип имеет? Строка, ссылка на элемент справочника или что-нибудь еще?

CrIsSaLiT

Да, он имеет ссылку на справочник Команды

antoneus

Я же сразу этот вопрос задал.
Цитата: antoneus от 13 фев 2019, 12:49
У реквизита "Команда" какой тип?


alexandr_ll

Цитата: CrIsSaLiT от 14 фев 2019, 11:42
Да, он имеет ссылку на справочник Команды
Нельзя сравнивать справочник со строкой. Можно сравнивать наименование элемента справочника (тип - строка) с какой нибудь строкой.

CrIsSaLiT

А как тогда, можно записать чтоб правильно сравнить?

LexaK

попробуйте так

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

CrIsSaLiT

Спасибо всем, все заработало!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск