При формировании печатной формы возникла ошибка обратитесь к администратору

Ошибка при формировании печатной формы.

Ошибка при формировании печатной формы.

Я
   ibros

06.04.17 — 17:26

Доброго дня.

1С:Предприятие 8.3 (8.3.9.1818), Бухгалтерия предприятия, редакция 3.0 (3.0.49.18), конфигурация не типовая, дописан (не мной) документ, позволяющий аккумулировать в одной строке ссылки на счет, акты, и счет-фактуру по заказу и пакетно все эти документы отправлять сразу на принтер.

происходит это вот так:

            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетНаОплатуПокупателю», «СчетЗаказ», МассивСчет, Неопределено);

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетФактураВыданный», «СчетФактура1137», МассивСчетФактура, Неопределено);

После обновления конфигурации при попытке отправить пакет на печать возвращается ошибка:

{ОбщийМодуль.УправлениеПечатью.Модуль(1562)}: При формировании печатной формы «СчетЗаказ» возникла ошибка. Обратитесь к администратору. ВызватьИсключение ТекстСообщенияОбОшибке;

Если строку

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетНаОплатуПокупателю», «СчетЗаказ», МассивСчет, Неопределено);

закомментить — остальные документы в пакете печатаются корректно.

Если печатать просто счет отдельно (не из самописного документа, а выбрав из «Счет на оплату покупателю» — печатная форма формируется и уходит на печать корректно.

Подскажите, пожалуйста.. с чего начать тестирование? Я не понимаю даже, как ошибку отследить.

   Михаил Козлов

1 — 06.04.17 — 17:38

Не пробовали для отладки взвести флаг «Оставливаться по ошибке»?

   ibros

2 — 06.04.17 — 17:48

пробовал, нет остановки

   lubitelxml

3 — 06.04.17 — 17:51

(2) не может такого быть, галочку установил, отладку (предприятие) из конфигуратора запустил?

   Михаил Козлов

4 — 06.04.17 — 17:56

(2) Проверьте еще Отладка — Подключение и флаги Автоматического подключения.

   ibros

5 — 06.04.17 — 18:04

при любой конфигурации отладчика — кроме ошибки «При формировании печатной формы «СчетЗаказ» возникла ошибка» другой информации нет

   lubitelxml

6 — 06.04.17 — 18:09

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетНаОплатуПокупателю», «СчетЗаказ», МассивСчет, Неопределено); — поставь здесь точку остановки и пройди отладччиком

   ibros

7 — 06.04.17 — 18:16

да пробовал.

отсылает туда же, в общий модуль управления печатью

   lubitelxml

8 — 06.04.17 — 18:19

(7) ну а дальше? где исключение вызывается?

   ibros

9 — 06.04.17 — 18:20

вся процедура вот так выглядит:

Процедура ПечатьДокументов(Команда)

    
    Для Каждого ТекСтрока Из Объект.Документы Цикл

        Если ТекСтрока.Пометка Тогда

            МассивСчет = Новый Массив;

            МассивСчет.Добавить(ТекСтрока.СчетНаОплату);

            
            МассивРеализация = Новый Массив;

            МассивРеализация.Добавить(ТекСтрока.РеализацияТоваровУслуг);

            
            МассивСчетФактура = Новый Массив;

            МассивСчетФактура.Добавить(ТекСтрока.СчетФактураВыданный);

            
            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетНаОплатуПокупателю», «СчетЗаказ», МассивСчет, Неопределено);

            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.РеализацияТоваровУслуг», «Акт», МассивРеализация, Неопределено);

            УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетФактураВыданный», «СчетФактура1137», МассивСчетФактура, Неопределено);

        КонецЕсли;

    КонецЦикла;

    
КонецПроцедуры

   Михаил Козлов

10 — 06.04.17 — 18:21

В модуле менеджера счета на оплату поищите формирование табличного документа (слова «макет», «область», «вывести», «присоединить»).

   ibros

11 — 06.04.17 — 18:24

(8) исключение вызывается в формировании печатной формы

        // Вызов исключения при возникновении ошибки.

        Если Отказ Тогда

            ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(

                «ru = ‘При формировании печатной формы «»%1″» возникла ошибка. Обратитесь к администратору.'»), ИмяМакета);

            ВызватьИсключение ТекстСообщенияОбОшибке;

        КонецЕсли;

(10) ага.. сейчас поищу, спасибо

   lubitelxml

12 — 06.04.17 — 18:26

(11)

        Отказ = ВременнаяКоллекцияДляОднойПечатнойФормы.Количество() = 0;

        // Предполагается одна печатная форма, но для обратной совместимости принимается вся коллекция.

        Для Каждого ВременнаяПечатнаяФорма Из ВременнаяКоллекцияДляОднойПечатнойФормы Цикл

            Если ВременнаяПечатнаяФорма.ТабличныйДокумент <> Неопределено Тогда

                ПечатнаяФорма = КоллекцияПечатныхФорм.Добавить();

                ЗаполнитьЗначенияСвойств(ПечатнаяФорма, ВременнаяПечатнаяФорма);

                Если ВременнаяКоллекцияДляОднойПечатнойФормы.Количество() = 1 Тогда

                    ПечатнаяФорма.ИмяМакета = ИмяМакета;

                    ПечатнаяФорма.ИмяВРЕГ = ВРег(ИмяМакета);

                КонецЕсли;

            Иначе

                // Возникла ошибка при формировании печатной формы.

                Отказ = Истина;

            КонецЕсли;

        КонецЦикла;

Вот здесь в первой строчке поставь точку остановки и посмотри где Отказ = истина

   ibros

13 — 06.04.17 — 18:54

lubitelxml, нигде. не срабатывает остановка

   МимохожийОднако

14 — 06.04.17 — 18:58

Включи режим отладки для сервера

   ibros

15 — 06.04.17 — 18:58

Михаил Козлов,

Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    
    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, «ПредварительныйПросмотрПечатнойФормыСчетНаОплату») Тогда

        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, «ПредварительныйПросмотрПечатнойФормыСчетНаОплату», «Счет на оплату»,

            ПечатьТорговыхДокументов.ПечатьПредварительныйПросмотрСчетаНаОплату(ПараметрыПечати.Организация, ОбъектыПечати, «СчетЗаказ»));

        ЗаполнитьПараметрыЭлектроннойПочты = Ложь;

    КонецЕсли;

   lubitelxml

16 — 06.04.17 — 18:58

(13) у тебя отладка выключена походку

   ibros

17 — 06.04.17 — 19:00

не, ну все может быть, конечно.

но другие точки отрабатывает же корректно

   ibros

18 — 06.04.17 — 19:01

сравню-ко я процедуру печати с предыдущей конфигурацией..

   ibros

19 — 06.04.17 — 19:07

кхм. и правда не включена

   ibros

20 — 06.04.17 — 19:10

спасибо всем большое за помощь.

остановить сервер я смогу только в выходные..

включу отладку и буду дальше проверять

  

МимохожийОднако

21 — 06.04.17 — 19:12

(20) Возьми пустую конфигурацию и в файловом режиме проверь

Показывать по
10
20
40
сообщений

Новая тема

Ответить

ibros

Дата регистрации: 13.10.2016
Сообщений: 4

Доброго дня.

1С:Предприятие 8.3.9.1818, Бухгалтерия предприятия, редакция 3.0.49.18, конфигурация не типовая, дописан (не мной) документ, позволяющий аккумулировать в одной строке ссылки на счет, акты, и счет-фактуру по заказу и пакетно все эти документы отправлять сразу на принтер.
происходит это вот так:

Код
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.СчетНаОплатуПокупателю", "СчетЗаказ", МассивСчет, Неопределено);
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.РеализацияТоваровУслуг", "Акт", МассивРеализация, Неопределено);
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.РеализацияТоваровУслуг", "Акт", МассивРеализация, Неопределено);
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.РеализацияТоваровУслуг", "Акт", МассивРеализация, Неопределено);
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.СчетФактураВыданный", "СчетФактура1137", МассивСчетФактура, Неопределено);

После обновления конфигурации при попытке отправить пакет на печать возвращается ошибка:

Код
{ОбщийМодуль.УправлениеПечатью.Модуль(1562)}: При формировании печатной формы "СчетЗаказ" возникла ошибка. Обратитесь к администратору.  
ВызватьИсключение ТекстСообщенияОбОшибке;

Если строку

Код
УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер("Документ.СчетНаОплатуПокупателю", "СчетЗаказ", МассивСчет, Неопределено);

закомментить — остальные документы в пакете печатаются корректно.

Если печатать просто счет отдельно (не из самописного документа, а выбрав из «Счет на оплату покупателю» — печатная форма формируется и уходит на печать корректно.

Подскажите, пожалуйста.. с чего начать тестирование? Я не понимаю даже, как ошибку отследить.

Иван Лазаренко

Дата регистрации: 27.04.2012
Сообщений: 82

Надо сравнить «Документ.СчетНаОплатуПокупателю» в старой и новой конфигурации

Алексей Минх

Дата регистрации: 11.04.2017
Сообщений: 10

ibros, ОбщийМодуль.УправлениеПечатью.Модуль изменился. Возможно объединили неправильно конфигурации. Надо смотреть, что в модуле выполняется. Лучшим способом решения будет найти знакомого программиста/администратора 1С и он точно скажет запустив отладку

Показывать по
10
20
40
сообщений

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
&НаКлиенте Функция ВернутьСтруктуруПараметровПечатнойФормы(ИмяМакета) Экспорт     СтруктуруПараметровПечатнойФормы    = Неопределено;         Если ИмяМакета = "М_7" Тогда         СтруктуруПараметровПечатнойФормы    = Новый Структура;         СтруктуруПараметровПечатнойФормы.Вставить("Макет",                                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("Номер",                                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("Организация",                                     "");         СтруктуруПараметровПечатнойФормы.Вставить("КодОКПО",                                         "");         СтруктуруПараметровПечатнойФормы.Вставить("РуководительДолжность",                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("Руководитель",                                       "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияДень",                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияМесяц",                               "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияГод",                               "");         СтруктуруПараметровПечатнойФормы.Вставить("Дата",                                               "");         СтруктуруПараметровПечатнойФормы.Вставить("Склад",                                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("ВремяНачалоПриемкиЧас",                                 "");         СтруктуруПараметровПечатнойФормы.Вставить("ВремяНачалоПриемкиМинута",                           "");         СтруктуруПараметровПечатнойФормы.Вставить("ВремяОкончанияПриемкиЧас",                           "");         СтруктуруПараметровПечатнойФормы.Вставить("ВремяОкончанияПриемкиМинута",                         "");         СтруктуруПараметровПечатнойФормы.Вставить("СопроводительныйДокумент",                           "");         СтруктуруПараметровПечатнойФормы.Вставить("УдостоверениеОКачествеНомер",                     "");         СтруктуруПараметровПечатнойФормы.Вставить("Станция",                                             "");         СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументНомер",                             "");         СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументДата",                           "");         СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументВагоны",                       "");         СтруктуруПараметровПечатнойФормы.Вставить("Отправитель",                                         "");         СтруктуруПараметровПечатнойФормы.Вставить("Поставщик",                                             "Он же");         СтруктуруПараметровПечатнойФормы.Вставить("Получатель",                                       "");         СтруктуруПараметровПечатнойФормы.Вставить("СтраховаяКомпания",                                     "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаОтправки",                                       "");         СтруктуруПараметровПечатнойФормы.Вставить("ДоговорНомер",                                       "");         СтруктуруПараметровПечатнойФормы.Вставить("ДоговорДата",                                         "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаИНомерТелефонограммыОтправителя",                 "");         СтруктуруПараметровПечатнойФормы.Вставить("ПереченьНФА",                                         "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяПрибытияНаСтанцию",                       "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяВыдачиГрузаОрганомТранспорта",                 "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяВскрытияВагонаИДругихТранспортныхСредств", "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяДоставкиНаСкладПолучателя",               "");         СтруктуруПараметровПечатнойФормы.Вставить("УсловияХраненияНаСкладеПолучателя",                     "");         СтруктуруПараметровПечатнойФормы.Вставить("СостояниеТарыИУпаковкиВМоментОсмотраПродукции",         "");         СтруктуруПараметровПечатнойФормы.Вставить("КоличествоНедостающейПродукцииОпределено",           "");         СтруктуруПараметровПечатнойФормы.Вставить("ДругиеДанные",                                       "");         СтруктуруПараметровПечатнойФормы.Вставить("ЗаключениеКомиссии",                               "");         СтруктуруПараметровПечатнойФормы.Вставить("ПереченПрилагаемыхДокументов",                       "");         СтруктуруПараметровПечатнойФормы.Вставить("Должность1",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник1",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочий",                 "");         СтруктуруПараметровПечатнойФормы.Вставить("Должность2",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник2",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочи2",              "");         СтруктуруПараметровПечатнойФормы.Вставить("Должность3",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник3",                                        "");         СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочи3",              "");         СтруктуруПараметровПечатнойФормы.Вставить("ДатаОприходованияМатериальныхЦенностей",           "");         СтруктуруПараметровПечатнойФормы.Вставить("КоммерческийАктНомер",                               "");         СтруктуруПараметровПечатнойФормы.Вставить("ЗаведующийСкладом",                                     ""); КонецЕсли;         ВОзврат СтруктуруПараметровПечатнойФормы; КонецФункции

polax

То что вы описали я это уже сделал,кроме пункта 3(на этом у меня и ступор):

Цитата
Сообщение от polax
Посмотреть сообщение

Примерно так:
1. Заимствовать док ПТУ
2. В модуле менеджера в После Процедура ДобавитьКомандыПечати добавить нужную команду
3. Там же в Перед Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Сделать вывод своего макета через созданную в расширении процедуры и функции по типу как в трог12 но адаптированную под ваш макет

У меня проблема с выводом, так как например в ТОРГ12 используется запрос и очень сложно получается массивобъектов и прочее, которые потому служат для вывода в процедуре Печать. То есть я пытался по аналогии сделать,но ужасно сложно и одни ошибки вылазят.

А мой макет уже реализован в самописной конфигурации в модуле формы документа. И там всё намного проще:

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
&НаКлиенте
Функция ВернутьСтруктуруПараметровПечатнойФормы(ИмяМакета) Экспорт
    СтруктуруПараметровПечатнойФормы    = Неопределено;
    
    Если ИмяМакета = "М_7" Тогда
        СтруктуруПараметровПечатнойФормы    = Новый Структура;
        СтруктуруПараметровПечатнойФормы.Вставить("Макет",                                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("Номер",                                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("Организация",                                     "");
        СтруктуруПараметровПечатнойФормы.Вставить("КодОКПО",                                         "");
        СтруктуруПараметровПечатнойФормы.Вставить("РуководительДолжность",                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("Руководитель",                                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияДень",                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияМесяц",                               "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаСоставленияГод",                               "");
        СтруктуруПараметровПечатнойФормы.Вставить("Дата",                                               "");
        СтруктуруПараметровПечатнойФормы.Вставить("Склад",                                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("ВремяНачалоПриемкиЧас",                                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("ВремяНачалоПриемкиМинута",                           "");
        СтруктуруПараметровПечатнойФормы.Вставить("ВремяОкончанияПриемкиЧас",                           "");
        СтруктуруПараметровПечатнойФормы.Вставить("ВремяОкончанияПриемкиМинута",                         "");
        СтруктуруПараметровПечатнойФормы.Вставить("СопроводительныйДокумент",                           "");
        СтруктуруПараметровПечатнойФормы.Вставить("УдостоверениеОКачествеНомер",                     "");
        СтруктуруПараметровПечатнойФормы.Вставить("Станция",                                             "");
        СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументНомер",                             "");
        СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументДата",                           "");
        СтруктуруПараметровПечатнойФормы.Вставить("ТранспортныйДокументВагоны",                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("Отправитель",                                         "");
        СтруктуруПараметровПечатнойФормы.Вставить("Поставщик",                                             "Он же");
        СтруктуруПараметровПечатнойФормы.Вставить("Получатель",                                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("СтраховаяКомпания",                                     "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаОтправки",                                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДоговорНомер",                                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДоговорДата",                                         "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаИНомерТелефонограммыОтправителя",                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("ПереченьНФА",                                         "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяПрибытияНаСтанцию",                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяВыдачиГрузаОрганомТранспорта",                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяВскрытияВагонаИДругихТранспортныхСредств", "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаВремяДоставкиНаСкладПолучателя",               "");
        СтруктуруПараметровПечатнойФормы.Вставить("УсловияХраненияНаСкладеПолучателя",                     "");
        СтруктуруПараметровПечатнойФормы.Вставить("СостояниеТарыИУпаковкиВМоментОсмотраПродукции",         "");
        СтруктуруПараметровПечатнойФормы.Вставить("КоличествоНедостающейПродукцииОпределено",           "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДругиеДанные",                                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("ЗаключениеКомиссии",                               "");
        СтруктуруПараметровПечатнойФормы.Вставить("ПереченПрилагаемыхДокументов",                       "");
        СтруктуруПараметровПечатнойФормы.Вставить("Должность1",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник1",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочий",                 "");
        СтруктуруПараметровПечатнойФормы.Вставить("Должность2",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник2",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочи2",              "");
        СтруктуруПараметровПечатнойФормы.Вставить("Должность3",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("Сотрудник3",                                        "");
        СтруктуруПараметровПечатнойФормы.Вставить("НомерДатаДокументаОВыдачеПолномочи3",              "");
        СтруктуруПараметровПечатнойФормы.Вставить("ДатаОприходованияМатериальныхЦенностей",           "");
        СтруктуруПараметровПечатнойФормы.Вставить("КоммерческийАктНомер",                               "");
        СтруктуруПараметровПечатнойФормы.Вставить("ЗаведующийСкладом",                                     "");
КонецЕсли;
    
    ВОзврат СтруктуруПараметровПечатнойФормы;
КонецФункции
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
&НаКлиенте
Процедура ПечатьМ7(Команда)
    СтруктураПараметров  = РаботаСПечатнымиФормами.ВернутьСтруктуруПараметровПечатнойФормы("М_7");
    ЗаполнитьСтруктуруПараметровПечати(СтруктураПараметров);
    РаботаСПечатнымиФормами.Печать_М_7(СтруктураПараметров);
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСтруктуруПараметровПечати(СтруктураПараметров)
    СтруктураПараметров.Макет                                           =   ПолучитьОбщийМакет("М_7");
    СтруктураПараметров.Номер                                           =   Объект.Номер;
    СтруктураПараметров.Организация                                   =   Объект.Организация;
    СтруктураПараметров.КодОКПО                                           =   Объект.Организация.КодОКПО;
    
    СтруктураДанныхРуководителя                                          =   ОбщегоНазначения.ВернутьСтруктуруДанныхРуководителя(Объект.Дата, Объект.Организация);
    СтруктураПараметров.РуководительДолжность =                             ?(СтруктураДанныхРуководителя = Неопределено, "", СтруктураДанныхРуководителя.Должность);
    СтруктураПараметров.Руководитель  =                                  ?(СтруктураДанныхРуководителя = Неопределено, "", СтруктураДанныхРуководителя.Сотрудник);
    СтруктураПараметров.ДатаСоставленияДень =                                 Формат(День(Объект.Дата), "ЧЦ=2; ЧДЦ=0; ЧВН=; ЧГ=0");
    СтруктураПараметров.ДатаСоставленияМесяц =                               Формат(Месяц(Объект.Дата), "ЧЦ=2; ЧДЦ=0; ЧВН=; ЧГ=0");
    СтруктураПараметров.ДатаСоставленияГод =                               Формат(Год(Объект.Дата), "ЧЦ=4; ЧДЦ=0; ЧГ=0");
    СтруктураПараметров.Дата =                                               Объект.Дата;
    СтруктураПараметров.Склад =                                             Объект.Склад;
    СтруктураПараметров.ВремяНачалоПриемкиЧас =                             Формат(Час(Объект.ВремяНачалоПриемки), "ЧЦ=2; ЧДЦ=0; ЧН=00; ЧВН=; ЧГ=0");
    СтруктураПараметров.ВремяНачалоПриемкиМинута =                           Формат(Минута(Объект.ВремяНачалоПриемки), "ЧЦ=2; ЧДЦ=0; ЧН=00; ЧВН=; ЧГ=0");
    СтруктураПараметров.ВремяОкончанияПриемкиЧас =                           Формат(Час(Объект.ВремяОкончанияПриемки), "ЧЦ=2; ЧДЦ=0; ЧН=00; ЧВН=; ЧГ=0");
    СтруктураПараметров.ВремяОкончанияПриемкиМинута =                         Формат(Минута(Объект.ВремяОкончанияПриемки), "ЧЦ=2; ЧДЦ=0; ЧН=00; ЧВН=; ЧГ=0");
    СтруктураПараметров.СопроводительныйДокумент =                           Объект.СопроводительныйДокумент;
    СтруктураПараметров.УдостоверениеОКачествеНомер =                     Объект.УдостоверениеОКачествеНомер;
    СтруктураПараметров.Станция =                                             Объект.Станция;
    СтруктураПараметров.ТранспортныйДокументНомер =                         Объект.ТранспортныйДокументНомер;
    СтруктураПараметров.ТранспортныйДокументДата =                           Формат(Объект.ТранспортныйДокументДата, "ДФ=dd.MM.yyyy");
    СтруктураПараметров.ТранспортныйДокументВагоны =                       Объект.ТранспортныйДокументВагоны;
    СтруктураПараметров.Отправитель =                                         Объект.Отправитель;
    СтруктураПараметров.Поставщик =                                         Объект.Поставщик;
    СтруктураПараметров.Получатель =                                       Объект.Организация;
    СтруктураПараметров.СтраховаяКомпания =                                 Объект.СтраховаяКомпания;
    СтруктураПараметров.ДатаОтправки =                                       Формат(Объект.ДатаОтправки, "ДФ=dd.MM.yyyy");
    СтруктураПараметров.ДоговорНомер =                                       Объект.Договор.Номер;
    СтруктураПараметров.ДоговорДата =                                         Формат(Объект.Договор.Дата, "ДФ=dd.MM.yyyy");
    СтруктураПараметров.ДатаИНомерТелефонограммыОтправителя =                 Объект.ДатаИНомерТелефонограммыОтправителя;
    
    СтруктураПараметров.ПереченьНФА =                                         Новый Массив;
    
    Для Каждого Стр Из Объект.НФА Цикл
        СтруктураНФА    = Новый Структура;
        СтруктураНФА.Вставить("ВидУпаковки",         Стр.ВидУпаковки);
        СтруктураНФА.Вставить("ЕдИзм",                 Стр.ЕдИзм);
        СтруктураНФА.Вставить("Количество",       Стр.Количество);
        СтруктураНФА.Вставить("ОбъектНФА",             Стр.ОбъектНФА);
        СтруктураНФА.Вставить("Опломбировано",         ?(Стр.Опломбировано, "Опломбировано", ""));
        СтруктураНФА.Вставить("Масса",             ВернутьМассуДляМ_7(Стр.Количество, Стр.ОбъектНФА));
        СтруктураНФА.Вставить("ОтметкаОтправителя", Стр.ОтметкаОтправителя);
        
        СтруктураПараметров.ПереченьНФА.Добавить(СтруктураНФА);
    КонецЦикла;
    
    СтруктураПараметров.ДатаВремяПрибытияНаСтанцию =                       Объект.ДатаВремяПрибытияНаСтанцию;
    СтруктураПараметров.ДатаВремяВыдачиГрузаОрганомТранспорта =             Объект.ДатаВремяВыдачиГрузаОрганомТранспорта;
    СтруктураПараметров.ДатаВремяВскрытияВагонаИДругихТранспортныхСредств = Объект.ДатаВремяВскрытияВагонаИДругихТранспортныхСредств;
    СтруктураПараметров.ДатаВремяДоставкиНаСкладПолучателя =               Объект.ДатаВремяДоставкиНаСкладПолучателя;
    СтруктураПараметров.УсловияХраненияНаСкладеПолучателя =                 Объект.УсловияХраненияНаСкладеПолучателя;
    СтруктураПараметров.СостояниеТарыИУпаковкиВМоментОсмотраПродукции =     Объект.СостояниеТарыИУпаковкиВМоментОсмотраПродукции;
    СтруктураПараметров.КоличествоНедостающейПродукцииОпределено =           Объект.КоличествоНедостающейПродукцииОпределено;
    СтруктураПараметров.ДругиеДанные =                                       Объект.ДругиеДанные;
    СтруктураПараметров.ЗаключениеКомиссии =                               Объект.ЗаключениеКомиссии;
    СтруктураПараметров.ПереченПрилагаемыхДокументов =                       Объект.ПереченПрилагаемыхДокументов;
    СтруктураПараметров.Должность1 =                                        Объект.Должность1;
    СтруктураПараметров.Сотрудник1 =                                        Объект.Сотрудник1;
    СтруктураПараметров.НомерДатаДокументаОВыдачеПолномочий =                 Объект.НомерДатаДокументаОВыдачеПолномочий1;
    СтруктураПараметров.Должность2 =                                        Объект.Должность2;
    СтруктураПараметров.Сотрудник2 =                                        Объект.Сотрудник2;
    СтруктураПараметров.НомерДатаДокументаОВыдачеПолномочи2 =              Объект.НомерДатаДокументаОВыдачеПолномочий2;
    СтруктураПараметров.Должность3 =                                        Объект.Должность3;
    СтруктураПараметров.Сотрудник3 =                                        Объект.Сотрудник3;
    СтруктураПараметров.НомерДатаДокументаОВыдачеПолномочи3 =              Объект.НомерДатаДокументаОВыдачеПолномочий3;
    СтруктураПараметров.ДатаОприходованияМатериальныхЦенностей =           Объект.ДатаОприходованияМатериальныхЦенностей;
    СтруктураПараметров.КоммерческийАктНомер =                               Объект.КоммерческийАктНомер;
    СтруктураПараметров.ЗаведующийСкладом =                                 Объект.ЗаведующийСкладом;
КонецПроцедуры
1C
1
2
3
4
5
6
7
&НаКлиенте
Процедура Печать_М_7(СтруктураПараметров) Экспорт
    ТабДок    = РаботаСПечатнымиФормамиСервер.ВернутьТабДок_М_7(СтруктураПараметров);//ВернутьТабДок_М_7(СтруктураПараметров);
    
    ПараметрыФормыПечати        = Новый Структура("ТабДок", ТабДок);
    ОткрытьФорму("ОбщаяФорма.ФормаПечати", ПараметрыФормыПечати);
КонецПроцедуры

Могу ли я как то похожим способом реализовать (ибо в БП 3.0 совсееем по-другому все данные берутся) ?

Цитата
Сообщение от polax
Посмотреть сообщение

И все это ради чего? Если это реальная задача, то ВПФ не вмешивается в конфигурацию и в данном случае и по-проще (не просто, а чуть легче) и правильней расширения

А ради того, что я буду разбираться в этом и смогу в других типовых конфигурациях уже делать таким образом, если от меня потребуют.



0



Обновлено: 12.02.2023

В большинстве случаев это значит, что неправильно определяется параметр СсылкаНаОбъект в модуле объекта внешней печатной формы. Разберем ситуацию на конкретном примере.

В Организации была доработана печать Счета-фактуры выданного . Для этого программист написал внешнюю обработку СчетФактура_1.07.2017 и подключил ее в 1С: раздел Администрирование — Настройки программы — Печатные формы, отчеты и обработки — Дополнительные отчеты и обработки .

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

Пошаговая инструкция исправления ошибки.

Шаг 1. Открыть Конфигуратор 1С.

Запустите базу в режиме Конфигуратор . PDF По кнопке Файл — Открыть откройте внешнюю обработку.

Шаг 2. Перейти в модуль объекта обработки.

По кнопке Действия — Открыть модуль объекта перейдите в программный код.

Шаг 3. Поиск ошибки.

Найдите и исправьте ссылки типа СсылкаНаОбъект в параметрах функций и процедур на МассивОбъектов .

Шаг 4. Исправление ошибки.

Замените в модуле объекта внешней обработки параметр СсылкаНаОбъект на МассивОбъектов .

Сохраните измененную внешнюю обработку по кнопке Файл — Сохранить .

Шаг 5. Обновление внешней обработки в программе.

Войдите в раздел Администрирование — Настройки программы — Печатные формы, отчеты и обработки — Дополнительные отчеты и обработки . По кнопке Обновить из файла загрузите обновленную печатную форму.

Сформируйте новую печатную форму из документа Счет-фактура выданный .

Ошибка Печатная форма недоступна в 1С 8.3 больше появляться не будет.

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Похожие публикации

    Рассмотрим как подключить внешнюю форму отчета в ЗУП 3, если.Напоминаем, что срок сдачи П-4 за январь 2021 г. до..В ЗУП 3.1.14.525 / 3.1.18.46 реализована новая печатная форма СЗВ-М.

Карточка публикации

(2 оценок, среднее: 5,00 из 5)

Данную публикацию можно обсудить в комментариях ниже.
Обратите внимание! В комментариях наши кураторы не отвечают на вопросы по программам 1С и законодательству.
Задать вопрос нашим специалистам можно по ссылке >>

Все комментарии (1)

Спасибо. Все понятно и доступно!

Вы можете задать еще вопросов

Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку «Задать вопрос», я соглашаюсь с
регламентом БухЭксперт8.ру >>

Радует, что много стали уделять внимания УСН. Марию Демашеву слушать очень приятно, понятно все рассказывает. Семинар долгий, но от ее объяснений не устаешь, пролетает как один миг. Спасибо огромное.

Содержание

Вы можете задать еще вопросов

Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку «Задать вопрос», я соглашаюсь с
регламентом БухЭксперт8.ру >>

Разберемся в причинах возникновения этой ошибки. В большинстве случаев она не связана напрямую с 1С и возникает при переустановке сетевого принтера. Для старых версий 1С 7.7 при первой печати из 1С программа записывала информацию о принтере, на который производилась печать в особый каталог реестра:

  • КомпьютерHKEY_CURRENT_USERSoftware1C1Cv77.7Defaults PDF

Поэтому, после замены принтера на новый или переустановке его на другой компьютер, 1С все равно пыталась печатать на старый.

Для новых версий 1С информация о принтере, что использует 1С, берется из каталога реестра:

Правильное «лечение» этой ситуации — правка реестра Windows, где хранятся настройки принтера: прописанный в реестре старый принтер нужно заменить на новый.

Но это может сделать только «подкованный» пользователь. Поэтому прежде чем перейти к корректировке реестра, мы предлагаем выполнить более простую операцию. Выбрать в 1С переустановленный принтер перед запуском печати: кнопка Главное меню — Файл — Печать .

Иногда простого открытия формы печати достаточно, чтобы данные о принтере обновились и дальше печать выполнялась нормально.

Явный выбор принтера можно использовать только в случае, если при просмотре списка доступных принтеров данный принтер показывается. В противном случае придется вернуться к исправлению реестра.

Исправление реестра Windows

В реестре Windows хранится информация о параметрах системы, программ и устройств, которые подключены к компьютеру.

Изменяя реестр, можно нанести системе вред, поэтому, если вам не хватает опыта и знаний, предоставьте выполнение этой операции профессионалу.

Пошаговая инструкция работы с реестром

Шаг 1. Открытие системной утилиты Выполнить.

По кнопке Пуск — Выполнить или комбинации клавиш Win+R запустите системную утилиту Выполнить.

Шаг 2. Запуск встроенного редактора реестра.

В командной строчке наберите команду Regedit и нажмите на кнопку ОК.

Откроется окно редактора реестра.

Шаг 3. Поиск в реестре ветки 1С.

Данные, относящиеся к принтерам будем искать в ветке:

Для этого выберите команду Найти в меню Правка и укажите строку поиска.

Если информация о принтере HP LaserJet 400 MFP M425 dw UPD PS не соответствует действительности, измените ее.

Шаг 4. Корректировка реестра.

Для корректировки реестра вы должны обладать соответствующими правами. Если вы запустили утилиту под системными правами Администратора, то у вас есть возможность редактировать записи реестра. Для этого двойным кликом мышки по строчке в правом окне откройте окно редактирования.

Укажите в поле Значение информацию о новом принтере HP LaserJet 400 MFP M425dn UPD PS и нажмите на кнопку ОК.

Результат операции должен выглядеть так.

Исправление реестра часто помогает решить подобную проблему.

Если вы решите исправлять реестр, помните, что при некорректном выполнении операции это может привести к ошибкам в работе системы. Поэтому предварительно не поленитесь создать резервную копию реестра, чтобы можно было восстановить его, если что-то пойдет не так.

Обращаем внимание, что операционная система Windows и программа 1C постоянно обновляются, поэтому будут возникать новые причины появления этой ошибки у сетевых принтеров и принтеров, установленных на сервере.

Помогла статья?

Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно

Похожие публикации

    У вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.У вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.У вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.У вас нет доступа на просмотр Чтобы получить доступ:Оформите коммерческую.

Карточка публикации

(4 оценок, среднее: 3,00 из 5)

Данную публикацию можно обсудить в комментариях ниже.
Обратите внимание! В комментариях наши кураторы не отвечают на вопросы по программам 1С и законодательству.
Задать вопрос нашим специалистам можно по ссылке >>

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Вы можете задать еще вопросов

Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку «Задать вопрос», я соглашаюсь с
регламентом БухЭксперт8.ру >>

Радует, что много стали уделять внимания УСН. Марию Демашеву слушать очень приятно, понятно все рассказывает. Семинар долгий, но от ее объяснений не устаешь, пролетает как один миг. Спасибо огромное.

Содержание

Вы можете задать еще вопросов

Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8

Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявку

Нажимая кнопку «Задать вопрос», я соглашаюсь с
регламентом БухЭксперт8.ру >>

Читайте также:

      

  • Как удалить информацию о файле в свойствах
  •   

  • Как восстановить пароли в яндекс браузере после удаления на андроид
  •   

  • Intel r hd graphics family обновить драйвер
  •   

  • Создать pull request visual studio
  •   

  • Антивирусной программой не является nod32 dr web avast daemon tools

Доброго дня. 1С:Предприятие 8.3 (8.3.9.1818), Бухгалтерия предприятия, редакция 3.0 (3.0.49.18), конфигурация не типовая, дописан (не мной) документ, позволяющий аккумулировать в одной строке ссылки на счет, акты, и счет-фактуру по заказу и пакетно все эти документы отправлять сразу на принтер. происходит это вот так: После обновления конфигурации при попытке отправить пакет на печать возвращается ошибка: {ОбщийМодуль.УправлениеПечатью.Модуль(1562)}: При формировании печатной формы «СчетЗаказ» возникла ошибка. Обратитесь к администратору. ВызватьИсключение ТекстСообщенияОбОшибке; закомментить — остальные документы в пакете печатаются корректно. Если печатать просто счет отдельно (не из самописного документа, а выбрав из «Счет на оплату покупателю» — печатная форма формируется и уходит на печать корректно. Подскажите, пожалуйста.. с чего начать тестирование? Я не понимаю даже, как ошибку отследить.

Не пробовали для отладки взвести флаг «Оставливаться по ошибке»?

не может такого быть, галочку установил, отладку (предприятие) из конфигуратора запустил?

Проверьте еще Отладка — Подключение и флаги Автоматического подключения.

при любой конфигурации отладчика — кроме ошибки «При формировании печатной формы «СчетЗаказ» возникла ошибка» другой информации нет

УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(«Документ.СчетНаОплатуПокупателю», «СчетЗаказ», МассивСчет, Неопределено); — поставь здесь точку остановки и пройди отладччиком

да пробовал. отсылает туда же, в общий модуль управления печатью

ну а дальше? где исключение вызывается?

вся процедура вот так выглядит:

В модуле менеджера счета на оплату поищите формирование табличного документа (слова «макет», «область», «вывести», «присоединить»).

исключение вызывается в формировании печатной формы         // Вызов исключения при возникновении ошибки.         Если Отказ Тогда             ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр(                 «ru = ‘При формировании печатной формы «»%1″» возникла ошибка. Обратитесь к администратору.'»), ИмяМакета);

Вот здесь в первой строчке поставь точку остановки и посмотри где Отказ = истина

lubitelxml, нигде. не срабатывает остановка

Включи режим отладки для сервера

у тебя отладка выключена походку

не, ну все может быть, конечно. но другие точки отрабатывает же корректно

сравню-ко я процедуру печати с предыдущей конфигурацией..

кхм. и правда не включена

спасибо всем большое за помощь. остановить сервер я смогу только в выходные.. включу отладку и буду дальше проверять

Возьми пустую конфигурацию и в файловом режиме проверь

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

Понравилась статья? Поделить с друзьями:
  • При устранении неполадок произошла следующая ошибка не удается выполнить средство устранения
  • Привод etcs ошибка 89
  • При формировании печатного представления произошла ошибка росреестр что делать
  • При устранении неполадок произошла следующая ошибка 0x800b010a windows 7 как исправить
  • При формировании отчетов произошла ошибка error request failed with status code 401