Помогите научиться оптимально програмировать.

  • Автор темы Автор темы KiR
  • Дата начала Дата начала
Давайте вернмся в тему. Попрошу пожалуйста примеров. Вот стоит какая-то задача, ну скажем загрузить некие данные в бд. Понятно, что рисуется некая форма диалога и переходим к модулю. На каком этапе начинается использование процедур (кроме одной, которая привязанна к кнопке)? В смысле в какой последовательности следует "планировать" структуту модуля? надеюсь понятно объяснился?...

попытаюсь объяснить свое видиние на пальцах. Вот пишешь ты отчет неважно какой. Есть кнопарь "сформировать", и ты под эту кнопу запихиваешь всю задачу. Пишешь строки, например:
Пока Запрос.Группировка(1)=1 Цикл \\ здесь все понятно
....
док = Запрос.Работа; \\ тут присваиваешь переменной док запрос.Работа, для удобства

допустим реквизит
"РаботаВыполненнаяСотрудника" это таблица значений документа "Работы", куда вписано эдак от 1 до 10 сотрудников с ФИО и храним нашу тз в реквизите докуметна (строка неогран длины) НашаТЗ.

т = ИзСтрокиВнутр(док.НашаТЗ); \\ тут загружаешь ТЗ документа в переменную "т"
РаботаВыполненная = Запрос.Работа; \\ тут ты присваиваешь переменной РаботаВыполненная выборку Работ из документа например "Работы"
РаботаВыполненнаяСотрудника = ПолучитьСотрудников(т); \\ вот тут самое интересное, собственно то что хочу показать,
Вот тут ты и думаешь, "а там же в доке ТЗ и ее не вытянуть как Запрос.РаботаВыполненнаяСотрудника". И правильно думаешь, и тут приходит одно написать ф-цию которая это сделает и вызвать в нужно месте. вот и все

Ф-ция ПолучитьСотрудника(запрос)

сотр = "";
запрос.ВыбратьСтроки()
пока Запрос.ПолучитьСтроку=1 Цикл
сотр = сотр + Запрос.Сотрудник+РазделительСтрок;
КонецЕсли;
Возврат сотр;
КонецФ

И вызываешь ее как покано выше. она вернет тебе сотрудников которые в ТЗ в столбик



Написал как мог, ибо спать хочу. Надеюсь доходчиво
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab