Переменная не определена. #754972


#0 by Алекс55555
Добрый вечер ! Есть задание : Определить обработчик события ,который бы позволил после выбора контактного лица автоматически устанавливать в документе   значение контрагента(владельца) .При реализации -использовать табличную обработку. Вот код : &НаКлиенте      Пишет ,что Документ.ПоступлениеТоваров.Форма.ФормаДокумента.Форма(39,19)}: Переменная не определена (КонтактноеЛицо)         Сообщить (<<?>>КонтактноеЛицо); (Проверка: Сервер) {Документ.ПоступлениеТоваров.Форма.ФормаДокумента.Форма(40,19)}: Переменная не определена (Контрагент)         Сообщить (<<?>>Контрагент ); (Проверка: Сервер) Помогите разобраться пожалуйста.
#1 by Волшебник
#2 by Алекс55555
Спасибо , ошибка исправлена. Только я по прежнему ввожу контактноелицо , и сам же ввожу потом  контрагента. А по заданию нужно "после выбора контактного лица автоматически устанавливать в документе   значение контрагента(владельца)" Что делать не приложу ума. И при выборе контактного лица - выскакивает сообщение, где просто перечислены все контактные лица и контрагенты, и нет возможности выбрать сначала контактное лицо , если контрагент пустой. Жду ваших советов.
#3 by User_Agronom
...автоматически устанавливать... В коде нигде ничего автоматически не устанавливается. Попробуйте подумать логически.
#4 by Asmody
запрос нужно параметризировать. в текст запроса добавить ГДЕ КонтактныеЛица.Ссылка = &КонтактноеЛицо и добавить установку параметра: Запрос.УстановитьПараметр("КонтактноеЛицо", КонтактноеЛицо) тогда в результате запроса будет только нужный контрагент
#5 by Алекс55555
Спасибо, сделал. Если правильно понял , то должно выглядеть так : КонецПроцедуры Только ничего так и не поменялось...
#6 by Asmody
Параметр запроса устанавливается до его выполнения. И, да, документацию придется почитать.
#7 by User_Agronom
...Запрос.УстановитьПараметр("КонтактноеЛицо", Выборка.КонтактноеЛицо);... Жуть. Ты не понял, что значит параметр запроса... Это всё с умным словом "параметризировать"! Начни с того, что тебе нужно. Т.е. куда ты хочешь что-то установить. А потом: как получить то, что хочешь установить. Что у тебя есть, для того, чтобы это получить. Читать сначала нужно не документацию к 1С, а принципы решения задач с помощью языка программирования.
#8 by Asmody
Ну, мы ж тут программировать собрались, а не в крысню играть. Будем сразу разговаривать нужными словами.
#9 by kubik_live
Иванов Иван Иванович может быть контактным лицом множества контрагентов. У задачи нет решения
#10 by User_Agronom
...а не в крысню играть... ??
#11 by Asmody
Судя по запросу, у него Контактные лица подчинены контрагентам.
#12 by Asmody
Один мой учитель говорил: "Это просто, как детская игра в крысню."
#13 by Zamestas
Вторая серия:
#14 by User_Agronom
Цитата, да ещё учителя. Но не суть: если давать совет, то так, чтобы ТС понял. Но ТС пока считает (я верю, что в будущем он будет разбираться великолепно, но не сегодня точно), что цикл Можно заменить командой: Запрос.УстановитьПараметр( ИМХО: советы с терминами ещё больше его запутают. Это студент, похоже.
#15 by Zamestas
Это такой забористый студент, что я х.з. чем ему вообще помочь можно...
#16 by User_Agronom
Я в дал совет: "...Попробуйте подумать логически". и в "...Начни с того, что тебе нужно. Т.е. куда ты хочешь что-то установить. А потом: как получить то, что хочешь установить. Что у тебя есть, для того, чтобы это получить..." И это не стёб. Правильно заданный вопрос даст нам с вероятностью 80% правильный ответ на него.
#17 by Алекс55555
Спасибо большое , за дельные советы. Да студент , да учусь. Но не все сразу становились мастерами))
#18 by magicSan
теорию бы почитал для начала. судя по всему 1С единсвенный ЯП с которым автор работал.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С