|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
|
Предыдущая запись как значение по умолчанию08.03.2013, 22:17. Показов 10073. Ответов 47
Метки нет (Все метки)
Удивительно, но поиском не смог найти, хотя должно быть не первый спрашиваю...
Как в форме вида "Несколько элементов" сделать так, что бы значение предыдущей записи ставилось как значение по умолчанию? То есть если в предыдущей записи было написано "Модель 1", то в следующей (создаваемой) по умолчанию сразу было "Модель 1". И человек если устраивает - ничего не менял бы. А если надо - тогда выбирал бы нужное из выпадающего списка. /// снова переделываю свою базу. надеюсь теперь удастся отойти от экселлевской логики.
0
|
|
| 08.03.2013, 22:17 | |
|
Ответы с готовыми решениями:
47
Как убрать следующая/предыдущая запись под постом
Следующая/предыдущая запись mysql |
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||||||
| 08.03.2013, 23:03 | ||||||
|
Надо переопределять значение свойства DefaultValue. Для существующих записей на событии Текущая запись (Current), для новой, только вводимой на событии AfterUpdate поля или записи.
0
|
||||||
|
3544 / 1118 / 94
Регистрация: 13.03.2011
Сообщений: 1,513
|
|||||||||
| 09.03.2013, 09:56 | |||||||||
ИМХО, рекомендуемый вами код поместить в процедуру обработки события AfterInsert формы.
Что вы понимаете под словом "предыдущая" запись? Варианты, напрашивающиеся после прочтения цитаты: 1. Запись на форме, расположенная непосредственно перед вновь создаваемой. 2. Запись добавленная последней (по времени) 3. Последняя (по времени) запись, в которой корректировалось интересующее нас поле.
0
|
|||||||||
|
2842 / 774 / 41
Регистрация: 20.05.2012
Сообщений: 2,055
|
|||||||
| 09.03.2013, 10:45 | |||||||
|
Во-первых, чуть надёжнее, если данные в таблицу вводятся не так интенсивно; во-вторых, важнее, - "на перспективу": таким образом можно сохранять и любые другие пользовательские настройки. А сделать функционал со временем гибче и удобнее и предоставить пользователю возможность подстраивать интерфейс под себя - до этого аппетиты рано или поздно возрастут :-) Получать эти величины можно приблизительно так:
0
|
|||||||
|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
|
| 09.03.2013, 10:50 [ТС] | |
|
Прикладываю архив с файлом (сразу это мне надо было сделать - ступил). Там форму я не делал полностью - лежит эскиз.
Форма "Нормировщик". Я пытаюсь, что бы при создание новой строчки - в поле "Модель" ставилось значение с предыдущей (последней) строчки. Логика следующая - человек создает модель обуви. Какая именно модель - я включаю в каждую строчку, что бы отчеты проще делать и для связей. В поле "Номер" - там просто номера по порядку для этой конкретной модели. Я не стал добавлять столбцы в которых как раз и будет основная начинка. Логика следующего порядка: Модель такая-то состоит из 10 деталей. У меня в базе десять строк. В первом столбце десять раз указывает человек название одной и той же модели. Во втором - порядковый номер, поскольку без пропусков, то 1,2,3,4...8,9,10. Следующие столбики заполнены данными которые являются индивидуальными. Я хочу упростить участь человека и что бы ему не вводить каждый раз название модели, а оно смотрелось из предыдущей строчки. И человеку приходилось менять лишь когда он делает новую модель. В идеале прикрутить еще бы счетчик порядковых номеров, что бы по умолчанию ставилось число на единичку больше чем предыдущее - но это мелочь. А вот выбирать каждый раз из сотен моделей одну - это достаточно напряжно.
0
|
|
|
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
| 09.03.2013, 11:15 | |
|
По схеме данных Нормировщик подчинена Модели. Почему бы форму Нормировщик не подчинить форме Модели (связь Код-Модель), тогда не нужно никаких изменений значений по умолчанию, модель будет браться из основной формы.
1
|
|
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||
| 09.03.2013, 11:15 | ||
|
0
|
||
|
3544 / 1118 / 94
Регистрация: 13.03.2011
Сообщений: 1,513
|
||
| 09.03.2013, 12:19 | ||
|
0
|
||
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||
| 09.03.2013, 12:44 | ||
|
А "случайное позиционирование" не более вероятно как и при выборе с комбо. Добавлено через 8 минут Говоря про "обратный случай", имелось в виду вот это "При объеме данных, значительно превышающем количество строк комбобокса, найти необходимую запись иногда труднее, чем выбрать нужное значение"
0
|
||
| 09.03.2013, 12:48 | |
|
Не по теме: Как бы было хорошо, когда б на Форуме нашёлся бы энтузиаст, конвертирующий вложения в старослужащий формат. Вот была бы благодать :yahoo:
0
|
|
|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
|
| 09.03.2013, 13:55 [ТС] | |
|
mobile
Внес код в поле "Номер" на событие "После обновления". Вместо МоeПоле указал название поля "Модель". Вообще никакой реакции. ltv_1953 Беда в том, что я совсем не понимаю как делать подчиненные формы. Поищу в сети, но пока не знаю как это может сработать. Хотя вроде нашел как... буду экспериментировать. Андрэич Могу попробовать в старом формате сохранить если не открывается. ////////////////////////// Я думаю, что если смогу решить эту проблему, то база которую так или иначе делаю два-три года - будет готова.
0
|
|
|
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
||
| 09.03.2013, 14:09 | ||
|
1
|
||
|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
||||||
| 10.03.2013, 13:46 [ТС] | ||||||
|
Почти всё законченно. Вариант ltv_1953 оказался оптимальным (спасибо всем кто помогал). Теперь я в такой вид переведу все остальные формы и дело будет в шляпе. Но возник последний рубеж. Посмотрите пожалуйста приложенный файлик.
Суть в том, что рядовой сотрудник заполняет форму, его начальник смотрит-проверяет. И если всё нормально, то ставит электронную визу (логическое поле). И если виза стоит, то рядовой сотрудник уже не может ничего изменить исправить. Я это решал кодом (который мне тут дали):
Но тут внезапно код отказался работать( Посмотрите пожалуйста - форма "МодельНормировщика" - базовая. "Нормировщик" - подчиненная форма с кодом.
0
|
||||||
|
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
| 10.03.2013, 14:27 | |
|
Вы потеряли заголовок процедуры.
Во вложении еще кое-что подчищено. 1. Поле ВизаНачальникаНормировщиков в подчиненной не нужно, оно есть в основной и в коде ссылка на него. поэтому из источника данных подчиненной это поле убрано вместе с основной таблицей. 2. Нужно добавить запрет на удаление записей из подчиненной, если стоит ВизаНачальникаНормировщиков . Процедура добавлена. 3. Хотя здесь это не нужно, обычно добавляют еще и запрет на добавление записей. Для общности добавлена.
1
|
|
|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
|
| 10.03.2013, 17:43 [ТС] | |
|
Спасибо, вижу код. Дальше его буду копировать. Но беда в том, что данный метод не защищает от исправления данных после визирования.
Если нажать на "плюсик", откроется подчиненная форма. И если сразу щелкнуть на каком-либо поле, то оно доступно для редактуры и изменение сохраняется. Это работает лишь раз и если материнскую форму только-только загрузили, но из-за этого бага всё визирование не работает.
0
|
|
|
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
| 10.03.2013, 18:14 | |
|
Да, при обработке текущей записи подчиненной формы. текущая запись основной формы м.б. не той. По текущим записям в формах видно, что вы попадаете на поле записи подчиненной, не запись основной пока еще другая. Посмотрите другой вариант. Там блокируется вся подчиненная форма и отдельно обрабатывается удаление в подчиненной (при попытке удаления текущая основной всегда та, которая нужна).
1
|
|
|
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 110
|
|
| 10.03.2013, 18:28 [ТС] | |
|
Всё работает) Огромное спасибо! Теперь под этот алгоритм буду всё перебивать. Я вижу свет в конце тоннеля!
0
|
|
|
0 / 0 / 0
Регистрация: 28.07.2016
Сообщений: 13
|
|
| 28.07.2016, 07:45 | |
|
Доброго дня, други. Хочу, что бы в форме, основанной на выборке из десяти последних по дате записей и отсортированных по возрастанию, одно из полей принимало по умолчанию значение предыдущей записи.
Прописываю это так: =DLookUp("[Поле1]";"[Запрос1]";"Дата=" & DMax('[Дата]';'[Запрос1]')) По отдельности Dmax работает и возвращает необходимую последнюю дату из выборки. DLookUp бес параметра DMax возвращает первую запись из выборки. А вот с параметром DMax выдает ошибку. Подозреваю, что ошибка в синтаксисе. Подскажите, пожалуйста, в чем ошибка. Спасибо.
0
|
|
|
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
| 28.07.2016, 08:25 | |
|
Попробуйте отформатировать DMax("[Дата]";"[Запрос1]"):
Format(DMax("[Дата]";"[Запрос1]");"\#mm\/dd\/yyyy\#")
1
|
|
|
0 / 0 / 0
Регистрация: 28.07.2016
Сообщений: 13
|
|
| 28.07.2016, 09:50 | |
|
ltv_1953, спасибо огромное. То, что нужно!
Добавлено через 1 час 18 минут ltv_1953, а может быть вы ещё знаете как добавить второе условие по времени к этому запросу? Это уже для другой таблицы, но смысл тот же. Единственное отличие, что в ней есть отдельно поле Дата и отдельно поле Время. Если не делать условие на время, то выдаст первую запись последней даты. Но так как на эту дату записей несколько, то из них необходимо взять последнюю по времени. Я делаю так: =DLookUp("[Поле1]";"[Запрос1]";"Дата=" & Format(DMax("[Дата]";"[Запрос1]");"\#mm\/dd\/yyyy\#") and "Время=" & Format(DMax("[Время]";"[Запрос1]");"\#hh\/nn\#")) Но условие в таком виде не срабатывает и возвращает первую запись из все выборки как будто условия вовсе не прописано.
0
|
|
| 28.07.2016, 09:50 | |
|
Помогаю со студенческими работами здесь
20
Предыдущая запись foreach DataGridView Предыдущая запись переодического регистра сведений Как разрешить запись в файл, по умолчанию запись не разрешена
Как сделать учетную запись по умолчанию Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|