|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.01.2012, 23:48 | #21 |
Пользователь
Регистрация: 01.09.2009
Сообщений: 55
|
Вот что с датой получается
Я бы так реализовал - но способов на самом деле много, По запросу иначе стоится можно в аксесе прописать, можно в Делфи ... Оптимально думаю так ...Новая папка.rar
Обучение, задания по Делфи http://KoliyR.tk
|
29.01.2012, 11:01 | #22 |
Пользователь
Регистрация: 07.12.2011
Сообщений: 31
|
Вы меня не поняли.
у меня в таблице 4 фамилии у каждого дата приема разная.мне нужно вычислить количество лет от настоящей даты и вывести на экран список кто работает больше заданного количества лет. мне нужно чтоб в поле edit препод ввел к примеру 9 и в таблицу вывелись данные тех кто работает больше 9 лет. остальных не надо выводить. если в таблице сделать дополнительное поле со стажем то там же будет стаж который я вычислил во время ввода данных. Препод скажет что к примеру у "Сидорова " стаж в таблице 11 лет а если я проверю через год то у него все равно стаж будет 11 лет потому что в бд так вычислено. мне не нужно их сортировать по дате, мне нужно вывести на экран только тех у кого стаж больше числа введенного в edit. Последний раз редактировалось Seva2011; 29.01.2012 в 11:03. |
29.01.2012, 11:58 | #23 |
Пользователь
Регистрация: 19.08.2010
Сообщений: 54
|
Ну Вы хоть попробовали? см.мой пред.пост
Ваша благодарность может быть материальной:
WM R103871054215, WM Z710411027344, ЯндД: 410011167596676 |
29.01.2012, 12:03 | #24 |
Пользователь
Регистрация: 01.09.2009
Сообщений: 55
|
Seva2011 - я тебе расширил таблицу
теперь просто нужно добавить фильтр по полю лет Давай ко мне в аську или скайп
Обучение, задания по Делфи http://KoliyR.tk
|
29.01.2012, 13:19 | #25 |
Пользователь
Регистрация: 01.09.2009
Сообщений: 55
|
Да, - возникли некие сложности - правдо задачу я немного посложнее поставил
Учел не только год, но и месяц, день ... Если тебе всеже хочется организовать фильтрацию через запрос ... нужно отдельно посмотреть Новая папка.rar
Обучение, задания по Делфи http://KoliyR.tk
|
29.01.2012, 13:38 | #26 |
Пользователь
Регистрация: 01.09.2009
Сообщений: 55
|
SELECT Отдел_кадров.ФИО, Отдел_кадров.Должность, Отдел_кадров.Дата_приема
FROM Отдел_кадров WHERE (((Year(Now())-Year([Отдел_кадров]![Дата_приема]))>20)); но это неправильно т.к. не учитывается разница в месяцах она может быть положительной, а может отрицательной, - тогда на 1 год наврали
Обучение, задания по Делфи http://KoliyR.tk
|
30.01.2012, 17:58 | #27 | |
Пользователь
Регистрация: 07.12.2011
Сообщений: 31
|
Цитата:
За программку и за помощь огромное спасибо!!! |
|
30.01.2012, 18:14 | #28 | |
Пользователь
Регистрация: 07.12.2011
Сообщений: 31
|
Цитата:
код вставил ошибок не выдает только никак не пойму в куда здесь дописать значение введенное в edit? |
|
30.01.2012, 18:42 | #29 |
Пользователь
Регистрация: 01.09.2009
Сообщений: 55
|
DATEADD (datepart ,number,date )
Аргументы datepart Параметр, указывающий, какую часть даты вернуть как новое значение. Дополнительные сведения см. в "Замечаниях" далее в этом разделе. number Значение, используемое для увеличения datepart. Выражение численного типа (точного или приближенного) или типов, которые неявно преобразуются в тип float. Если указать нецелочисленное значение, его дробная часть будет удалена. Например, если указать day для datepart и 1.75 для number, значение date увеличится на 1. date Выражение, возвращающее значение, которое можно неявно преобразовать в datetime, или строка с символами Юникод в формате даты. Дополнительные сведения об указании дат см. в части datetime раздела Типы данных. Если указаны только две последние цифры года, то значения, меньшие или равные двум последним цифрам максимально допустимого значения года, относятся к тому же веку, что и максимально допустимое значение года. Значения, большие чем две последние цифры максимально допустимого значения года, относятся к предыдущему веку. Например, если максимально допустимое значение года — 2049 (значение по умолчанию), то "49" воспринимается как 2049 год, а "50" — как 1950. Во избежание неоднозначности указывайте год в формате из четырех цифр. соответственно если написать ADOQuery2.Close; ADOQuery2.sql.Clear; ADOQuery2.sql.Text:='SELECT [Дата_приема] FROM [Отдел_кадров] WHERE DateAdd("yyyy",:edit,[Дата_приема])<:ADATE'; ADOQuery2.Parameters.Parambyname('A DATE').Value:=Date; //сегодняшняя дата ADOQuery2.Parameters.Parambyname('E dit').AsInteger:=- strtoint(Edit1.text); ADOQuery2.Open;
Обучение, задания по Делфи http://KoliyR.tk
Последний раз редактировалось KoliyR; 30.01.2012 в 18:54. |
30.01.2012, 20:23 | #30 |
Пользователь
Регистрация: 07.12.2011
Сообщений: 31
|
ругается на asInteger в строке
Код:
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Access отдел кадров! | julia89spb | Помощь студентам | 18 | 30.03.2019 01:07 |
отдел кадров | gergert_andrei | Фриланс | 6 | 29.11.2011 16:23 |
лаба отдел кадров | gergert_andrei | C++ Builder | 1 | 29.11.2011 09:03 |
Программа Отдел кадров (с оплатой) | denis! | Фриланс | 5 | 16.02.2011 21:02 |
отдел кадров на delphi | denis! | Помощь студентам | 1 | 15.02.2011 00:42 |