1 / 1 / 0
Регистрация: 10.12.2015
Сообщений: 16

Перенос данных из одной таблице в другую, ошибка адресации

07.03.2018, 08:41. Показов 1726. Ответов 2

Студворк — интернет-сервис помощи студентам
В двух разных формах одной программы находятся таблицы. Необходимо при нажатии кнопки данные из одной таблицы скопировать в другую.
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm3::Button1Click(TObject *Sender)
{
if(Form4->DBGrid2->Columns->Items[0]->Field->AsString==Form3->DBGrid1->Columns->Items[0]->Field->AsString)
        ShowMessage("Учитель уже в архиве");
 else
 {
 Form4->Table2->Insert();
 Form4->DBGrid2->Columns->Items[0]->Field->AsString=Form3->DBGrid1->Columns->Items[0]->Field->AsString;
 Form4->DBGrid2->Columns->Items[1]->Field->AsString=Form3->DBGrid1->Columns->Items[1]->Field->AsString;
}
}
При запуске выдает ошибку, скрин приложу.
В двух других формах делал все тоже самое, там прекрасно работает. Ошибка, как я понял в адресации, но что именно исправить не могу понять.
Миниатюры
Перенос данных из одной таблице в другую, ошибка адресации  
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.03.2018, 08:41
Ответы с готовыми решениями:

Автоматический перенос с одной таблице в word в другую
Неделю ломаю голову как сделать. Есть онлайн программа, которая создает ценники по выбранному наименованию товара, сохраняет в pdf...

Перенос данных из одной БД в другую
Добрый день имеем две таблицы Код|Имя|Фамилия|Город|Пол 1|Настя|Пупкина|Хабаровск|Женский 2|Антон|Филиппов|Москва|Паркет ...

Перенос данных из одной БД в другую
Здравствуйте. Задача, есть БД в mysql из нее выгрузил sql скрипт,все хорошо. Далее есть БД в interbase .FDB, так же успешно скрипт из нее...

2
 Аватар для TrollHammer
1216 / 709 / 336
Регистрация: 22.02.2018
Сообщений: 2,095
Записей в блоге: 2
07.03.2018, 09:07
Копируются не данные, отображаемые в таблице, а записи в БД. Какая БД и какими компонентами подключаетесь?

Добавлено через 9 минут
Пардон, увидел Table2, значит что-то типа Paradox. В своем коде Вы пытаетесь копировать данные, которые просто отображаются. На самом деле они хранятся в таблице БД и копировать их надо оттуда. Например
C++
1
2
3
4
5
6
7
8
9
10
if(Form4->Table1->Fields->Fields[0]->AsString==Form3->Table2->Fields->Fields[0]->AsString)
        ShowMessage("Учитель уже в архиве");
 else
 {
 Form4->Table1->Insert();
 Form4->Table1->Fields->Fields[0]->AsString=Form3->Table2->Fields->Fields[0]->AsString;
 Form4->Table1->Fields->Fields[1]->AsString=Form3->Table2->Fields->Fields[1]->AsString;
 Form4->Table1->Post();  //а на всякий случай :) 
 
}
И в качестве совета - давайте компонентам осмысленные имена, например fMain - главная форма, tSource - таблица-источник и т. д. Поверьте, потом легче будет разобраться с кодом

Добавлено через 14 минут
А правильно, наверное, так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    AnsiString qr = Form3->Table2->Fields->Fields[0]->AsString;
 
  //делаем так - нужен еще один компонент Query
   Query1->Active=false;
   Query1->SQL->Text = "Select * From db Where fieldname Like '%"+qr+"%'"; //db - имя базы данных, fieldname - имя поля, где идет поиск
   Query1->Open();
 
     
  if(Query1->RecordCount)  //если такая запись уже есть, то 
   ShowMessage("Учитель уже в архиве");
 
 else
 {
AnsiString qr1 = Form3->Table2->Fields->Fields[0]->AsString;
AnsiString qr2 = Form3->Table2->Fields->Fields[2]->AsString;
 
   Query1->Active=false;
   Query1->SQL->Text = "Insert Into db (fieldname1, fieldname2) Values ("+qr1+", "+qr2+")"; //db - имя базы данных, fieldname - имя поля, где идет поиск
   Query1->Open();
}
1
Заблокирован
07.03.2018, 21:35
а в целом можно скопировать просто в stringgrid, не много по другому конечно, но суть таже. а так вариант TrollHammer верный.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.03.2018, 21:35
Помогаю со студенческими работами здесь

Перенос данных из одной БД в другую
Есть 2 формы на обоих формах есть DBGrid. Нужно что бы при нажатии в контекстном меню на "Добавить" данные из одной Базы данных...

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

Перенос данных из одной формы в другую
Я создаю игру(задание от препода) мне нужно создать магазин, в магазине я расплачиваюсь валютой которую, получаю на другой форме.Как мне...

Перенос данных из одной колонки в другую
Кто может помочь?:( есть две таблицы в базе данных access,нужно из столбца одной таблицы перенести данные кодом во вторую таблицу

Перенос данных из одной таблицы в другую
Доброе утро\ День\Вечер Возникла проблема с переносом данных из двух таблиц в одну. Существует две таблицы Users и Skills. Структура...


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

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

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru