Имя: Пароль:
1C
 
1с. Сравнение чисел (3=3 – ложь)
0 PilotBrian
 
26.03.04
13:55
Не пойму причину. Допустим есть два справочника. Пытаюсь сравнить два числа: Код у первого справочника (тип кода: числовой) и Реквизит у второго (тип значения: число). Я так понимаю, раз они оба числовые их можно сравнивать. Сравнение происходит при изменении записи у первого справочника, а именно:

Процедура ПриЗаписи()
   Спр=СоздатьОбъект("Справочник.Второй");
   Спр.ВыбратьЭлементы();
   Пока Спр.ПолучитьЭлемент()>0 Цикл
       Если Спр.КодПодч=Код тогда

//Код – Код первого справочника
//КодПодч – Реквизит второго справочника

           Сообщить("Совпал");
       КонецЕсли;
   КонецЦикла;
КонецПроцедуры

А сообщение «Совпал» не появляется. А на самом деле есть запись во втором справочнике в реквезите КодПодч такое же число, что и код у первого справочника – проверял в Отладчике (Код = 3, КодПодч = 3). Как мне быть?
1 NastyFrog
 
26.03.04
13:58
Попробуй
Если Число(Спр.КодПодч)=Число(Код) тогда
2 PilotBrian
 
26.03.04
14:01
(1) Получилось! Санкс :)
3 327
 
26.03.04
17:21
Скоро (0) прибежит с вопросами ... Куда делось....
4 PilotBrian
 
29.03.04
12:59
А если значения строковые. По такому же принципу пишу:

Если Строка(Спр.КодПодч)=Строка(Код) тогда ...

или

Если Спр.КодПодч=Код тогда ...

не получается :(

(3) Накаркал :)
5 Nataly
 
29.03.04
13:08
(4) А если СокрЛП(строка(спр.КодПодч))...и т.д?
6 kadr
 
29.03.04
13:08
Попробуй СокрЛП(Строка(....))=СокрЛП(Строка(...))
7 PilotBrian
 
29.03.04
13:11
Примного благодарен.