Имя: Пароль:
1C
1С v8
Редактирование прайс-листа в УТ 10.3
0 drunken_ikarus
 
18.05.18
07:58
Понимаю что подобные вопросы для знатоков как зубная боль, но честно пытался найти ответ и справиться самостоятельно.
В общем тривиальная задача, в макет прайс-листа вывести полное наименование вместо краткого, думал банально найти в коде Наименование и заменить на НаименованиеПолное, но фига с два я его там нашел, выручайте, знатоки!!!
1 Metman
 
18.05.18
08:13
Либо правь в запросе, либо в настройках добавь поле с полным наименованием.
2 shuhard
 
18.05.18
08:13
(0) попробуй вместо эмоций описать проблему
3 drunken_ikarus
 
18.05.18
08:38
(2) проблема в том что я чайник в 1с, и прошу готового кода и места куда воткнуть
4 mehfk
 
18.05.18
08:49
(3) Воткни в 42 строку.
5 Михаил Козлов
 
18.05.18
09:28
Попробуйте найти в модуле обработки ПечатьПрайсЛиста процедуру
ЗаполнитьПостроительОтчетаПоЦенамНоменклатуры.
И  в тексте запроса вместо
|    ЗапросПрайс.Номенклатура.Представление КАК НоменклатураПредставление,
написать
|    ВЫРАЗИТЬ(ЗапросПрайс.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК НоменклатураПредставление,
это строка № 250 в моей УТ.
6 drunken_ikarus
 
18.05.18
10:59
(5) Михаил, благодарю привелико, все получилось
7 drunken_ikarus
 
18.05.18
11:05
(5) Стоп, вру! поторопился, не получилось, то же краткое наименование
8 Михаил Козлов
 
18.05.18
11:33
(7) Да, группировки НоменклатураПредставление не используется.
Если будет время, попробую разобраться и напишу.
9 Доминошник
 
18.05.18
12:45
(8) Да всё сделано, осталось только в настройках в сортировке указать не номенклатуру, а НоменклатураПредставление
10 drunken_ikarus
 
18.05.18
13:04
(9) Действительно, теперь выводит полное наименование, только при этом в иерархии у групп нет наименования
11 Михаил Козлов
 
18.05.18
13:09
(10) Попробуйте в запросе для групп в качестве представления указать Наименование:
ВЫБОР КОГДА ЗапросПрайса.Номенклатура.ЭтоГруппа ТОГДА      ЗапросПрайс.Номенклатура.Представление ИНАЧЕ <текст с полным наименованием> КОНЕЦ КАК НоменклатураПредставление,
12 drunken_ikarus
 
18.05.18
14:23
если вот так:
<code>
|    ВЫБОР КОГДА ЗапросПрайс.Номенклатура.ЭтоГруппа ТОГДА
|        ЗапросПрайс.Номенклатура.Представление
|    ИНАЧЕ
|    ВЫРАЗИТЬ(ЗапросПрайс.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))
|    КОНЕЦ КАК НоменклатураПредставление,
</code>
то не работает
13 Михаил Козлов
 
18.05.18
14:50
(12) Не работает в смысле при выводе в иерархии у папок нет наименования? Или не выводит полное наименование у элементов?
14 Доминошник
 
18.05.18
15:38
(11) (12) (13) Выбор Когда в запросе - лишнее.
В запросе идёт работа по детальным записям.

Соответственно, что бы выводило всё правильно, надо в процедуре ВывестиСтрокуПрайса поменять условие

            Если КолонкиРезультата.Найти(НазваниеГруппировки + "Представление") = Неопределено Тогда
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
            Иначе
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки + "Представление"];
            КонецЕсли;

на

            Если КолонкиРезультата.Найти(НазваниеГруппировки + "Представление") = Неопределено Тогда
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
            Иначе
                Если Выборка[НазваниеГруппировки + "Представление"] = NULL Тогда
                    ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
                Иначе
                    ПредставлениеГруппировки = Выборка[НазваниеГруппировки + "Представление"];
                КонецЕсли;
            КонецЕсли;
15 drunken_ikarus
 
21.05.18
07:57
(5) (9) (14) Отлично! Все работает! В итоге:
1.
ЗаполнитьПостроительОтчетаПоЦенамНоменклатуры.
И  в тексте запроса вместо
|    ЗапросПрайс.Номенклатура.Представление КАК НоменклатураПредставление,
написать
|    ВЫРАЗИТЬ(ЗапросПрайс.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК НоменклатураПредставление,

2.
В процедуре ВывестиСтрокуПрайса поменять условие
            Если КолонкиРезультата.Найти(НазваниеГруппировки + "Представление") = Неопределено Тогда
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
            Иначе
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки + "Представление"];
            КонецЕсли;

на

            Если КолонкиРезультата.Найти(НазваниеГруппировки + "Представление") = Неопределено Тогда
                ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
            Иначе
                Если Выборка[НазваниеГруппировки + "Представление"] = NULL Тогда
                    ПредставлениеГруппировки = Выборка[НазваниеГруппировки];
                Иначе
                    ПредставлениеГруппировки = Выборка[НазваниеГруппировки + "Представление"];
                КонецЕсли;
            КонецЕсли;

3. В настройках в сортировке указать не номенклатуру, а НоменклатураПредставление

Всем приогромнейшее спасибо!!!
2 + 2 = 3.9999999999999999999999999999999...