powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / количество дней
17 сообщений из 17, страница 1 из 1
количество дней
    #36698319
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут как-то столкнулся с такой задачей, надо получить пустую дату, вместо ctod("//")
решил написать date()-date()...оказывается при операции с типом данных "D", получаем тип "N"(всегда думал метры отнимаем метры, получаем метры), это видать что-то из высшей математики, тогда решил date()-1, ну вроде как не разрешено в математики складывать разнотипные величины, но тут получил в результате опять тип "D"...тогда возник вопрос, сколько надо отнять(x) от date() (date()-x), чтоб получить пустую дату " / / "
...
Рейтинг: 0 / 0
количество дней
    #36698338
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пустая дата
Код: plaintext
ldEmpty = {}
соответственно не пустая
Код: plaintext
ldNow = {^ 2010 - 06 - 21 }
...
Рейтинг: 0 / 0
количество дней
    #36698344
Fffffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
q1w1e1,
а программирование не математика. Если в математике
2+2=4,
то в программировании результат зависит от настроек системы.
...
Рейтинг: 0 / 0
количество дней
    #36698352
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А разница между датами - кол-во дней между ними и никакой высшей математики
...
Рейтинг: 0 / 0
количество дней
    #36698401
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
{^2010-06-21}, а для чего нужна шляпка "^", а что ещё можно вместо неё поставить?
...
Рейтинг: 0 / 0
количество дней
    #36698408
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TА разница между датами - кол-во дней между ними и никакой высшей математики
Ну разница между тензорами любой степени(вторая степень матрица), получается число, а это как раз и есть высшая математика...
...
Рейтинг: 0 / 0
количество дней
    #36698428
Fffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
q1w1e1{^2010-06-21}, а для чего нужна шляпка "^", а что ещё можно вместо неё поставить?
Можно, например, так
Код: plaintext
CTOD("21.06.10")
Перевод текстового значения в дату.

Или так
Код: plaintext
DATE( 2010 , 6 , 21 )
Код: plaintext
DATE(YEAR(DATE()),MONTH(DATE()),Day(DATE()))
...
Рейтинг: 0 / 0
количество дней
    #36698466
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1{^2010-06-21}, а для чего нужна шляпка "^", а что ещё можно вместо неё поставить?
Просто нужна, это фоксовый синтаксис записи даты такой {^ГГГГ-ММ-ДД} и даты-времени {^ГГГГ-ММ-ДД ЧЧ:ММ:СС}
других символов не предусмотрено, кроме ^
...
Рейтинг: 0 / 0
количество дней
    #36698732
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё равно парадокс
Date()-Date()=0 && {10/06/21}
Date()-{10/06/20} =1, далее 2 и т.д., т.е. предел вычитаемого стремится к пустой дате, количество дней естественно возрастает, но когда вычитаемое равно пустой дате, количество дней опять равно 0(date()-{}=0).
Так как подсчитать количество прошедших дней, до сегодняшней даты....
...
Рейтинг: 0 / 0
количество дней
    #36698824
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1,

через sys(11)
...
Рейтинг: 0 / 0
количество дней
    #36698887
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1Всё равно парадокс
Date()-Date()=0 && {10/06/21}
Date()-{10/06/20} =1, далее 2 и т.д., т.е. предел вычитаемого стремится к пустой дате, количество дней естественно возрастает, но когда вычитаемое равно пустой дате, количество дней опять равно 0(date()-{}=0).
Так как подсчитать количество прошедших дней, до сегодняшней даты....
Такую логику разработчики фокса прописали. При date()-{} = 0 еще date()>{} = .T.

Не нравится - NULL используй. Тем более в других СУБД нет такого понятия как пустая дата. Захочешь свою базу на SQL-сервер поселить - надо будет переписывать все что с пустой датой связано.
...
Рейтинг: 0 / 0
количество дней
    #36699559
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то всё равно не могу понять...
Юлианский календарь был введен Юлием Цезарем в 45 г. до н.э (примерно 1000-1500 лет назад)
Теперь смотрим сколько годов показывает функция SYS(11)
VAL(SYS(11,DATE()))/365=6727 (ну там плюс минус тысяча), всё равно расхождение с датой принятия Юлианского календаря...
...
Рейтинг: 0 / 0
количество дней
    #36699563
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1Что-то всё равно не могу понять...
Юлианский календарь был введен Юлием Цезарем в 45 г. до н.э (примерно 1000-1500 лет назад)
Теперь смотрим сколько годов показывает функция SYS(11)
VAL(SYS(11,DATE()))/365=6727 (ну там плюс минус тысяча), всё равно расхождение с датой принятия Юлианского календаря...
Че вдруг? При чем здесь дата принятия?

На самом деле, отсчитывается от сотворения мира.
...
Рейтинг: 0 / 0
количество дней
    #36699581
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сотворение мира это "Большой взрыв",образование Вселенной?
Просто почему дата отсчёта для Юлианского календаря, разработчиками фокса принята 6000 лет назад, чё там было то?
...
Рейтинг: 0 / 0
количество дней
    #36699724
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: q1w1e1
> Просто почему дата отсчёта для Юлианского календаря, разработчиками фокса принята 6000 лет назад, чё там было то?

А что, что-то должно быть? Просто число красивое

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
количество дней
    #36700010
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не путайте календарь и период

Юлианский период это промежуток времени в 7980 лет, исползуемый в астрономических и хронологических расчетах. Благодаря этому длительность того или иного астрономического или исторического события, выраженная в сутках, может быть определена путем простого вычитания номеров дней, ссответствующих концу и началу события

Начало Юлианского периода 1 января 4713 год до н.э.

Юлианский период в (7980=28*19*15) представляет собой наименьшее кратное трёх циклов: солнечного в 28 лет, лунного цикла Метона в 19 лет и периода в 15 лет, так называемого римского индиктиона, по прошествии которого в Римской империи взималась чрезвычайная подать. Год 4713 до н. э. был первым годом одновременно во всех трёх циклах. Конец первого юлианского периода придётся на 23 января 3268 года по григорианскому календарю.

В википедии ищите статью с названием "Юлианский день". Там приведены кое-какие формулы расчета даты по количеству дней.
...
Рейтинг: 0 / 0
количество дней
    #36700222
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМ,

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


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