Печатные формы 1С. Знакомимся с объектами конфигурации: ТабличныйДокумент, Область, Макет. - Урок 17
Vložit
- čas přidán 14. 06. 2024
- Как создать печатную форму для документа в конфигурации 1С:Предприятие?
Задача совсем не сложная, на нужно разобраться всего с тремя объектами конфигурации и всё получится! Подробности в этом уроке.
Тайм-коды(закладки/навигация):
00:00 - Приветствие
00:29 - Что такое печатные формы
04:49 - С чего начать работу над Печатной формой
05:40 - Что могут объекты работы с Печатными формами
07:13 - Теоретическая часть
09:21 - Что такое ТабличныйДокумент
11:32 - Что такое Макет
12:53 - Что такое ОбластьТабличногоДокумента или Область Макета
13:18 - Построение печатной формы без макета
14:09 - Построение печатной формы с использованием Макета
18:12 - Чем отличается Вывести() от Присоединить()
21:02 - Практическая часть
21:12 - Создаём макет
36:01 - Пишем программный код вывода печатной формы
60:00 - Еще раз повторяем и закрепляем алгоритм действий
65:43 - Подводим Итоги
#ТЕХПОДДЕРЖКА #Курсы1С #Программист1С #1С
1С Программирование с нуля: • Бесплатный курс 1С Про...
Как раз вышел на работу, занимаюсь печатками как большинство падованов. И тут техподдержка видос дропает про печатки. красота
Олег, большое спасибо за этот урок, за Ваш труд!!! Смотрю все уроки с самого начала. Вам удалось выработать очень удобный формат изложения, когда одновременно сочетаются и теория и практика : ) Здоровья, Бодрости и Удачи Вам !!!
Ахах, тоже начинал с ваших уроков. Недавно устроился и тут видос классно)
Помогли чем-то уроки или не очень?
Супер, дождались.
Прокачал множество курсов по 1С программированию и отучился в ...--- очно на ознакомительных курсах, по другому не скажешь, по этой же дисциплине. Могу сказать однозначно: "Ваш курс наиболее доходчивый для новичка. Все остальные... Создается впечатление, что лектор читает уже для специалистов или для себя. Спасибо, жду продолжение. Мое мнение может не совпадать с мнением остальных слушателей.
Как раз после просмотра подобного курса окончательно решил, что надо попробовать сделать свой :)
Согласен полностью. Автору удается сочетать несочетуемое - на легкодоступном языке(практически на пальцах) доносить достаточно глубокий и сложный материал по 1С.
Мнение полностьб правильное. На всех остальных курсах реально нужно иметь уже представление о том, что и как работает (и не только про 1С, а так же SQL или администрирование Виндоус). Особенно если это курсы какого то Центра 1С. У ОЛега все очень круто. Если к его курсу взять ещё пару (есть в ютуб тоже хорошие ребята) то вся картина сложится, т.к. в одном курсе все не уложить.
очень понятное и приятное пояснение печатной формы
Олег, спасибо за очередное видео про 1С и его печатные формы!
Пожалуйста :)
Наконец-то))) Рад видеть!
Недавно начал изучать процесс программирования 1С, наткнулся на Ваш канал, очень полезные и легкоусвояемые видео, рад что не забросили, а то пугающий перерыв был! Идём дальше!
Иногда надо отдыхать... хотя бы менять занятия... :) :)
Добрый день, Олег! Спасибо за интересный урок.
Пожалуйста!
Спасибо за очередной урок!
Дождались!!!
Душевно объясняет!
хорошие уроки ! Спасибо!
Спасибо! Понятная и интересная подача материала!
Пожалуйста.
огромное спасибо за ваш труд
Пожалуйста
Спасибо! Очень полезно и Очень подробно.
Пожалуйста!
Спасибо за урок!
Пожалуйста
ура!!!!!!!!! новое видео
Ура!
Скептически отношусь к табличным документам, это было актуально давным давно. В наше время разметка XML предпочтительнее (XDTO). Вы можете и таблицы и графы и диаграммы бизнес-процессов размещать и все это динамически двигать и передавать в любые внешние источники и брать из внешних источников. На мой взгляд и 1с списывает со счетов табличные документы, объявляя поддержку ворд и прочих xml ориентированных форматов документов. Табличные документы это какой то костыль из прошлого, выдуманный 1с и живущий внутри 1с лет 20 назад такое встречал в различных программах
Очень даже неплохой "костыль"... вполне и широко применимый в наше время...
Когда цель - печатная форма, очень удобно. Ну и не только :)
Поддержать канал/Получить плюшки: boosty.to/tp2b
Поддержать рублем: donate.stream/tp2b
Файлы по урокам: yadi.sk/d/fbayAds8H5K67A?w=1
Спасибо! Заметил, что не вывели кнопку в список документа, хотя сам код в менеджере!
Опа, неужели
Отвечаю на Олег, Ваш вопрос. Рискну предположить , что подвал не идеален тем, что в зависимости от количество ингридиетов, занимаемая часть листа будет прыгать(либо весь лист забит ингридиетами, либо он будет практически пуст) , поэтому нам нужно отрегулировать количество строк в подвале , чтобы они не выпригивали на другой лист или наоборот
Спасибо за видео!
Подскажите, в чем разница между созданием команды на печать внутри формы (как было показано в ролике) и созданием объекта метаданных "Команда"?
Из того, что заметил я сам: при создании Команды в метаданных кнопка печати появляется также в форме списка, но при этом на форме она выводится именно как кнопка, а не внутри подменю (хотя, наверное, можно вывести и в подменю, но я пока не знаю как). В плане производительности большой разницы я не увидел.
Может быть есть еще какие-то различия?
Как раз в том, что команда внутри формы нужна именно для работы внутри формы, а команда объекта или общая команда доступна извне.
Из этого следует что что у них разный контекст...
Больше сходу в голову ни чего не приходит.
Олег, спасибо Вам большое за уроки.Благодаря Вам я уверен , что стану программистом 1с. ПС. Ошибка заключается в том, что Вы в параметре запроса не Не исправили параметр "Ссылка" на "СсылкаНаДокумент"
Забыл про ПродуктПредставление))
Добрый день, Олег ну ведь все же было хорошо до этого урока....Сегодня что-то пошло не так...У меня канеш...Почему у меня ничего не выводится на печать?! Можете посмотреть? Хотелось бы понимания. "Процедура не обнаружена". Что не так?
PS: Нашла ошибку. Спасибо!
автору респект, но как же сильно видео сжимается(скорее всего из-за ютуба).Вроде 1080p ,а качество ели-ели доходит до 720p-800p по ощущением.Решение этой проблема я вижу только , если монтировать в 1440p может тогда будет настоящие 1080p .Ибо не особо приятно смотреть на эту гору пикселей, но благодаря подачи все равно смотришь)
Спасибо. А почему нельзя фун.по печати разместить в модуле объекта, например?
Можно, и в обычном приложении так обычно и делали...
Но для того чтобы получить доступ к этой функции нам нужно получить объект, а это ресурсозатратно и далеко не всегда нужно.
ОбластьШапка.Параметры.НомерДокумента = Число(ВыборкаДетальныеЗаписи.Номер);
Вот так решил убрать нули.
Подскажите, пожалуйста, как можно в макете ПФ выделить часть текста жирным? К примеру в шаблоне № [НомерДокумента] от [ДатаДокумента] нужно выделить параметры жирным шрифтом.
На сколько мне известно, такой возможности в платформе нет. Придётся разбивать на ячейки.
Можно сделать специальный шрифт с отдельным набором жирных букв, но это сильно извращённый костыль, с которым придётся еще и шрифт поставлять, чтобы у клиентов читалось :)
Если есть необходимость гибко работать с форматированием, то можно использовать совсем другую технологию и формировать например документ Word, но у этого формата тоже есть оборотная сторона медали... например довольно своеобразная работа с таблицами...
ПолучитьМакет метод менеджера ,можно написать сокращено,в данном случае объект запрос можно использовать один,к базе можно обратится одним запросом ,шапку тянуть итогами
Это же курс для новичков без подготовки.... :)
Добрый день!
А если я создаю кнопку печати на ФормеСписка и создаю те же самые Процедуры и Функции, как передать параметр на ссылку документа в процедуре модуля ФормыСписка ?
Или из формы списка уже нужно обращаться не к МодулюМенеджера ?
Модуль менеджера он один для объекта, к нему можно обращаться и из формыОбъекта и из ФормыСписка и из других мест... главное НаСервере...
Берете НаКлиенте данные из текущей строки списка или из выделенных строк списка, передаете их на сервер и дальше всё как раньше делали :)
Здравствуйте. Если функцию перенести из модуля менеджера в модуль объекта, то код не работает. В чем причина?
Здравствуйте :)
Всё просто... чтобы добраться до экспортных процедур и функций объявленных в модуле объекта, нам нужно сначала получить этот объект, мы скоро этим будем заниматься и я попробую подробно рассказать чем отличается например СправочникСсылка от СправочникОбъект и почему в формах волшебное слово "Объект." не даёт доступа ко всем его методам и свойствам, хотя логично ожидать их там увидеть :) и что это не совсем Объект в полном понимании, а всего лишь его краткое представление :)
Добрый день, Олег! Я вне "какую" не могу назвать первую часть нашего макета "Приготовление продуктов" в документе "Приготовление продуктов"!
Вот, я сильно удиваился когда, у меня получилось дать название второй части макете "Строка", ещё раз повторно выражусь "Как мне назвать первую часть нашего макета"?
такой формат только для спонсоров
Домашнее задание выполнил вот таким образом:
Функция УбратьЛидирующиеНули(Строка)
Рез = СокрЛП(Строка);
Пока Лев(Рез, 1) = "0" Цикл
Рез = Сред(Рез, 2);
КонецЦикла;
Возврат Рез;
КонецФункции
ОбластьШапка.Параметры.НомерДокумента = УбратьЛидирующиеНули(Выборка.Номер);
Врать не буду, скажу как есть . Функцию нашел в интернете. Воспользовался одним из твоих лайфаков, поиска в интернете
С лидирующими нулями , что то не получается. Можно подсказку?
В новом видео...
!!!!!!!!!!
на 35:50 вы разъединяете и объединяете ячейки и текст у вас не исчезает, а у меня исчезает почему-то?
если текст в левой-верхней ячейки из объединяемых, то он не пропадёт при объединении :)
@@tp2b спасибо, сегодня методом тыка разобрался 🤝
Пытаюсь задонатить, выходит ошибка постоянно. Пишет: "Похоже что это техническая ошибка." Что я не так делаю?
Возможно сейчас с сервисом донатов что-то не так... но вообще он рабочий, вчера донат приходил.
Решение домашнего задания. Одно из решений: формат(Число(Выборка.Номер),"ЧГ =");
Ваш комментарий в новом видео :)
Для чего мы в модуле формы вызывали сервер, если сразу могли обратиться к модулю менеджера? Или так не работает и приходится из сервера вызывать серверную процедуру еще раз?
Попробуйте и увидите результат... потом посмотрите урок про контекст :)
@@tp2b Да. Получил ошибку, что процедура не определена. ПОискал в интернете, и нашел только такое объяснение (если вы лучше расскажите, то вообще великолепно будет). "Есть разница между «функция есть на сервере» и «функцию можно вызывать на сервере». Во втором случае функция «видна» с клиента и может быть вызвана. В первом - не видна на клиенте и может быть вызвана только из другой функции, выполняемой на сервере. Поэтому есть инструкция #Сервер (доступен вызов с клиенте) и #НаСервере (видна только на сервере), и аналогично для клиента." Но в модуле менеджера такая же деректива &НаСервере, что и в модуле формы. КАк вот новичку понять, что это не одно и тоже, и модуль менеджера нельзя вызвать из клиента. Или это аналогично общему модулю с пометкой "Сервер", но без пометки "Вызов сервера", да?
Здесь очень важно понимание контекста, об этом было отдельное большое видео.
Менеджеры объектов доступны только на сервере и не только они. Их нельзя увидеть из клиентского контекста и вызвать соответственно тоже нельзя.
А почему нельзя рисовать такой макет, где в каждой ячейке свои данные? Ведь при выгрузке это в эксель, потом вручную фиг поправить) Там такое количество ячеек будет🙉
Можно, просто есть один очень пакостный нюанс в этом... Если получается сложная структура и заказчик просит что-то подвинуть или колонку добавить/поправить, то приходится переделывать половину макета, чтобы всё осталось на своих местах. А с такой "не оптимальной сеткой" пространство для манёвра больше.
Об этом еще поговорим в следующих уроках, там много мелочей которые портят жизнь и самим разработчикам, и конечным пользователям :) Коварные Макеты 1С :)
преподавание с элементами юмора - вот в чем фишка.
Здравствуйте у меня 1с ошибка даёт можете конфигурация отправить
boosty.to/tp2b
@@tp2b тут невозможно скачать можете в другом сайте отправить
Всё возможно, я сам выкладывал. Ссылки там рабочие.
@@tp2b там платный
А бесплатно - самостоятельно по материалам уроков :)
3 раза переделывал, Шапка появляется, подвал появляется, строка не появляется .
Кто может посмотреть конфигурацию и указать на ошибку?)помогите!)
На крайний случай: boosty.to/tp2b/purchase/901928?ssource=DIRECT&share=subscription_link
Чтоб убрать нули, просто делим на 1))))))
ОбластьШапка.Параметры.НомерДокумента = ВыборкаДетальныеЗаписи.Номер / 1;
Это неявное приведение... можно с тем же успехом написать Число(....)
НО если там не только цифры... ?
@@tp2b Не, ну я под конкретный вопрос ответ придумывал) Ужо следующий урок посмотрел и понял, что в жизни двумя символами не всегда задачки решаются.....
45.00 зачем писать такую конструкцию: Документы.ПриготовлениеПродуктов.ПечатьПриготовленияПродуктов(СсылкаНаДокумент); Когда, наверно, можно просто вызвать функцию из модуля менеджера, а именно: ПечатьПриготовленияПродуктов(СсылкаНаДокумент);
Если внутри контекста модуля менеджера - да.
Но нам нужно вызвать функцию модуля менеджера из контекста формы...
Или я не понял Ваш вопрос.
Комментарии для продвижения. У меня желание пропало учиться. Надо как то осилить лень
Когда лень лениться - пора учиться!
Все Васи в комментариях негодуют
разъярённые Маши вошли в чат
Что не красиво... Ставим Яичница из 2х яиц, ставим 10 порций-записать-печать-будет указано 10 порций, а продуктов хватает только на 2
Слишком много воды