0. kalyaka 521 10.07.18 23:35 Сейчас в теме

Работа с данными выбора

В управляемом интерфейсе заложена мощная возможность описывать связи реквизитов формы через параметры. Установка параметров связей позволяет ограничить выбор данных так, чтобы целостность данных была обеспечена на этапе ввода. Однако без дополнительного программирования задать можно только самые простые связи. Такие условия связи, как зависимость от реквизита через точку или зависимость через дополнительное отношение, заданное в регистре сведений - уже задать без программирования не получится.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. bulpi 158 17.07.18 15:47 Сейчас в теме
Толково написано. Стиль строгий. Наукой автор занимался ?
3. kalyaka 521 17.07.18 19:55 Сейчас в теме
(1) Ну так это ж профессиональный ресурс и статьи я пишу для профессионалов.

Наукой не занимался, но по мне так написание таких статей вполне себе научный труд :)
2. SlavaKron 17.07.18 19:36 Сейчас в теме
Знаете, вы где-то говорили про увеличение уровня абстракции кода, но это уже перебор. Я тоже стремлюсь к красоте, но ведь это 1с, какая к черту красота!
4. kalyaka 521 17.07.18 20:47 Сейчас в теме
(2) В чем же перебор? Или Вам понравилось и это было восхищение? :)

Под абстракцией я имел в виду обобщенное решение, для которого применение не ограничено только одним, рассматриваемым в статье случаем. Нужно проделать большую работу, прежде чем на основе массива конкретных решений будет получено одно общее. И это решение уже будет иметь ценность благодаря тому, что множество велосипедов больше не потребует своего изобретения.
Brawler; MSK_Step; +2 Ответить
15. SlavaKron 21.07.18 09:51 Сейчас в теме
(4) Мне понравился ваш подход, но рассматриваемая задача, думаю, не требует таких усилий. Есть 2 крайности - хардкодинг и гипертрофированная универсализация. Оптимальное решение где-то посередине.
16. kalyaka 521 21.07.18 20:18 Сейчас в теме
(15)
рассматриваемая задача, думаю, не требует таких усилий

Наверное соглашусь с Вами отчасти. Задача выбора из списка слишком уж мелкая и вполне поддерживается платформой, а где нет - варианты тоже найдутся (приведены в статье).

С другой стороны, данное решение есть часть решения более широкого класса задач: формальное описание выбора, проверка выбранного значения, поддержка выбора интерактивно из списка или формы выбора, поддержка не интерактивного режима работы в модели данных.

Иными словами данная задача была решена в рамках другой задачи - реализации полноценной модели MVC и качества данных ввода. И это уже совсем другая история.

На данный момент у меня уже есть полноценное решение этой задачи. Представить его широкой публике я планирую где-то в сентябре-октябре этого года. А пока я готовлю серию публикаций (Шаблон MVC, Управление состоянием формы, Работа с данными выбора, Работа с данными заполнения), в которых представлены отдельные решения из этой подсистемы.
5. Leon75 18.07.18 11:12 Сейчас в теме
Четкая статья. Но когда сталкиваешься с пушистотью логики пользователей, то и ограничение их выбора четкой логикой и не ограничение с надеждой на профессионализм пользователя не ставит точку в решении. "Мне нужно выбрать именно такую статью расхода, а программа не дает". И почти одновременно: "А почему мне программа дала выбрать это значение? Она же должна проверять." И дифференцированный подход не помогает, потому что мнения меняются как положение флюгера. В итоге рождаются монструозные решения, изобилуюшие ошибками. Тормозящие, перегруженные и неудобные.
Я понимаю, жизнь должна продолжаться, но безуспешные попытки закрыть один вопрос на 100% и перейти к следующему напоминают сизифов труд.
OrcaMax; t.v.s.; Rustig; Brawler; +4 Ответить
6. kalyaka 521 18.07.18 20:10 Сейчас в теме
(5) Возможно пользователи в чем то все-таки правы :)

Дело в том, что условия выбора не всегда один раз заданы и не изменяются. Вполне можно допустить, что при определенных условиях действуют одни ограничения, а при других - другие.

Например, в документе «Списание с расчетного счета» Счет контрагента для внешних платежей подчинен Контрагенту, однако для внутренних операций это уже не так: реквизит Контрагент должен быть пустым, а Счет контрагента заполняется счетом Организации.

Проблему связей я исследовал в своей работе ранее Шаблон MVC. У меня есть уже обновленное решение, версию которого я представлю в последующих публикациях (планирую обновить старые публикации и представить новое общее решение).

Если Вы поделитесь своими примерами из жизни, когда противоречивые требования не позволяют настроить правильные отборы для выбора данных, то я бы их разобрал в рамках представленного мной решения.
7. triviumfan 10 18.07.18 20:42 Сейчас в теме
Я, пожалуй, воспользуюсь православной "обработкой выбора" :)
Статья понравилась только манерой изложения.
8. kalyaka 521 18.07.18 21:15 Сейчас в теме
10. triviumfan 10 19.07.18 15:26 Сейчас в теме
(9) За такое можно и"банан поймать". Субординацию держите.
11. the1 395 19.07.18 19:58 Сейчас в теме
(10) Извините, не хотел обидеть, шутка не удалась 😐
12. dabu-dabu 6 20.07.18 10:54 Сейчас в теме
Это конечно здорово и интересно, но без реализации аналогичных функций для подбора при вводе текста бессмысленно
13. kalyaka 521 20.07.18 12:02 Сейчас в теме
(12) Ну это можно :)
Реализацию смотрите в параграфе Список данных выбора
14. dabu-dabu 6 20.07.18 15:41 Сейчас в теме
(13) Да, пропустил. Извиняюсь.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист/Cтарший программист 1С
Москва
зарплата от 100 000 руб. до 250 000 руб.
Полный день

Программист 1С
Калининград
зарплата от 60 000 руб. до 80 000 руб.
Полный день

Руководитель проектов 1С
Санкт-Петербург
Полный день

Программист 1С
Новосибирск
зарплата от 80 000 руб. до 150 000 руб.
Полный день

Программист 1С
Красноярск
зарплата от 50 000 руб.
По совместительству