Сравнение объекта со значением

1. alexeinahai 02.08.17 11:40 Сейчас в теме
Доброго времени суток, подскажите пожалуйста такой вопрос: мне в Реализации нужно добавить такое условие: если Объект.ДоговорКонтрагента = Договор № 61/ВЭ от 10.07.2017, то Объект.БанковскийСчетОрганизации = Банк1(допустим). не могу понять как задать если? если я просто пишу = "Договор № 61/ВЭ от 10.07.2017" он не работает.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. Boneman 298 02.08.17 11:46 Сейчас в теме
(1) да, посмотри код справочника, твоего договора.
и Объект.ДоговорКонтрагента.Код = "твойкод" тогда
6. alexeinahai 02.08.17 12:04 Сейчас в теме
(4) Понял, спасибо
(2)ок, спс, смотрю)
7. alexeinahai 02.08.17 12:08 Сейчас в теме
(4)ругается на код
{Документ.РеализацияТоваровУслуг.Форма.ФормаДокументаТовары.Форма(341)}: Поле объекта не обнаружено (Код)
если Объект.ДоговорКонтрагента.Код = "00-000498" Тогда
8. Xershi 1490 02.08.17 12:11 Сейчас в теме
(7) ДоговорКонтрагента может неопределено?
2. Kaspirovsky 214 02.08.17 11:44 Сейчас в теме
Программа не понимает какие это значение, наименование? Код? ... ты же не указал
3. andron77777 02.08.17 11:44 Сейчас в теме
= Справочники.Договоры.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017");
5. alexeinahai 02.08.17 11:59 Сейчас в теме
(3)
Договор № 61/ВЭ от 10.07.2017


Ругается, что не определена переменная справочники:
Документ.РеализацияТоваровУслуг.Форма.ФормаДокументаТовары.Форма(341,35)}: Переменная не определена (Справочники)


пишу так:
если Объект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") Тогда
9. herfis 500 02.08.17 12:12 Сейчас в теме
Печальная ветка.
andron77777; Octopus; +2 Ответить
10. SPID 02.08.17 12:22 Сейчас в теме
Веселая :)

Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") надо выполнять на стороне сервера
Объект.ДоговорКонтрагента.Код надо получать на стороне сервера.
11. herfis 500 02.08.17 12:40 Сейчас в теме
(10) Угу. Уже не говоря о том, что хардкодить поиск конкретных объектов по коду/наименованию - прием из разряда "вон из профессии".
12. alexeinahai 02.08.17 14:11 Сейчас в теме
(10) Попробовал писать этот код в
&НаСервере
Процедура ДоговорКонтрагентаПриИзмененииНаСервере()
но оттуда у меня ничего не отрабатывает. Например:
&НаСервере
Процедура ДоговорКонтрагентаПриИзмененииНаСервере()

РеализацияТоваровУслугФормы.ДоговорКонтрагентаПриИзменении(ЭтаФорма);
Если Объект.ДоговорКонтрагента.Наименование = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") Тогда

Сообщить("Договор найден")
КонецЕсли;

КонецПроцедуры
и никакого сообщения не выводит... видимо я что-то делаю не так, не знаю правда, что)
19. dmbarchenkov 02.08.17 14:31 Сейчас в теме
(12) Пиши так: Если Объект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") Тогда.
Не нужно писать "Объект.ДоговорКонтрагента.Наименование", ошибка в том что ты сравниваешь Текст с Ссылкой на справочник.
alexeinahai; +1 Ответить
13. SPID 02.08.17 14:16 Сейчас в теме
Если уж сильно хочется так, то

&НаКлиенте 
Процедура ДоговорКонтрагентаПриИзменении()
   ДоговорКонтрагентаПриИзмененииНаСервере();
КонецПроцедуры

&НаСервере 
Процедура ДоговорКонтрагентаПриИзмененииНаСервере() 

    Если Объект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") Тогда 
        Сообщить("Договор найден") ;
    Иначе
        Собщить("Фигня какая-то");
    КонецЕсли; 

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


При этом ДоговорКонтрагентаПриИзменении должна быть подключена как обработчик события.
14. Apelsinka 7 02.08.17 14:22 Сейчас в теме
Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") не возвращает значение "наименование". Это либо нашла, либо нет.
18. dmbarchenkov 02.08.17 14:29 Сейчас в теме
(14) Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") - вернёт Ссылку на договор, если найдёт его, а не Истина.
alexeinahai; +1 Ответить
15. Apelsinka 7 02.08.17 14:24 Сейчас в теме
Процедура ДоговорКонтрагентаПриИзмененииНаСервере() 


Если  Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию("Договор № 61/ВЭ от 10.07.2017") >0 Тогда 

Сообщить("Договор найден"); 
КонецЕсли;
16. Apelsinka 7 02.08.17 14:25 Сейчас в теме
или не ">0", а "= истина", или вообще ссылка на найденный объект...не помню уже
17. Apelsinka 7 02.08.17 14:27 Сейчас в теме
проще через отладчик посмотреть)))
20. SPID 02.08.17 14:31 Сейчас в теме
Тогда уж

Если Объект.ДоговорКонтрагента.Наименование = "Договор № 61/ВЭ от 10.07.2017" Тогда
    Сообщить("Ура! Это он!");
КонецЕсли;
alexeinahai; +1 Ответить
21. Apelsinka 7 02.08.17 14:31 Сейчас в теме
Говорю же...не помню уже. И 1с под рукой нет.
22. alexeinahai 02.08.17 16:43 Сейчас в теме
на этом этапе всё прошло замечательно) теперь пробую присвоить полю Банковский счет необходимые данные, но оно просто очищается и всё. пробовал делать через наименование:
Объект.БанковскийСчетОрганизации.Наименование = "ФИЛИАЛ БАНКА ВТБ (ПАО) В Г. ВОРОНЕЖЕ", не получилось.
пробую делать через:
Объект.БанковскийСчетОрганизации = Справочники.БанковскиеСчета.НайтиПоНаименованию("ФИЛИАЛ БАНКА ВТБ (ПАО) В Г. ВОРОНЕЖЕ")
тоже не выходит.
я так понимаю здесь нужно ссылке присвоить ссылку? но что-то не получается)
23. SPID 03.08.17 17:01 Сейчас в теме
В отладчике Справочники.БанковскиеСчета.НайтиПоНаименованию("ФИЛИАЛ БАНКА ВТБ (ПАО) В Г. ВОРОНЕЖЕ") что возвращает? точно находит элемент по такому наименованию?
Оставьте свое сообщение

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