Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.07.31;
Скачать: CL | DM;

Вниз

приложение в делфи на подобии 1с   Найти похожие ветки 

 
MsFoxy ©   (2011-04-25 12:31) [0]

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

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

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


 
И. Павел ©   (2011-04-25 14:11) [1]

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

Просто прочитайте какой-нибудь самоучитель по Delphi, и вам сразу станет ясно, какая концепция разработки в нем применяется.


 
Sergey13 ©   (2011-04-25 14:12) [2]

> [0] MsFoxy ©   (25.04.11 12:31)

Я так понимаю, что ваше личное участие в разработке данного "удобного приложения" должно свестись к выбору дизайна пользовательского интерфейса ("наподобии 1с") и общему руководству?


 
Anatoly Podgoretsky ©   (2011-04-25 14:17) [3]

> MsFoxy  (25.04.2011 12:31:00)  [0]

Похоже тебе еще долго, долго надо учить основы. Или нанять программиста.


 
clickmaker ©   (2011-04-25 14:27) [4]

форму справочника можно и одну сделать, универсальную. Если иметь описание самого справочника в базе (ID, исходная таблица, заголовки полей и т.д). Тогда форма может представлять из себя DBGrid и тулбар с кнопками для стандартных действий


 
OW ©   (2011-04-25 14:40) [5]


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

сделал так.
при добавление главному окну отсылается сообщение, какой справочник открыть с признаком "для выбора", и handle ожидающего элемента. Каждый справочник имеет такие аттрибуты, как флаг для выбора ли он(+Handle, куда надо сообщение будет послать, если выбор состоится)
см:

> форму справочника можно и одну сделать, универсальную. Если
> иметь описание самого справочника в базе (ID, исходная таблица,
>  заголовки полей и т.д). Тогда форма может представлять
> из себя DBGrid и тулбар с кнопками для стандартных действий

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

Открытие для выбора справочка, внешне добавляет ему кнопку Выбор на панели, нажатие на которую отправляет для handle ожидающего элемента соотвествующее сообщение о выборе.

не, реально долго писать :) ну ка..


 
clickmaker ©   (2011-04-25 14:44) [6]

> (+Handle, куда надо сообщение будет послать, если выбор
> состоится)

если модальный, то можно и через out-параметр возвращать


 
OW ©   (2011-04-25 15:03) [7]


> если модальный

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

На закрытие без выбора отправляется фиктивный выбор ожидающему, id = -1,
а перед смертью, каждое окно, шлет messge гланому окну, которое все дочерние окна перебирает и затирает их handle ожиданий = умирающему (или на себя переписывает, т.к. иные в неикй "буфер" собирает)



Страницы: 1 вся ветка

Текущий архив: 2011.07.31;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.006 c
11-1227416394
Валера
2008-11-23 07:59
2011.07.31
Проблема с скриншотом экрана


2-1303387044
stenfit
2011-04-21 15:57
2011.07.31
Incompatible types


1-1261051643
harisma
2009-12-17 15:07
2011.07.31
Название целевой директории в формате DOS


15-1302303058
Германн
2011-04-09 02:50
2011.07.31
Build vs Compile


2-1303704832
petvv
2011-04-25 08:13
2011.07.31
Целая и дробная часть из двух полей