powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сдаюсь
25 сообщений из 25, страница 1 из 1
Сдаюсь
    #32170845
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди помогите перейти на новую запись в подподформе, плиззззззз!
Отказаться от использования подподформы ну никак нельзя.
Рекордсет не предлагать.
Пробовал по разному не получается, все уже, больше идей нет.
к примеру
[Forms]![Главная]![Подформа]![Подподформа].SetFocus
DoCmd.GotoRecord , , acNewRec
не работает! Ошибки нет, перехода тоже нету :(
Предложите плиз еще вариант (если он есть конечно)
...
Рейтинг: 0 / 0
Сдаюсь
    #32170859
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тоже наподобе было.

но только не на новую а просто на другую
везде работало а тут - фиг

штук 10 способов перепробовал, так ничего и не получилось,
переделал дизайн по другому.
...
Рейтинг: 0 / 0
Сдаюсь
    #32170865
Фотография Ирча
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если передать событие в подформу, а уже из нее в подподформу?
...
Рейтинг: 0 / 0
Сдаюсь
    #32170875
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мля!!!
что же делать то??? Через рекордсет пробоавал, все в норме но происходит глюк при нажатиии на чекбокс записи, эксес просто вылетает!
Если добавить запись через acNewRecord то все в норме.
Но как осушествить переход не знаю!
Переделать макет нет возможности.
...
Рейтинг: 0 / 0
Сдаюсь
    #32170880
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Ирча не проходит пробовал!
передовал в подформу, потом
делал так:
Me.ПодФорма.SetFocus
но не помогло!! Ужас прям какой-то
...
Рейтинг: 0 / 0
Сдаюсь
    #32170894
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй

DoCmd.RunCommand acCmdRecordsGoToNew

только из кода самой конечной формы!
...
Рейтинг: 0 / 0
Сдаюсь
    #32170905
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 АлексейК
Контакт!!!!! Спасибо дружище!!!!!!! :))
...
Рейтинг: 0 / 0
Сдаюсь
    #32170938
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем если не сделать следующие
[Forms]![Главная]![Подформа]![Подподформа].SetFocus
то привызове
DoCmd.RunCommand acCmdRecordsGoToNew
даже из самой конечной формы произойдет ошибка, типа макрокоманда недоступна! А если написать то все работает!
Еще раз Алексею респекты всяческие
...
Рейтинг: 0 / 0
Сдаюсь
    #32170940
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй так
[Forms]![Главная].SetFocus
[Forms]![Главная]![Подформа].SetFocus
[Forms]![Главная]![Подформа]![Подподформа].SetFocus
DoCmd.GotoRecord , , acNewRec
...
Рейтинг: 0 / 0
Сдаюсь
    #32170947
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня главная и подчин
и вот этот код работает
Forms![Контрагенты].SetFocus
Forms![Контрагенты]![пф Контрагенты].SetFocus
DoCmd.GoToRecord , , acNewRec

а вот без Forms![Контрагенты].SetFocus
работать не хочет
...
Рейтинг: 0 / 0
Сдаюсь
    #32171052
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас у меня очень мало времени, поэтому очень кратко и непроверено. Для передачи фокуса подчиненной форме надо сначала передать фокус контролу, потом самой форме. Так как двойное вложение, должно быть по идеи четыре передачи фокуса.
...
Рейтинг: 0 / 0
Сдаюсь
    #32171283
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем!!
...
Рейтинг: 0 / 0
Сдаюсь
    #32171669
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все хорошо но долго работает это все:
[Forms]![Форма]![Подфома].Setfocus
[Forms]![Форма]![ПодФорма]![ПодПодФорма].SetFocus
Docmd.GotoRecord ,, AcNewRec
[Forms]![Форма]![ПодФорма]![ПодПодФорма].
Me.ArtikulId=262
Me.Summa=280
Me.Dirty=False
Me.Refresh
Блин такое ощущение что через рекордсет было быстрее, всетаки там обходилось без focuso_в !! :)
И еще момент есть поле статус, в форме это чекбокс, в таблице:
Status bit Not Null Default=0
Так вот без рефреша формы после добавления записи чекбокс глючит..
Если работать через рекордсет тоже нужен рефреш. Однако через рекордсет рано или позно происходит глюк.. (ну тему глюков рекордсета мы уже обсуждали, не будем повторяться, однако быстрее происходит добавление!!! мля.. :( )
...
Рейтинг: 0 / 0
Сдаюсь
    #32171738
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты добавляешь строку
кто ж так добаляет запись?
воспользуйся запросом
и проблема исчезнет
вот тебе и быстродействие будет
...
Рейтинг: 0 / 0
Сдаюсь
    #32171749
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Хам
Ну давай уже объясней что к чему, хватит секреты таить!! ))
Ну к примеру возьму и добалю я запись через вызов ХП.
А как мне эту добавленную запись в форму увидеть??
Me.Requery не предлогать!
Me.ReSync чего то не сработало как то.... хотя странно вообще может еще раз попробовать....
Хам, рассказывай, мне ужо все капец пришел только пивом и спасусь сегодня вечером :)
...
Рейтинг: 0 / 0
Сдаюсь
    #32171754
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
секртов нет
запускаешь ХП
запоминаешь значение ключевого поля
потом requery (не пугайся
слухай дальше)
потом делаешь поиск по
ключевому полю
вот кусок работающей проги
у меня исп. табличная форма
и потому ключевое поле я скрываю
а для поиска его открываю
Application.Echo False
cod=Me!Код
Forms![Контрагенты]![пф Контрагенты].Form.RecordSource = Forms![Контрагенты]![пф Контрагенты].Form.RecordSource
Forms![Контрагенты].SetFocus
Forms![Контрагенты]![пф Контрагенты].SetFocus
Forms![Контрагенты]![пф Контрагенты]![Код].ColumnHidden = False
Forms![Контрагенты]![пф Контрагенты]!Код.SetFocus
DoCmd.FindRecord cod
Forms![Контрагенты]![пф Контрагенты]![Контрагент].SetFocus
Forms![Контрагенты]![пф Контрагенты]![Код].ColumnHidden = True
Me.SetFocus
...
Рейтинг: 0 / 0
Сдаюсь
    #32171755
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
заначит так
у Reckrdsete есть Properties в количестве 102 штук если кто сможет достать описаловку на эти вещи я думаю что Recordset можно будет добить
ве глюки , которые происходят у нас - это от незнания всего о Recordset
их отброасывать не надо . надо в конце концов научиться с ними работать. это класссссная штука. давайте доведем начатое до конц!!!!!!!!!!!!!
...
Рейтинг: 0 / 0
Сдаюсь
    #32171760
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ваде
если предложишь
хороший вариант - не откажусь
...
Рейтинг: 0 / 0
Сдаюсь
    #32171763
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
Записи либо добавляются вручную (через формы ввода) - в этом случае форма сама отображает введенные данные.

либо записи добавляются программно (рекордсет или запрос) - в этом случае без Requery не обойтись.

Чего-то я никак не пойму чего добиваешься?
...
Рейтинг: 0 / 0
Сдаюсь
    #32171771
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Хам
я бьюсь . но не хватает инфы. у меня нет даже 2Гетца.
давайте идеи буду проверять.
наблюдения буду выкладывать.
...
Рейтинг: 0 / 0
Сдаюсь
    #32171790
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 incold
А не ты ли мне говрил что если к примеру используется строка синхронипзации то данные формы не обновляются целеком а дело касается только одной строки. А если я добавляю запись через ХП и вызваю Requery то я поновой запрашиваю ВСЕ данные для формы с сервака, в принципе (пока) не так долго работает.
Так почему же я не могу синхронизировать запись? хотя бы так
DIM rst as adodb.recordset
SET rst=me.Recordset
rst.Resync
не дает никаких результатов у Гетца сказано что добавленные записи не появятся в наборе а отобразятся только изменения и удаленные записи станут недоступными...
добиваюсь я скорости работы в сети! Юзера не довольны мать их за ногу!
2 Хам
понял тебя, дорогой, я делаю примерно также.
Однако Requery вызовет повторный запрос на серваке!
Метод Requery эвивалентен Close и потом Open с теми же параметрами.
что лучше Application.Echo False или Me.Painting=false ?

2 вадя
рекордсет не спасает, действительно запись можно добавить но на 5-6 раз происходи даун Access_а

2 All а чего за лажа с чебоксом? Без рефреша он глючит
...
Рейтинг: 0 / 0
Сдаюсь
    #32171823
V. Motchulsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 All а чего за лажа с чебоксом? Без рефреша он глючит
Есть, такое свойство в форме, загружать значения по умолчанию да/нет. От него зависит будут ли использоваться табличные значения по умолчанию или нет. И не плохо было бы научиться пользоваться Profiler. Там, как раз хорошо видно как Access общается с SQL, и что обновляется одна запись, и затем она и запрашивается. Можно также увидеть лишние обращения к серверу. Можно попробовать на самом чекбоксе поставить по умолчанию значение.
...
Рейтинг: 0 / 0
Сдаюсь
    #32171877
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jem
А не ты ли мне говрил что если к примеру используется строка синхронипзации то данные формы не обновляются целеком а дело касается только одной строки.
То ли я говорил не так, то ли меня не правильно поняли.
Я советовал использовать строку синхронизации в случае, если в качестве источника используется запрос или ХП с параметрами (что кстати довольно подробно описано в справке), а не для обновления программно добавленных/измененных записей

Теперь, что касается скорости работы. Нужно строить интерфейс более оптимально и не забывать, что пишется клиент-серверное приложение.
1. На формах есть такое свойство как MaxRecords, желательно устанавливать его поменьше. Работать с набором записей более 100 неинформативно, нужно организовывать формы с параметрами поиска.
2. Что плохого если идет Requery на форму?
Работает пользователь, вводит данные, потом нажимает кнопку, чтобы выполнить операцию по добавлению/изменению записи, почему после этого не нужно делать обновление? Либо все вводится вручную (без обновления всего источника), либо программно, но с обновлением (операция-то происходит на сервере, а не на клиенте, значит нужно получить измененные данные).
3. А еще лучше разделять формы на два вида: поиск/просмотр (по параметрам и с ограничением по колич-ву записей) и ввод/редактирование (открывается с формы поиска по кнопке и ключу) - при такой организации скорость работы довольно приемлемая (есть рабочая база около 100 пользователей, до 1 млн. записей в рабочих таблицах, сервер 1*PIII-800 + 512 RAM)
Примерно так.
...
Рейтинг: 0 / 0
Сдаюсь
    #32171916
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Jem
Recordset работает для простого добавления нормально.
у меня слетает только втом случае если я хочу применять при этом еще и выделение цветом , а это изменения записи по мимо команда ADDNEW.
у ADDNEW eсть ще один режим
ADDNEW "имя поля", значение
попробуй оно работает несколько иначе . Update не нужен
повторю у Recordset есть 102 свойства надо узнать на что они влияют
...
Рейтинг: 0 / 0
Сдаюсь
    #32172167
Jem
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок! Все вроде понятно, профайлом я еще пользуюсь так скажем плохо ..
Чекбокс без рефреша глючит одназначно A2002.
Что еще сказть, все переделал через ХП, и делаю Requery.
Всем сенкс!
...
Рейтинг: 0 / 0
25 сообщений из 25, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сдаюсь
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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