Доработка ABC-шаблона BrowseSelectButton

Программы на Clarion, шаблоны, библиотеки и пр.

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

kreator писал(а): 25 Июль 2023, 13:37 Зачем обновлять окно при получении фокуса.
Бывают сетевые программы. И если пользователь возвращается к работе с окном - то в нём актуализируется
состояние списка с учётом изменений сделанных с других рабочих станций (или копий программы).
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Игорь Столяров писал(а): 24 Июль 2023, 21:00
finsoftrz писал(а): 24 Июль 2023, 20:36 Понятное и универсальное решение это как?
Наверно, если мы делаем операции с записью в потоке - то делаем их все.
Безусловно, многое зависит от применяемой бизнес-модели, да и просто сложившейся практики работы. :)
Подумал, подумал, приделал у себя для форм справочника контрагентов и товаров. То есть, когда из броуза справочника вызываем форму, то как обычно, в том же потоке. А если вызываем форму справочника из формы документа или журнала документов, то открывается в отдельном потоке на редактирование. Напоминает открытие документов из отчетов. Цена вопроса пара небольших процедур и активация в шаблонах. Мне кажется, так юзабельно. Для остальных справочников не стал пока, потребности нет, по прежнему открываются в том же потоке в режиме просмотра.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

В догонку, если не очень понятно, про что речь, могу заскринить.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Игорь Столяров писал(а): 25 Июль 2023, 13:48
kreator писал(а): 25 Июль 2023, 13:37 Зачем обновлять окно при получении фокуса.
Бывают сетевые программы. И если пользователь возвращается к работе с окном - то в нём актуализируется
состояние списка с учётом изменений сделанных с других рабочих станций (или копий программы).
Или даже под одним пользователем. Открыт у нас журнал накладных, в нем колонка с названием покупателя. Мы в другом потоке в справочнике меняем название этого покупателя, а в журнале он остается со старым названием - это не очень хорошо. В ШВС обновление содержимого броузов стандартно делается при получении окном фокуса.

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

Раз пошла такая пьянка (про начальный вопрос в теме успешно заболтали :-)), можно вернуться к подсветке пустых полей ввода с обязательным заполнением. В 1С8 подчеркивают тонкой ломанной красной линией. У нас, наверно, так стандартными средствами не получится. Может, промп красить в красный цвет?
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

finsoftrz писал(а): 25 Июль 2023, 14:06 Мне кажется, так юзабельно
Очень даже ! Например мона открыть одновременно несколько карточек товаров по строкам содержания для просмотра и сравнения. :)
Но лучше контролировать, что карточка конкретного товара уже открыта на изменение (или открывать в потоке в режиме просмотра).

В принципе, шаблоны ABC (про Legacy не помню) не дадут затереть внесённые изменения - но выгладит это как катастрофа. ;)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Игорь Столяров писал(а): 25 Июль 2023, 14:21
finsoftrz писал(а): 25 Июль 2023, 14:06 Мне кажется, так юзабельно
Очень даже ! Например мона открыть одновременно несколько карточек товаров по строкам содержания для просмотра и сравнения. :)
Но лучше контролировать, что карточка конкретного товара уже открыта на изменение (или открывать в потоке в режиме просмотра).
Само собой, контролируется. Если уже открыта у одного пользователя с тем же id записи, то фокус переключится на этот поток. А если кто-то другой открыл на изменение, то при попытке изменить программа сообщает, кто редактирует и предлагает открыть в режиме просмотра.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

Ну вот и отжали что-то полезное и из этой темы тоже. :)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

А как насчет подсветке пустых полей ввода с обязательным заполнением? "В 1С8 подчеркивают тонкой ломанной красной линией. У нас, наверно, так стандартными средствами не получится. Может, промп красить в красный цвет?" :-)
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

finsoftrz писал(а): 25 Июль 2023, 15:30 Может, промп красить в красный цвет?
Зачем Prompt ? Его может и не быть ... Штатными средствами ведь подсвечивается само обязательное для ввода поле ...

1.jpg
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Не поняли. Подсвечивание обязательного для ввода поля с незаполненным значением.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

Возможно и не понял ... Т.е. Вы хотите как-то подсветить в карточке ВСЕ поля (или их Prompt) обязательные для ввода ?

Первое, что приходит в голову - после открытия окна делаем цикл по всем полям, выбираем ENTRY/TEXT
с атрибутом REQUIRED и подсвечиваем само поле, либо его Prompt (? - 1) ... Или не то ? :shock:
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Игорь Столяров писал(а): 25 Июль 2023, 16:11 Возможно и не понял ... Т.е. Вы хотите как-то подсветить в карточке ВСЕ поля (или их Prompt) обязательные для ввода ?

Первое, что приходит в голову - после открытия окна делаем цикл по всем полям, выбираем ENTRY/TEXT
с атрибутом REQUIRED и подсвечиваем само поле, либо его Prompt (? - 1) ... Или не то ? :shock:
Почти то, только подсвечиваем поля, у которых не заполнено значение. Как технически реализовать, понятно. Вопрос больше в вариантах подсветки или другого выделения. А вариантов вроде и немного. Фон поля выделять слишком пестро. Можно подчеркивание красной линией, не по всей длине, а частично. Ну или промпт покрасить.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение finsoftrz »

Такие варианты, например.
req.jpg
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Доработка ABC-шаблона BrowseSelectButton

Сообщение Игорь Столяров »

finsoftrz писал(а): 25 Июль 2023, 16:29 Фон поля выделять слишком пестро.
Ну да. Фон - это удачное решение для подсветки текущего поля ввода.
А если в карточке сразу будут "гореть" штук 20 полей - то это будет перебор ... :(

Линии - это дополнительные элементы в форме и только для декора.
Их нужно будет рисовать, содержать, фиксить (если форма имеет переменный размер) - не бест.

Тогда, действительно, остаётся Prompt. Из вариантов подчеркнуть или выделить цветом - я бы выбрал цвет ! :)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3134
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Доработка ABC-шаблона BrowseSelectButton

Сообщение Дед Пахом »

finsoftrz писал(а): 25 Июль 2023, 16:29 Почти то, только подсвечиваем поля, у которых не заполнено значение. Как технически реализовать, понятно. Вопрос больше в вариантах подсветки или другого выделения. А вариантов вроде и немного. Фон поля выделять слишком пестро. Можно подчеркивание красной линией, не по всей длине, а частично. Ну или промпт покрасить.
Стандартное решение - cue banner (он же placeholder): серый текст типа "Введите фамилию".
С уважением, ДП
Ответить