Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 7

Копирование записи

19.12.2017, 15:46. Показов 4285. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго дня!
Подскажите в чём я ошибаюсь:
Есть запрос на добавление записей
Есть две таблицы исходная и таблица назначения
Есть форма в которой правятся и добавляются записи исходной таблицы
Есть кнопка по нажатию на которую я хочу копировать 1(одну, текущую) запись в таблицу назначения

Работает все, кроме того, что записи копируются все, как скопировать только текущую?

Процедура копирования:
Visual Basic
1
2
3
4
5
        Dim strQueryDef As String
        strQueryDef = "Копировать заявку в объекты"
        DoCmd.SetWarnings False
        DoCmd.OpenQuery strQueryDef, acNormal, acEdit
        DoCmd.SetWarnings True
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.12.2017, 15:46
Ответы с готовыми решениями:

Копирование записи
Доброе утро. Возникла проблема с работой кода при копировании записи по нажатию кнопки. Пока требовалось только копировать запись, то всё...

Код на копирование записи
Код копирует и удаляет затем вставляет строку из таблицы в таблицу. Как сделать чтоб не удалял из табл. ИСТОЧНИКА ...

Копирование записи в другую таблицу
Добрый день. Возникла необходимость немного доработать базу Access. Скажу сразу. С программированием у меня довольно туго. Ситуация...

7
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,267
Записей в блоге: 5
19.12.2017, 15:53
В запросе должно стоять условие - одно из полей, однозначно указывающее на эту запись. Обычно используют поле "код записи". В строке условия можно написать выражение Forms!ФормаИсточник!КодЗаписи.
Но это всё очень некрасиво. Рекомендую использовать
VB.NET
1
DoCmd.RunSQL "insert into РезультирующаяТаблица(поле1,поле2) value ('" & me.поле1 & "','" & me.поле2 & "')"
0
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 7
19.12.2017, 16:09  [ТС]
Понятно, что в запросе должно быть условие, но как и где его прописывать? Или из формы надо передать ИД записи, которая выбрана?
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,267
Записей в блоге: 5
19.12.2017, 16:16
Лучший ответ Сообщение было отмечено Vov4ik84 как решение

Решение

В конструкторе запроса есть строка "Условие". В нём надо написать выражение forms!имяформы!имяполяID. Если зарос открыть после этого в режиме таблицы, то должна отобразиться одна запись. При этом форма должна быть открыта на фоне. Но я рекомендую написать процедуру копирования записи SQL-выражением в коде самой кнопки
VB.NET
1
DoCmd.RunSQL "insert into РезультирующаяТаблица(поле1,поле2) value ('" & me.поле1 & "','" & me.поле2 & "')"
Эта команда вставляет в таблицу одну запись со значениями двух полей (какие поля есть в таблице, как они называются, и сколько их - вам виднее), которые берутся из текущей записи самой формы. Здесь никаких условий указывать не надо.

Могу ещё раз написать то же самое и даже другими словами
1
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 7
19.12.2017, 16:32  [ТС]
Не хочу делать через SQL т.к. некоторые имена полей исходной таблицы не совпадают с именами таблицы назначения, а через запрос я создаю поля с соответствующими именами ну и с SQL'ем не дружу..

Спасибо. Все ОК.
0
 Аватар для amd48
845 / 475 / 80
Регистрация: 18.05.2016
Сообщений: 1,267
Записей в блоге: 5
19.12.2017, 16:39
Ну SQl не настолько уж и сложен. Загуглировать синтаксис insert into ... values - дело пяти секунд. И в том и фишка, что в скобка перечисляются поля результирующей таблицы, а вместо
" & me.поле1 & "
можно указать именно те поля, которые есть на форме. Называться они могут иначе. Это в моём примере они совпадают, т.к. я не знаю, что у вас там за таблицы.
Вместо полей можно написать постоянные значения, например. Или какую-нибудь формулу. Всё, что угодно.
0
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 7
19.12.2017, 16:57  [ТС]
Даже так..
Еще раз спасибо
0
0 / 0 / 0
Регистрация: 11.12.2020
Сообщений: 4
29.12.2020, 16:27
Доброго дня. Научите!
Создал форму, попытался создать кнопку для копирования-дублирования записи.
На синтаксис уже не ругается, но и не копирует ((.
А мне ещё нужно чтоб в скопированной записи [номер карты] отличался от родительской с добавлением латинской буквы. 1,1a ; 1,1b ; 1,1c ; 1,2a и т.д.
я даже не знаю, возможно ли это с SQL.
[ATTACH]Поз.1- Крышка.rar[/ATTACH]
Вложения
Тип файла: rar форум.rar (21.6 Кб, 13 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.12.2020, 16:27
Помогаю со студенческими работами здесь

Копирование записи с изменениями, через форму
Здравствуйте! Имеется таблица в которой присутствуют столбцы, такие как: ФИО, Организация и дата посещения, в данную таблицу информация...

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

Копирование текущей записи из формы в запрос
нашла на форуме нужную тему, самое то что мне нужно, но не могу понять что и куда поставить, разъясните пож-та Нужно по нажатию кнопки...

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

Копирование данных записи (строки) в следующую запись
Форумчане,доброго времени суток! Вопрос в следующем: поступают на склад, например, 10 бабин (упаковок) одних и тех же комплектующих....


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru