Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 36

Как вызывать форму для редактирования записей и как задать нулевое значение полю

03.03.2017, 18:38. Показов 2031. Ответов 8

Студворк — интернет-сервис помощи студентам
Добрый день уважаемые форумчане. Прошу вас помочь разобраться в следующей проблеме.

1. Есть таблица номенклатуры, есть ее форма. Так же есть форма для добавления товара.
Необходимо реализовать : По двойному нажатию на запись (наименование) товара в форме Номенклатура, открывалась бы форма (добавления товара) но для изменения данных. Т.е. с теми же данными которые уже записаны. Так же и при копировании, выбрал запись - нажал "КОПИРОВАТЬ" и открывается опять та же форма для редактирования скопированных данных.

Пытался сделать это с помощью макроса, но при нажатии на любой записи открывается для редактирования все равно последняя...

2. Есть таблица, с ее помощью реализован приход товара. Необходимо, создать запрос который бы присваивал заданное числовое значение в новом поле (мне необходимо "0"), по всем старым записям. Я думал например, по нажатию кнопки выскакивает окно "выберите поле", после "задайте числовое значение" далее "присвоить" и все. Т.к. номенклатура будет только увеличиваться то очень нуждаюсь в автоматизации процесса))

Я прикрепил кусок базы, очень буду вам признателен за помощь. По 2му пункту можно показать пример на той таблице которая в этом куске базы.

Заранее всем огромное СПАСИБО!
Миниатюры
Как вызывать форму для редактирования записей и как задать нулевое значение полю  
Вложения
Тип файла: 7z BD_22.7z (655.9 Кб, 11 просмотров)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.03.2017, 18:38
Ответы с готовыми решениями:

Как задать значение полю со списком из другой формы
Есть 2 формы - главная (форма1) и подчиненная (форма2). В главной - поле со списком фамилий , при выборе которых появляется подчиненная...

Как задать ограничение по количеству вводимых в форму записей?
Подскажите пожалуйста, как можно задать ограничение по количеству вводимых в форму записей (не просто запретить ввод, а разрешить ввод...

Создать форму для редактирования записей
Доброго времени суток. У меня есть приложение где на главной форме присутствуют TreeView и RichTextbox. В TreeView выводятся список...

8
Эксперт MS Access
 Аватар для Eugene-LS
12082 / 5861 / 1498
Регистрация: 05.10.2016
Сообщений: 16,466
04.03.2017, 09:28
Первый пункт отрабатывает (насколько я понял задачку)
По второму ничего не понятно.
Вложения
Тип файла: zip BD_23 (Eugene-LS).zip (598.0 Кб, 14 просмотров)
1
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 36
04.03.2017, 10:05  [ТС]
Спасибо огромное я уже думал что никогда этого не будет))
Во втором пункте я имею в виду, что приход товара в моей базе реализован с помощью добавлении поля (название поля - у мня это дата прихода), и проставления напротив нового товара количества (числовое поле) как на скриншоте.
В данном случае мне необходимо, чтобы после добавления нового поля в таблице (числового), с помощью обработки можно было поставить нули напротив всех записей. Как на скрине, только сейчас я делаю это в ручную, проставляю на против каждой.
0
Эксперт MS Access
 Аватар для Eugene-LS
12082 / 5861 / 1498
Регистрация: 05.10.2016
Сообщений: 16,466
04.03.2017, 10:17
Лучший ответ Сообщение было отмечено spec1a1or как решение

Решение

Цитата Сообщение от spec1a1or Посмотреть сообщение
можно было поставить нули напротив всех записей.
Не сильно я понял задачку, но думаю что должно быть нечто подобное:
Visual Basic
1
2
3
4
5
6
Dim strSQL As String
 
'В таблице "Товары" ставим везде 0 (ноль) в поле "12"
    strSQL = "UPDATE Товары SET [12]=0"
'Выполнение запроса
    CurrentDb.Execute strSQL
1
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
04.03.2017, 10:19
spec1a1or, смотрите: вы пытаетесь в аксес применять методы ведения учета, характерные скорее для экселя. Если вам удобен именно такой метод - мне кажется, зря вы отказались от электронных таблиц. Таким методом удобнее вести учет в экселе.

Аксес же заточен под совсем другой подход: делается таблица наименований (безо всяких приходов-расходов в ней), таблица документов (в ней хранятся такие атрибуты приходных и расхрдных накладных, как номер, дата, название контрагента, прочие реквизиты, общая сумма для контроля) и таблица "табличной части" накладных - в ней перечисляется, в какой накладной какого именно товара пришло/ушло сколько и по какой цене.

Поэтому приход, как и расход, не делается путем заполнения цифрами столбцов в таблице наименований. А создается документ и в него добавляются строки: название - количество, название - количество и т.д.

А ваша табличка с названиями и количествами получается запросом. Не для ввода данных, а для посомтреть текущее состояние.
2
Эксперт MS Access
 Аватар для Eugene-LS
12082 / 5861 / 1498
Регистрация: 05.10.2016
Сообщений: 16,466
04.03.2017, 10:30
texnik-san, абсолютно права, это не верный подход.
Нужно лепить табличку "Движение Товара" (Приход - Расход) - и склад считать по её данным.

Добавлено через 8 минут
А вообще, при ведении скл. учёта, хорошей практикой является работа "От Документа", те:
Есть док. ПРИХОДА и у него как минимум НОМЕР, ДАТА и Поставщик
Он содержит список пришедших товаров (КОД, Наименование, кол-во, цена ... в связанной таблице)
При сохранении документа ПРИХОДА кол-во товара увеличивается ...
При Расходе всё аналогично, только товар списывается и вместо "Поставщик" - Получатель.
... как то так ...
1
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 36
15.03.2017, 12:51  [ТС]
Спасибо огромное за помощь.
Не могу только понять как заставить работать этот запрос на обнуление поля. Один раз как то получилось и все.
Я не силен в программировании, уверен что для вас это пустяки. Не могли бы вы показать на примере, как работает данный запрос. Можно на куске моей базы. На любом поле. Еще раз спасибо.

Добавлено через 54 секунды
Eugene-LS, Спасибо огромное за помощь.
Не могу только понять как заставить работать этот запрос на обнуление поля. Один раз как то получилось и все.
Я не силен в программировании, уверен что для вас это пустяки. Не могли бы вы показать на примере, как работает данный запрос. Можно на куске моей базы. На любом поле. Еще раз спасибо.
0
Эксперт MS Access
 Аватар для Eugene-LS
12082 / 5861 / 1498
Регистрация: 05.10.2016
Сообщений: 16,466
16.03.2017, 19:06
Цитата Сообщение от spec1a1or Посмотреть сообщение
Не могли бы вы показать на примере, как работает данный запрос. Можно на куске моей базы.
В вашей базе (пока) нет документов прихода-расхода - показывать не на чем.

А так все просто :
Объедините товары текущего документа со справочником товаров по коду товара и приплюсуйте к текущему кол-ву на складе количество из документа при сохранении оного.
На расходе обратная операция.

Что бы не делать 2 разных запроса можно промаркировать документ прихода маркером 1, а расхода -1 и тогда:
[Кол-во на складе]+([Кол-во из документа]*[Маркер документа])
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12231 / 5078 / 814
Регистрация: 07.08.2010
Сообщений: 14,936
Записей в блоге: 4
16.03.2017, 20:56
аксесс --это не ексель
у него свои законы и ограничения
многие вещи екселя в аксесс невозможны(напрямую)

---
например в екселе сейчас 16 тысяч столбцов, печать отчета любой шарины
в аксесс это реализуется, только через программный вывод в ексель

прилагаю примерчик(переделанную вашу базу)
Вложения
Тип файла: zip BD170316.zip (593.6 Кб, 6 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.03.2017, 20:56
Помогаю со студенческими работами здесь

Как открыть форму для редактирования
Всем привет. Начну с того что никогда не делал формы в акцессе, но тут такая задачка, что надо некую форму отредактировать( ну там добавить...

Как создать форму для редактирования таблицы?
Как создать форму для редактирования таблицы? Если с помощью "Разделенной формы", то при внесении изменений в текстовые поля...

Как сделать свою форму для редактирования
Создаю свою форму пользовательскую! Публикую на сервер SP. Выдает на редактирование стандартную форму! Мне на редактирование нужна...

Как открыть форму для редактирования определенной записи
Добрый день ув. форумчане. Прошу вас помочь разобраться в следующей проблеме. 1. Есть таблица номенклатуры, есть ее форма. Так же есть...

Как создать форму для редактирования и изменения документов на сайте?
как создания форму для редактирования и изменения докементов на сайте что бы каждый желающий мог ею воспользоваться сори за некорректную...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru