Ashokk88 Ответов: 1

Расчет на полдня


Мне нужно сохранить данные о дате в таблице с полдня работы как 0,5 дня между двумя заданными датами.
Я использую флажок как для даты, так и для даты.
Я хочу сохранить 0,5 дня в таблице, если флажок установлен для даты начала или окончания.
Например:
С даты 10/02/2018 AN
На сегодняшний день 12/02/2018

я хочу сохранить в таблице как
даты дней
10/02/2018 0.5
11/02/2018 1
12/02/2018 1

Что я уже пробовал:

Я использую цикл while, чтобы получить отдельные сведения о дате из заданных двух дат.

Ziee-M

Опубликуйте свой код.

Ashokk88

DateTime t1 = конвертировать.Объект todatetime(txt_from_date.Текст);
DateTime t2 = конвертировать.Объект todatetime(txt_to_date.Текст);
двойной comp_days;
в то время как (t1 <= t2)
{
...вставьте в таблицу код....
t1 = t1.AddDays(1);
}


Я хочу добавить сведения о половине дня, если пользователь установит соответствующий флажок.

OriginalGriff

И что же?
А что вы пробовали?
Где ты застрял?
Какая помощь вам нужна?

Ashokk88

DateTime t1 = конвертировать.Объект todatetime(txt_from_date.Текст);
DateTime t2 = конвертировать.Объект todatetime(txt_to_date.Текст);
двойной comp_days;
в то время как (t1 <= t2)
{
...вставьте в таблицу код....
t1 = t1.AddDays(1);
}


Я хочу добавить сведения о половине дня, если пользователь установит соответствующий флажок.

Ashokk88

Я хочу сохранить день как 0,5, если от даты или до даты-это только полдня.
Например-
С даты 13/02/2018 (выбрана половина дня)
На сегодняшний день 15/02/2018
В моей таблице я хочу сохранить like для даты 13/02/2018 как 0.5 и
(14/02/2018, 15/02/2018) как 1

Laxmidhar tatwa technologies

Данные должны сохраняться в типе данных дата время

Ashokk88

да, я сохраняю дату в формате datetime, а в другом поле сохраняю значение 0,5 для половины дня и 1 для полного дня.

Laxmidhar tatwa technologies

В случае, если условие проверьте оба флажка или оператора за 0,5 прошел в другом заявлении указать 1

Ashokk88

Если я использую условие if внутри цикла while, то оно рассматривается как полдня для всех дней(между датой и датой). Я хочу, чтобы, если установлен флажок для даты начала, для даты начала он должен учитывать 0,5, а для оставшегося дня-1.

Ashokk88

DateTime t1 = конвертировать.Объект todatetime(txt_from_date.Текст);
DateTime t2 = конвертировать.Объект todatetime(txt_to_date.Текст);
двойной comp_days;
в то время как (t1 <= t2)
{
если(chk_from.Проверено == true || chk_to.Проверено == верно)
{
comp_days = 0,5;
}
еще
{
comp_days = 1;
}

....Вставьте кодировки....

t1 = t1.AddDays(1);
}

1 Ответов

Рейтинг:
0

Maciej Los

Пожалуйста, проверьте мой ответ на аналогичный вопрос: Как заполнить ряд дат с помощью даты начала и даты окончания в C#[^]

Все что вам нужно сделать это измениться

CREATE PROCEDURE uspInsertDateRange
--input variables
    @startDate DATE,
    @isStartDateHalfDay BIT,
    @endDate DATE,
    @isEndDateHalfDay BIT
AS
--a content of SP here
...


Как передать параметры в хранимую процедуру в ASP.NET-что?
Sqldatasource его выполнения хранимой процедуры например: передать параметры в хранимую процедуру, используя sqldatasource его в ASP.Net[^]
Как установить и получить параметры для командных объектов[^]
Как вызвать хранимые процедуры SQL Server в ASP.NET с помощью Visual Basic .NET[^]

Удачи вам!