|
деление на 0 | ☑ | ||
---|---|---|---|---|
0
manti
18.09.12
✎
12:05
|
в этой формуле не может быть в знаменателе 0, поскольку переменная мКолЕдИзмВМесте при нулевом значении дает отрицательный результат. Попробовал приветси к типу Число - не помогло. В отладчике смотрю - показывает что мКолЕдИзмВМесте неопределено. Как еще можно?
Если Значения.Значение = Неопределено тогда мКолЕдИзмВМесте = Число(0); Иначе мКолЕдИзмВМесте = Значения.Значение; КонецЕсли; // мЦенаСоСкидкой = (ВыборкаСтрокТовары.Цена / Число(мКолЕдИзмВМесте) - (Скидка/(ВыборкаСтрокТовары.Количество))); |
|||
1
Нуф-Нуф
18.09.12
✎
12:08
|
нулю может быть равно как Число(мКолЕдИзмВМесте) - (Скидка/(ВыборкаСтрокТовары.Количество)) так и ВыборкаСтрокТовары.Количество
отладчик рулит |
|||
2
Maxus43
18.09.12
✎
12:08
|
чо?
в какой строке ошибка, что хочеш то? что такое Значения.Значение ? |
|||
3
Ненавижу 1С
гуру
18.09.12
✎
12:09
|
во первых деления там два, во вторых чему равно Значения.Значение и что есть мКолЕдИзмВМесте по сути
|
|||
4
Classic
18.09.12
✎
12:10
|
Делить на ноль нельзя
|
|||
5
Sammo
18.09.12
✎
12:10
|
ВыборкаСтрокТовары.Цена / Число(мКолЕдИзмВМесте) в случае, когда Значения.Значение = Неопределено
|
|||
6
Maxus43
18.09.12
✎
12:10
|
(4) нас обманывали на высшей математике?)
|
|||
7
Жан Пердежон
18.09.12
✎
12:10
|
(0) Вы не из раковки?
|
|||
8
Classic
18.09.12
✎
12:11
|
(6)
Да |
|||
9
Ненавижу 1С
гуру
18.09.12
✎
12:14
|
(6) вы делили на ноль? у вас какая то другая была математика ))
|
|||
10
salvator
18.09.12
✎
12:15
|
А Чак Норрис умеет делить на ноль.
|
|||
11
Шапокляк
18.09.12
✎
12:17
|
А Валуев матрешек не по порядку собирать.
Что-то ТС подозрительно притих. |
|||
12
Maxus43
18.09.12
✎
12:17
|
(9) в высшей математике бесконечность - не есть ошибка. деление на ноль даёт бесконечность)
|
|||
13
Ненавижу 1С
гуру
18.09.12
✎
12:18
|
(12) в высшей математике деление на ноль это неопределенность, а не бесконечность
не путайте с пределами |
|||
14
Maxus43
18.09.12
✎
12:20
|
(13) давно учился, слова забыл. суть в том что деление на ноль запрещено только в рамках стандартной арифметики
|
|||
15
Ненавижу 1С
гуру
18.09.12
✎
12:20
|
(14) суть в том, что не надо подменять понятия
|
|||
16
Balabass
18.09.12
✎
12:22
|
(15) Вот ненадо тут вот это, а то сами знаете как у нас было это, когда вот так начинали, как вы!
|
|||
17
Ненавижу 1С
гуру
18.09.12
✎
12:22
|
(16) ща расскажу про Неопределено
|
|||
18
Никола_
Питерский 18.09.12
✎
12:23
|
(17) Давай на БИС !
|
|||
19
Ненавижу 1С
гуру
18.09.12
✎
12:23
|
(18) плати денег
|
|||
20
Balabass
18.09.12
✎
12:23
|
Давай! А то я еще не слышал.
|
|||
21
Maxus43
18.09.12
✎
12:24
|
(20) а ты скажи что Ненавижу 1С ничо не понимает в Неопределено, и воще он не прав, тогда раскажет)
|
|||
22
Ненавижу 1С
гуру
18.09.12
✎
12:25
|
||||
23
Balabass
18.09.12
✎
12:27
|
Создал переменную - это неопределено. ТК она может быть всех мастей.
А вот когда ты её обнулил - тогда это нул. Чё тут годать? |
|||
24
manti
18.09.12
✎
12:30
|
(23) ну я ее и обнуляю мКолЕдИзмВМесте = Число(0);
---- Значения = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи(); Значения.Объект = ВыборкаСтрокТовары.Номенклатура; Значения.Свойство = ПланыВидовХарактеристик.СвойстваОбъектов.КоличествоЕдиницВМесте; Значения.Прочитать(); |
|||
25
Ненавижу 1С
гуру
18.09.12
✎
12:31
|
(24) то есть на первые несколько постов ты отвечать не будешь?
|
|||
26
Balabass
18.09.12
✎
12:31
|
обнулить <> присвоить 0
|
|||
27
ChAlex
18.09.12
✎
12:32
|
(24) крутое обнуление. :) А скажи нафиг функция Число? Или 0 - уже не число?
|
|||
28
Balabass
18.09.12
✎
12:32
|
(25) Хаха. Клёвая футболка в ЛК!. На машине такую надпись нужно сделать.
|
|||
29
Infsams654
18.09.12
✎
12:35
|
(24) а еще есть
Перем мКолЕдИзмВМесте; которая никогда не заполнится, если из ЗначенияСвойствОбъектов ничего не прочитается |
|||
30
manti
18.09.12
✎
12:37
|
(1) ВыборкаСтрокТовары.Количество точно не пустое,
(29) вот при незаполнении ей нужно прислвоить 0. так мКолЕдИзмВМесте = 0; не присваивает( |
|||
31
Ненавижу 1С
гуру
18.09.12
✎
12:40
|
(30) значит это реквизит, причем не числовой
|
|||
32
МишКа
18.09.12
✎
12:44
|
(14) Запрещено в рамках языка 1С. Этого достаточно.
|
|||
33
ZanderZ
18.09.12
✎
12:46
|
(30) замени мКолЕдИзмВМесте на ммммКолЕдИзмВМесте например и проверь
|
|||
34
Noroving
18.09.12
✎
13:07
|
(1) Для этого есть метод Если Значения.Выбран() Тогда ......
|
|||
35
manti
18.09.12
✎
13:11
|
Если ТипЗнч(Значения.Значение) = Тип("Неопределено") тогда
мКолЕдИзмВМесте = 0; вот так получилось. Как итог - требовалось сравнивать типы а не значения, ГОСПОДА |
|||
36
Ненавижу 1С
гуру
18.09.12
✎
13:12
|
(35) феерический бред
Тип Неопределено имеет только одно значение - Неопределено |
|||
37
manti
18.09.12
✎
13:17
|
(36) пусть так по ТВОЕМУ, зато сработало!
|
|||
38
Ненавижу 1С
гуру
18.09.12
✎
13:18
|
(37) по-моему, ты быдлокдер
|
|||
39
МишКа
18.09.12
✎
13:19
|
(36) Феерический бред - сама 1С.
В нормальных языках неопределенность ничему не равна, в том числе самой себе. Т.е. из а=неопределено; б=неопределено; следует а<>б Как это решено в 1С даже разбираться лень. Ясно, что как бог на душу положит. |
|||
40
Mort
18.09.12
✎
13:20
|
(39) В тёплых ламповых языках ?
|
|||
41
ptiz
18.09.12
✎
13:22
|
(39) "Неопределено" в 1С - это конкретное значение.
|
|||
42
Noroving
18.09.12
✎
13:23
|
Значения.Значение - если у тебя никаких значений из регистра не прочиталось, то ты в результате получиш всегда тип "Неопределено" , но значение на которое ты приравнивал сначала у тебя скорее всего будет Null... вот ты и получал неопределено а условие никогда не выполнялось...
Но чтобы не смешить народ я бы написал воттак - мКолЕдИзмВМесте = ?(Значения.Выбран(), Значения.Значение, 0); |
|||
43
Ненавижу 1С
гуру
18.09.12
✎
13:24
|
(39) не путай NULL и Неопределено
только я могу критиковать данную парадигму типов 1С, ибо только я понял ее феерический бред |
|||
44
МишКа
18.09.12
✎
13:25
|
(40) Что такое - теплый ламповый язык?
|
|||
45
МишКа
18.09.12
✎
13:28
|
(43) Согласен. Наличие двух неопределенностей в 1С я даже и не пытаюсь понять. Бесполезно.
|
|||
46
Ненавижу 1С
гуру
18.09.12
✎
13:33
|
||||
47
Mort
18.09.12
✎
13:33
|
(44) Любой язык, который Труъ, в отличие от этого вашего б-гомерзкого 1С
|
|||
48
Infsams654
18.09.12
✎
14:13
|
из (0)
мКолЕдИзмВМесте = Число(0); а так если ? мКолЕдИзмВМесте = Число(Ложь); мКолЕдИзмВМесте = Число("0"); что-то, вроде напоминает мКолЕдИзмВМесте = 0; |
|||
49
manti
18.09.12
✎
15:15
|
(42) хорошее предложение, нужно попробовать на досуге)
|
|||
50
Infsams654
18.09.12
✎
15:19
|
(49) в (34) уже было, а если подумать, то и в (29)
|
|||
51
ssh2006
18.09.12
✎
16:15
|
Процедура Успех()
Перем а, б; Сообщить(а = б); КонецПроцедуры |
|||
52
Mort
18.09.12
✎
16:25
|
(51) Ну по крайней мере в 1С эта функция четко вернет Да. В других языках результат зачастую зависит исключительно от компилятора.
|
|||
53
Ненавижу 1С
гуру
18.09.12
✎
17:04
|
(52) в 1С процедуры не возвращают значения ))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |