Имя: Пароль:
1C
1С v8
Пропала команда Печать
,
0 zippygrill
 
13.11.17
10:46
Всем привет!
Используется РТ 2.2 последний релиз. Версия БСП 2.4.1.84
Есть самодельный документ - запрос новых PDF417 к которому прикрутил печатную форму. Я так понимаю изменился подход к печатью и теперь печать моей формы пропала из командной панель.
В модуле менеджера документа имеется код

Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
    
    // PDF417
    КомандаПечати = КомандыПечати.Добавить();
    КомандаПечати.Обработчик = "Документ._ЗапросНаПолучениеШтрихкодаЕГАИС";
    КомандаПечати.Идентификатор = "ПечатьPDF417";
    КомандаПечати.Представление = "PDF417";
    КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;    
    
КонецПроцедуры

Подскажите или дайте ссылку на инфу как переделать под типовой механизм. На ИТС искал...возможно плохо))
Спасибо!
1 Ёпрст
 
13.11.17
10:48
(0) теперь все назначения прописываются явно в общем модуле.
Тупо обработкой в справочнике доп. внешние обработки выстави назначение для твоего документа.
2 zippygrill
 
13.11.17
11:36
(1) Печатная форма у меня то вшита в самом документе. Что мне обработать  справочник внешних
3 Ёпрст
 
13.11.17
11:36
(2) тогда смотри код общего модуля. Там в явном виде прописаны все виды документов. По крайней мере, в УТ 11, это так.
4 2S
 
13.11.17
11:39
(0) сейчас так уже не работает
5 Ёпрст
 
13.11.17
11:43
Ищи процу
Процедура ПриОпределенииОбъектовСКомандамиПечати(СписокОбъектов) Экспорт

там перечислен список объектов , добавь туда свой документ. заработает
6 zippygrill
 
13.11.17
11:45
ПодключаемыеКоманды.ПриСозданииНаСервере
7 zippygrill
 
13.11.17
11:57
Процедура ПриОпределенииОбъектовСКомандамиПечати(СписокОбъектов) Экспорт
    
    СписокОбъектов.Добавить(Документы.АктОРасхожденияхПриПриемкеТоваров);
    СписокОбъектов.Добавить(Документы.ВозвратТоваровОтПокупателя);
    СписокОбъектов.Добавить(Документы.ВозвратТоваровПоставщику);
    СписокОбъектов.Добавить(Документы.ЗаказНаПеремещение);
    СписокОбъектов.Добавить(Документы.ЗаказПокупателя);
    СписокОбъектов.Добавить(Документы.ЗаказПоставщику);
    СписокОбъектов.Добавить(Документы.ЗарплатаКВыплатеОрганизаций);
.....

Не может быть такого что придется ломать конфу и добавить свою форму
8 zippygrill
 
13.11.17
12:10
Вот черт.
Сделал печатную внешнюю. Теперь в Размещение нет моего документа. Сюда может как-то без изменении конфы добавить?

https://www.screencast.com/t/xmyDwWLVBZ0m
9 zippygrill
 
13.11.17
12:12
Попробую обработкой
10 ildary
 
13.11.17
12:13
(8) возможно в процедуре ПриОпределенииОбъектовСКомандамиПечати() есть вызов переопределяющей процедуры, в которую можно втиснуться, не ломая конфигурацию.
11 ildary
 
13.11.17
12:14
Или на худой конец изменения внести расширением, если совместимость конфигурации позволяет.
12 Ёпрст
 
13.11.17
12:42
(8) во внешней всё просто - тупо обработкой затолкать реквизит. всё.
13 Ёпрст
 
13.11.17
12:42
и не придётся конфу править.
14 zippygrill
 
14.11.17
11:07
(12) Что-то нихренащечки не получается.
Указал размещение печатной формы со ссылкой на мой документ. Открываю форму документа - кнопки Печать - нет
https://www.screencast.com/t/3rIgtvFrSln8
15 ildary
 
14.11.17
11:10
(14) надо почитать описание переделок БСП в части печатных форм: http://catalog.mista.ru/public/674880
16 Ёпрст
 
14.11.17
11:15
(14)
вфп сделай как тут - должно всё заработать.
http://programmist1s.ru/vneshnie-pechatnyie-formyi-v-1s/

и это, кеш продуй :)
17 zippygrill
 
14.11.17
11:24
(15) Щас прочитаю тоже
(16) Я не впервые создаю внешние обработки, а тут подстава такая..
Весь код который там написан, полностью соответствует моему.
18 Мыш
 
14.11.17
11:36
ПриОпределенииВидовПодключаемыхКоманд

С помощью ПриОпределенииВидовПодключаемыхКоманд можно определить собственные виды подключаемых команд,
помимо уже предусмотренных в стандартной поставке (печатные формы, отчеты и команды заполнения).
Синтаксис

Процедура ПриОпределенииВидовПодключаемыхКоманд(ВидыПодключаемыхКоманд) Экспорт
Параметры

   ВидыПодключаемыхКоманд - ТаблицаЗначений - поддерживаемые виды команд:
       * Имя         - Строка            - имя вида команд. Должно удовлетворять требованиям именования переменных и
                                           быть уникальным (не совпадать с именами других видов).
                                           Может соответствовать имени подсистемы, отвечающей за вывод этих команд.
                                           Следующие имена зарезервированы: "Печать", "Отчеты", "ЗаполнениеОбъектов".
       * ИмяПодменю  - Строка            - имя подменю для размещения команд этого вида на формах объектов.
       * Заголовок   - Строка            - наименование подменю, выводимое пользователю.
       * Картинка    - Картинка          - картинка подменю.
       * Отображение - ОтображениеКнопки - режим отображения подменю.
       * Порядок     - Число             - порядок подменю в командной панели формы объекта по отношению
                                           к другим подменю. Используется при автоматическом создании подменю
                                           в форме объекта.
Пример реализации

Вид = ВидыПодключаемыхКоманд.Добавить();
Вид.Имя         = "Мотиваторы";
Вид.ИмяПодменю  = "ПодменюМотиваторов";
Вид.Заголовок   = НСтр("ru = 'Мотиваторы'");
Вид.Картинка    = БиблиотекаКартинок.Информация;
Вид.Отображение = ОтображениеКнопки.КартинкаИТекст;
Расположение

Общий модуль ПодключаемыеКомандыПереопределяемый
Доступность

Сервер, Толстый клиент, Внешнее соединение
19 Ц_У
 
14.11.17
11:55
прописать в общем модуле
документ добавить в общий тип что-то вроде ДокументыСДопКомандами
20 Ёпрст
 
14.11.17
11:58
В общий модуль можно не прописывать, работает и так.
21 zippygrill
 
14.11.17
12:04
(18) (19) Плохое решение.
22 zippygrill
 
14.11.17
12:07
(16) Почистил. Ничего нового
23 Ёпрст
 
14.11.17
12:14
(22)в самом документе есть нужные команды ? в модуле менеджера ?
24 Ёпрст
 
14.11.17
12:14
в форме списка дока, есть нужные команды ?
25 Niveus
 
14.11.17
12:15
26 Niveus
 
14.11.17
12:15
блин не то скопировал) http://catalog.mista.ru/public/674880/
27 Ёпрст
 
14.11.17
12:15
Совсем недавно так добавлял в ут11 впф на самодельный док, всё работало
28 Ёпрст
 
14.11.17
12:17
Вот еще что.
Зайди в справочник доп обработок и еще раз загрузи впф (назначение твоё, не изменится при этом).
29 zippygrill
 
14.11.17
12:17
(23) НУ я то теперь через внешнюю обработку пытаюсь прикрутить все это.
30 zippygrill
 
14.11.17
12:19
(28) Загрузка впф не помогло также. Надо же
31 Ёпрст
 
14.11.17
12:20
(29) это не важно, в самом доке тоже должны быть прописаны команды.
32 Ёпрст
 
14.11.17
12:21
в модуле менеджера дока должно быть
#Область Печать

// Заполняет список команд печати.
//
// Параметры:
//   КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати.
//
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
    
    
    
КонецПроцедуры

// Сформировать печатные формы объектов.
//
// ВХОДЯЩИЕ:
//   ИменаМакетов    - Строка    - Имена макетов, перечисленные через запятую.
//   МассивОбъектов  - Массив    - Массив ссылок на объекты которые нужно распечатать.
//   ПараметрыПечати - Структура - Структура дополнительных параметров печати.
//
// ИСХОДЯЩИЕ:
//   КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы.
//   ПараметрыВывода       - Структура        - Параметры сформированных табличных документов.
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    
    
КонецПроцедуры

#КонецОбласти
33 Ёпрст
 
14.11.17
12:23
скинь cf-ник посмотреть
34 zippygrill
 
14.11.17
12:24
(32) Да все верно. У меня так есть https://www.screencast.com/t/7bzy2NVCsLy
35 zippygrill
 
14.11.17
12:25
(26) Кстати, делал как в статьи, кроме этого

В общем модуле УправлениеПечатьюПереопределяемый, в процедуре ПриОпределенииОбъектовСКомандамиПечати  нужно добавить свои созданные документы, для которых нужна печать:
Процедура ПриОпределенииОбъектовСКомандамиПечати(СписокОбъектов) Экспорт
               ....
               СписокОбъектов.Добавить(Документы.ФормированиеЗаписейРаздела7ДекларацииНДС);
               ////////////////////Свои документы
               СписокОбъектов.Добавить(Документы.МойДокумент1);
               СписокОбъектов.Добавить(Документы.МойДокумент2);
               ....
КонецПроцедуры

Результата тоже никакого
36 Ц_У
 
14.11.17
12:29
(35) в определяемый тип еще добавь ОбъектСДополнительнымиКомандами
37 Ц_У
 
14.11.17
12:30
(35) должно быть
- общий модуль
- определяемы тип
- модуль менеджера
- модуль формы
38 zippygrill
 
14.11.17
13:30
(36) Где этот реквизит?
39 zippygrill
 
14.11.17
13:30
ОбъектСДополнительнымиКомандами
40 Ц_У
 
14.11.17
14:06
(39) это определяемый тип
41 zippygrill
 
14.11.17
14:08
(27) Дай cf своей УТ - если можешь. Гляну сам
42 Ёпрст
 
14.11.17
14:09
(41) дык у меня есть типовая демка :)
43 zippygrill
 
14.11.17
17:31
(42) Так ты же пишешь что в собственный документ прикрутил ВПФ. Покажи что в менеджере и что в форме самдельного документа
44 Ёпрст
 
14.11.17
17:35
(43) в собстевнном доке, тоже что и в (16).
45 Ёпрст
 
14.11.17
17:40
Блин, код не даёт вставить
http://pics.rsh.ru/img/2017-11-1417_38_38-_2qu8zgve.jpg
46 Cyberhawk
 
14.11.17
17:45
(45) На часть "ц_у_к_о" ругается
47 zippygrill
 
14.11.17
18:08
Давай без таких слов
48 zippygrill
 
14.11.17
20:26
Пошел по другому пути- создал расширение. Добавил в расширение общий модуль УправлениеПечатьюПереопределяемый и мой документ.
В общем модуле прописал https://www.screencast.com/t/cco36GghxSV

&Перед("ПриОпределенииОбъектовСКомандамиПечати")
Процедура Расш1_ПриОпределенииОбъектовСКомандамиПечати(СписокОбъектов) Экспорт
    
    СписокОбъектов.Добавить(Документы._ЗапросНаПолучениеШтрихкодаЕГАИС);
    
КонецПроцедуры

результата НОЛЬ!! Уже сил нет!
49 Cyberhawk
 
14.11.17
20:39
Ты фикс? Скока в месяц на руки платят?
50 zippygrill
 
15.11.17
09:15
(49) Считаешь себя в праве задавать такие вопросы?

Ап
51 Cyberhawk
 
15.11.17
09:27
(50) Конечно - за спрос денег не берут
52 zippygrill
 
15.11.17
09:51
(51) Как хорошо что не все считают как ты.
53 Ёпрст
 
15.11.17
10:04
(48) дай cf посмотреть
54 Радим1987
 
15.11.17
10:08
Ты на форму добавил группы
55 Радим1987
 
15.11.17
10:12
Если бсп 2.4.4. тогда стоит читать в ИТС
56 zippygrill
 
15.11.17
12:18
(54) ПодменюПечать более не актуален для бсп 2.4.4, но на всякий - есть
(53) Пиши мыло - отправлю ссылку
57 Ёпрст
 
15.11.17
12:23
58 Ёпрст
 
15.11.17
12:49
выслал ?
59 zippygrill
 
15.11.17
12:57
Только что
60 Ёпрст
 
15.11.17
13:57
Пришлось обновится, ща поковыряю.
61 ИС-2
 
naïve
15.11.17
14:23
(0) в новой УНФ такая же фигня
62 Ёпрст
 
15.11.17
14:47
Если добавить документ в УправлениеПечатьюПереопределяемый, то команда появляется.
Но это же не наш метод. Щас посмотрим, чего они там переделали.
63 zippygrill
 
15.11.17
15:15
(62) Я так пробовал - нужного результата добился, но это не то решение ..
64 Ёпрст
 
15.11.17
15:42
(63) Ну, тогда только один вариант - использовать расширение, которое подменить общую процу модуля.
Ибо получение этого списка используется в дальнейшем в коде, в УправленииПечатью, там проверяется, содержится ли метаданные документа в этом списке, если нет - то и кнопки печати нет. В пред. бсп было по-другому (хотя и этот список тоже был).
65 Ёпрст
 
15.11.17
15:43
могу кинуть cf-ник готовый с расширением этим.
У тя еще в форме списка не было нужных команд и свойств формы.
66 zippygrill
 
15.11.17
15:55
(65) Я для этого тоже сделал расширение, но в предприятие ничего не менялось
67 zippygrill
 
15.11.17
15:56
Мне печать из формы списка и не нужна была. Достаточно из формы документа. А в форме документа все необходимые процедуры есть
68 zippygrill
 
15.11.17
15:57
"и свойств формы" - что ты тут имеешь ввиду?
69 Ёпрст
 
15.11.17
16:07
(58) в поле ссылка поставить использовать всегда
70 Ёпрст
 
15.11.17
16:07
ну и команды добавить
71 Ёпрст
 
15.11.17
16:08
(66) не знаю, создал расширение, всё работает
72 zippygrill
 
15.11.17
16:22
(71) дай ссылку - гляну разницу.
73 zippygrill
 
15.11.17
16:27
(69) Не понял про какую ссылку ты говоришь. Где этот реквизит?
74 Ёпрст
 
15.11.17
16:30
Посмотрел, в чем различие с УТ11 - эти черти, зачем -то в Рознице вырезали код вот этой процы в общем модуле:


Процедура ПередДобавлениемКомандПечати(ИмяФормы, КомандыПечати, СтандартнаяОбработка) Экспорт
    
КонецПроцедуры

если её взять с УТ, то всё работает и без добавления вида дока в общий модуль/расширение, единственное. назначение в ВФП поправить обработкой.
75 Ёпрст
 
15.11.17
16:35
Но, в данный момент, проще расширение добавить
76 Ёпрст
 
15.11.17
16:38
(72) ушло
77 Ёпрст
 
15.11.17
16:39
(73) в свойствах дин списка поле ссылка - галка использовать всегда
78 zippygrill
 
15.11.17
16:55
(76) Спасибо - качаю.
79 zippygrill
 
15.11.17
16:58
А с моим расширением что не так? Ты не открывал ее?
80 Ёпрст
 
15.11.17
16:59
(79) дык конфа была без расширения
81 Ёпрст
 
15.11.17
17:19
(79)
1. режим совместимости в расширении убрать
2. СписокОбъектов - это те не глобальная переменная модуля :)
толку то от того, что ты её в своей проце заполнил ?
:))
далее то выполняется проца из основного общего модуля, там свой параметр  СписокОбъектов .
82 Ёпрст
 
15.11.17
17:20
понял, не ?
надо Вместо использовать, или из своей процы вызывать встроенную.
83 Ёпрст
 
15.11.17
17:32
Хотя не, по п.2 наврал, параметры передаются.
Выполни п.1 и всё заработает, проверено.