|
Похвастаться - массовая печать документов | ☑ | ||
---|---|---|---|---|
0
igel1969
03.11.22
✎
13:00
|
Задача от пользователей - массово печатать документы.
Хочу похвастаться, как я ее решил, так как для решения обеих половин задачи я нашел подсказки в интернете, но общей картины нигде не видел. Я понимаю, что есть инструмент Групповой обработки справочников и документов, но обучать ему клуш-операторов нереально. Скопировал форму списка документов, сделал ее по умолчанию. Не так уж много нужных функций на этой форме,чтобы бояться что что-то кардинально изменится при обновлении. Честно говоря, я уже давно ее скопировал. У главного табличного поля поставил Режим Выделения не Одинарный, а Множественный. Добавил на форму панель, сделал ее невидимой. На эту панель добавил Командную панель. В ней создал пункт меню "ПечатьВыделенныхДокументов". У табличного поля свойство "Контекстное меню" вместо "Отсутствует" поставил мою командную панель. А на пункт меню написал следующую процедуру: ТЗ = ЭлементыФормы.Список.ВыделенныеСтроки; Инд = 0; Для Каждого Стр Из ТЗ Цикл Ссылка = ЭлементыФормы.Список.ДанныеСтроки(Стр).Ссылка; Объект = Ссылка.ПолучитьОбъект(); Если Инд = 0 тогда Форма = ПолучитьОбщуюФорму("ФормаВыбораПечатныхФорм", ЭтаФорма, Объект); Если Форма.ОткрытьМодально() <> Истина Тогда Возврат; КонецЕсли; Инд = 1; КонецЕсли; Для каждого СтрокаКнопки Из Форма.ЭлементыФормы.ДеревоМакетовПечати.ВыделенныеСтроки Цикл Расшифровка = СтрокаКнопки.Расшифровка; Если ТипЗнч(Расшифровка) = Тип("Структура") и Расшифровка.ВидПечатнойФормы = Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма Тогда ТабДокумент = УниверсальныеМеханизмы.НапечататьВнешнююФорму(Объект.Ссылка, Расшифровка); ЭтоДокумент = Метаданные.Документы.Содержит(Объект.Метаданные()); УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, 0, Форма.НаПринтер, ?(ЭтоДокумент, ОбщегоНазначения.СформироватьЗаголовокДокумента(Объект), Строка(Объект)), Объект.Ссылка, Расшифровка); Иначе Объект.Печать(Расшифровка, 0, Форма.НаПринтер); КонецЕсли; КонецЦикла; КонецЦикла; И вуаля! При вызове контекстного меня один раз появляется форма для выбора печатных форм, а потом для всех выбранных документов эти формы печатаются. Может кому пригодится, пользуйтесь. |
|||
1
H A D G E H O G s
03.11.22
✎
13:01
|
Как в старые добрые Г1С времена..
|
|||
2
igel1969
03.11.22
✎
13:06
|
(1) извините, я не в курсе об чем Вы
|
|||
3
Ryzeman
03.11.22
✎
13:08
|
(1) лол
(2) Чем не устроил БСПшный механизм печати, в котором всё уже есть без этих костылей?) |
|||
4
p-soft
03.11.22
✎
13:11
|
речь о том что "чукча не читатель, чукча писатель"
|
|||
5
lubitelxml
03.11.22
✎
13:13
|
Если Форма.ОткрытьМодально() <> Истина Тогда ????? это что?
|
|||
6
mistеr
03.11.22
✎
13:13
|
(3) Его надо изучать :)
|
|||
7
Ryzeman
03.11.22
✎
13:13
|
(6) Аргумент)
|
|||
8
igel1969
03.11.22
✎
13:14
|
(5) если оператор передумал печатать и на форме со списком печатных форм нажал отмена или крестик
|
|||
9
stopa85
03.11.22
✎
13:18
|
(0) у вас в коде получаются данные печати одного документа, формируется печатная форма, отправляется на печать. Это не оптимально. Лучше было бы получить данные для формирования печатных форм всех документов, потом формировать печатные формы и отпарвять их на принтер.
В 99 из 100 случаев один "большой" запрос к БД лучше 100 маленьких |
|||
10
igel1969
03.11.22
✎
13:21
|
(3) я пишу для людей (читай - компьютернонеграмотных операторов) а не для ЧСВ, как многие программисты.
P.S.: Когда 8 лет назад нашу фирму наши главные московские поставщики заставили перейти на 1С, первое время мы пытались нанимать 1С-ников, чтобы они настроили или запрограммировали нам то что нам нужно, к чему все привыкли, нужные отчеты. Так вот - ни один 1С-ник из ваших сраных Рарусов и Первых Битов не смог создать ничего, чем бы мы пользовались до сих пор. пришлось мне самому освоить 1С и все написать самому, под наших пользователей, чтобы им было удобно, под руководство, чтобы им было информативно. Я считаю, что пользу приносят только программисты на самом предприятии, которые знают бизнес-процессы и нужды пользователей. А в программистских фирмах сидят люди, от которых толку нет, только деньги сшибают сперва красивыми обещаниями, а на выходе пшик получается. |
|||
11
igel1969
03.11.22
✎
13:22
|
(9) спасибо, подумаю над оптимизацией.
|
|||
12
lubitelxml
03.11.22
✎
13:24
|
(10) проблема не во франчах, а в неумении со стороны бизнеса описать что необходимо.
|
|||
13
Бычье сердце
03.11.22
✎
13:24
|
(12)
Не все так однозначно |
|||
14
Масянька
03.11.22
✎
13:25
|
(12) Это бизнес попросил (описал ТЗ) перенести кнопку "Главное меню"?
|
|||
15
lubitelxml
03.11.22
✎
13:25
|
(8) я про открытие формы модально... этот метод например не во всех браузерах будет работать на сколько помню. Да и вообще в некоторых конфигурациях модальные окна запрещены
|
|||
16
Ryzeman
03.11.22
✎
13:25
|
(10) Не понял к чему весь этот P.S. и отсылка к ЧСВ. У меня не было цели ни оскорбить, ни наоборот как то потешить своё ЧСВ за твой счёт.
Рарус и ПБ - это франчи, там работают точно такие же программисты, как и везде. Повезёт - они сделают задачу хорошо, не повезёт - плохо. Это тоже не при чём. Есть библиотеки, которые разработаны самой фирмой 1с - БСП, БПО и т.д. Они используются в типовых тиражных решениях. Там не всегда на 100% всё оптимально и круто сделано, но, например, такие вещи как печать документов - нету ни одной причины не использовать. И моя подколка именно об этом. |
|||
17
H A D G E H O G s
03.11.22
✎
13:26
|
Я же говорил, что все как в старые добрые времена Г1С, см. (10)
|
|||
18
H A D G E H O G s
03.11.22
✎
13:27
|
Ностальжи
|
|||
19
Ryzeman
03.11.22
✎
13:27
|
(16) И в этом ключе топик выглядит буквально как "нигде не нашёл как сделать двухколёсное средство на металлической раме, в интернете только инфа кусками, делюсь своим рецептом, я назвал его "велосипед""
|
|||
20
H A D G E H O G s
03.11.22
✎
13:27
|
Спасибо вам, молодой человек, порадовали порадовали.
|
|||
21
mistеr
03.11.22
✎
13:27
|
(10) Я не понял, что из перечисленного оправдывает нежелание изучать стандартные библиотеки и следовать лучшим практикам?
|
|||
22
p-soft
03.11.22
✎
13:27
|
(10) джуниорский пафос пройдет со временем. проблемы взаимодействия заказчика айти услуг и исполнителей связаны со сложностью сферы айти, а не с жизненной несправедливостью, хотя она имеет место в отдельных случаях
|
|||
23
H A D G E H O G s
03.11.22
✎
13:27
|
(22) посмотри в его личку
|
|||
24
Garykom
гуру
03.11.22
✎
13:28
|
(0) ЭЭЭ во всех типовых можно выделить документы и нажать Печать не?
|
|||
25
Масянька
03.11.22
✎
13:29
|
(15) Не так давно зашел разговор с программистами_не_1С... Когда я сказала, что в 8.3 отказались от модальности - люди были в шоке "Чем не угодила?!"
|
|||
26
p-soft
03.11.22
✎
13:30
|
(23) ну с возрастом должен жизненный опыт добавляться.. хотя могу быть не прав
|
|||
27
Garykom
гуру
03.11.22
✎
13:30
|
(25) Хотя бы тем что другие открытые формы туда может что то прилетать пока модальную открыли и?
|
|||
28
Ryzeman
03.11.22
✎
13:30
|
(25) Ну, вне веб приложений модальность только мешает асинхронности. Она тоже не везде нужна
|
|||
29
Масянька
03.11.22
✎
13:32
|
(27) (28) Особенно хорошо это "реализовано" в конфигурации Документооборот.
|
|||
30
igel1969
03.11.22
✎
13:33
|
(16) когда я сделал поиск в Яндексе "1С массовая печать документов" мне вышло только через групповую обработку,
|
|||
31
igel1969
03.11.22
✎
13:34
|
(24) нет, в УТ 10.3 такого нет
|
|||
32
lodger
03.11.22
✎
13:37
|
(17) тут с первого слова в названии темы всё понятно.
|
|||
33
Garykom
гуру
03.11.22
✎
13:41
|
(29) В какой именно ДО?
Сча уже 3-й |
|||
34
Ryzeman
03.11.22
✎
13:42
|
(30) Потому что массовыми бывают только убийства :) В терминологии 1с это "групповая печать документов". Не знаю как яндекс, но гуглом находится и так и так.
(31) 10.3 сняли с поддержки в 2003-м году, если верить гуглу. Там эти библиотеки 19-летней давности... |
|||
35
Kassern
03.11.22
✎
13:43
|
(31) Если есть возможность, скачайте УТ11 и посмотрите как там реализована возможность печати в списках документов.
|
|||
36
lodger
03.11.22
✎
13:45
|
(33) я бы сказал, что 3шка в состоянии открытой беты. замотались уже есть этот кактус на опытном внедрении.
|
|||
37
Garykom
гуру
03.11.22
✎
13:47
|
(36) Внедрение с нуля или переход с ДО 2?
|
|||
38
Garykom
гуру
03.11.22
✎
13:47
|
(30) "Пакетная печать" выдает дофига готового
|
|||
39
p-soft
03.11.22
✎
13:48
|
(35) ут11 не самый лучший пример для разбора.. в бсп примеры есть и конфа меньше
|
|||
40
lubitelxml
03.11.22
✎
13:48
|
(36) тоже сейчас внедряем (я в качестве разраба) 3 версию. Пока не запустили, но в целом на этапе тестирования вроде норм работает
|
|||
41
H A D G E H O G s
03.11.22
✎
13:50
|
(0) Что мне напомнил автор
https://youtube.com/shorts/UUjLALBEC8A?feature=share |
|||
42
lodger
03.11.22
✎
13:51
|
(37) ни то, ни другое.
повторное внедрение, после успешной по своему перепиленной 2.1 (которую просто страшно уже даже пытаться обновлять). в 3шку заманило наличие из коробки всей той суеты, которой в 2.1 (5 лет назад) просто не было. |
|||
43
igel1969
03.11.22
✎
13:51
|
(38) "Пакетная печать" выдает как по одному документу напечатать весь пакет (и реализацию, и Счет-Фактуру, и транспортную). Это не то, что мне надо
(34) "групповая печать документов" дает групповую обработку справочников и документов, которой я не хочу учить операторов |
|||
44
H A D G E H O G s
03.11.22
✎
13:52
|
||||
45
lodger
03.11.22
✎
13:52
|
+(42) вкатываем туда другие отделы, оставив популяцию юзеров 2.1 в покое.
|
|||
46
lubitelxml
03.11.22
✎
13:53
|
(41) (44) спасибо, пятнично )
|
|||
47
H A D G E H O G s
03.11.22
✎
13:55
|
||||
48
igel1969
03.11.22
✎
13:59
|
(41) (44) (47) до слез )))))) спасибо
|
|||
49
Elf_80_lvl
03.11.22
✎
14:05
|
(10) Совершенно согласен. Местные программисты выполняют хотелки, а потом раз в 10 лет приходят люди и внедряют новую версию программы, потому, что программист уволился ,а старую обновлять уже невозможно.
|
|||
50
igel1969
03.11.22
✎
14:09
|
(49) и это тоже есть. Но эти 10 лет всем работать в системе будет удобно
|
|||
51
p-soft
03.11.22
✎
14:13
|
(50) открою секрет. нормальное решение должно иметь баланс между стоимостью его внедрения и последующими визгами пользователей. не стоит забывать что всем участникам платит бизнес
|
|||
52
p-soft
03.11.22
✎
14:14
|
(51) не точно выразился - стоимостью владения
|
|||
53
Fish
03.11.22
✎
14:17
|
У Гения появился серьёзный конкурент.
|
|||
54
Гипервизор
03.11.22
✎
14:18
|
(0) Одни эмоции.. Для начала, что за конфигурация у вас? А то пока какой-то NIH-синдром: "эти ваши.." (такие же ваши, как и наши), "не могут создать ничего удобного" (ну как задачу ставили) и т.д.
|
|||
55
Волшебник
модератор
03.11.22
✎
14:23
|
(44) Зачёт!
|
|||
56
vis_tmp
03.11.22
✎
14:45
|
(54) Написано же в (31) - УТ 10.3
|
|||
57
stix2010
03.11.22
✎
14:46
|
(0) и что?я тоже так умею
https://prnt.sc/XbBDBY12E_SD |
|||
58
НафНаф
03.11.22
✎
14:50
|
(10) ну а ты что тут делаешь тогда?
|
|||
59
Kassern
03.11.22
✎
14:54
|
(57) Зачем вы скидываете ссылки на запрещенные роскомнадзором ресурсы? Номер и дата основания для внесения в реестр - 2022-06-10-3245 от 14.06.2022
|
|||
60
stix2010
03.11.22
✎
15:00
|
(59) да ладно? у меня и кинозал.тв открывается
СтруктураМассивовДокументов=ПолучитьСтруктуруОтмеченныхДляПечатиДокументов(); Если СтруктураМассивовДокументов.МассивСчетовПечать.Количество()>0 Тогда Если (Объект.ПечатьСчет = Истина) и (Объект.ЭкземпляровСчет > 0) Тогда //МенеджерПечати = "Документ.СчетНаОплатуПокупателю"; МенеджерПечати = "Обработка.ПечатьСчетаНаОплату"; ИмяМакета = "СчетЗаказ"; //ИмяМакета = "СчетЗаказСПечатью"; Если Объект.ПросмотрПечати = Истина Тогда УправлениеПечатьюКлиент.ВыполнитьКомандуПечати(МенеджерПечати, ИмяМакета, СтруктураМассивовДокументов.МассивСчетовПечать, ЭтаФорма, Новый Структура); Иначе УправлениеПечатьюКлиент.ВыполнитьКомандуПечатиНаПринтер(МенеджерПечати, ИмяМакета, СтруктураМассивовДокументов.МассивСчетовПечать, Новый Структура); КонецЕсли; КонецЕсли; КонецЕсли; |
|||
61
Kassern
03.11.22
✎
15:02
|
(60) У меня с работы не открывает, с мобильного мегафон тоже посылает, только уже ссылаясь на то, что ресурс заблокирован.
|
|||
62
Гений 1С
гуру
03.11.22
✎
15:13
|
(0) эх, молодешь, надо писать "Мой гений дарит вам..."
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |