Имя: Пароль:
1C
1C 7.7
v7: Не срабатывает группировка
0 Quadrill
 
30.08.11
10:40
Доброго дня! Подскажите, пожалуйста, в чем моя ошибка? вот в этом коде ( http://pastebin.com/JJSuBevy ) не срабатывает строка Если Запрос.Название.ЭтоГруппа() = 1. то есть она всегда равна нулю, хотя в регистре есть несколько товаров с одинаковым названием и их вроде надо бы сгруппировать. Галка в документа Автоматическое удаление движений стоит. Я новенький человек в 1С, поэтому, если спросил что то простое, прошу на меня не серчать. Заранее спасибо.
P.S. Может быть, на ваш взгляд, код кривоват и чреват ошибками? С благоговейным трепетом буду внимать вашим советам.
1 nicxxx
 
30.08.11
10:42
херня какая-то. "Название" - это реально измерение регистра? или ты ошибся, и надо писать Регистр.ОстаткиТоваров.Товар.Название?
2 nicxxx
 
30.08.11
10:43
если все же это измерение с типом "строка", то это реальный глюк, за такое руки отрубать надо. и еще. строка никогда не может быть группой справочника, это ясно?
3 __Se24
 
30.08.11
10:43
есть вероятность , что в регистре все-таки элемент справочника и не наименование ....
группировка запроса и ЭтоГруппа() это очень разные вещи ...
4 nicxxx
 
30.08.11
10:45
еще в регистр обычно не пишут группу, поэтому у тебя всегда 0 в результате. ну сам подумай, зачем тебе данные о количестве группы номенклатуры на остатках, какой учетный смысл они несут?
5 Sj
 
30.08.11
10:45
Название = Регистр.ОстаткиТоваров.Название;
6 Sj
 
30.08.11
10:46
Название = Регистр.ОстаткиТоваров.Название;
заменить на
Номенклатура = Регистр.ОстаткиТоваров.Номенклатура;
7 __Se24
 
30.08.11
10:47
То что в регистр группы не пишутся , это понятно ...
поидее , запрос накапливает итоги по группам (по крайней мере , если не отключено )
8 nicxxx
 
30.08.11
10:47
(6) судя по этому:
Процедура ОбработкаПроведения()

   ВыбратьСтроки();
     
       Пока ПолучитьСтроку() = 1 Цикл  
       
               Регистр.ОстаткиТоваров.Артикул = Артикул;
               Регистр.ОстаткиТоваров.Название = Товар;  
               Регистр.ОстаткиТоваров.Количество = Количество;
               Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();
             
       КонецЦикла;  
КонецПроцедуры
           
заменять ничего не надо, в Название пишется ссылка на справочник.

(0)если надо группировать по названию, то пиши в запросе
Название = Регистр.ОстаткиТоваров.Название.Наименование;
9 Sj
 
30.08.11
10:47
Блин, хотя глядя на текст обработки проведения, можно утверждать, что в названии номенклатура.
10 __Se24
 
30.08.11
10:48
(9) тут как повезет )
(0) Автор , а у тебя номенклатура по группам то разложена ? или прсото списком лежит ?
11 nicxxx
 
30.08.11
10:49
(10) походу нет у него групп
12 FN
 
30.08.11
10:50
К слову... у запроса есть свой метод ЭтоГруппа(), использование которого в значительной мере ускоряет обработку
13 Quadrill
 
30.08.11
10:52
Прошу меня извинить за задержку ответов, просто я в этих терминах 1С пока что с трудом разбираюсь...вот скриншот настроек регистра http://ompldr.org/vYTQ4cQ
14 __Se24
 
30.08.11
10:53
(12) Прикольно )) Название справочника "название"
15 __Se24
 
30.08.11
10:55
(13) Автор , приложи тогда скрин того , тчополучается в результате выполнения отчета
16 nicxxx
 
30.08.11
10:55
а еще скрин списка справочника
17 __Se24
 
30.08.11
10:55
ну можно еще скрин кредитной карточки ))) чтобы уж совсем интересно было ))
18 nicxxx
 
30.08.11
10:56
(17) и обратную сторону тоже, где cvv2 :)
19 Quadrill
 
30.08.11
11:09
Скрин справочников - http://ompldr.org/vYTQ4dQ
Скрин результата выполнения отчета - http://ompldr.org/vYTQ4cw
Скрин формы таблицы - http://ompldr.org/vYTQ4dA

То есть нет пробелов в сетке за счет того, что не выводится секция Группа и поэтому отчет плохо читаем.
20 Quadrill
 
30.08.11
11:09
Прошу не смеяться - ибо не программист я, а сделать нужно.
21 Ёпрст
 
гуру
30.08.11
11:10
(19) Дурилко, количество уровней ОДИН.. и какие на.. группы ты там хочешь иметь ?
22 Quadrill
 
30.08.11
11:17
то бишь для появления групп, надо просто 1 сменить на 2 в соответствующем поле?
23 __Se24
 
30.08.11
11:22
мда .....
Автор , срочно открывай учебники на мисте , и читай , как устроен справочник и для чего он нужен ... ибо дальше ниче не получится
24 Ёпрст
 
гуру
30.08.11
11:23
(22) это как минимум, потом в самом справочнике создать группы и переместить туда элементы.
25 __Se24
 
30.08.11
11:27
А какой велкий смысл иметь 2 справочника "название" и "Артикул" если по логике , это должны быть реквизиты одно спраочника "номенклатура "
26 Quadrill
 
30.08.11
11:28
Джентльмены! От души вас благодарю! Вы наставили меня на верный путь!
27 Quadrill
 
30.08.11
13:48
__Se24: Я сделал, как вы и посоветовали: завел 1 справочник, где указал Артикул и Название в качестве реквизитов. А как сделать, что бы , допустим, в документе прихода я мог бы из этого справочника выдрать артикул, а  в графу название - опять же название из этого справочника?
28 __Se24
 
30.08.11
14:29
в документе ....
ну незнаю . например делаешь реквизит "товар" с типом Номенклатура.
если говорить о табличной части , то добавляешь две тектовые колонки и в формулу вбиваешь Товар.Наименование и Товар.Артикул соответственно ....
ну как-то так ....
29 __Se24
 
30.08.11
14:30
открой ТиС стандартный , да погляди как там это сделано ...