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

НайтиПоРеквизиту

Автор Березин, 31 дек 2011, 00:47

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

Березин

получаю пустую ссылку, запустив:

Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент","ЭКИП ТОО");
При этом есть
-три документа "ВозвратТоваровПоставщику"
-реквизит "Контрагент"
-контрагент ЭКИП ТОО
База данных от 2006 года, но ведь дата при "НайтиПоРеквизиту" не учитывается.
Никак не пойму в чем проблема

И подвопрос.
Есть контрагент Фирма "LIGHT". То есть есть кавычки. Когда я его помещаю вторым аргументом в НайтиПоРеквизиту("Контрагент","Фирма "LIGHT""), то получаю сообщение об ошибке.

Dethmontt

НатиПоРеквизиту("Контрагент",<Переменная содержащая ссылку на контрагента>) А НЕ ТЕКСТ
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Березин

Из описания встроенного языка

НайтиПоРеквизиту(<Имя реквизита>, <Значение реквизита>, <Родитель>, <Владелец>)
<Значение реквизита> (обязательный)
Тип: Произвольный. Значение реквизита, по которому должен выполняться поиск.

Да и пример я не сам придумал, а взял из учебника.
Только вот у меня не получается, и никак не пойму почему.

Dethmontt

Тип значения реквизита должен соответствовать типу реквизита!!!
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Dethmontt

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

Dethmontt

Так же обязательно прочитайте примечание к использованию функции НайтиПоРеквизиту()
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Березин

Я ОЧЕНЬ благодарен за ответ и за разъяснения. Тем более, что ваш вариант работает.
Что меня "УБИВАЕТ" так это сам пример из книги Несвижского "1с:предприятия 8.0 приемы программирования". Он там не мычит и не телится о том, что вы говорите. Просто напечатал:
СсылкаСписаниеТоваров = Документы.СписаниеТоваров.НайтиПоРеквизиту("Ответственный","Радкевич О.А.");
При этом тип реквизита "ответственный":СправочникСсылка.Пользователи.
В советское время такой халтуры не выпускали.
С наступающим Новым Годом!

Березин

Вот только так и неясно что с кавычками делать.
При

Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент",Справочники.Контрагенты.НайтиПоНаименованию("База "Электротовары""));

Получаю

{Форма.Форма(95,131)}: Ожидается символ ')'
Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент",Справочники.Контрагенты.НайтиПоНаименованию("База "<<?>>Электротовары""));
{Форма.Форма(95,147)}: Неопознанный оператор
Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент",Справочники.Контрагенты.НайтиПоНаименованию("База "Электротовары"")<<?>>);

sergejK74

А так ругается?
Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент",Справочники.Контрагенты.НайтиПоНаименованию("База ""Электротовары"""));
Кнопочка Спасибо - слева!

Березин

Цитата: sergejK74 от 31 дек 2011, 23:34
А так ругается?
Переменная = Документы.ВозвратТоваровПоставщику.НайтиПоРеквизиту("Контрагент",Справочники.Контрагенты.НайтиПоНаименованию("База ""Электротовары"""));
Нет, я теперь на себя ругаюсь.
Спасибо и с наступившим Новым Годом!
Голова только сейчас перестала болеть.

Теги:

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

Рейтинг@Mail.ru

Поиск