Имя: Пароль:
1C
1C 7.7
v7: Тис ЦенаРеал = Док.Цена*Коэф/Док.Коэффициент; Деление на 0
,
0 live in sky dreams
 
11.01.16
13:33
Приветствую, дрУги!

Конфа ТиС 9,2

Помогите разобраться с сабжем.
Ругается при обработке определенной накладной.
Я в ТЧ накладной проверил всю номенклатуру - везде стоят единицы измерения, везде стоят галочки "использовать только основную", в самой ТЧ документа везде коэффициент стоит "1"(число)

Что не так?
1 live in sky dreams
 
11.01.16
13:33
Ругается из отчета "Ведомость по продажам ТМЦ"
2 Kupogun
 
11.01.16
13:34
отладчик что говорит?
3 Mikeware
 
11.01.16
13:35
Значит, перед тй строкой, на которой ругается, поставь
Сообщить(""+Док+" "+Док.Номенклатура)
4 live in sky dreams
 
11.01.16
13:38
Пусто
5 live in sky dreams
 
11.01.16
13:38
Именно Док.Номенклатура
6 Drac0
 
11.01.16
13:38
(0) Поставь точку останова с условием "Док.Коэффициент = 0".
7 Drac0
 
11.01.16
13:39
(4) Пустая ссылка?
8 Mikeware
 
11.01.16
13:39
(5) значит, пустая строка. осталось понять, как она туда попала
9 Tatitutu
 
11.01.16
13:40
(0) давай весь кусок кода
10 live in sky dreams
 
11.01.16
13:41
Весь модуль отчета? :)
11 live in sky dreams
 
11.01.16
13:42
Пока Запрос.Группировка("НомерСтроки") = 1 цикл  
            Док = Запрос.ПолучитьАтрибут("Док");
            Док.ПолучитьСтрокуПоНомеру(Запрос.НомерСтроки);

Вот тут в Запрос.НомерСтроки = 0
Эьто нормально вообще?
12 live in sky dreams
 
11.01.16
13:44
Вот тут сама ошибка возникает


Если глЕстьРеквизитШапки("Валюта", Док.Вид()) = 1 Тогда
                            Если Док.Валюта <> глРубли Тогда
                                Курс      = 0;
                                Кратность = 1;
                                Если глЕстьРеквизитШапки("Курс", Док.Вид()) = 1 Тогда
                                    Курс      = Док.Курс;
                                    Кратность = Док.Кратность;
                                КонецЕсли;          
                                Если Курс = 0 Тогда
                                    Курс = Док.ДатаДок;
                                КонецЕсли;
                                  ЦенаРеал = глПересчет(Док.Цена*Коэф/Док.Коэффициент, Док.Валюта, Курс, глРубли, 1, Кратность);
                              Иначе                    
                                  ЦенаРеал = Док.Цена*Коэф/Док.Коэффициент;
                            КонецЕсли;                                                  
                        Иначе
                            ЦенаРеал = Док.Цена*Коэф/Док.Коэффициент;
                        КонецЕсли;
13 live in sky dreams
 
11.01.16
13:44
именно на моменте

Иначе                    
                                  ЦенаРеал = Док.Цена*Коэф/Док.Коэффициент;
14 live in sky dreams
 
11.01.16
13:44
Док.Коэфициент = 0

Док.(всечтосвязаносТЧдокумента) = Пусто
15 AllJoke
 
11.01.16
13:46
Иначе                    
                                  ЦенаРеал = Док.Цена*Коэф/Док.Коэффициент;

Док.Коэфициент = 0

ни о чем не говорит? Значит смотреть почему такой коэфф.
16 live in sky dreams
 
11.01.16
13:47
Дошел до запроса..
В отладчике не могу посмотреть весь текст запроса, режет по длине строки
17 live in sky dreams
 
11.01.16
13:51
Нашел.

Если у меня в коэф пусто, значит не происходит группировки запроса по "НомерСтроки"

Эти данные мы берем из
    |НомерСтроки    = Регистр.ПартииНаличие.НомерСтроки,
    |                  Регистр.ПартииОтданные.НомерСтроки;
18 live in sky dreams
 
11.01.16
13:53
Получается строка не привязывается
19 Масянька
 
11.01.16
13:56
(18) Партии нормально списались в документе?
21 Mikeware
 
11.01.16
13:58
"Миста - лучший отладчик"©
22 aka AMIGO
 
11.01.16
14:01
Блинчик.. .. "ПривязыватьСтроку()"
Извините-с :)

(21) Воистину так.. Аминь :)
23 aka AMIGO
 
11.01.16
14:02
+22 это в модуле документа, конечно..
24 Злопчинский
 
11.01.16
15:09
а нафига вам номер строки привязывать?
достаточно группировку по документу сделать и посчитать ценуреализации СРЕДНЮЮ по документу ПО НОМЕНКЛАТУРЕ.
не, конечно если у ва с в однйо строке цена 120, а во второй 780 - то средняя видимо не устроит...
25 live in sky dreams
 
11.01.16
17:06
(20) забыл отписаться, да, во истину так.
Номер строки был 0, путаница с именованием колонки в таблице проведения. Проведение переписано
26 live in sky dreams
 
11.01.16
17:06
(21) :))))))
Отладчиком пользоваться умею, просто иногда нужно с кем то поговорить)))
27 live in sky dreams
 
11.01.16
17:17
(24)Да, там и партии разные бывают, посему не устроит
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс