26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
1

Добавить кнопки на форме "Изменить", "Сохранить изменения", "Добавить новую запись"

03.10.2011, 15:33. Показов 19358. Ответов 17
Метки нет (Все метки)

Собственно как сделать эти кнопки??сейчас у меня форма и в нее можно и добавлять и удалять и изменять. как сделать так чтобы по умолчанию информацию нельзя было бы редактировать или добавлять без нажатия этих кнопок (это нужно для того чтобы случайно кривые руки не изменили нужную информацию ведь при закрытии формы после изменения информации в ней мессаги с вопросом "сохранить изменения?" не выскакивает)
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2011, 15:33
Ответы с готовыми решениями:

В Access 2010 в форме стала недоступна кнопка "Добавить новую запись".
В Access 2010 в форме стала недоступна кнопка "Добавить новую запись". (стандартная). В свойствах...

Message "Write conflict" with "Save record", "Copy to clipboard", "Drop changes" buttons
Здравствуйте. Получив это сообщение нажимаю на "Save record" и продолжаю работать. Скажите,...

При нажатии на кнопку "Сохранить запись" в текстовом поле вылезает надпись "#Удалено"
При нажатии на кнопку "Сохранить запись" в текстовом поле вылезает надпись "#Удалено", как это...

Как перейти из "Заголовок формы" в "Область данных" по нажатию "Tab" или другой комбинации клавиш?
Как перейти из "Заголовок формы" в "Область данных" по нажатию "Tab" или другой комбинации клавиш?

17
1 / 1 / 0
Регистрация: 15.06.2011
Сообщений: 12
03.10.2011, 21:08 2
Открой форму в конструкторе
Правой клавишей мыши нажми на поле, которое не хочешь, чтобы изменялось
Из всплывшего меню выбери Свойства
Поройся там, есть настройка, типа, "запретить изменения".

ЗЫ:
Я бы просто схитрила, просто инфу выводила бы через отчёты, а при нажатии кнопки "Изменить" в форме, выскакивала бы другая кнопочная форма, где можно было бы и смотреть и изменять. ;-)
0
26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
03.10.2011, 21:12  [ТС] 3
Цитата Сообщение от Monika Посмотреть сообщение
Открой форму в конструкторе
Правой клавишей мыши нажми на поле, которое не хочешь, чтобы изменялось
Из всплывшего меню выбери Свойства
Поройся там, есть настройка, типа, "запретить изменения".

ЗЫ:
Я бы просто схитрила, просто инфу выводила бы через отчёты, а при нажатии кнопки "Изменить" в форме, выскакивала бы другая кнопочная форма, где можно было бы и смотреть и изменять. ;-)
там стоооока инфы..это раз, а во-вторых мне нужно не то чтобы какое-то поле нельзя было изменять а все поля на данной форме. наверно легче применить это ко всей форме но что-то через элоуэдитс не получается..можт не так что-то делаю..
0
1177 / 628 / 39
Регистрация: 30.05.2010
Сообщений: 715
03.10.2011, 23:41 4
Здравствуйте yulianna2501.
"..как сделать так чтобы .. информацию нельзя было бы редактировать или добавлять .." :
подобный "запрет" можно выполнять на UnBound форме (без подключенных данных)
так-же удобно обеспечить явное сохранение "..чтобы случайно кривые руки не изменили нужную информацию.."
Надеюсь образец поможет справиться с задачей.

Успехов Вам.
Евгений.
0
Вложения
Тип файла: rar db2.rar (17.9 Кб, 443 просмотров)
26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
04.10.2011, 10:35  [ТС] 5
оу..у меня в бд полей 50 наверное которые можно редактировать, плюс еще подчиненные формы в которых инфы неограниченное кол-во..не представляю как можно сделать подобным образом.неужели нельзя сделать чтоб по умолчанию нельзя было редактировать ничо-тока просмотр, а нажав на кнопку редактировать-все поля сразу стали доступны.(в фокспро такое возможно, только не знаю как.вот и хотельсь бы такое в аксе)

Добавлено через 33 минуты
такс..установила на форму:изменение данных-нет. добавила на форму кнопку которая разрешает редактировать данные с кодом
Visual Basic
1
2
3
Private Sub Êíîïêà263_Click()
Me.AllowEdits = True
End Sub
теперь нужно сделать кнопку которая сохранит изменения и снова сделает форму недоступной для редактирования.кто может помочь??

Добавлено через 29 минут
урасделала так:создала еще одну кнопку "сохранить" с кодом
Visual Basic
1
2
3
4
Private Sub Êíîïêà264_Click()
Me.Requery
Me.AllowEdits = False
End Sub
вроде работает. знающие люди подскажите правильно ли это и не вызовет ли это проблем?
0
Эксперт MS Access
6729 / 4326 / 269
Регистрация: 12.08.2011
Сообщений: 12,673
04.10.2011, 10:57 6
Я бы ещё и на загрузку добавил Me.AllowEdits = True, потому что у вас нет обработчика ошибок и в результате какого-либо сбоя у вас могут возникнуть проблемы.
0
26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
04.10.2011, 11:07  [ТС] 7
сделала так:
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub Кнопка265_Click()
  If Me.AllowEdits Then
    Me.Dirty = False
    Me.AllowEdits = False
    Me.Кнопка265.Caption="Разрешить редактировать"
  Else
    Me.AllowEdits = True
    Me.Кнопка265.Caption="Сохранить"
  End If
End Sub
0
Эксперт MS Access
6729 / 4326 / 269
Регистрация: 12.08.2011
Сообщений: 12,673
05.10.2011, 06:38 8
Цитата Сообщение от yulianna2501 Посмотреть сообщение
If Me.AllowEdits Then
Вопрос на засыпку, спешил фо ТС, что означает сиё действие?

p.s. "сделала так" = "дали на другом форуме".
0
26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
05.10.2011, 09:13  [ТС] 9
а вот хороший вопрос))но работает..почти..работает на поля а на подчиненную форму не влияет вообще((она не блокируется((как изменялось так и изменяется((
0
18 / 18 / 0
Регистрация: 03.10.2011
Сообщений: 56
05.10.2011, 10:49 10
yulianna2501, для управления изменением в полях подчиненной формы нужно также это свойство формы (allowedits) изменять у подчиненной формы.
А чтобы добавлять в подчиненную форму записи и удалять их еще и свойства AllowAdditions и AllowDeletions соответсвенно.
1
26 / 28 / 0
Регистрация: 28.01.2011
Сообщений: 530
05.10.2011, 10:57  [ТС] 11
всем спасибо, заработало так:
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Кнопка269_Click()
    If Me.AllowEdits Then
        Me.Dirty = False
        Me.AllowEdits = False
        Me.[1].Form.AllowEdits = False       ' Запрещение редактирования имеющейся записи в подформе
        Me.[1].Form.AllowAdditions = False   ' Эта строка запрещает вставку новой записи в подформе
        Me.Кнопка269.Caption = "Редактировать данные"
    Else
        Me.AllowEdits = True
        Me.[1].Form.AllowEdits = True        ' Разрешение редактирования имеющейся записи в подформе
        Me.[1].Form.AllowAdditions = True    ' Эта строка разрешает вставку новой записи в подформе
        Me.Кнопка269.Caption = "Сохранить изменения"
    End If
End Sub
нужно было и подчиненной форме тоже присвоить эти свойства
0
93 / 18 / 4
Регистрация: 15.04.2015
Сообщений: 281
19.08.2015, 21:36 12
с удовольствием изучил ветку и воспользовался.
пасибки всем
однако, у меня почему то не сразу отрабатывают коды...(((
иногда требуется по нескольку раз нажимать кнопки на изменение, прежде чем они "отработают".
помогите разобраться, что не так происходит?
и вопросик второй. не по теме ветки, но по приложенной базе.
а почему при выборе "улицы" информация в зависимых таблицах появляется не сразу, а после двойного "обновления адреса"?
0
Вложения
Тип файла: zip База.zip (196.8 Кб, 53 просмотров)
0 / 0 / 0
Регистрация: 08.09.2016
Сообщений: 10
06.02.2017, 09:01 13
Добрый день!
Подскажите пожалуйста как сделать такую же кнопку только не редактировать, а новая запись.
Т.е. одной кнопкой создать запись и сохранить запись.
 Комментарий модератора 
ИНТЕРВАЛ БОЛЕЕ ГОДА
0
8189 / 4053 / 920
Регистрация: 05.10.2016
Сообщений: 11,197
Записей в блоге: 1
06.02.2017, 12:03 14
Цитата Сообщение от Skyborn Посмотреть сообщение
Подскажите пожалуйста как сделать такую же кнопку только не редактировать, а новая запись.
Простенько так:
Visual Basic
1
    DoCmd.GoToRecord , , acNewRec      'Переход на новую запись
0
0 / 0 / 0
Регистрация: 08.09.2016
Сообщений: 10
06.02.2017, 12:38 15
как сделать саму кнопку понятно, я имел ввиду чтобы как с кнопкой редактирования,т.е нажал кнопку новая запись на ней появилась надпись сохранить внес данные нажал кнопку вместо надписи сохранить снова надпись новая запись.
Чтобы делать все одной кнопкой и новая запись и сохранить.
0
Эксперт MS Access
16345 / 6782 / 1487
Регистрация: 21.06.2012
Сообщений: 12,519
06.02.2017, 13:51 16
Цитата Сообщение от Skyborn Посмотреть сообщение
Чтобы делать все одной кнопкой и новая запись и сохранить.
А что, переход на другую запись (новую, в частности) не сохраняет? В форме с источником записей именно так.
0
0 / 0 / 0
Регистрация: 08.09.2016
Сообщений: 10
06.02.2017, 15:35 17
Форма открывается только для чтения после нажатия новая запись можно внести данные после того как внес данные нажимаешь на кнопку форма опять переходит в режим только чтение.
0
Эксперт MS Access
6729 / 4326 / 269
Регистрация: 12.08.2011
Сообщений: 12,673
07.02.2017, 03:12 18
Вам нужна отдельная кнопка Редактировать, которая даст доступ.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.02.2017, 03:12

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как сделать чтобы через запрос заполнялись характеристики поля: "значение по умолчанию", "формат rtf", "описание"?
SQL запрос создаёт таблицу. create table Группы (КодГруппы COUNTER CONSTRAINT PrimaryKey...

Отследить в форме "Б" событие Нажатие кнопки в форме "А"
Доброго дня Уважаемые форумчане!!! Обращаюсь к Вам за помощью в решении вопроса: Как...

Неполучается с запросом: к столбцу месяца "Дата МР" добавить столбец "МПИ
Добрый день, прошу помощи. Вожусь второй день. Есть запрос в нем столбцы "Дата МР" и "Дата...

Ошибка 2450 "Приложение не удается найти указанную форму "[Добавить]"
Доброе время суток! Подскажите в чем ошибка, при исполнении модуля пишет ошибку 2450 "Приложение не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.