|
v7: Печатная форма | ☑ | ||
---|---|---|---|---|
0
NemeL
09.11.11
✎
19:45
|
Помогите разобраться в чем ошибка?
Процедура Печать1() Таб = СоздатьОбъект("Таблица"); СортироватьСтроки("+Наименование"); Таб.ИсходнаяТаблица("Печать"); Таб.ВывестиСекцию("Шапка"); Если КоличествоСтрок() > 0 Тогда ПолучитьСтрокуПоНомеру(1); Предыдущий=Наименование; Иначе Сообщить("Документ не заполнен"); Возврат; КонецЕсли; ИтогоКоличество = 0; ИтогоСуммаОбщая = 0; ВыбратьСтроки(); Пока ПолучитьСтроку()=1 Цикл Если Наименование <> Предыдущий Тогда //сменился товар Таб.ВывестиСекцию("Итого"); Предыдущий = Наименование; ИтогоКоличество = 0; ИтогоСуммаОбщая = 0; КонецЕсли; Таб.ВывестиСекцию("Строка"); ИтогоКоличество = ИтогоКоличество + Количество; ИтогоСуммаОбщая = ИтогоСуммаОбщая + СуммаОбщая; КонецЦикла; Таб.ВывестиСекцию("Итого"); Таб.Опции(0,0,0,0); Таб.ВывестиСекцию("Подвал"); Таб.ТолькоПросмотр(1); Таб.Показать("Печать Заказ",""); КонецПроцедуры По идеи при смене товара должна выводитьсять Секция Итого,а она выводиться после каждого наименования |
|||
1
Vladimirr
09.11.11
✎
19:49
|
Наименование замени на таб.Наименование
|
|||
2
Vladimirr
09.11.11
✎
19:51
|
(0) в (1) не правильно. посмотри отладчиком
|
|||
3
ЧеловекДуши
09.11.11
✎
19:57
|
Вообще то все правильно выводится.
Ты хоть посмотрел, в каком у тебя порядке идут строчки в документе? |
|||
4
NemeL
09.11.11
✎
20:01
|
всмысле к каком? они у меня сначало просто в произвольном, а потом я их сортирую, или ты имеешь ввиду номерацию?
|
|||
5
ЧеловекДуши
09.11.11
✎
20:02
|
(4)Где ты отсортировал?
Сам же пишешь, что итог после каждой ... А каждая и есть разная :) |
|||
6
ЧеловекДуши
09.11.11
✎
20:03
|
+(4)Отладчик запусти... и посмотри... все просто...
|
|||
7
NemeL
09.11.11
✎
20:04
|
как это где?? а это что
СортироватьСтроки("+Наименование"); |
|||
8
NemeL
09.11.11
✎
20:05
|
(7)+ отладчик не выдает никакой ошибки
|
|||
9
NemeL
09.11.11
✎
20:05
|
+ (7) отладчик не выдает никакой ошибки
|
|||
10
Mikeware
09.11.11
✎
20:07
|
(9) Отладчик не может увидеть ошибку в ДНК...
|
|||
11
NemeL
09.11.11
✎
20:57
|
(6) Запустил отладчик, смотрю по шаговое выполнение, выводить все как написанов коде, тоесть строку и итог сразу же, но в чем проблема понять не могу
|
|||
12
Ёпрст
09.11.11
✎
21:00
|
(11) наименования поди ВСЕ разные ??
|
|||
13
NemeL
09.11.11
✎
21:02
|
(11) нет есть и одинаковые
|
|||
14
Ёпрст
09.11.11
✎
21:08
|
(13) И ?
выводит итог когда ? Праильно, когда наименование сменилось, а у тебя как ?? |
|||
15
BlackSeaCat
09.11.11
✎
21:10
|
(11) А проблема в том, что не стОит безоглядно полагаться на результат сравнения агрегатных объектов, надежнее сравнивать простые типы: числа, даты или строки. Например:
СокрЛП(Наименование)<>СокрЛП(Предыдущий) |
|||
16
NemeL
09.11.11
✎
21:10
|
а у меня всегда выводит, сменилось или нет наименование без разницы выводит один хрен
|
|||
17
NemeL
09.11.11
✎
21:14
|
(15) Блин спасибо за подсказку, я кстати думал об этом... но не знал что это так важно. Тема закрыта.
|
|||
18
Cthulhu
09.11.11
✎
21:14
|
(16): Ох, ну ё-ж-маё.
Реквизит таб.части "Наименование" - какого типа? |
|||
19
NemeL
09.11.11
✎
21:16
|
(18) Все решилась проблема, но мне интересно при чем тут тип? Тип Справичник.Каталог.
|
|||
20
BlackSeaCat
09.11.11
✎
21:16
|
(18) А что чаще всего бывает в документах? Спрввочники, ясен пень.
|
|||
21
Ёпрст
09.11.11
✎
21:18
|
(19)Если у тебя Наименование имеет тип Справочник.Каталог, то бред с СокрЛП() не нужен, если что.
Мот всё же Наименование, это строка ?! |
|||
22
NemeL
09.11.11
✎
21:22
|
(21) Вот смотри
http://radikal.ua/data/upload/49112/05615/aeaa165e39.jpg |
|||
23
Cthulhu
09.11.11
✎
21:22
|
(19): при том, что разные элементы справочника с одинаковым текстовым представлением (наименованием) - это РАЗНЫЕ значения!
(20): нет, не ясен, дятлушко. ещё числа, строки, даты, перечисления... ("ясен пень" ему, а-хри-неть!))) |
|||
24
BlackSeaCat
09.11.11
✎
21:23
|
(19) При чем тип, гришь? А скажи, что даст вот такое условие:
Если Наименование > Предыдущий Тогда //сменился товар Сработает или нет? "Больше" один элемент справочника, чем другой или как? На проверку РАВЕНСТВА я бы еще рассчитывал. Эксперимента ради, проверь вот такой код, без "бреда с СокрЛП()": Если Наименование = Предыдущий Тогда Иначе //сменился товар Таб.ВывестиСекцию("Итого"); . . . (23) Хриней, разрешаю. |
|||
25
Cthulhu
09.11.11
✎
21:24
|
(22): с такой темой... у тебя в диалогах (формах) первизиты, наверное, "уезжают" вверх (при каждом сохранении по чуть-чуть)?.. гггг.
|
|||
26
Ёпрст
09.11.11
✎
21:31
|
(22) И ???
Ответ в (23) п.1 |
|||
27
NemeL
09.11.11
✎
21:48
|
(26) И??? Если человек не верит словам, я ему наглядно показал какой тип стоит, а ответ в (15)!!!
|
|||
28
Ёпрст
09.11.11
✎
22:07
|
(27) дурила ты.
У тебя в табличной части РАЗНЫЕ элементы справочника с ОДИНАКОВЫМ наименованием. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |