powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вставить несколько строк за один раз
8 сообщений из 8, страница 1 из 1
Вставить несколько строк за один раз
    #40078488
Фотография kniga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

Есть код, который копирует строки из Поля на форме в Таблицу.
Отлично копирует/добавляет строки, но этот пример был дан для несвязанной таблицы.
Для моей бд я сделал форму с подчиненной, куда хотел бы реализовать такую вставку.
В примере вставка идет, но без привязки к связям.
Подскажите, пж, решение.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Private Sub btnInsert_Click()
    Dim db As DAO.Database, rst As DAO.Recordset
    Dim s, t, i, j, k, p, r
    If Me.txtGet & "" = "" Then
        MsgBox "Пустое поле"
        Exit Sub
    End If
    
    Set db = CurrentDb
    Set rst = db.OpenRecordset("select * from Магазин") ' where id_sk=" & " forms!frmGet!Склад.id_sk")
    t = Replace(Me.txtGet, Chr(13), "")
    p = Split(t, Chr(10))
    For i = 0 To UBound(p)
        rst.AddNew
        r = Split(p(i), Chr(9))
        rst!color = r(0)
        rst.Update
    Next
    Me.subForm.Requery
End Sub
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078496
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открыть конструктор формы.
Открыть окно Свойства.
Выбрать Форма.
Изменить источник данных, выбрать Склад.
Выбрать id_sk.
Изменить источник данных, выбрать id_sk.
Выбрать subForm.
Изменить Основные поля и Подчиненные поля, ввести id_sk в оба.
Открыть редактор VBA.
В код метода перед rst.Update ввести rst!id_sk = Me.id_sk .
Закрыть редактор VBA.
Закрыть конструктор формы с сохранением.
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078503
Фотография kniga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

Большое спасибо!!! Все получилось! )

"Это просто праздник какой-то!" © Карабас-барабас
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078548
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Угу.

Теперь Вам осталось разобраться и понять, какие были сделаны ошибки, почему так было неправильно, и почему нужно именно так, как описано в исправлениях. Дабы не делать таких же ошибок в будущем.
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078549
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kniga
"Это просто праздник какой-то!" © Карабас-барабас

Код: vbnet
1.
  Dim s, t, i, j, k, p, r


Эти все переменные обьявлены как вариант. Так и должно быть ?
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078677
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По моему, речь немного о другом,а именно о логике работы БД.
Добавление какого-то количества строк с рядом незаполненных полей не лучшее решение(правда смотря для каких целей производится это действо). Представьте ситуацию когда выдается кредит сроком на 12 месяцев,с ежемесячным погашением-сколько строк добавлять 12 или 15 (если клиент в каком-то месяце/ах делает 2 взноса-куда писать?). Правильным решением будет вести учет погашения/платежей в отдельной таблице. Единственный вариант когда я сталкивался с необходимостью добавления строк в таблицу-создание графика платежей для клиента(абсолютно никак не влияющая на работу БД таблица)
В связи с этим, хотелось бы знать цель которую Вы преследуете, добавляя записи в связанную таблицу.
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40078759
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMan

Код: vbnet
1.
  Dim s, t, i, j, k, p, r


Эти все переменные обьявлены как вариант. Так и должно быть ?

необязательно - тип может может быть задан в шапке модуля.
...
Рейтинг: 0 / 0
Вставить несколько строк за один раз
    #40082251
Фотография kniga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день! Извиняюсь, не видел сообщения чтобы сразу ответить )

Эти все переменные обьявлены как вариант. Так и должно быть ? Код взял из форума, ничего не менял и в шапку модуля не добавлял - работает )

хотелось бы знать цель которую Вы преследуете, добавляя записи в связанную таблицу

У нас монтажники делают в день по несколько заявок на материалы в рабочем чате мессенджера. В списке может быть 1-20+ позиций и чтобы не вносить Заявки вручную, позиции просто путем копирования добавляются в форму. Основная форма включает Дату, номер Заявки, ФИО, а подчиненная - подробности, т.е. сами позиции. Очень экономит время )
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вставить несколько строк за один раз
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]