|
v7: Условие на сравнение ссылок не работает в 1С 7.7 | ☑ | ||
---|---|---|---|---|
0
EvgeniuXP
06.01.12
✎
12:53
|
Почему не работает код:
ФилиалМ=Филиалы.НайтиПоНаименованию("Марс"); ... далее сравниваем Если Контрагент.Филиал=ФилиалМ Тогда Сообщить("Контрагент найден"); КонецЕсли; а вот если напишем: Если Контрагент.Филиал.ТекущийЭлемент()=ФилиалМ.ТекущийЭлемент() Сообщить("Контрагент найден"); КонецЕсли; то это условие работает. |
|||
1
Rie
06.01.12
✎
12:55
|
(0) Потому что НайтиПоНаименованию возвращает 0 или 1, а не ссылку.
|
|||
2
Kreont
06.01.12
✎
12:55
|
Сравнивай с Филиалы
|
|||
3
Mikeware
06.01.12
✎
12:57
|
ПОтому, что НайтиПоНаименованию() возвращает 1"найдено" или 0"не найдено"
зы. продам СП. Дорого© |
|||
4
1Сергей
06.01.12
✎
12:59
|
(0) Убери в личной карточке из достижений "Программист 1С 7.7"
|
|||
5
andrewks
06.01.12
✎
13:02
|
одно не понял - откуда в ФилиалМ появляется ТекущийЭлемент()
|
|||
6
Mikeware
06.01.12
✎
13:03
|
(5) 1.ТекущийЭлемент() :-)))
|
|||
7
Mikeware
06.01.12
✎
13:04
|
(4) Не умеющим читать документацию и пользоваться отладчиком - стоит убрать из ЛК слово "программист" применительно к любвым системам...
зы. а может, у чувака просто похмелье? :-) |
|||
8
1Сергей
06.01.12
✎
13:06
|
(7) скорее запой
|
|||
9
Mikeware
06.01.12
✎
13:08
|
(8) "несоблдение режима похмеления ведет к систематическому запою"©
|
|||
10
EvgeniuXP
06.01.12
✎
19:35
|
Работает:
ФилиалМ=СоздатьОбъект("Справочник.Филиалы"); Если ФилиалМ.НайтиПоНаименованию("Марс",0,1)=0 Тогда Возврат; КонецЕсли; Кредиты=СоздатьОбъект("Справочник.Кредиты"); Кредиты.ВыбратьЭлементы(0); Пока Кредиты.ПолучитьЭлемент()=1 Цикл Если Кредиты.Филиал.ТекущийЭлемент()=ФилиалМ.ТекущийЭлемент() Тогда Кредиты.Удалить(0); КонецЕсли; КонецЦикла; не работает: Если Кредиты.Филиал=ФилиалМ Тогда Кредиты.Удалить(0); КонецЕсли; |
|||
11
dva1c
06.01.12
✎
19:37
|
(9) Давно пытался впихнуть СП дорого. Ниче не вышло. ))
|
|||
12
EvgeniuXP
06.01.12
✎
19:38
|
(3) не много не верно написал, вместо первой строки
ФилиалМ=Филиалы.НайтиПоНаименованию("Марс"); нужно Если ФилиалМ.НайтиПоНаименованию("Марс")=0 Тогда Возврат; КонецЕсли; |
|||
13
filh
06.01.12
✎
19:39
|
(11) лох, ДенисЧ уже столько продал...
|
|||
14
filh
06.01.12
✎
19:40
|
(12) врешь!
|
|||
15
filh
06.01.12
✎
19:40
|
(12) 86?
|
|||
16
dva1c
06.01.12
✎
19:41
|
(13) Опс! А ларчик просто открывался! ))
|
|||
17
EvgeniuXP
06.01.12
✎
19:42
|
(14) что вру? не работает:
Если ФилиалМ.НайтиПоНаименованию("Марс")=0 Тогда Возврат; КонецЕсли; ... далее сравниваем Если Контрагент.Филиал=ФилиалМ Тогда Сообщить("Контрагент найден"); КонецЕсли; а добавить .ТекущийЭлемент() там и там в условии - работает! |
|||
18
dva1c
06.01.12
✎
19:42
|
+(16) Да и не конкурент я ДенисЧ ;)
|
|||
19
EvgeniuXP
06.01.12
✎
19:48
|
так тоже работает:
Если Контрагент.Филиал=ФилиалМ.ТекущийЭлемент() Тогда Сообщить("Контрагент найден"); КонецЕсли; |
|||
20
EvgeniuXP
06.01.12
✎
19:50
|
даже если так напишем, тоже не работает:
Если Филиалы.НайтиПоНаименованию("Марс")=0 Тогда Возврат; КонецЕсли; ФилиалМ=Филиалы.ТекущийЭлемент(); Если Контрагент.Филиал=ФилиалМ Тогда Сообщить("Контрагент найден"); КонецЕсли; |
|||
21
EvgeniuXP
06.01.12
✎
19:51
|
(20) контрагентов всех перебираем, просто упустил этот цикл.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |