Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
Здравствуйте всем будьте добры подскажите пожалуйста еще ответ на следующий вопрос:
у меня есть таблица с некоторыми данными, которые заполняются в текущем квартала. Как только мы переходим на новый квартал - эта таблица должна быть пустой - будьте добры подскажите пожалуйста как осуществить такую проверку.

Спасибо заранее за помощь.
4 авг 11, 10:53    [11069108]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

"пустой" - это как? Удалить все записи? Создать новую? И какую проверку нужно осуществлять
4 авг 11, 11:13    [11069272]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
есть поле в таблице summa там набиваются цифры, после перехода на новый квартал все обнуляется (значение данного поля)
4 авг 11, 11:48    [11069641]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

Если во всех записях, то REPLACE summa WITH 0 ALL.
Но учтите, что все данные, которые набирали раньше будут обнулены. Вы уверены, что именно ЭТО нужно?
4 авг 11, 12:01    [11069799]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
Да, Вы правильно поняли. Только подскажите пожалуйста как сделать это, т.е. как только я перешел на новый квартал со старого
квартала произошла очистка. Replace то я знаю а вот как переход (условный перход написать?)
4 авг 11, 12:39    [11070048]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

Ну, наверное, где-то должен быть записан текущий квартал и если квартал DATE() отличается от записанного, то обнулять.
4 авг 11, 13:25    [11070402]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
ну я планирую так: определяю по текущей дате - квартал. А как мне отследить квартал селующий (т.е. квартал + 1 дня). Если сравнивать месяцы, то не пойдет месяц может быть другой - но при этом входить в тот же квартал. Извиняюсь я не понимаю как это сделать
4 авг 11, 13:34    [11070485]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

в таблице, которую нужно обнулять, даты есть? Или где-то в отдельной таблице или текстовом файле хранить текущий квартал и если он не совпадает с кварталом текущей даты, то обнулять
4 авг 11, 13:38    [11070528]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
текущий квартал будет определяться по init formset.

kid = date()
Thisformset.form1.Text2.value = IIF(MONTH(DATE()) < 4, "1", IIF(MONTH(DATE()) < 7, "2", IIF(MONTH(DATE()) < 10, "3", "4")))
Но я могу же как -то определить следующий день и принадлежит ли он новому кварталу или нет!
4 авг 11, 14:00    [11070693]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

А зачем определять какой будет квартал на следующий день? Вот на следующий день и определяй тот же этот квартал, что был вчера или нет?
4 авг 11, 14:08    [11070733]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
хорошо, а как это сделать?
4 авг 11, 14:15    [11070782]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
IgorNG
Member

Откуда: Москва
Сообщений: 956
dima_18,

Сначала записываешь в файл
OldQuarter = IIF(MONTH(DATE()) < 4, "1", IIF(MONTH(DATE()) < 7, "2", IIF(MONTH(DATE()) < 10, "3", "4")))
STRTOFILE(OldQuarter, "D:\MyProject\quarter.txt")

А дальше каждый раз при запуске программы определяешь квартал где-нибудь в Init форм
OldQuarter = FILETOSTR("D:\MyProject\quarter.txt")
CurrentQuarter = IIF(MONTH(DATE()) < 4, "1", IIF(MONTH(DATE()) < 7, "2", IIF(MONTH(DATE()) < 10, "3", "4")))

USE table IN 0 SHARED
IF NOT OldQuarter = CurrentQuarter
REPLACE ... WITH 0 ALL
OldQuarter = IIF(MONTH(DATE()) < 4, "1", IIF(MONTH(DATE()) < 7, "2", IIF(MONTH(DATE()) < 10, "3", "4")))
ENDIF
4 авг 11, 14:29    [11070887]     Ответить | Цитировать Сообщить модератору
 Re: Еще один вопрос про даты.  [new]
dima_18
Member

Откуда:
Сообщений: 362
спасибо большое за подсказку. Буду пробовать
4 авг 11, 14:36    [11070950]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить