Topic: Заполнение/наполнение поля MEMO

Дмитрий здравствуйте. Есть необходимость при приёме в ремонт указывать комплектность товара. Есть-ли возможность заполнять поле данными не в ручную, а брать необходимые строчки из справочника. Т.е не одна строка из справочника с перечнем комплектующих, а ввод в поле нескольких строк. Т.е выбираю АКБ-добавляю,  выбираю БЛОК ПИТАНИЯ-добавляю, и т.д.
Спасибо.

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

Здравствуйте.


Да, это возможно.
Перечень комплектующих всегда типовой? И планируется что этот перечесь будет на 100% занесен предварительно в справочник?


Также можете приложить ваш проект (zip файл без exe и dll)

Dmitry.

Re: Заполнение/наполнение поля MEMO

Да, справочник будет типовой (при необходимости будет пополняться). Конечно хотелось-бы при необходимости и ручками добавлять, но это уже УХ!  За базу не пеняйте, "нащупываю" то, что хочу))))

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

Приложите пожалуйста ваш проект, либо отправьте его на support@drive-software.com со ссылкой на данную тему.

Dmitry.

5 (edited by kovalenko 2017-03-15 11:51:38)

Re: Заполнение/наполнение поля MEMO

Приложил. пароль можно 1-1

Post's attachments

Attachment icon 1.zip 20.87 kb, 376 downloads since 2017-03-15 

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko wrote:

Дмитрий здравствуйте. Есть необходимость при приёме в ремонт указывать комплектность товара. Есть-ли возможность заполнять поле данными не в ручную, а брать необходимые строчки из справочника. Т.е не одна строка из справочника с перечнем комплектующих, а ввод в поле нескольких строк. Т.е выбираю АКБ-добавляю,  выбираю БЛОК ПИТАНИЯ-добавляю, и т.д.
Спасибо.

Дмитрий здравствуйте. Скромно напоминаю о своём вопросе/просьбе.

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

Готово.

На форме frmApplication разместил грид, из которого вы можете выбирать комлектацию, двойным кликом либо нажав кнопку "< Добавить <"

Post's attachments

Attachment icon 1_fixed.zip 21.04 kb, 402 downloads since 2017-03-16 

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

Готово.

На форме frmApplication разместил грид, из которого вы можете выбирать комлектацию, двойным кликом либо нажав кнопку "< Добавить <"

Огромнейшее Спасибо!
Пойду дальше пробовать!

надо идти вперёд....

9 (edited by kovalenko 2017-03-16 13:07:39)

Re: Заполнение/наполнение поля MEMO

kovalenko wrote:
DriveSoft wrote:

Готово.

На форме frmApplication разместил грид, из которого вы можете выбирать комлектацию, двойным кликом либо нажав кнопку "< Добавить <"

Огромнейшее Спасибо!
Пойду дальше пробовать!

Дмитрий если можно ещё вопрос. А ту-же операцию только с выбором из ComboBox можно сделать?
И можно сделать запрет на дублирование при добавлении записей в таблицу.

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

Можно и с помощью ComboBox, в вашем проекте замените эту строку

   frmApplication.textcomplet.Lines.Add(frmApplication.TableGrid1.Cells[0,frmApplication.TableGrid1.SelectedRow] );

на эту

   frmApplication.textcomplet.Lines.Add(frmApplication.cdComplet.Text );

На счет дублирования, вы про дубликаты в компоненте Memo при добавлении комплектации?

Dmitry.

11 (edited by kovalenko 2017-03-17 19:45:18)

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

Можно и с помощью ComboBox, в вашем проекте замените эту строку

   frmApplication.textcomplet.Lines.Add(frmApplication.TableGrid1.Cells[0,frmApplication.TableGrid1.SelectedRow] );

на эту

   frmApplication.textcomplet.Lines.Add(frmApplication.cdComplet.Text );

На счет дублирования, вы про дубликаты в компоненте Memo при добавлении комплектации?

Скорее про добавление позиций/наименований в справочник комплектующих, ну и в другие. Что-бы не дублировались позиции в справочниках.

Дмитрий и ещё вопрос, а возможно добавление записи в memo из ComboBox без использования дополнительной кнопки, в моём случае это Button4. Т.е я выбираю строку и когда она высвечивается в ComboBox, то сама добавляется в memo.

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko

Провери дубликат пока можно только скриптом, пример
http://myvisualdatabase.com/forum/viewtopic.php?id=1062


Дмитрий и ещё вопрос, а возможно добавление записи в memo из ComboBox без использования дополнительной кнопки, в моём случае это Button4. Т.е я выбираю строку и когда она высвечивается в ComboBox, то сама добавляется в memo.

Можно:

procedure frmApplication_cdComplet_OnCloseUp (Sender: string);
begin
    frmApplication.textcomplet.Lines.Add(frmApplication.cdComplet.Text );
end;
Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

kovalenko

Провери дубликат пока можно только скриптом, пример
http://myvisualdatabase.com/forum/viewtopic.php?id=1062


Дмитрий и ещё вопрос, а возможно добавление записи в memo из ComboBox без использования дополнительной кнопки, в моём случае это Button4. Т.е я выбираю строку и когда она высвечивается в ComboBox, то сама добавляется в memo.

Можно:

procedure frmApplication_cdComplet_OnCloseUp (Sender: string);
begin
    frmApplication.textcomplet.Lines.Add(frmApplication.cdComplet.Text );
end;

Спасибо Дмитрий!!!
Есть ещё вопрос. При вводе тел.номера есть шаблон ввода, а есть возможность редактирования вывода н.телефона в гриде или ещё где? А то идёт сплошной набор цифр, что немножко неудобно воспринимать визуально.

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko
У компонент TextBox есть свойство EditMask, присвойте ему значение:
!\(999\)000-0000;1;_

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

kovalenko
У компонент TextBox есть свойство EditMask, присвойте ему значение:
!\(999\)000-0000;1;_

Здравствуйте. Это я нашёл. Вопрос о выводе (показе) номера телефона. В гриде например, идут цифры без пробелов, типа 89111223344, а можно-ли выводить как 8-911-122-33-44?

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko
Если сделаете маску, которую я привел выше, то именно так и будет.

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

kovalenko
Если сделаете маску, которую я привел выше, то именно так и будет.

Вот спасибо!!! Работает)))

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

Дмитрий здравствуйте. Подскажите как можно сделать вывод номера телефона в  форме frmOrder  с привязкой к ранее заполненному заказу в frmApplication. Я там что-то "поковырял" , но что-то соображаловки и знаний как это сделать не хватает.
Спасибо

Post's attachments

Attachment icon AR.zip 42.74 kb, 399 downloads since 2017-03-24 

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko wrote:

Дмитрий здравствуйте. Подскажите как можно сделать вывод номера телефона в  форме frmOrder  с привязкой к ранее заполненному заказу в frmApplication. Я там что-то "поковырял" , но что-то соображаловки и знаний как это сделать не хватает.
Спасибо

Здравствуйте.


Судя по вашей структуре БД, клиент может иметь несколько телефонных номеров, поэтому не ясно, какой номер телефона нужно выводить на форму frmOrder

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:
kovalenko wrote:

Дмитрий здравствуйте. Подскажите как можно сделать вывод номера телефона в  форме frmOrder  с привязкой к ранее заполненному заказу в frmApplication. Я там что-то "поковырял" , но что-то соображаловки и знаний как это сделать не хватает.
Спасибо

Здравствуйте.


Судя по вашей структуре БД, клиент может иметь несколько телефонных номеров, поэтому не ясно, какой номер телефона нужно выводить на форму frmOrder

А какие есть варианты решения? Хотелось бы иметь возможность заводить под клиента более одного телефона. Может вариант как-то сделать что-то вроде основного номера? А остальную информацию брать из карточки клиента?

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko wrote:
DriveSoft wrote:
kovalenko wrote:

Дмитрий здравствуйте. Подскажите как можно сделать вывод номера телефона в  форме frmOrder  с привязкой к ранее заполненному заказу в frmApplication. Я там что-то "поковырял" , но что-то соображаловки и знаний как это сделать не хватает.
Спасибо

Здравствуйте.


Судя по вашей структуре БД, клиент может иметь несколько телефонных номеров, поэтому не ясно, какой номер телефона нужно выводить на форму frmOrder

А какие есть варианты решения? Хотелось бы иметь возможность заводить под клиента более одного телефона. Может вариант как-то сделать что-то вроде основного номера? А остальную информацию брать из карточки клиента?

Дмитрий ещё раз здравствуйте. Хотел напомнить о себе...Так есть возможность как-то решить мою "проблеммку"?

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

kovalenko
Решить ее можно по разному, например с помощью вычисляемого поля выводить все номера телефонов в грид GridOrder на форме frmOrder, либо выводить все телефонные номера заказа в отдельный грид или в Memo. Просто опишите, как бы вы хотели, чтобы это выглядело.

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

kovalenko
Решить ее можно по разному, например с помощью вычисляемого поля выводить все номера телефонов в грид GridOrder на форме frmOrder, либо выводить все телефонные номера заказа в отдельный грид или в Memo. Просто опишите, как бы вы хотели, чтобы это выглядело.

Здравствуйте. Лучше в поле MEMO, или в отдельные (сделать 2-3 шт) поля TextBox. Если можно, то оба варианта. Спасибо!

надо идти вперёд....

Re: Заполнение/наполнение поля MEMO

в событие

procedure frmOrder_GridOrder_OnCellClick (Sender: string; ACol, ARow: Integer); 

добавьте эту строку

frmOrder.Memo1.Text := SQLExecute('SELECT group_concat(phones.number, char(13) || char(10)) FROM application LEFT OUTER JOIN client ON client.id=application.id_client LEFT OUTER JOIN phones ON phones.id_client=client.id WHERE Application.id='+frmOrder.GridOrder.sqlValue);

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

Dmitry.

Re: Заполнение/наполнение поля MEMO

DriveSoft wrote:

в событие

procedure frmOrder_GridOrder_OnCellClick (Sender: string; ACol, ARow: Integer); 

добавьте эту строку

frmOrder.Memo1.Text := SQLExecute('SELECT group_concat(phones.number, char(13) || char(10)) FROM application LEFT OUTER JOIN client ON client.id=application.id_client LEFT OUTER JOIN phones ON phones.id_client=client.id WHERE Application.id='+frmOrder.GridOrder.sqlValue);

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

Спасибо! По поводу TextBox. А если предположить, что №№ телефонов на клиента будет не более 3 шт, то в этом случае можно упростить процедуру вывода номеров в TextBox?

надо идти вперёд....