Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 4366
Geizer1, посмотрел я этот пример... Зачем там копировать куда-то? У тебя обе формы на одних и тех же таблицах. Таким образом, всё что ты внёс во вторую форму (Форма2) автоматом приедет в первую форму, ничего копировать ненужно, нужно только обновить записи.
3 июн 19, 19:58    [21900880]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 4366
не пусто

К сообщению приложен файл (Пример.zip - 35Kb) cкачать
3 июн 19, 20:00    [21900883]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
alecko
Geizer1, даже в макросах есть команда "к элементу управления", только макросы недействительны - что это значит... может из-за пробелов в названиях, может из-за кириллицы, лмбо команды не такие...- тот макрос который разрывает связь обнулить код2 не позволяет- "задатьЗначение" - нет такой команды есть задатьСвойство и там есть value...
Если вы попробовали что то сделать на формах и получили ошибку, это значит вы перешли на форму2 из табличной части Формы1. В свойствах Формы1 уберите ограничение на запрет редактирования табличной части и всё заработает. Про команду 'КЭлементуУправления' в макросах я знаю и часто ею пользуюсь, но она не отличает поле самой формы и поле табличной части этой формы. С помощью этой команды можно перейти и на кнопку находящуюся на самой форме, но вернувшись к полю с данными вы окажетесь в той части в которой и были. Добавил обновление и пояснения в примере.

К сообщению приложен файл (Пример.rar - 46Kb) cкачать
4 июн 19, 15:59    [21901656]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
Панург
Geizer1, посмотрел я этот пример... Зачем там копировать куда-то? У тебя обе формы на одних и тех же таблицах. Таким образом, всё что ты внёс во вторую форму (Форма2) автоматом приедет в первую форму, ничего копировать ненужно, нужно только обновить записи.
Причин чтобы не копировать в подчинённую форму Формы2 несколько вот только 2 из них: 1. Если в поле Код2 таблицы1 еще нет числи-кода то эта запись просто не появится в подчинённой форме. Код2 - это поле связи между таблицами2 и 1 ровно как и между формами 'Форма2' и 'подчиненная форма таблица1'. 2. (в пример я это сразу не вносил, думал что от темы не будем отклонятся) в 'подчиненная форма таблица1' есть вычисляемые поля типа 'текст1+2+3'. Ещё раз выкладываю пример с добавлением.

К сообщению приложен файл (Пример.rar - 46Kb) cкачать
4 июн 19, 16:10    [21901664]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6260
Вы не задумывались примерно над такой схемой-таблицы тип,марка и модель это аналог 3 наличествующих таблиц,а вот аналога "выбор" у Вас нет-куда сохранять? По моему у Вас не хватает одной таблицы-только и всего
а на форме [выбор]три зависимых поляСоСписком тип,марка и модель
4 июн 19, 17:25    [21901740]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6260


К сообщению приложен файл. Размер - 26Kb
4 июн 19, 17:26    [21901743]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
sdku
Вы не задумывались примерно над такой схемой-таблицы тип,марка и модель это аналог 3 наличествующих таблиц,а вот аналога "выбор" у Вас нет-куда сохранять? По моему у Вас не хватает одной таблицы-только и всего
а на форме [выбор]три зависимых поляСоСписком тип,марка и модель
Приведённый мною пример не отражает всю задачу которая решается в реальной базе, этот пример только часть. И приведён он только для демонстрации проблемы.
4 июн 19, 17:47    [21901771]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
21901743 Да к стати). В моей базе , если сравнивать с вашим примером таблица 'Выбор' заполняется первой (Форма1).
4 июн 19, 17:53    [21901778]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6260
Geizer1,
может так будет понятней, что аналога таблицы "выбор" у Вас нет вообще
(добавленные связи не показывались т.к. они обеспечиваются VBA-зависимые списки)

К сообщению приложен файл. Размер - 32Kb
4 июн 19, 19:09    [21901856]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6260


К сообщению приложен файл. Размер - 51Kb
4 июн 19, 19:18    [21901867]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
sdku
Geizer1,
может так будет понятней, что аналога таблицы "выбор" у Вас нет вообще
(добавленные связи не показывались т.к. они обеспечиваются VBA-зависимые списки)

Я добавил таблички по вашей просьбе. Но к вопросу который я задавал они отношения не имеют.
Таблица1 это не результат выбора комбинаций данных таблиц (2, 2_1 и 2_2). Сначала заполняется Таблица1 а потом Таблица2, и уже после этого корректируются данные в Таблица1.
Копаться в структуре данных в данном случае смысла не вижу.
Повторю вопрос еще раз. Как макросом (или кодом VBA) запушенным в Форма2 выполнить следующие действия:
1 Перейти на Форма1 (ну это понятно)
2 Определить если возможно в какой части формы мы оказались. Если оказались в табличной части то перевести фокус на саму форму.
3 скопировать из Форма2 в Форма1 данные и сохранить запись в Форма1. (ну это тоже понятно)
Я более менее знаком с макросами, а с VBA поверхностно. Поэтому и создал этот топик, в надежде что знатоки VBA что то подскажут.

К сообщению приложен файл (Пример.rar - 57Kb) cкачать
5 июн 19, 15:13    [21902626]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 6260
Geizer1,
акцесс довольно серьезная программа и, в зависимости от задач создаваемой БД, решения могут быть различными. Из Вашего примера совершенно не возможно понять ЧТО же Вы делаете и насколько необходимо применение разделенной формы. Единственное что можно сказать: на 6 таблицах можно создать серьезную БД (если не заниматься перемещением фокуса в форме необходимость создания которой не известна - нужна-ли она. Повторюсь-создание любого объекта в базе должно быть подчинено решению конкретной задаче-а в общем изучаются разве что методы в VBA. В частности:фокус можно перевести методом SetFocus(и не только),а дальше Ваше творчество-если же хотите помощи при создании конкретной БД,то и описывать задачу надо подробно-иначе ответ:SetFocus)
5 июн 19, 16:10    [21902711]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
Ну ладно если кроме SetFocus другого нет, то можно топик завершать.
8 июн 19, 13:14    [21905126]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
Нашел решение своей проблемы - свойство формы [SplitFormDatasheet]. Задаёт или снимает режим запрета на редактирование пользователем табличной части разделённой формы.
Перед командой СохранитьЗапись задаём [SplitFormDatasheet]=0, а после задаём [SplitFormDatasheet]=1.
Ну теперь топик точно можно закрывать.)
8 июн 19, 16:51    [21905180]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
__Michelle
Member

Откуда:
Сообщений: 3110
Geizer1
а после задаём [SplitFormDatasheet]=1.
Ну теперь топик точно можно закрывать.)
Не знаю как насчет закрывать.

А вот вместо единицы нужна минус единица.
SplitFormDatasheet = -1
А еще лучше
SplitFormDatasheet] = True
8 июн 19, 18:01    [21905200]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
__Michelle
Geizer1
а после задаём [SplitFormDatasheet]=1.
Ну теперь топик точно можно закрывать.)
Не знаю как насчет закрывать.

А вот вместо единицы нужна минус единица.
SplitFormDatasheet = -1
А еще лучше
SplitFormDatasheet] = True


Как ни странно, 0 и Ложь срабатывают, а вот True Истина и -1 нет (выдаёт ошибку) . Срабатывает именно 1.
Присваиваю значение в макросе с помощью команды ЗадатьЗначение.
, тут тоже вроде минуса нет.
9 июн 19, 04:56    [21905293]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Geizer1
Member

Откуда: Томск
Сообщений: 58
https://docs.microsoft.com/ru-ru/office/vba/api/access.acsplitformdatasheet , тут тоже вроде минуса нет.
9 июн 19, 04:59    [21905294]     Ответить | Цитировать Сообщить модератору
 Re: Перенос фокуса в разделённой форме с таблицы на форму макросом  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 4366
__Michelle
А вот вместо единицы нужна минус единица.
SplitFormDatasheet = -1
А еще лучше
SplitFormDatasheet] = True
там перечисление и значения long от 0, а не boolean.
9 июн 19, 08:09    [21905298]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
Все форумы / Microsoft Access Ответить