powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / последний день месяца
21 сообщений из 21, страница 1 из 1
последний день месяца
    #36050589
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день... если для кого-то он добрый :)
Помогите, плз, как можно узнать последний день месяца в календаре, который в форме. Первый.. знаю
d=thisform.olecontrol1.FirstDay ,
а последний нет. Есть необходимость проверки на наличие -29, -30, -31 чисел в том или ином месяце. Помогите, плз.
...
Рейтинг: 0 / 0
последний день месяца
    #36050606
Sara_gul,
а мы тут должны угадать о каком конкретно контроле идет речь? Или ActiveX календарь в мире существует только один и все его и так знают? Или у всех ole-controls абсолютно одинаковые свойства?
...
Рейтинг: 0 / 0
последний день месяца
    #36050630
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проходящий.,

Olecontrol1

Мне необходимо в таблицу ввести только существующие дни календаря. В феврале есть 28 или 29 дней, а 30 и 31 вообще нет. Не знаю как это сделать?
...
Рейтинг: 0 / 0
последний день месяца
    #36050663
Sara_gul,
потрясающе информативный ответ. Я намекал на точное указание примененного контрола. Не имени, он в Вашей программе фигурирует, а ActiveX контрола, под которым его знает винда. Например, MS Date and time Picker.
...
Рейтинг: 0 / 0
последний день месяца
    #36050682
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проходящий.,



"Элемент управления Календарь 11.0"

вот так и называется...
...
Рейтинг: 0 / 0
последний день месяца
    #36050694
Rickitiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sara_gul,
последний день = GOMONTH(thisform.olecontrol1.FirstDay, 1) -1
...
Рейтинг: 0 / 0
последний день месяца
    #36050708
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Определите поле типа date и фокс сам ругнется на несуществующую дату

Код: plaintext
1.
2.
3.
CREATE CURSOR test (f1 d ) 

INSERT INTO test VALUES ({^ 2009 - 01 - 01 })
INSERT INTO test VALUES ({^ 2009 - 02 - 29 })
...
Рейтинг: 0 / 0
последний день месяца
    #36050843
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulWist,

да, но мне бы хотелось, чтобы он не ругался, а вносил правильные и существующие даты месяца :(
...
Рейтинг: 0 / 0
последний день месяца
    #36050862
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sara_gulPaulWist,

да, но мне бы хотелось, чтобы он не ругался, а вносил правильные и существующие даты месяца :(

Тогда давайте определим задачу:

1. Надо в поле в автоматическом режиме заносить корректные данные по последнему дню месяца

или

2. Надо, что бы юзер не мог занести не правильные данные
...
Рейтинг: 0 / 0
последний день месяца
    #36050869
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Rickitiki,

Спасибо огромное, вот это наверное я и использую. Буду скакать от первого числа и первого месяца, а год возьму системный.
Уф... я уж думала все вручную прописывать. Спасибо...
...
Рейтинг: 0 / 0
последний день месяца
    #36050982
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulWistSara_gulPaulWist,

да, но мне бы хотелось, чтобы он не ругался, а вносил правильные и существующие даты месяца :(

Тогда давайте определим задачу:

1. Надо в поле в автоматическом режиме заносить корректные данные по последнему дню месяца

или

2. Надо, что бы юзер не мог занести не правильные данные



Для юзера, мне необходимо создать форму "Табель рабочего времени", в котором указываются все дни недели и дни месяца, соответственно и год. В котором он будет вводить отработанные часы в этом дне недели и месяца. Я должна создать уже готовый табель в который будут просто вбивать часы. Вот.
...
Рейтинг: 0 / 0
последний день месяца
    #36051006
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RickitikiSara_gul,
последний день = GOMONTH(thisform.olecontrol1.FirstDay, 1) -1
Угу.. А если у меня декабрь 9999 года? :)
Код: plaintext
1.
d = {^ 9999 . 12 . 1 }
? GOMONTH(d,  1 ) -  1 
С уважением, Алексей.
...
Рейтинг: 0 / 0
последний день месяца
    #36051046
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гы,
ну вот, придет поручик, и все опошлит...
...
Рейтинг: 0 / 0
последний день месяца
    #36051057
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sara_gulPaulWistSara_gulPaulWist,

да, но мне бы хотелось, чтобы он не ругался, а вносил правильные и существующие даты месяца :(

Тогда давайте определим задачу:

1. Надо в поле в автоматическом режиме заносить корректные данные по последнему дню месяца

или

2. Надо, что бы юзер не мог занести не правильные данные



Для юзера, мне необходимо создать форму "Табель рабочего времени", в котором указываются все дни недели и дни месяца, соответственно и год. В котором он будет вводить отработанные часы в этом дне недели и месяца. Я должна создать уже готовый табель в который будут просто вбивать часы. Вот.
Ну вы замахнулись на задачу... Ввод табеля...
С уважением, Алексей.
...
Рейтинг: 0 / 0
последний день месяца
    #36051756
авторНу вы замахнулись на задачу... Ввод табеля...

подарить?
учет кадров + расчет з.платы.
...
Рейтинг: 0 / 0
последний день месяца
    #36051844
AK-Shah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо1111,

Все в одном, или можно посмотреть на вторую часть отдельно? ;)
...
Рейтинг: 0 / 0
последний день месяца
    #36051964
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
при выборе месяца нужно выводить таблицу дня недели и дня месяца, в графы которых будут вставляться часы, причем даже минутно, и подбиваться итог... знаю, для новичка не просто, но пробовать можно.
Я знаю, что есть готовые программы учета времени и ЗП, но ЗП в моем случае сдельная от объема работ :(
Объем, подбила, а теперь нужно по дням разбить, и если получится по часам. Ужас!!!
...
Рейтинг: 0 / 0
последний день месяца
    #36051972
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sara_gulпри выборе месяца нужно выводить таблицу дня недели и дня месяца, в графы которых будут вставляться часы, причем даже минутно, и подбиваться итог... знаю, для новичка не просто, но пробовать можно.
Я знаю, что есть готовые программы учета времени и ЗП, но ЗП в моем случае сдельная от объема работ :(
Объем, подбила, а теперь нужно по дням разбить, и если получится по часам. Ужас!!!

Без паники, абсолютно никакого ужаса, если спокойно разобраться, что именно надо.
Первым делом вам надо определить последнюю дату каждого месяца. Причем, не просто абстрактного месяца, а с учетом года, т.к. никто не отменял високосные годы.
Ниже приводится разжеванная функция EOM(), определяющая последнюю дату месяца по любой дате внутри этого месяца. Например, EOM({^2009-06-20}) вернет вам 30 июня 2009 г.
Последняя дата месяца по заданной дате находится путем перебора дат, начиная с текущей, до тех пор, пока не происходит переход в следующий месяц. Эта граничная дата и будет являться последней в этом месяце этого года.
Весь остальной "ужас" после этого как-бы исчезает сам по себе. Не буду здесь обижать вас описанием встроенной функции DOW() для определения дня недели по дате :)
Ну, наверно, разбить сутки на 24 часа не будет для вас большой проблемой, для этого календарь не нужен.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
*******************************************
FUNCTION EOM
*******************************************
 LPAR lddate
 IF EMPTY(lddate)
      lddate = DATE()
 ENDIF
 LOCAL tm, i, c
 tm = MONTH(lddate)
 c = lddate
 FOR i =  1  TO  31 
      IF MONTH(c)<>tm
           c = c- 1 
           EXIT
      ENDIF
      c = c+ 1 
 NEXT
 RETURN c
ENDFUNC
...
Рейтинг: 0 / 0
последний день месяца
    #36052011
Sara_gul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
reware,

спасибо вам огромное!!! Программку я написала, я тоже действовала от последнего дня месяца с условием високосных годов. И DOW() тоже применяла. Определила первый день месяца, на какой день недели он приходится и понеслась..... да это так образно "ужас", просто для меня "чайника" по началу казалось ужасом. Ваш программный код, конечно грамотнее описан, нежели у меня. Но мой тоже работает, медленно, но верно :)
Спасибо вам, еще раз, что не оставили в "ужасе"
...
Рейтинг: 0 / 0
последний день месяца
    #36053053
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВсе в одном, или можно посмотреть на вторую часть отдельно?

2 AK-Shah

запрос на foxjob1 собака рамбрер точечка ру
...
Рейтинг: 0 / 0
последний день месяца
    #36055871
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey-KRickitikiSara_gul,
последний день = GOMONTH(thisform.olecontrol1.FirstDay, 1) -1
Угу.. А если у меня декабрь 9999 года? :)


Да, ничего. Когда у вас будет декабрь 9999 года, вам надо будет зайти на гугле и погуглить "решение проблемы 10000 года" )
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / последний день месяца
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]