|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Всем привет! Возникла непонятная ситуация в процессе модернизации базы (Access 2003). Прошу помощи! Есть простая форма для работы с заказами и создающая новые заказы. Работает напрямую с таблицей. При создании новой записи в таблицу автоматически подставляется текущая дата в [ДатаЗаказа] - значение по умолчанию Date(), а в [ДатаГотовности] прописывается значение по умолчанию Date() + 9. Далее вводятся разные данные: ФИО заказчика, номер заказа и прочее... Т.е. при переходе формы в режим новой записи (стандартная кнопка внизу формы - стрелка вправо со звездочкой), [ДатаЗаказа] и [ДатаГотовности] уже заполнены данными. При двойном клике по вышеуказанным контролам открывается календарик, где можно выставить любую дату. Хочу сделать так: сразу при переходе в режим новой записи, если [ДатаГотовности] попадает на субботу или воскресенье, то сразу автоматически открывался этот календарик для возможности вручную скорректировать дату менеджером. Что-то типа такого: Код: vbnet 1. 2. 3. 4. 5. 6. 7.
Пробовал на разные события прописывать: BeforeInsert, AfterInsert, AfterUpdate, Dirty, Enter... Нет никакой реакции! Подскажите, что не так? Как правильно сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 12:58 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Сделал так, чтобы после ввода номера заказа проверялась дата готовности. Работает! Код: vbnet 1. 2. 3. 4. 5. 6.
Но все же хотелось бы, чтобы проверка выполнялась сразу при переходе в режим создания записи ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 13:16 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Alex37...Но все же хотелось бы, чтобы проверка выполнялась сразу при переходе в режим создания записиЕсли очень хочется,то почему в коде не наблюдается Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 16:01 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
sdkuAlex37...Но все же хотелось бы, чтобы проверка выполнялась сразу при переходе в режим создания записиЕсли очень хочется,то почему в коде не наблюдается Код: vbnet 1. 2. 3.
Спасибо за ответ. Но не соображу. А к чему это привязать? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 16:17 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
вдогонку:и событие Form_Current() ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 16:17 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
sdkuвдогонку:и событие Form_Current() Попробовал в разных вариантах с этим событием. Появляется сообщение об ошибке при, например, попытке пролистать записи... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 16:47 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Alex37, а может делать значением по умолчанию ближайший рабочий день? Так все работает Код: vbnet 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 16:57 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
код,что предложен,предполагает значение по умолчанию (в таблице или форме) =Date() ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 17:16 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Решил остановиться на таком варианте: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
До вчерашнего дня, в течении лет 12, [Дата готовности] = [Дата заказа] + 7. Т.е. Дата готовности почти всегда попадала в рабочие дни (кроме праздников среди недели). Менеджеры уже отвыкли кликать на контролах [Дата заказа] и [Дата готовности]. Теперь стало Date + 7. Ввод номера заказа обязателен. Иначе форму не закрыть + появится соответствующее сообщение. Форма открывается с курсором в поле номера заказа. Его набирают первым и проверка даты готовности будет выполнена! Спасибо sdku ! Подсказал идею для дальнейшего апгрейда. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 17:36 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Правильно так: Менеджеры уже отвыкли кликать на контролах [Дата заказа] и [Дата готовности]. Теперь стало Date + 9. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 17:38 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Alex37.... Теперь стало Date + 9.а почему не так:если суббота то Date()+2;если воскресенье Date()+1.А еще бывают праздники и переносы выходных-здесь без дополнительной таблицы не обойтись... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 18:01 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
И уже потом +7 и +выходные в этих 7 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 18:05 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
sdkuAlex37.... Теперь стало Date + 9.а почему не так:если суббота то Date()+2;если воскресенье Date()+1.А еще бывают праздники и переносы выходных-здесь без дополнительной таблицы не обойтись... Так сложилось. Нет четких правил. Кроме того, ранее могли быть проведены заказы со сроками более 15, 20 дней (несколько раз в месяц бывают). Приходится учитывать эти дни готовности, чтобы не перегружать цех в эти дни ... И ещё масса моментов не поддающихся логике и программированию :) Без ручного контроля не обойтись. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 18:44 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
Alex37, может в таблице добавить "срокИсполненияЗаказа",со значением по-умолчанию наиболее часто используемой длительностью и уже после его заполнения считать ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 20:36 |
|
Событие перед созданием новой записи
|
|||
---|---|---|---|
#18+
sdkuAlex37, может в таблице добавить "срокИсполненияЗаказа",со значением по-умолчанию наиболее часто используемой длительностью и уже после его заполнения считать Спасибо за советы. Я переговорил почти со всеми менеджерами, работающими с базой, требования у разных отделов разделились. Видимо буду для каждого отдела делать свою форму со своими расчетами. Так будет правильнее... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2019, 19:06 |
|
|
start [/forum/topic.php?fid=45&fpage=30&tid=1610628]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
32ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 129ms |
0 / 0 |