Показать сообщение отдельно
  #1  
Старый 13.04.2015, 13:12
WhiteSadkat WhiteSadkat вне форума
Прохожий
 
Регистрация: 13.04.2015
Сообщения: 3
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Формирование отчета за месяц

Добрый день, уважаемые знатоки!

Возникла передо мной нетипичная задача - переделать код формирования отчета.

Условия:

Каждое утро происходит формирование отчета о потреблении электроэнергии в период с 00:00 01 числа текущего месяца по 00:00 сегодняшнего дня. 30 апреля произойдет формирование отчета в период 00:00 01.04.2015г по 00:00 30.04.2015. А 1 мая отчет не сформируется, т.к. "dtStart = dtEnd then Exit; end;". А есть желание, чтобы 1 мая отчет сформировался за 00:00 01.04.2015 - 00:00 01.05.2015г.

Даю вводные:
Код:
var dtStart, dtEnd, dtTemp, dtStamp: DateTime;
var dtDay, dtMonth, dtYear:integer;

begin
iParam := GetParameter(2); - параметр по данным, которые характеризуют потребление электроэнергии (устанавливаются программно)
dtEnd := GetParameter(11); - дата назначаемая программно (текущая дата)
DecodeDate (dtEnd, dtYear, dtMonth, dtDay);
dtStart := EnCodeDate(dtYear, dtMonth, 1)+0;
if dtStart = dtEnd then Exit;
Мое (ошибочное) видение решения проблемы:
Код:
DecodeDate (dtEnd, dtYear, dtMonth, dtDay);
if dtDay = 1 then
inDay (-1)
dtStart := EnCodeDate(dtYear, dtMonth, 1)+0;
if dtStart = dtEnd then Exit;
Админ: Пользуемся тегами для оформления кода!

Подскажите, подправьте порядок слов, букв, цифр.

Заранее, спасибо!
Ответить с цитированием