Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.89/55: Рейтинг темы: голосов - 55, средняя оценка - 4.89
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369

Помогите с заполнением таблицы.

04.04.2019, 14:24. Показов 13257. Ответов 285
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, такое дело:

Есть таблица рапорт, никак не могу понять как сделает её заполнение.

Нужно следующее:
вводим дату,
после этого в поле "Табельный" должен быть выпадающий список с номерами удостоверений из таблицы "Запись" на текущую дату,
выбираем номер удостоверения,
автоматически заполняются поля Фамилия_Имя, смена (в соответствии с выбранным удостоверением), должность вручную выбирается из списка....

Ну никак у меня это не выходит (((
Вложения
Тип файла: rar МДЖД.rar (2.31 Мб, 8 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.04.2019, 14:24
Ответы с готовыми решениями:

Помогите с заполнением "подтаблиц"
В общем я раньше не работал с БД, но сейчас возникла необходимость в создании базы. Вобщем у меня к вам знавцы вопрос. У меня есть...

Помогите с выбором столбцов из таблицы..
Есть таблица со столбцами (не строками) типа 'поле_1', 'поле_2', 'поле_3'. Подскажите пожалста, как с помощью запроса в Ацессе получить...

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

285
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
02.10.2019, 22:37
Студворк — интернет-сервис помощи студентам
mmzd, Ну вот и помощь своевременно подоспела с кнопкой добавления.
Низкий поклон и Огромное спасибо - mobile
Ловите пример.
Вложения
Тип файла: rar МДЖД-05 (Назначение в Рапорт).rar (51.1 Кб, 3 просмотров)
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
02.10.2019, 22:38

Не по теме:

Так.
В где бы ему +1000 в репу дать за скорую помощь?

0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 00:41  [ТС]
VinniPuh, отлично, уже вырисовывается, но, как быть с постановкой на одну должность более одного человека и чтобы один человек не занимал 2 должности?
И должности:
Машинист, помощник машиниста, дежурный по станции Пионерская (Юность), дежурный по депо, поездной диспетчер - должны быть исключены из возможности постановки в рапорт - у них своя постановка по графику (в рабдень даже не учитывается)

Я бы тоже ему + 100000 поставил.
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 06:11
mmzd, Что, даже пятикурсник не может быть машинистом?
Если даже их нельзя поставить на эти определенные должности, то скорее всего в таблице ,- Должности, нужно добавить какое ни то поле с отличительным признаком, типа галочки или кода - НеВРапорте.
Добавить дополнительную должность на день можно вручную.
Перейти к новой записи и в поле - Должность выбрать нужную и так же ещё и ещё, сколько должностей не хватило для записавшихся.
Автоматизировать данный процесс не получится наверное, ибо когда дети записываются, то не знают, на какую должность их могут поставить.
Или они записываются на определенную должность в данный день?
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 08:04  [ТС]
VinniPuh, машинистов, помощников машиниста, дежурных по станции Юность (Пионерская),поездных диспетчеров, дежурных по лок. депо ставят согласно графика. Да на них нельзя просто так поставить, они у меня в другом месте формируются, по возможности их надо убрать в форме назначение из списка должностей. У меня они исключены из списка так:
Visual Basic
1
SELECT Должности.Код, Должности.Должность, Должности.КодСлужбы FROM Должности WHERE (((Должности.Код) Not In (3,6,7,44,45,46)));
Дети при записи не знают куда их поставят.
С утра еще раз посмотрел, всё в общем как я и хотел Только как я и говорил название службы к должности неверно подставляется...

Вы писали, что я могу импортировать эту форму к себе? только было какое-то переименованное поле?

Да, и как я говорил, не должно быть возможности поставить одного ЮЖД на 2 должности
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 08:24
Цитата Сообщение от mmzd Посмотреть сообщение
...название службы к должности неверно подставляется....
Ну да вчера торопился и только сегодня с утра это заметил и сразу исправил и кое чего подшлифовал.
Вот более исправленная версия.
Вложения
Тип файла: rar МДЖД-06 (Назначение в Рапорт).rar (53.0 Кб, 3 просмотров)
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 08:28  [ТС]
VinniPuh, спасибо. должности со службами совпали По сути остался вопрос с невозможностью назначения одного ЮЖД на 2 должности. Чтобы при попытке назначения ЮЖД, которого уже поставили на должность, появлялось например окно типа "Данный табельный номер уже назначен на должность" и убрать должности из формирования , которые по графику назначаются.
И я обратил внимание, если записи на дату нет вообще, то сформировать список должностей невозможно?
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 08:30
Цитата Сообщение от mmzd Посмотреть сообщение
т...олько было какое-то переименованное поле?...
Не какое то, а конкретно Должность в КодДолжности, ибо оно у вас числовое, а не текстовое и это несколько раз сбивало с толку.
В будущем старайтесь полям давать правильные имена, да и не просто Код, а Код Чего.
Так и вам и другим будет легче ориентироваться в запросах и процедурах.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 08:32  [ТС]
VinniPuh, про поле понял.
Я обратил внимание, что когда назначаешь на должность и после заходишь в таблицу РабДень - не проставляется кодЮЖД и кодСлужбы

Код ЮЖД проставляется, просто не так посмотрел - отсутствовали кодЮжд у должностей, на которых нет никого. а КодСлужбы не проставляется
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 08:40
Цитата Сообщение от mmzd Посмотреть сообщение
КодСлужбы не проставляется
А его и не нужно проставлять, достаточно выбрать КодДолжности и Служба Отобразится.

Добавлено через 3 минуты
В таблице - РабДень , для ввода и просмотра ВСЕЙ Нужной информации, достаточно 4-х полей
Дата
Код_ЮЖД
КодДолжности
Оценка

Ну и ещё пятое - Счетчик.
Все другие поля совершенно не нужны и их можно удалить.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 08:46  [ТС]
VinniPuh, понял. В общем это именно то, что нужно.
На мой взгляд осталось:
Исключить должности по графику ( коды должностей 3,6,7,44,45,46), исключить возможность постановки одного ЮЖД на 2 должности. Дизайн я подгоню. Еще бы сделать поиск по табельному прямо в этой форме, а то как я писал, бывает что ЮЖД записался, сдал табель, а на табеле не написан его табельный и его приходится искать в личном деле или искать ЮЖД и спрашивать его табельный. И у нас всё же не курс а год обучения
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 08:48
Цитата Сообщение от mmzd Посмотреть сообщение
...остался вопрос с невозможностью назначения одного ЮЖД на 2 должности...
Ну это нужно делать в - Свойстве таблицы РабДень.
Сделать поля - Код_ЮЖД и Дата - Индексированвми, дабы на одну дату небыло совпадений с Кодом ЮЖД.
Будет выскакивать сообщение об ошибке.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 08:55  [ТС]
VinniPuh, просто в таблице РабДень поля Код_ЮЖД и Дата поставить индексированные? - выставил в таблице что поля индексированные, совпадения не допускаются. ругается и не дает сохранить

Добавлено через 5 минут
Индексацией этого не добиться. дата же повторяется - удалил всех из таблицы РабДень, сделал 2 поля индексированными, при попытке сформировать список должностей - ругань
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 08:55
Цитата Сообщение от mmzd Посмотреть сообщение
...Исключить должности по графику ( коды должностей 3,6,7,44,45,46)...
По уму так не делается.
Если у вас что то изменится в перспективе или коды должностей изменятся то вы что, во вутренности запросов или кода полезите менять, а их может быть не 1-2, а несколько.
Как уже сказал ранее, нужен определяющий признак, лучше всего - КодСтатусаДолжности.
Ибо не как у галочки 2 значения, а сколько угодно.
Зашел в форму, у нужной должности изменил статус для формирования рапорта и всё.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 09:00  [ТС]
Цитата Сообщение от VinniPuh Посмотреть сообщение
Как уже сказал ранее, нужен определяющий признак, лучше всего - КодСтатусаДолжности.
Ибо не как у галочки 2 значения, а сколько угодно.
Зашел в форму, у нужной должности изменил статус для формирования рапорта и всё.
Немного не понял.
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 09:10
Цитата Сообщение от mmzd Посмотреть сообщение
ругань
А ну да, Код_ЮЖД же не может быть Null
Ибо не сразу одновременно с Датой и Должностью проставляется.
Так только при ручном вводе можно, но это нам не подходит.
Придется какую ни то процедуру изобретать.
Я в них не очень силен и может кто еще подскажет, ибо я не факт что сделаю, а если и смогу то скорее всего много времени затрачу.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 09:14  [ТС]
VinniPuh, может поможет процедура, написанная для моей прошлой формы? там проверка на уже назначенного ЮЖД есть

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
Option Compare Database
Option Explicit
 
 
Private Sub ДатаД_Dirty(Cancel As Integer)
 
End Sub
 
Private Sub ДатаД_LostFocus()
Me.Удостоверение.Requery
End Sub
 
Private Sub Должность_AfterUpdate()
Me.НазваниеСлужбы = DLookup("названиеслужбы", "службы", "код_службы = " & Me.Должность.Column(2))
Me.КодСлужбы = Me.Должность.Column(2)
End Sub
 
Private Sub Кнопка109_Click()
 
End Sub
 
Private Sub кнопка4_Click()
Dim s As String
Dim l As Long
 If Me!Удостоверение.ListIndex = -1 Then
        MsgBox "ВВЕДИТЕ ТАБЕЛЬНЫЙ НОМЕР!", vbExclamation
        Me!Удостоверение.SetFocus
        Exit Sub
    End If
    
    If IsNull(Me!Должность) = True Then
        MsgBox "ВЫБЕРИТЕ ДОЛЖНОСТЬ!", vbExclamation
        Me!Должность.SetFocus
        Exit Sub
    End If
 
'Проверка
    'Debug.Print Me!Удостоверение
    
    s = "дата=" & Format(Me!Дата, "\#mm\/dd\/yyyy\#")
    s = DCount("*", "РабДень", " Удостоверение = " & Me.Удостоверение & " AND Дата=" & Format(Me!Дата, "\#mm\/dd\/yyyy\#"))  'всего записей
    If s >= 1 Then
        MsgBox "ВНИМАНИЕ! ДАННЫЙ ТАБ.НОМЕР УЖЕ НАЗНАЧЕН НА ДОЛЖНОСТЬ!" & vbCrLf & "пожалуйста, введите другой табельный номер!"
        Exit Sub
    End If
    
    s = "дата=" & Format(Me!Дата, "\#mm\/dd\/yyyy\#")
    l = DCount("*", "РабДень", s) 'всего записей
 
    'Debug.Print l
    If l >= 120 Then
        MsgBox "РАПОРТ ПОЛНОСТЬЮ СФОРМИРОВАН (120 человек)", vbExclamation
        Me!Дата.SetFocus
        Exit Sub
    End If
 
'Добавление
    Me.Dirty = False
    
    If Me!Удостоверение.ListIndex > -1 Then 'значение выбрано!
        s = "UPDATE Запись SET В_рапорте = True WHERE Удостоверение = " & Me!Удостоверение.Column(1)
        'Debug.Print s
        CurrentDb.Execute s
    Else
        MsgBox "Обновление таблицы [Запись] не возможно." & vbCrLf & "Поле [Удостоверение] не установлено!", vbExclamation
    End If
    
    s = "НАЗНАЧЕНИЕ НА ДОЛЖНОСТЬ ВЫПОЛНЕНО!" & vbCrLf & "ВСЕГО НАЗНАЧЕНО: " & l + 1 & " "
    MsgBox s, vbInformation
    DoCmd.RunCommand acCmdRecordsGoToNew
 
 
End Sub
 
Private Sub Удостоверение_AfterUpdate()
 
Me.Смена = DLookup("смена", "южд", "код = " & Me.Удостоверение.Column(0))
Me.Ф_И = DLookup("Фамилия_ЮЖД", "южд", "код = " & Me.Удостоверение.Column(0)) & " " & DLookup("Имя_ЮЖД", "южд", "код = " & Me.Удостоверение.Column(0))
 
End Sub
 
Private Sub Удостоверение_NotInList(NewData As String, Response As Integer)
MsgBox "ВНИМАНИЕ! ДАННЫЙ ТАБ.НОМЕР ОТСУТСТВУЕТ!" & vbCrLf & "данный таб. номер не записан на текущую дату!"
DoCmd.OpenForm "Запись в рапорт"
DoCmd.RunCommand acCmdRecordsGoToNew
DoCmd.Close acForm, Me.Name 'Закрытие текущей
 
 
 
 
End Sub
 
Private Sub Me_AfterUpdate()
Cancel = True
End Sub
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 09:14
Цитата Сообщение от mmzd Посмотреть сообщение
...Немного не понял...
По этому значению в запросе - Источнике записей формы - будут или - не будут отображаться должности с таким признаком.
0
4 / 4 / 0
Регистрация: 08.06.2015
Сообщений: 369
03.10.2019, 09:15  [ТС]
Цитата Сообщение от VinniPuh Посмотреть сообщение
По этому значению в запросе - Источнике записей формы - будут или - не будут отображаться должности с таким признаком.
Ну наверное это то что нужно типа выставил напротив Машиниста статус "По графику" и она не отображается при формировании списка. Типа 2 статуса "По графику", "Без графика".
0
 Аватар для VinniPuh
9147 / 6179 / 594
Регистрация: 27.03.2013
Сообщений: 20,048
03.10.2019, 09:19
Цитата Сообщение от mmzd Посмотреть сообщение
...может поможет процедура, написанная для моей прошлой формы?...
Может и поможет.
Но сейчас я уже начинаю собираться на дачу, лучек и чесночек сажать.
Так что вдумчиво разбираться в коде, пока не могу.
Помнится вам этот код кажется - Eugene-LS писал, если ни чего не путаю.
Лучше попросить того, кто это делал, так будет значительно быстрее и вернее.
Хотя может еще кто, не сильно занятый подскажет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.10.2019, 09:19

Помогите построить структуру таблицы
Добрый день! Прошу Вашей помощи, ситуация такова: Имеются таблицы: "Состав сотрудников" и "Командировочное...

Помогите связать DBF-таблицы с Access
Есть два компьютера: на обоих ОС-Win2000, Office-20003, BDE. На одном из них в пустой БД Access связывание с таблицами DBF происходит без...

Помогите правильно создать таблицы и связать их
Помогите в написании следующих таблиц. Надо связать организацию и сдаваемую ей отчетность к примеру бухгалтерский баланс. Таблица...

Помогите,пожалуйста,с созданием отчета-таблицы
Существует таблица Общая, где прописаны все наименования учреждений,наименования и код спец и т.д(см. вложенный файл): На основе этого...

Не удаляется запись из дочерней таблицы в виде. Помогите !!!
MSSQL 7.0. Две таблицы - родительская и дочерняя. Естественно стоят ограничения PK и FK(внешний ключ). Если в дочерней таблице удаляю...


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

Или воспользуйтесь поиском по форуму:
160
Ответ Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru