powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Связать класс и форму TForm
14 сообщений из 39, страница 2 из 2
Связать класс и форму TForm
    #39533272
stanilar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DFilushinTDataset, TDbEdit, TDataSource

TDataSource на той-же форме, что и TDataset, или той, что содержит TDbEdit?
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39533683
Уважаемый автор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не использую DB-Aware компоненты, использую обычные контролы, заполнение и сохранение все через select, update, insert.
Зато все контролируемо и гибко!
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39535150
DFilushin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Много мнений, есть интересные идеи (rtti, автогенерация форм и т.д).
Ранее была программа для медицины. Вот проблемы почему написал пост. В случае использования DBAware (TDbEdit, TDataSource, TDataset) использовал модуль данных для сеток, справочников. Редактирование записи в форме со своим датасетом в каждой форме. Нужно редактировать данные пациента - весь набор данных с селектом и апдейтом в компоненте на форме редакторе пациента.
Справочники и выбор данных из справочников в отдельном модуле с передачей только датасета, всё остально ренерится автоматом вплоть до редактора справочника. Уникальные формы - да, ручные с одним датасетом, как выше писал.
Вот где самое интересное. Начинаем управлять назначениями на пациентов, есть сущность - пациент, его назначения. Назначения можно продлить, прекратить приём, переназначить и т.д. В каком месте это обрабатывать? В форме назначения или всё-таки писать класс для реализации, который вызовет хранимку в бд?
Один из вариантов это невизуальный класс, который возвращает датасет для грида и действительно всё обрабатывает по данным. И тогда в форме лишь вызываешь функции обработки.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39535637
stanilar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DFilushinВ форме назначения или всё-таки писать класс для реализации, который вызовет хранимку в бд?

Это путь к размазыванию логики между сервером и клиентом. Чем больше будет размазано, тем сложнее будет сопровождать.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39535663
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никакое MVC не поможет плохому дизайну ПО. Я не говорю, что он у вас такой. Просто для информации. Стоит вначале хорошо продумать общий программный дизайн. А уже как его реализовать - используя MVC, или просто на уровне батонокидательства - дело не столь важное.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39535693
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
makhaonНикакое MVC не поможет плохому дизайну ПО...
"Да, но зато ты умрешь уставшим" -©.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39535717
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДmakhaonНикакое MVC не поможет плохому дизайну ПО...
"Да, но зато ты умрешь уставшим" -©.Ахаха. В точку.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536295
DFilushin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stanilar,

и как тогда?
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536304
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для большинства не сложных задач достаточно обработки Button1Click.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536319
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreatДля большинства не сложных задач достаточно обработки Button1Click.
Для более сложных подойдёт Action1Click
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536332
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DFilushinstanilar,

и как тогда?
Когда наступит "тогда", тогда и думать будешь.
Говнокодь, как бог на душу положит, пока проект не станет сложным. Потом проведешь рефакторинг.

...а в следующий раз все сделаешь сразу по уму, канешна.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536493
stanilar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DFilushinи как тогда?
Для себя принял что в учетках клиент нужен только для отображения/редактирования информации.
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536518
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DFilushinDimaBr,
ручками это типа ReadDocument и там
edtNumber.TExt:= FDocument.Number;
edtDateDoc.Value:= FDocument.DateDoc...

И на кнопке Save - SaveDocument, где делать обратное и вызывать FDocument.Save?
Если не использовать db-aware элементы управления, то я думаю, что да, примерно так. Если действия объемные и сложные, то можно какую-то часть вынести в отдельную процедуру. Ну это же здравый смысл, удобство повторного использования кода, удобство чтения, красота наконец)) .

А если использовать db-aware элементы управления, я, например, с БД написал несколько маленьких программ, а вот такую относительно большую - одну, переписывал написанную на Access когда-то другим человеком программу учета производства у нас в фирме. И по ходу её написания, понятное дело, учился. В частности, сначала кидал все датасаты, датасорцы на Датамодуль. Но когда их там стало несколько десятков и стало проблемой найти что-то, от решил, что это ерунда и теперь размещаю прямо на новых формах, если что-то новое добавлял. Можно, конечно заводить датамодули для отдельных форм, но это ведь тоже требует доп. действий - когда форма создается, создать датамодуль, пллюс создать его первым, чтобы не получить acess violation, когда при создании формы пытаешься открыть наборы данных. Потом удалить его вместе с формой. Ну то есть тут тоже нужно смотреть и выбирать, как удобнее.

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

Много мнений, есть интересные идеи Ну в общем, это как мебель подбирать и расставлять для квартиры - тут могут тебе надавать десятки советов самых разных, а выбирать и расставлять все равно тебе (и жене :) ).
...
Рейтинг: 0 / 0
Связать класс и форму TForm
    #39536825
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s62, на всякий случай,
конечно же не всегда
выделить ее отдельно, а в OnClick добавить вызов процедуры
так тоже
достаточно обработки Button1Click
...
Рейтинг: 0 / 0
14 сообщений из 39, страница 2 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Связать класс и форму TForm
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]