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

Значения NULL

Автор mahaidor, 04 янв 2015, 09:01

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

mahaidor

Здравствуйте! Столкнулся с странной проблемой. Вычислил два значения. Значения определены, не Null, но когда я их пытаюсь сложить , одно из значений мистическим образом превращается в Null:dfbsdfbsdf:

Код:
НомерСтроки=ОбщиеШансы.НомерСтроки;
Если (НомерСтроки=1) или (НомерСтроки=2)
Тогда
      ОСВничьи=СуммаНичьи5/Матчи;
  СтВерПоб1=РасчетСтатВероятностиПобед(1);
  СтВерПоб2=РасчетСтатВероятностиПобед(2);
  ПВН1=РаботаСоСтавками.РасчетПолнойВероятностиНаступленияСобытия(СтВерПоб1,СтВерПоб2,ОСВничьи,3);
  Шанс1_5=(СтВерПоб1*0.33)/ПВН1;//1 значение
  Шанс2_5=(СтВерПоб2*0.33)/ПВН1;
  ШансН_5=(ОСВничьи*0.33)/ПВН1;
  КонецЕсли;

Если (НомерСтроки=3) или (НомерСтроки=4)
Тогда
      ОСВничьи=СуммаНичьиС/Матчи;
  СтВерПоб1=РасчетСтатВероятностиПобед(3);
  СтВерПоб2=РасчетСтатВероятностиПобед(4);
  ПВН2=РаботаСоСтавками.РасчетПолнойВероятностиНаступленияСобытия(СтВерПоб1,СтВерПоб2,ОСВничьи,3);
  Шанс1_С=(СтВерПоб1*0.33)/ПВН2;//2 значение
              Шанс2_С=(СтВерПоб2*0.33)/ПВН2;
  ШансН_С=(ОСВничьи*0.33)/ПВН2;
КонецЕсли;
         Сумма=Шанс1_5+Шанс1_С;//пытаюсь сложить

mahaidor

другими словами выдается ошибка о невозможности преобразовать занчение к типу число

дфтын

неявные преобразования это все плохо. изучайте перед складыванием на наличие неопределенности, что то типа такого:
  Сумма = ?(Шанс1_5 = Неопределено, 0 , Шанс1_5) + ?(Шанс1_С = Неопределено, 0 ,Шанс1_С);

mahaidor

Спасибо, но я все проверял, у меня все промежуточные переменные в расчетах. Решил, проблему поместив данный код в цикл обхода табличной части : Для каждого....Цикл
Добавлено: 04 янв 2015, 11:34


хотя так и не понял почему Null вылезали

дфтын

А. так у вас еще и код не верный. с этого бы и начинали
Добавлено: 04 янв 2015, 11:41


ОЧень просто, у вас переменные  Шанс1_5 ни где не объявляются, и не инициализируется, а так как код написан с ошибкой, в условия вхождения не было (ибо номерстроки нету)

Теги:

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

Рейтинг@Mail.ru

Поиск