Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
1

Если edt не пустой, записать данные в таблицу

26.04.2013, 21:44. Просмотров 1613. Ответов 33
Метки нет (Все метки)

как написать код, если edt не пустое, то записать данные в таблицу
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2013, 21:44
Ответы с готовыми решениями:

Записать в таблицу число, если у CheckBox'a стоит галочка
Добрый день! Необходимо: если поставить галочку у CheckBox'а, то в таблицу должна записаться "1" в...

Записать во вторую таблицу БД данные со второй формы
Имеется БД с 2-мя таблицами. На главной форме отображается содержимое первой таблицы (Select *...

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

Записать данные в таблицу
Доброго времени суток! Есть таблица: CREATE TABLE IF NOT EXISTS `private_senders` ( `uid`...

Как вывести Excel-таблицу в html и в html таблицу записать данные с БД?
есть у меня excel документ(таблица) , как вывести таблицу в html и в html таблицу записать данные с...

33
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
26.04.2013, 22:46  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (Edit1->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введено наименовние").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit1->SetFocus();
  }
else
if (Edit2->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введено Ф.И.О.").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit2->SetFocus();
  }
else
if (Edit3->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введен адрес").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit3->SetFocus();
  }
else
if (Edit4->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введен телефон").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit4->SetFocus();
  }
else
if (Edit5->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введен ОГРН").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit5->SetFocus();
  }
else
if (Edit6->Text=="")
  {
MessageBox
(Handle,AnsiString("Не введен ИНН").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   Edit6->SetFocus();
  }
else
if (ComboBox1->Text=="Выберите город")
  {
MessageBox
(Handle,AnsiString("Не выбран город").c_str(),
AnsiString("Внимание!").c_str(), MB_ICONWARNING);
   ComboBox1->SetFocus();
  }
else Form2->Show();
{
Form6->Table1->Last();
Form6->Table1->Insert();
Form6->Table1->Edit();
Form6->Table1Naim->AsString = Edit1->Text;
Form6->Table1FIO->AsString = Edit2->Text;
Form6->Table1Adres->AsString = Edit2->Text;
Form6->Table1Telefon->AsInteger = StrToInt(Edit4->Text);
Form6->Table1Mail->AsString = Edit7->Text;
Form6->Table1OGRN->AsString = Edit5->Text;
Form6->Table1INN->AsString = Edit6->Text;
Form6->Table1Data->AsString = DateToStr(DateTimePicker1->Date);
Form6->Table1Gorod->AsString = ComboBox1->Text;}}
Добавлено через 49 секунд
у меня такой код, но если я оставлю edit пустым и нажму далее выходит ошибка

Добавлено через 53 секунды
поэтому нужен код, чтобы только если заполнены все поля он записывал данные в таблицу
0
LK
Заблокирован
26.04.2013, 22:51 4
процитируйте текст ошибки
0
nick42
Практикантроп
4359 / 2360 / 418
Регистрация: 23.09.2011
Сообщений: 5,029
26.04.2013, 22:56 5
Вот-вот... . От себя добавлю, что только что проимитировал этот код в пробном проекте - и никакой ошибки, все нормально работает (в части, где анализируется заполненность эдитов и бокса).
0
LK
Заблокирован
26.04.2013, 23:03 6
можно предположить, что требует оно не AnsiString, а UnicodeString

Добавлено через 1 минуту
а еще там Form1, Form6, и, наверное, много других Form... кто ж за всем уследит-то....
0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
26.04.2013, 23:12  [ТС] 7
Если edt не пустой, записать данные в таблицу
Название: Безымянный2.png
Просмотров: 88

Размер: 17.0 Кб
0
nick42
Практикантроп
4359 / 2360 / 418
Регистрация: 23.09.2011
Сообщений: 5,029
26.04.2013, 23:36 8
А-а-а...! Ну, тогда стОит обратить внимание на эдит4 - каждый ли поймет, что там записано число? Особенно компилятор.
0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
26.04.2013, 23:54  [ТС] 9
спасибо, но теперь в таблицу заносятся не полная информация
0
nick42
Практикантроп
4359 / 2360 / 418
Регистрация: 23.09.2011
Сообщений: 5,029
26.04.2013, 23:57 10
это "теперь" как нужно понимать? То-есть пока на эдит4 внимания не обращали - заносилась полная??
0
LK
Заблокирован
26.04.2013, 23:57 11
Aguero16, излагайте полностью проблему, поскольку эта информация -
Цитата Сообщение от Aguero16 Посмотреть сообщение
заносятся не полная информация
- особой ценности для анализа не представляет.
0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
26.04.2013, 23:58  [ТС] 12
ну можно и так сказать, ошибка не давала перейти у к таблице
0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
27.04.2013, 00:02  [ТС] 13
Если edt не пустой, записать данные в таблицу


вот теперь после ответа на каждое уведомление о пустом едите в таблицу вводится это, когда должно оно быть как одна строка
0
nick42
Практикантроп
4359 / 2360 / 418
Регистрация: 23.09.2011
Сообщений: 5,029
27.04.2013, 00:10 14
ну, во-первых, судя по вышеприведенному коду, в поля фио и адрес пишется одинаковая информация из эдит2. Может ты это уже и исправил, но нет гарантии, что подобных опечаток не осталось.

Добавлено через 3 минуты
.. а во-вторых - SetFocus не означает остановки в цикле проверки; по смыслу кода, даже если не все поля заполнены, Table1 изменяется, а этого нельзя допускать.
0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
27.04.2013, 00:12  [ТС] 15
исправил, надо чтобы запись вводилась когда все поля заполнены, а не после каждого ответа на уведомление о заполнении то ФИО, то ИНН, так он делает новую запись
0
Lelik-pahan
1435 / 798 / 178
Регистрация: 25.11.2009
Сообщений: 1,623
Завершенные тесты: 1
27.04.2013, 00:14 16
Цитата Сообщение от nick42 Посмотреть сообщение
.. а во-вторых - SetFocus не означает остановки в цикле проверки; по смыслу кода, даже если не все поля заполнены, Table1 изменяется, а этого нельзя допускать.
Разве? у него же вроде всё через else записано. и для изменения таблицы код помещён в else после последней проверки...
вот тут
0
nick42
Практикантроп
4359 / 2360 / 418
Регистрация: 23.09.2011
Сообщений: 5,029
27.04.2013, 00:19 17
но после первой же корректировки все else пропускаются, а после else Form2->Show() сразу идет обработка таблицы.
1
Lelik-pahan
1435 / 798 / 178
Регистрация: 25.11.2009
Сообщений: 1,623
Завершенные тесты: 1
27.04.2013, 11:10 18
Цитата Сообщение от nick42 Посмотреть сообщение
а после else Form2->Show() сразу идет обработка таблицы.

Не по теме:

действительно, проглядел )

0
Aguero16
0 / 0 / 0
Регистрация: 07.04.2013
Сообщений: 91
27.04.2013, 12:09  [ТС] 19
может записать код с логическим и, т.е. если едит не пустой и едит 2 не пустой
0
Lelik-pahan
1435 / 798 / 178
Регистрация: 25.11.2009
Сообщений: 1,623
Завершенные тесты: 1
27.04.2013, 12:41 20
Aguero16, убери все else и внутри каждого if самой последней строкой (после SetFocus()) добавь return;
0
27.04.2013, 12:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2013, 12:41

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

Записать данные из формы в таблицу
Доброго времени суток всем. Есть такой вопрос. На форме есть поле со списком, элементы...

Как записать данные в таблицу Access
Доброго времени суток уважаемые, мне нужна ваша помощь. Имеется БД, суть в том что мне надо через...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru