powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Создание новой записи и открытие её
11 сообщений из 11, страница 1 из 1
Создание новой записи и открытие её
    #32365114
Benzin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача:
Таблицы Заказы + СведОЗаказе. Есть запись некоторого заказа. Нужно создать "дочерний" заказ и открыть его в форме(сам не понял, что написал). По другому:
1. В меню выбрать: "Дочерний" (отличается от родительского только значением одного из ключевых полей).
2. Если такой уже есть, то он и открывается.
3. Если такого нет, то создаётся новая запись в Заказы, причём все "значимые" поля(кроме одного) наследуют значения Родителя.
4. Созданная запись открывается для редактирования.

Вопрос по п.2: как убедиться, что нет/есть?
Вопрос по п.4: как открыть именно созданную запись?
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365123
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ответ по п.2: телепяты сегодня выходные :-(
Трудно искать черную кошку в темной комнате...
Примерно так:
SELECT ID FROM MyTable WHERE [ID1] = Forms!MyForm!ID1 AND [ID2] <> Forms!MyForm!ID2
где ID - однозначный ключ
ID1 - общий ключ для родителя и дочки
ID2 - ключ, по которому определяешь, родитель или нет
Если этот запрос вернет данные, значит есть дочка, которую и открываем

Ответ по п.4: после добавления записи получить ее ключ и открыть по нему
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365225
Benzin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
после добавления записи получить ее ключ и открыть по нему
Т.е. не обойтись без:
set rst = CurrentDb.OpenRecordset("Заказы")
rst.MoveLast(это сработает? в смысле: Last это точно новая запись. )
qq = rst!ID
Форма.RecordSource = "Select Заказы. From Заказы Where ((ID =)" & qq"
Docmd.OpenForm "Заказы"
или я усложняю?
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365226
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хинт: для получения последней записи вовсе не обязательно открывать в рекордсете всю таблицу
Подробнее не могу - пора домой давно, а то уже и так торчу тут почти 12 часов :-(
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365227
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если ключом является счетчик, то:\r
\r
FAQ. Что мы знаем про каунтеры (aka счетчики)
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365228
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я очень часто использую следующее решение:

необходимые идентификаторы сохраняю в глобальные переменные и делаю запуск формы сделанной специально для работы с одной записью

форма при запуске смотрит значения идентификаторов
если передаются идетнификаторы со значениями 1 и более то открывается форма по существующей записи, если со значением 0 то сначала запускается процедура добавления записи , которая в результате установит глобальную переменную на значение добавленной записи

по значению этой переменной в форму выбираются записи, запросом , наподобе как AlexJuice написал
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365273
Benzin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К В.С.:
Ключ - не счётчик, 4-е ключевых поля разного типа.
К AlexJuice:
"Он улетел, но обещал вернуться...." :) (Карлсон, который живёт на крыше)
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365304
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если это не счетчик, а 4 разных поля, то вообще никакой проблемы не должно быть. Все их значения должны быть известны.
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365311
Benzin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Другими словами, новую запись добавлять программно(через Insert into), запоминать значения ключей в переменных, а потом открывать recordset, используя эти значения в условии Where?
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365312
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Точно так.
...
Рейтинг: 0 / 0
Создание новой записи и открытие её
    #32365313
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А можно и добавлять сразу через рекордсет.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Создание новой записи и открытие её
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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