helpf.pro
Регистрация
 +1 
Распечатать

Сколько лет, месяцев, дней прошло между датами

Код 1C v 8.х
 
////////////////////////// параметры даты в запрос /////////////////////////
///////////// приведем период в нормальную форму к виду (с лДата по пДата) ///////////
ВЫБРАТЬ
МИНИМУМ(пДаты._Дата) КАК лДата,
МАКСИМУМ(пДаты._Дата) КАК пДата
ПОМЕСТИТЬ _д
ИЗ
(ВЫБРАТЬ НАЧАЛОПЕРИОДА(&лДата,ДЕНЬ) AS _Дата
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ НАЧАЛОПЕРИОДА(&пДата,ДЕНЬ)) КАК пДаты;
//////////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
_д.лДата,
_д.пДата,

ВЫБОР
КОГДА ГОД(_д.пДата) >= ГОД(_д.лДата) ТОГДА
ВЫБОР
КОГДА МЕСЯЦ(_д.пДата) >= МЕСЯЦ(_д.лДата) ТОГДА ГОД(_д.пДата) - ГОД(_д.лДата)
КОГДА МЕСЯЦ(_д.пДата) < МЕСЯЦ(_д.лДата) ТОГДА ГОД(_д.пДата) - ГОД(_д.лДата) - 1
КОНЕЦ
КОНЕЦ КАК Лет,

ВЫБОР
КОГДА ГОД(_д.пДата) >= ГОД(_д.лДата) ТОГДА
ВЫБОР
КОГДА МЕСЯЦ(_д.пДата) >= МЕСЯЦ(_д.лДата) ТОГДА
ВЫБОР
КОГДА ДЕНЬ(_д.пДата) >= ДЕНЬ(_д.лДата) ТОГДА МЕСЯЦ(_д.пДата) - МЕСЯЦ(_д.лДата)
КОГДА ДЕНЬ(_д.пДата) < ДЕНЬ(_д.лДата) ТОГДА МЕСЯЦ(_д.пДата) - МЕСЯЦ(_д.лДата) - 1
КОНЕЦ
КОГДА МЕСЯЦ(_д.пДата) < МЕСЯЦ(_д.лДата) ТОГДА
ВЫБОР
КОГДА ДЕНЬ(_д.пДата) >= ДЕНЬ(_д.лДата) ТОГДА 12 + МЕСЯЦ(_д.пДата) - МЕСЯЦ(_д.лДата)
КОГДА ДЕНЬ(_д.пДата) < ДЕНЬ(_д.лДата) ТОГДА 12 + МЕСЯЦ(_д.пДата) - МЕСЯЦ(_д.лДата) - 1
КОНЕЦ
КОНЕЦ
КОНЕЦ КАК Месяцев,

ВЫБОР
КОГДА ГОД(_д.пДата) >= ГОД(_д.лДата) ТОГДА
ВЫБОР
КОГДА МЕСЯЦ(_д.пДата) >= МЕСЯЦ(_д.лДата) ТОГДА
ВЫБОР
КОГДА ДЕНЬ(_д.пДата) >= ДЕНЬ(_д.лДата) ТОГДА ДЕНЬ(_д.пДата) - ДЕНЬ(_д.лДата)
КОГДА ДЕНЬ(_д.пДата) < ДЕНЬ(_д.лДата) ТОГДА (ДЕНЬ(КОНЕЦПЕРИОДА(_д.лДата,МЕСЯЦ)) - ДЕНЬ(_д.лДата)) + ДЕНЬ(_д.пДата)
КОНЕЦ
КОГДА МЕСЯЦ(_д.пДата) < МЕСЯЦ(_д.лДата) ТОГДА
ВЫБОР
КОГДА ДЕНЬ(_д.пДата) >= ДЕНЬ(_д.лДата) ТОГДА ДЕНЬ(_д.пДата) - ДЕНЬ(_д.лДата)
КОГДА ДЕНЬ(_д.пДата) < ДЕНЬ(_д.лДата) ТОГДА (ДЕНЬ(КОНЕЦПЕРИОДА(_д.лДата,МЕСЯЦ)) - ДЕНЬ(_д.лДата)) + ДЕНЬ(_д.пДата) + 1
КОНЕЦ
КОНЕЦ
КОНЕЦ КАК Дней
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 9173
 +1 
Распечатать
Возможно, вас также заинтересует
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П
1С Предприятие что это? 12
Что такое 1С? 1С — это фирма , у которой одно из направлений деятельности — разработка программного обеспечения для автоматизации бизнес-процессов предприятий. « 1С:Предприятие » - конкретный продукт, который выпускает компания 1С . Что такое
ZIP-архив Создание 0
Для того чтобы записать файлы в ZIP-архив необходимо выполнить несколько простых действий: * Создать архив с необходимыми параметрами, в который будут помещаться файлы. * Поместить в архив необходимые файлы. * Записать архив. Создание объекта За
Автоматизация обмена данных используя обработку "Универсальный обмен данными в формате XML" 11
Автоматизация обмена между базами используя обработку " Универсальный обмен данными в формате XML" В основу данной публикации положены найденные мною материалы по cозданию обмена между двумя базами с использованием обработки " Универсальный обме
Автоматическая выгрузка загрузка данных используя регламентное задание 18
Для обмена данными между программами необходимо сделать следующее: 1. При помощи Конвертации Данных создать правила выгрузки данных 2. Нужно чтобы в конфигурации была обработка УниверсальныйОбменДаннымиXML , желательно последней версии! (При помо
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.