|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
|
Условие отбора формы по полю подчиненной формы14.03.2012, 12:22. Показов 13483. Ответов 38
Метки нет (Все метки)
Доброго времени суток!
Есть такая проблема, не могу разобраться: Есть основная форма "ОсновнаяФорма" в ней находится подчиненная табличная форма с названием "ФормаЗапрос2". В этой форме есть поле "Системный счетчик", для этого поля я создаю событие которое при двойном клике мышью открывает форму "Form1", в которую в свою очередь входит опять же табличная форма "ТабличнаяФормаЗапрос210ЛЗС". И вот тут надо задать фильтр для поля "ЛЗС-код" в форме "Form1". Т.е. при двойном клике мы открываем форму "Form1" в которой отображаются записи соответствующие только данным из поля "Системный счетчик" основной формы. Когда я обращался напрямую к табличной форме то я делал это так: задаем переменную "ИдСчт" для для поля [Системный счетчик]. Далее выбираем "Открыть форму", выбираем открытие формы "Form1", в условии отбора указываем [ЛЗС-СистСчетч]=[TempVars]![ИдСчт]. Т.е. тут всё очень легко, мы открываем форму и задаем ей условие фильтрации полю [ЛЗС-СистСчетч]. А вот как быть в случае обращения к подчиненной форме в форме "Form1". Синтаксис мне пока не очень понятен.
0
|
|
| 14.03.2012, 12:22 | |
|
Ответы с готовыми решениями:
38
Условие отбора для подчиненной формы Открытие формы с условием отбора с использованием подчиненной формы Условие отбора по по полю со списком формы -оно может быть пустое или содержать какое-либо значение |
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 14.03.2012, 16:16 | |
|
1.Ваши имена ввергают в ступор, переделайте на адекватные.
2. Почему вы считаете, что можно вылечить по телефону? Где пациент?
0
|
|
|
2096 / 1172 / 39
Регистрация: 05.11.2009
Сообщений: 1,605
|
|
| 15.03.2012, 09:23 | |
|
Обращение к полю подчиненной формы:
Forms![Название главной]![Название подчиненной].Form![Поле подчиненной] В вашем случае условие отбора будет следующим: [ЛЗС-код] = Forms![ОсновнаяФорма]![ФормаЗапрос2].Form![Системный счетчик]
0
|
|
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
|||
| 16.03.2012, 08:54 [ТС] | |||
|
2. Опять же БД рабочая, в ней присутствуют данные которые нельзя выносить за пределы организации. Добавлено через 12 минут Есть две формы: [Форма1] и [Форма2] В [форма1] есть [ПодчиненнаяФорма1] и поле [Счетчик] в этой подчиненной форме. В [форма2] есть [ПодчиненнаяФорма2] и поле [КодДокумента] в этой подчиненной форме. При двойном клике мыши в поле [Счетчик] мы открываем [форма2] и задаем фильтр для поля [КодДокумента], значение фильтра должно быть равно значению [Счетчик]. По логике надо сделать следующим образом: задать фильтр при открытии формы [форма2] Forms![форма2]![ПодчиненнаяФорма2].Form![КодДокумента]=[значение поля Счетчик] Т.е. левому выражению присваиваем значение правого выражения, а в вашем случае получилось немного иначе. Или я что-то не так понял? Добавлено через 7 минут Если я делаю по схеме: Forms![форма2]![ПодчиненнаяФорма2].Form![КодДокумента]=[значение поля Счетчик] То при вызове формы получаю ошибку: "Макрокоманда содержит ошибку, так как форма или отчет не связаны с таблицей или запросом".
0
|
|||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
||
| 16.03.2012, 09:21 | ||
|
А ошибка ваша говорит о том, что у формы нет источника данных.
0
|
||
|
2096 / 1172 / 39
Регистрация: 05.11.2009
Сообщений: 1,605
|
||
| 16.03.2012, 09:55 | ||
|
[КодДокумента] = Forms![ОсновнаяФорма]![ФормаЗапрос2].Form![Системный счетчик]
0
|
||
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
||
| 19.03.2012, 11:49 [ТС] | ||
|
Forms![форма2]![ПодчиненнаяФорма2].Form![КодДокумента]=[Счетчик] Т.е. обратиться нужно к подчиненной форме [ПодчиненнаяФорма2] и задать там фильтр для поля [КодДокумента]. А а вашем случае получается что мы берем поле из [форма2] и задаем фильтр для [форма1], а мне надо наоборот это сделать. Берем значение из [форма1] и по этому значению задаем фильтр для [форма2]. Мы вызываем форму2, а не наоборот.
0
|
||
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
|
| 19.03.2012, 12:30 [ТС] | |
|
Открываем форму "ОсновнаяФорма", двойной клик на любой записи в поле [КодДокумента] записываем значеие этого поля в переменную tmpDocum и открываем форму "СправочникФорма", и применяем к ней фильтр по полю [СправКодДокумента], а значением фильтра как раз и будет значение переменной tmpDocum для поля [СправКодДокумента]. Т.е. если в основной форме выбрали запись 1560 и два раза клинули, то открылась форма в которой будет отображена запись только с номером 1560.
0
|
|
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
||
| 19.03.2012, 15:52 | ||
|
0
|
||
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
||
| 19.03.2012, 17:03 [ТС] | ||
|
Я сделал её для примера, поэтому часть записей в одной таблице может отсутствовать, это не суть важна, задача к этому никакого отношения не имеет. По поводу связей, вы когда-нибудь создавали веб-таблицы для портала Sharepoint? Вы видимо не в курсе что в веб-таблицах нет такого понятия как связи.
0
|
||
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
|
| 19.03.2012, 17:11 [ТС] | |
|
Поменял поля на числовые, хотя разницы нет. Добавил сообщение для отладки при двойном клике. По сути то число которое показывает сообщение, в новой форме и должна отображаться запись только с этим числом, если такого номера в форме нет, то отобразится пустая форма, фильтр так и работает.
0
|
|
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 20.03.2012, 02:40 | |
|
0
|
|
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
|
| 20.03.2012, 06:36 [ТС] | |
|
Вот рабочий пример, но он работает через переменную.
0
|
|
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 20.03.2012, 07:29 | |
|
Основную таблицу пришлось почистить, она не давала создать связь с целостностью данных, также изменен тип поля обоих кодов в обоих таблицах. Ввиду непонятной несовместимости форм 2010 и 2003 Акцесса сделал формы по-новой. Макросы выкинул на помойку, им там самое место. Вставленный код сделал автоматом мастером создания кнопки, только имя формы перебил, потому что русские знаки Акцесс кодирует. Смотрите:
0
|
|
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
||
| 20.03.2012, 08:23 [ТС] | ||
|
Вот тут описано как это работает http://office.microsoft.com/ru... 56866.aspx
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 20.03.2012, 08:49 | |
|
1
|
|
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
||
| 20.03.2012, 11:20 [ТС] | ||
|
А сейчас попробуйте в access 2010 создать пустую Веб-базу и сделать всё тоже самое без использования VBA. Первый пример который я выложил, это как раз то что и требовалось сделать на самом деле, без изобретения велосипеда. Только вопрос изначально стоял как правильно задать фильтр при открытии формы, сейчас этот фильтр работает через переменную на рабочей БД.
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 20.03.2012, 11:47 | |
|
0
|
|
|
72 / 72 / 7
Регистрация: 14.03.2012
Сообщений: 201
|
||
| 20.03.2012, 11:56 [ТС] | ||
|
http://office.microsoft.com/ru... c262737238 http://office.microsoft.com/ru... c262737239
0
|
||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
|
|
| 20.03.2012, 12:00 | |
|
как всё запущено.... ну тогда чего же вы хотите, раз так ограничены?
0
|
|
| 20.03.2012, 12:00 | |
|
Помогаю со студенческими работами здесь
20
Соответствие значения поля подчиненной формы полю таблицы основной формы
Присвоение полю значения из подчиненной формы Задать значение полю подчиненной формы Фильтр подчиненной формы по текстовому полю Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|