Topic: архив записей по конкретному человеку

Доброе утро.
Подскажите, как мне реализовать по конкретному человеку его архив.
Например:
Есть человек, мы выбираем его из комбобокса. Открывается  форма для ввода его данных.
Но мне надо, что-бы можно было еще вводить, к примеру отпуска теущий и за прошлые периоды.
Т.е. как в экселе, есть табличка, и просто в колонки вводятся его данные, там, 3, 4, 10 записей (начало периода и конец).
Как такое реализовать?

Post's attachments

Attachment icon Без імені.jpg 21.98 kb, 123 downloads since 2019-11-21 

Re: архив записей по конкретному человеку

Приветствую.


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

Dmitry.

3 (edited by stas.kodpi 2019-11-22 10:28:14)

Re: архив записей по конкретному человеку

Сейчас приведу явный пример.
Должно быть именно по выбранному человеку, а не по всем сразу. По кнопке "Периоды"
Я уже на кнопке "Периоды" сделал скрипт по аналогии с выбором на начальном экране, но скорее всего не верно (что-бы в таблице отображался только та запись человека, которого я сейчас редактирую)
Приложу проект...

Post's attachments

Attachment icon 1 не верно.jpg 102.84 kb, 137 downloads since 2019-11-22 

4 (edited by stas.kodpi 2019-11-22 10:28:54)

Re: архив записей по конкретному человеку

должно быть так

Post's attachments

Attachment icon 2 должно быть.jpg 111.64 kb, 148 downloads since 2019-11-22 

Re: архив записей по конкретному человеку

и мой проект, где что не получается

Post's attachments

Attachment icon Учет Отпусков и больничных работников ЦНАП___.zip 1.33 mb, 287 downloads since 2019-11-22 

6 (edited by sibprogsistem 2019-11-22 11:17:38)

Re: архив записей по конкретному человеку

stas.kodpi wrote:

и мой проект, где что не получается

вом просто нужно создать еще одну таблицу и связать  ее с таблицей сотрудников..

Re: архив записей по конкретному человеку

а что я не правильно сделал у себя?
или просто загвоздка в еще одной таблице?
а скрипт? и все остальное - правильно?

Re: архив записей по конкретному человеку

stas.kodpi wrote:

а что я не правильно сделал у себя?
или просто загвоздка в еще одной таблице?
а скрипт? и все остальное - правильно?

опишите для чего именно Вам нужен архив
я посмотрю, что  с этим можно сделать

Re: архив записей по конкретному человеку

нужно что-бы у человека сохранялись предыдущие периоды отпусков. Для архива

10 (edited by sibprogsistem 2019-11-22 13:39:18)

Re: архив записей по конкретному человеку

stas.kodpi wrote:

нужно что-бы у человека сохранялись предыдущие периоды отпусков. Для архива

не понятно в какой форме у Вас отпуска и в какой архивы
ну да ладно
сделайте так :  в таблице отпусков создайне поле ДА/НЕТ  с именем (archive)
Вам нужно будет в настройках таблиц  сделать такую настройку..
https://service-vv.ru/mvdout/ukarchive.png
сделайте так на обеих таблицах с учетом  0 или 1
   
теперь Вам нажно только насроить перевод записи в архив  для этого используйте компонент Check box

Re: архив записей по конкретному человеку

1.  Создал в таблице отпусков поле archive со значением Да/Нет
2. В форме PeriodsAll  дописал в фильтре (архив=0)

3. Это первая таблица, я полагаю?   а на второй таблице - это на которой? которая all ?

4. Как мне реализовать, что именно такой-то период является архивным?

12 (edited by sibprogsistem 2019-11-25 12:35:01)

Re: архив записей по конкретному человеку

stas.kodpi wrote:

1.  Создал в таблице отпусков поле archive со значением Да/Нет
2. В форме PeriodsAll  дописал в фильтре (архив=0)

3. Это первая таблица, я полагаю?   а на второй таблице - это на которой? которая all ?

4. Как мне реализовать, что именно такой-то период является архивным?

   
не архив=0 а archive=0 - Вы фильтруете записи по полю, иначе говоря archive=0  - вывести все неархивные записи..
 
добавьте на форму создания отпуска check box, присвойте его полю archive и сделайте visible=False; , потому как он всегда дожен быть пустым, тоесть ноль..
 
теперь Вам нужна придумать как именно вы хотите менять, тоесть выбирать период и присваевать записи archive=1...
это может быть форма редактирования записи..
 
примерно это выглядит так..
 
таблица_отпусков:
    |-  тип отпуска
    |-  начало отпуска
    |-  конец отпуска
    |-  archive
 
при назначении отпуска, запись будет выглядеть так:   
отпуск по уходу, дата начало, дата конца, archive=0

при архивировании так:
отпуск по уходу, дата начало, дата конца, archive=1

Re: архив записей по конкретному человеку

вот сделал Вам пример

Post's attachments

Attachment icon отпуска.7z 3.96 kb, 249 downloads since 2019-11-25 

Re: архив записей по конкретному человеку

Ок, я понял.
А оно подтянется автомато под вбранного человека?
т.е. я открываю определенного человека (редактирую дело), потом добавляю ИМЕННО ЕМУ отпуска..
программа поймет, что эти отпуска относятся именно к нему, а не к другой записи?

Re: архив записей по конкретному человеку

идентификаторы находятся во внешних ключах по сути номер в ключе и номер записи одинаковы, за счет этого программа понимает что от кого и кому..

Re: архив записей по конкретному человеку

вроде все сделал, дописал куда надо, присвоил,
Только когда добавляю дату, оно добавляет ненужную строку, также и в фамилию при выборе на самой главной форме (там, где я выбираю фамилию и нажимаю на галочку, что-бы перейти в дело, - добавляет пустую строку).
Также когда удаляю запись даты, удаляется, почему-то и сам человек(
Прикладываю проект.

Post's attachments

Attachment icon Учет Отпусков и больничных работников ЦНАП.zip 1.34 mb, 284 downloads since 2019-11-25 

Re: архив записей по конкретному человеку

stas.kodpi wrote:

вроде все сделал, дописал куда надо, присвоил,
Только когда добавляю дату, оно добавляет ненужную строку, также и в фамилию при выборе на самой главной форме (там, где я выбираю фамилию и нажимаю на галочку, что-бы перейти в дело, - добавляет пустую строку).
Также когда удаляю запись даты, удаляется, почему-то и сам человек(
Прикладываю проект.

опишите значения полей в таблице cnap

18 (edited by stas.kodpi 2019-11-26 11:16:24)

Re: архив записей по конкретному человеку

pib - Фамилия
name - Имя
ot4 - Отчество
posada - Должность
nakaz - Приказ
vid_vidpust - Вид отпуска (основной, дополнительній, и т.)
kolday - Количество дней ( с выбранного вида отпуска)
vidp_start - Начало отпуска (выбранного в виде отпуска)
vidp_end - Окончание отпуска (выбранного в виде отпуска)
vidpustka - Отпуск  (запись связи с таблицей vidpust)
const - Константа (то 30 дней отпуска, значение неизменно, от кторого считается остаток по дням)
days - Дни  (само количество дней отпуска, который выбран в "вид отпуска",  например вид отпуска - основной, дни - 14.  Это значит , что 14 дней из основного отпуска уже взяты.)
ostatok - Остаток (остаток дней после выбирания всех дней разных отпусков, отгулов, и т.д.)
primitki - Примечания (на всякий случай, мало ли)
photo - Фото - вставляется фото работника

Надеюсь понятно объяснил

Re: архив записей по конкретному человеку

создал 2 записи. И в "период" добаились в таблицу " все периоды"  обе записи обоих отпусков разных людей.
а должна быть запись по конкретному человеку.
(

Re: архив записей по конкретному человеку

немного не так
имя поля - значение тоесть :  name - имя ... и тд
 
Вечером возьмусь.

Re: архив записей по конкретному человеку

sibprogsistem wrote:

немного не так
имя поля - значение тоесть :  name - имя ... и тд
 
Вечером возьмусь.


все, поправил свое сообщение с "кто есть кто" )

Re: архив записей по конкретному человеку

надеюсь я ничего не упустил
отпуска - их создание и архивирование перенес в форму main
заметки сохраняются самостоятельно при написании
вывод в main оставил только личные данные
 
надеюсь это поможет Вам

Post's attachments

Attachment icon Учет Отпусков и больничных работников ЦНАП.7z 930.25 kb, 281 downloads since 2019-11-26 

Re: архив записей по конкретному человеку

добрій день. Я не совсем понимаю, как у вас вычисления остатка дней проходят?
я вообще не увидел этого...
объясните, если не трудно, вычисляемых полей у вас нету..

Re: архив записей по конкретному человеку

stas.kodpi wrote:

добрій день. Я не совсем понимаю, как у вас вычисления остатка дней проходят?
я вообще не увидел этого...
объясните, если не трудно, вычисляемых полей у вас нету..

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

Re: архив записей по конкретному человеку

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


И еще одно  -  когда ввожу нового человека, то остается запись по отпускам от предыдущего (
Не понимаю (

Проект прикладываю

Post's attachments

Attachment icon Учет Отпусков и больничных работников ЦНАП.zip 751.07 kb, 262 downloads since 2019-11-28