Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
1

Печатная форма для обработки с расшифровкой

12.02.2019, 08:12. Просмотров 908. Ответов 20
Метки нет (Все метки)

Есть обработка,в которой выводится отчет с расшифровкой. Надо вывести на печать отчет с расшифровкой.
Я нажимаю на любую строку выбрать заказ и здесь выходит список заказов контрагента. Вот и на печать надо вывести отчет с этим списком заказов. Подскажите пожалуйста..
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
Процедура ДействияФормыСформировать(Кнопка)
    
    ПостроительОтчетаОтчет = Новый ПостроительОтчета; 
    ПостроительОтчетаОтчет.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |   ЗаказПокупателя.Ссылка КАК ЗаказПокупателя,
    |   ЗаказПокупателя.Контрагент КАК Контрагент,
    |   ЗаказПокупателя.ДатаИсполнения КАК ДатаИсполнения,
    |   КОЛИЧЕСТВО(ЗаказПокупателя.Контрагент) КАК Количество
    |{ВЫБРАТЬ
    |   ЗаказПокупателя.*,
    |   Контрагент.*}
    |ИЗ
    |   Документ.ЗаказПокупателя КАК ЗаказПокупателя
    |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыОбеспеченияЗаказов КАК СтатусыОбеспеченияЗаказов
    |       ПО (СтатусыОбеспеченияЗаказов.Заказ = ЗаказПокупателя.Ссылка)
    |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыВыполненияЗаказов КАК СтатусыВыполненияЗаказов
    |       ПО (СтатусыВыполненияЗаказов.Заказ = ЗаказПокупателя.Ссылка)
    |ГДЕ
    |   ЗаказПокупателя.Проведен = ИСТИНА
    |   И ЗаказПокупателя.ДатаИсполнения МЕЖДУ &ДатаИсполнения И &ГоризонтПланирования
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Оформлен""
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Выполнен""
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Не оформлен""
    |   И СтатусыОбеспеченияЗаказов.Статус.Наименование <> ""Не обеспечен""
    |
    |СГРУППИРОВАТЬ ПО
    |   ЗаказПокупателя.Ссылка,
    |   ЗаказПокупателя.Контрагент,
    |   ЗаказПокупателя.ДатаИсполнения
    |
    |УПОРЯДОЧИТЬ ПО
    |   Контрагент
    |ИТОГИ ПО
    |   Контрагент,
    |   ЗаказПокупателя
    |АВТОУПОРЯДОЧИВАНИЕ";
    ПостроительОтчетаОтчет.Параметры.Вставить("ДатаИсполнения",ДатаИсполнения);
    ПостроительОтчетаОтчет.Параметры.Вставить("ГоризонтПланирования",ГоризонтПланирования);
    ПостроительОтчетаОтчет.ЗаполнениеРасшифровки = ВидЗаполненияРасшифровкиПостроителяОтчета.Расшифровка;
    табДок=ЭлементыФормы.ПолеТабличногоДокумента1;
    табДок.Очистить();
    табДок.ТолькоПросмотр=Истина;
    ПостроительОтчетаОтчет.Выполнить();
    МойМакет=ПолучитьМакет("Макет");
    побл=МойМакет.ПолучитьОбласть("Заголовок");
    ПостроительОтчетаОтчет.МакетЗаголовкаОтчета=побл;
    табДок.Вывести(побл);
    ОбластьШапка = МойМакет.ПолучитьОбласть("Шапка|Контрагент"); 
    табДок.Вывести(ОбластьШапка);
    областьЗаказШапка=МойМакет.ПолучитьОбласть("Шапка|ЗаказыПокупателя");
        
    ТекущийПериод  = НачалоДня(ТекущаяДата());
    Горизонт = КонецМесяца(ГоризонтПланирования);
    _Период     = НачалоМесяца(ТекущийПериод);
    _КонПериод  = КонецДня(Горизонт);
    
    Пока _Период <= _КонПериод Цикл
        Если НачалоДня(_Период) < НачалоДня(ТекущийПериод) Тогда       // прошлый день
            областьЗаказШапка.Параметры.СчетчикМесяца = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
            табДок.Присоединить(областьЗаказШапка);
            
        ИначеЕсли НачалоДня(_Период) = НачалоДня(ТекущийПериод) Тогда  // текущий день              
            областьЗаказШапка.Параметры.СчетчикМесяца = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
            табДок.Присоединить(областьЗаказШапка);
        Иначе 
            областьЗаказШапка.Параметры.СчетчикМесяца  = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
            табДок.Присоединить(областьЗаказШапка); 
        КонецЕсли;      
        _Период  = КонецДня(_Период) + 1;
    КонецЦикла;     
    
    облКонтрагент=МойМакет.ПолучитьОбласть("Таблица|Контрагент");
    облЗаказ=МойМакет.ПолучитьОбласть("Таблица|ЗаказыПокупателя");
    табДок.НачатьАвтогруппировкуСтрок();
    пВыб = ПостроительОтчетаОтчет.Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); 
    
    Пока пВыб.Следующий() Цикл 
        
        облКонтрагент.Параметры.Заполнить(пВыб);
        табДок.Вывести(облКонтрагент,пВыб.Уровень()); 
            ТекущийПериод  = НачалоДня(ТекущаяДата());
    Горизонт = КонецМесяца(ГоризонтПланирования);
    _Период     = НачалоМесяца(ТекущийПериод);
    _КонПериод  = КонецДня(Горизонт);
 
    Пока _Период <= _КонПериод Цикл
            
        СтруктураРасшифровки = Новый Структура;
    СтруктураРасшифровки.Вставить("Контрагент", пВыб.Контрагент);
    СтруктураРасшифровки.Вставить("СчетчикМесяца",_Период );
    СтруктураРасшифровки.Вставить("ДатаИсполнения", ДатаИсполнения);
    
    облЗаказ.Параметры.ЗаказРасшифровка= Новый ФиксированнаяСтруктура(СтруктураРасшифровки);
    
        Если НачалоДня(_Период) < НачалоДня(ТекущийПериод) Тогда       // прошлый день
                областьЗаказШапка.Параметры.СчетчикМесяца = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
                табДок.Присоединить(облЗаказ);
            ИначеЕсли НачалоДня(_Период) = НачалоДня(ТекущийПериод) Тогда  // текущий день              
                областьЗаказШапка.Параметры.СчетчикМесяца = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
                табДок.Присоединить(облЗаказ);
            Иначе 
                областьЗаказШапка.Параметры.СчетчикМесяца = Формат(_Период, "ДФ='dd.MM.yyyy (ddd)'");
                табДок.Присоединить(облЗаказ);
            КонецЕсли;      
            _Период  = КонецДня(_Период) + 1;
                
        КонецЦикла; 
        
    КонецЦикла;
    табДок.ЗакончитьАвтогруппировкуСтрок();
    
КонецПроцедуры
 
Процедура ПолеТабличногоДокумента1ОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Экспорт 
    
    Если ТипЗнч(Расшифровка)=Тип("ФиксированнаяСтруктура") Тогда
        СтандартнаяОбработка=Ложь;
        ПараметрыФормыРасшифровки = Новый Структура(Расшифровка);
        ФормаРасшифровки = ПолучитьФорму("РасшифровкаПотребностей");
ФормаРасшифровки.Контрагент = Расшифровка.Контрагент;
ФормаРасшифровки.День=Расшифровка.СчетчикМесяца;
ФормаРасшифровки.ДатаИсполнения= Расшифровка.ДатаИсполнения;
ФормаРасшифровки.Открыть();
            
    КонецЕсли;
КонецПроцедуры
-модуль основной формы

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Процедура ПриОткрытии()Экспорт 
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |   ЗаказПокупателя.Ссылка КАК ЗаказПокупателя,
    |   ЗаказПокупателя.Контрагент КАК Контрагент,
    |   ЗаказПокупателя.ДатаИсполнения КАК ДатаИсполнения,
    |   ЗаказПокупателя.Контрагент КАК Количество,
    |   СУММА(ЗаказПокупателяТЧ.Номенклатура.Вес * ЗаказПокупателяТЧ.Кол * ЗаказПокупателяТЧ.ЕдИзм.Коэффициент) КАК Вес,
    |   СУММА(ЗаказПокупателяТЧ.Номенклатура.Объем * ЗаказПокупателяТЧ.Кол * ЗаказПокупателяТЧ.ЕдИзм.Коэффициент) КАК Объем,
    |   СУММА(ЗаказПокупателяТЧ.Сумма) КАК Сумма
    |{ВЫБРАТЬ
    |   ЗаказПокупателя.*,
    |   Контрагент.*}
    |ИЗ
    |   Документ.ЗаказПокупателя КАК ЗаказПокупателя
    |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыОбеспеченияЗаказов КАК СтатусыОбеспеченияЗаказов
    |       ПО (СтатусыОбеспеченияЗаказов.Заказ = ЗаказПокупателя.Ссылка)
    |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыВыполненияЗаказов КАК СтатусыВыполненияЗаказов
    |       ПО (СтатусыВыполненияЗаказов.Заказ = ЗаказПокупателя.Ссылка)
    |       ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя.ТЧ КАК ЗаказПокупателяТЧ
    |       ПО ЗаказПокупателя.ТЧ.Ссылка = ЗаказПокупателяТЧ.Ссылка
    |ГДЕ
    |   ЗаказПокупателя.Проведен = ИСТИНА
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Оформлен""
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Выполнен""
    |   И СтатусыВыполненияЗаказов.Статус.Наименование <> ""Не оформлен""
    |   И СтатусыОбеспеченияЗаказов.Статус.Наименование <> ""Не обеспечен""
    |   И ЗаказПокупателя.ДатаИсполнения <= &СчетчикМесяца
    |   И ЗаказПокупателя.Контрагент = &Контрагент
    |
    |СГРУППИРОВАТЬ ПО
    |   ЗаказПокупателя.Ссылка,
    |   ЗаказПокупателя.Контрагент,
    |   ЗаказПокупателя.ДатаИсполнения,
    |   ЗаказПокупателя.Контрагент
    |АВТОУПОРЯДОЧИВАНИЕ";
    Запрос.УстановитьПараметр("СчетчикМесяца",День);
    Запрос.УстановитьПараметр("ДатаИсполнения",ДатаИсполнения);
    Запрос.УстановитьПараметр("Контрагент",Контрагент);
    ЭлементыОтбора=Новый Структура;
    _ТаблЗаказы = Запрос.Выполнить().Выгрузить();
    
    Для Каждого СтрокаТаблЗаказы Из _ТаблЗаказы Цикл
        СтрокаТЧ = ТЧ.Добавить();
        СтрокаТЧ.Документ  = СтрокаТаблЗаказы.ЗаказПокупателя;
        СтрокаТЧ.Вес=СтрокаТаблЗаказы.Вес;  
        СтрокаТЧ.Объем=СтрокаТаблЗаказы.Объем;
        СтрокаТЧ.Сумма=СтрокаТаблЗаказы.Сумма;
    КонецЦикла; 
    
КонецПроцедуры
-модуль формы расшифровки
0
Миниатюры
Печатная форма для обработки с расшифровкой   Печатная форма для обработки с расшифровкой   Печатная форма для обработки с расшифровкой  

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2019, 08:12
Ответы с готовыми решениями:

Не пашет печатная форма для Бух 2.0 (приложен файл обработки)
Не пашет внешняя печатная форма для документа &quot;Реализация товаров и услуг&quot;. 8.2, бух 2.0.14. Ошибка...

Печатная форма обработки собственной конфигурации
Здравствуйте. В собственной конфигурации есть обработка с реквизитами: Началопериода,КонецПериода,...

Внешняя печатная форма для реестра
Здравствуйте, такой вопрос, как думаете, если сделать внешнюю печатную форму для формирования...

Печатная форма для регистра сведений
Здравствуйте. Есть необходимость печатать из отдельно взятых записей в регистре сведений. Т.е. как...

8.2, Внешняя печатная форма для Комплексной автоматизации 1.1
Доброго времени суток. Прошу помощи по 1с. Версия платформы: 8.2. Конфигурация: комплексная...

20
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
12.02.2019, 08:17 2
ctrl+p?
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
12.02.2019, 08:20  [ТС] 3
_ЕГОР_, там же просто выводится макет на печать,а мне надо и список заказов из расшифровки
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
12.02.2019, 08:29 4
Тогда я не совсем понимаю
0
12.02.2019, 08:29
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
12.02.2019, 10:48  [ТС] 5
_ЕГОР_, ?

Добавлено через 2 часа 17 минут
неужели нельзя сделать такую функцию,которая получает значения тч расшифровки для печати?
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 08:15  [ТС] 6
_ЕГОР_, У меня есть расписание отгрузок по каждому контрагенту. Когда я нажимаю на строку Выбрать заказ,то у меня открывается форма расшифровки с заказами покупателя,которые должны отгрузиться в этот день.вот а в печатной форме,надо получить день,контрагента,список заказов,вес,объем и сумму.
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 08:21 7
ну так нужно нарисовать печатную форму и выводить туда это все.
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 08:33  [ТС] 8
_ЕГОР_, я нарисовала,но не знаю,как правильно получить данные из расшифровки
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 08:39 9
расшифровка это у вас на втором скриншоте таблица?
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 08:40  [ТС] 10
_ЕГОР_, да
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 08:43 11
Ну так обращайтесь к этой таблицы, к нужной строке там все данные есть.
Типа
1C
1
Областьмакета.параметры.Контрагент = МояТаблица[0].Документ.Контрагент.наименование
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 08:54  [ТС] 12
_ЕГОР_,На основной форме есть кнопка печать,по нажатию открываю форму Печать,в ней получаю макет и заполняю макет данными из расшифровки?
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 09:07 13
Лютик23, ну типа того
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 09:09  [ТС] 14
_ЕГОР_, Не получается так как вы написали
0
Миниатюры
Печатная форма для обработки с расшифровкой  
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 09:11 15
Я не так писал
1C
1
ТЗ[0].Документ
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 09:13  [ТС] 16
_ЕГОР_, а как правильно то? Он не может по индексу найти
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 09:25 17
ой блин это же табличное поле... а так:
1C
1
ТЗ.Значение[0].Документ
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 09:29  [ТС] 18
_ЕГОР_, Индекс находится за границами массива Таблица.Параметры.Заказ=ТЗ.Значение[0].Документ;
1C
1
Таблица.Параметры.Заказ=ТЗ.Значение[0].Документ;
0
_ЕГОР_
Тест
Эксперт 1С
373 / 158 / 52
Регистрация: 26.02.2010
Сообщений: 1,160
13.02.2019, 09:35 19
Ну значит пусто у вас там
0
Лютик23
1 / 1 / 0
Регистрация: 10.10.2018
Сообщений: 145
13.02.2019, 09:36  [ТС] 20
_ЕГОР_, понятно,что пусто,у меня же расшифровка формируется при открытии формы Расшифровка
0
13.02.2019, 09:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2019, 09:36

Внешняя Печатная Форма Для Зупа
Делал внешнюю печатная форма к ЗУП к документу &quot;Зарплата к выплате&quot;. Там впринципе всё просто....

печатная форма для универсальной формы подбора объектов
Здравствуйте,хотелось бы узнать в 1С бухгалтерии 7.7 в сервисе-дополнительных возможностях есть...

Печатная Форма 1с 8.2
Здравствуйте,помогите новичку Вот печатная форма


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru