Нужна помощь новичку в доработке стандартного решения

1. ChapaevAB 24.07.24 07:20 Сейчас в теме
Приветствую уважаемые форумчане, нужна ваша помощь новичку в разработке 1С. Есть задача: Доработать стандартную форму Накладная на внутреннее перемещение (ТОРГ-13) и добавить в нее определенные приписки с наименованиями в таблице, в итоге получить ВПФ на выходе.

Мои действия: я создал свою ВПФ, нашел в конфигурации используемый Макет - ПФ_MXL_ТОРГ13_ru, скопировал его. Прописал СведенияОВнешнейОбработке, процедуру Печать и приступил к написанию функции формирования табличного документа, понял, что нужно вроде бы скопировать необходимые участки кода из штатной конфигурации, которые обеспечат вывод нужной информации в этот макет, открыл Модуль объекта где находится этот макет — Документы.ПеремещениеТоваров и тут начались проблемы и ступор: куча процедур и функций, я тупо не понимаю, что для чего и что нужно скопировать.

Подскажите:
1. Правильно ли я действую, может для решения таких задач нужно действовать как-то по другому?
2. Понимаю, что не хватает опыта, хотя давненько как-то уже решал такую задачу, но она была видимо гораздо проще, там буквально скопировал запрос и еще что-то. Посоветуйте, какой-нибудь материал (статьи, видео, книги) по данному вопросу. Нужно хорошо его изучить, а то похоже мне теперь придется часто с этим сталкиваться.
3. Ну и может кто что подскажет конкретно по этой задаче, что откуда скопировать?
4. Я правильно понимаю, что в этом модуле базовой конфигурации описаны функции и процедуры для решения разного рода задач и вывода в разные макеты? Как мне понять из всего обилия, что мне нужно, а что нет?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. Zevzm 24.07.24 09:19 Сейчас в теме
(1) Как вариант, можно работать с уже сформированным штатной процедурой ТабДок-ом. Найти нужные области и сделать нужные приписки и т.п.
2. Asgard90 24.07.24 07:46 Сейчас в теме
Это задача для программиста 1С. Если вы обслуживаете ИТ систему, обратитесь в аутсорс или наймите штатного специалиста. Что бы понять что куда и зачем "копировать" нужно понимать как это работает. Курсов и книг официальных мильон, можно начать с базовых, вроде практического пособия разработчика на изучение и опыт уйдут годы)

Ну, а если по теме) смотрим модуль менеджера и процедуру "печать" или около того, все что внутри формирует вывод таб.документа )) Если нужна "преписка" не формируемая программно то преписывайте прямо в макет)) ну или смотрим какие параметры в макете изучаем как они заполняются, ииии делаем сами подобным образом
starjevschik; +1 Ответить
3. usershmuser 24.07.24 09:11 Сейчас в теме
(2) Как то пытался таким образом упд подкрутить, прошелся отладкой по процедуре печати и оказалось проще заставить бухов штатно работать)))) либо просто свое заполнение формы писать пришлось бы (это с изучением реквизитов, что от куда и почему)
5. user1959211 24.07.24 09:26 Сейчас в теме
открываете клиента, в конфигураторе открываете стек вызовов, на клиенте печатаете макет кот необходимо изменить, в стеке вызова находите вызову процед.функций кот формируют печатную форму. Далее берете Макет добавляете то что вам необходимо, в новый измененный макет вызываете функции печати, по остальным областям закидываете уже свои данные, и печатная форма кот вам необходима готова
11. Kilka_v_Kepke 26.07.24 15:10 Сейчас в теме
(5) так так, беру ручку, записываю
user2033930; +1 Ответить
6. Bukaska 140 24.07.24 10:15 Сейчас в теме
Возьмите вы шаблон внешней печатной формы и в нем доработать только процедуру печати.
7. ChapaevAB 25.07.24 10:42 Сейчас в теме
(6) Можно подробнее, что за шаблон? Макет?
10. Bukaska 140 26.07.24 15:08 Сейчас в теме
(7) Посмотрите по публикациям в каталоге, таких тут много
8. ChapaevAB 26.07.24 11:31 Сейчас в теме
В принципе, все оказалось не очень то и сложно. В тупик я зашел потому что открыл Модуль объекта и пытался в нем найти формирование документа, а нужно было смотреть в Модуль менеджера, в чем у них разница между этими модулями особо и не понял, надо изучать.

Далее еще смешнее, в этом модуле описаны не все формирования макетов, а только ПФ_MXL_НакладнаяНаПеремещение, понимаю, что где-то все-таки в конфигурации должно фигурировать имя нужного мне макета ПФ_MXL_ТОРГ13_ru воспользовался глобальным поискам по модулям и был приятно удивлен результатом. Описание формирования макета, а именно базовая функция СформироватьПечатнуюФормуТОРГ13 нашлась в общем модуле.

Не знаю где логика, но по мне так бред какой-то, макет лежит в локальном месте, а его вызов из общего.

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

Так и не понял как и зачем пользоваться отладчиком, это что-то сложное, пробовал, очень интересно, но нифига не понятно)))

Всем спасибо за помощь.

P.S. в решении данного вопроса, правда жаль что нашел поздно, очень поможет статья с инфостарта Создание ВПФ с нуля после того, как день потратил на изучение этого вопроса, данная статья была словно глоток свежего воздуха, в которой структуризована последовательность действий, правда не хватает лайфхака с глобальным поиском.
9. Lenten 26 26.07.24 12:36 Сейчас в теме
на будущее

в типовых конфах есть возможность менять макеты в режиме предприятия (администрирование - печатные формы отчеты обработки - макеты печатных форм). Иногда этого хватает

внешние печатные формы часто можно скачать в инете, а не делать самому
12. ChapaevAB 29.07.24 07:42 Сейчас в теме
(9) Удобная штука, спасибо. Подскажите, после обновления базы, изменения в макетах сделанные таким способом, будут сброшены на штатные?
13. Lenten 26 29.07.24 12:03 Сейчас в теме
(12) не будут сброшены
ChapaevAB; +1 Ответить
14. MaQo 29.07.24 18:01 Сейчас в теме
(12)
В модуль менеджера вы обращаетесь Справочники.Контрагенты.ВашМетод
А в модуль объекта вы обращаетесь Справочники.Контрагенты.НайтиПоКоду("0001").ВашМетод

То есть в модуле объекта работают с каким-то конкретным экземпляром, с самим объектом. А в модуле менеджера или с нескольким, или вообще без объекта. Это такой следующий уровень абстракции.

Вот на итс статья https://its.1c.ru/db/v8std/content/486/hdoc

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

вот статья про отладчик https://v8.1c.ru/platforma/otladchik/
15. ChapaevAB 30.07.24 11:50 Сейчас в теме
17. user2033930 30.07.24 12:14 Сейчас в теме
16. user2033930 30.07.24 12:14 Сейчас в теме
(14)
А в модуль объекта вы обращаетесь Справочники.Контрагенты.НайтиПоКоду("0001").ВашМетод
А вот теперь давай по буквам
Что возвращает НайтиПоКоду()?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот