Вбудовані функції ДЛЯ ДАТ І ЧАСУ

1С, як і годиться програмі бухгалтерського призначення, зберігає багато різних Дат, для управління якими і доступу до яких використовуються приводяться в табл 29

функції Параметри, імя яких містить слово дата, це вирази типу Дата Параметр варіант може бути або датою, або виразом символьного типу Інші параметри це числові вирази Більшість функцій, якщо вони отримують як параметр неіснуючу дату, наприклад 33 1001 , повертають пусте значення типу Дата Наприклад:

Повідомити (НачМесяца (33 1001 )) / / Надрукували

Функції для дат

Таблиця 29

Функція

ЧТ Про повертає

рДатаТек = РабочаяДата ([РДата], [режімСмени])

Встановлює / повертає робочу дату, тобто дату, використовувану при формуванні документів і проводок в поточному сеансі Параметр режімСмени застосовується при зміні робочої дати на значення параметра рДата і установки режиму зміни робочої дати опівночі Причому якщо режімСменизадається рівним числу

• 0, то робоча дата опівночі не змінюється

• 1, то система пропонує змінити робочу дату опівночі

• 2, то робоча дата змінюється опівночі автоматично Якщо параметррежімСменине заданий, то при виклику функції РабочаяДата зберігаються задані в системі установки режиму зміни Якщо нове значення дати –

це неіснуюча дата, то робоча дата не змінюється Робочу дату можна також змінити, скориставшись в 1С: Підприємстві пунктами меню Сервіс Параметри

і вибравши у вікні закладку Загальні

(Див рис 21) За замовчуванням робоча і поточні дати збігаються

ТДАТУ = ТекущаяДата ()

Поточну (системну) дату

новаяДата = ДобавітьМесяц

(Дата, чіслоМесяцев)

Дату, одержувану в результаті додавання до значення параметра датазаданого другим параметром числа місяців Значення параметрачіслоМесяцев може бути менше нуля

нМесяца = НачМесяца (дата)

Дату початку місяця, якому належить дата

кМесяца = КонМесяца (дата)

Дату кінця місяця, якому належить дата

нКвартала =

НачКвартала (дата)

Дату початку кварталу, якому належить дата

кКвартала =

КонКвартала (дата)

Дату кінця кварталу, якому належить дата

нГода = НачГода (дата)

Дату початку року, якому належить дата

КМОД = КонГода (дата)

Дату кінця року, якому належить дата

Функція

Що повертає

нНеделі = НачНеделі (дата)

Дату початку тижня, якій належить дата

кнеделіКонНеделі (дата)

Дату кінця тижня, якій належить дата

рік = ДатаГод (дата)

Числове значення року, якому належить дата

місяць = ДатаМесяц (дата)

Номер місяця, якому належить дата

число = ДатаЧісло (дата)

Номер дня місяця, заданого параметром дата

тиждень =

НомерНеделіГода (дата)

Номер тижня року, якій належить дата

деньГода =

НомерДняГода (дата)

Номер дня року, заданого параметромдата

деньНеделі = НомерДняНеделі (дата)

Номер дня тижня, заданого параметром дата

(Нумерація днів починається з понеділка)

період = ПеріодС тр (ДатаНачПеріода, датаКонПеріода)

Символьне подання періоду, межі якого задаються значеннями параметрів функції Якщо період це місяць, квартал, півріччя або рік, то виводиться відповідне назва періоду, наприклад 1 півріччя 2002 р

нІнтервала = Початок СтандартногоІнтервала ([Варіант])

Встановлює / повертаєваріантзавдання початку стандартного інтервалу відображення журналу документів Параметрваріант, якщо він має тип Дата, задає дату початку інтервалу журналу документів Якщо параметр –

це символьний вираз, то воно повинно обчислюватися з наступними значеннями: День, Місяць, Квартал, Рік. Якщо параметр опущений або містить невірне значення, наявна в системі установка зберігається Початок стандартного інтервалу можна задати

в 1С: Підприємстві, звернувшись до пунктів меню Сервіс –

Параметри і вибравши у вікні ятати Журнали (рис 23)

кІнтервала = Кінець СтандартногоІнтервала ([Варіант])

Встановлює / повертає варіант завдання кінця стандартного інтервалу відображення журналу документів Параметрваріант має той же, що і для

попередньої функції, сенс з тією різницею, що задає кінець стандартного інтервалу

час = ТекущееВремя ([час], [хв], [сек])

Рядок, що відображає поточне (системне) час Якщо задані параметри годину, хв і сек, то функція запише в них числові значення відповідно години, хвилин і секунд поточного часу

прапор = ВвестіПеріод

(НПер, КПЕР, заг)

Одиницю, якщо у виведеному діалозі (мал 24) завдання дати початку (НПер)і дати кінця(Кпер)періоду натиснута кнопка ОК, або нуль, якщо натиснута кнопка Скасування, або клавіша Esc, або кнопка, що закриває вікно діалогу Символьний параметрзаг задає заголовок діалогового вікна

Рис 23 Завдання початку і кінця стандартного інтервалу на закладці Журнали

Рис 24 Діалог завдання дат початку і кінця періоду

Приклади:

рДата = РабочаяДата ()

// 101001

ТДАТУ = ТекущаяДата ()

// 101001

нова Дата = ДобавітьМесяц (рДата, -2)

// 100801

нМесяца = НачМесяца (рДата)

//011001

кМесяца = КонМесяца (рДата)

//311001

нКвартала = НачКвартала (рДата)

//011001

кКвартала = КонКвартала (рДата)

//311201

нГода = НачГода (рДата)

//010101

КМОД = КонГода (рДата)

//311201

нНеделі = НачНеделі (рДата)

//081001

кнеделі = КонНеделі (рДата)

//141001

рік = ДатаГод (рДата)

//2001

місяць = ДатаМесяц (рДата)

//10

ДЧ = ДатаЧісло (рДата)

//10

тиждень = НомерНеделіГода (рДата)

//41

деньГода = НомерДняГода (рДата)

//283

деньНеделі = НомерДняНеделі (рДата)

// 3

період = ПеріодСтр (нКвартала, кКвартала)

/ / 4 Квартал 2001

/ / Нова установка початку стандартного інтервалу

НачалоСтандартногоИнтервала (Місяць) нІнтервала = НачалоСтандартногоИнтервала ()

/ / Місяць

/ / Нова установка кінця стандартного інтервалу КонецСтандартногоИнтервала (Квартал) / / Квартал кІнтервала = КонецСтандартногоИнтервала () / / 4 Квартал 2001 м час = ТекущееВремя () / / 19:53:12

/ / Підготовка до виклику діалогу (мал 24) завдання дат початку і кінця періоду

/ / Встановлюємо значення дат, що відображаються в діалозі

нПер = 01 0401 ; Кпер = 30 0601 ;

прапор = ВвестіПеріод (нПер, КПЕР, Введіть період)

Зауваження  При роботі з датами на всьому часовому інтервалі, починаючи від різдва Христового, використовується григоріанський календар, який бере відлік від 4 жовтня 1582 за юліанським календарем Причому цей день юліанського календаря стах 15 жовтня 1582 в григоріанському

Функцію ТекущееВремя часто вживають для виміру часу обчислення (правда, досить тривалих, оскільки функція не вертає мілісекунди), наприклад так:

процедура Виконати () / / замірявся час обчислень перем нЧас, Н мін, нсек / /нсек час початок обчислень перем кЧас, кмін, кСек / /кСек час кінця обчислень перем времяВичісленій

перем ін, с

ТекущееВремя (нЧас, Н мін, нсек) / / Фіксуємо час початку обчислень

/ / Деякі обчислення

с = 0

для ін = 1 по 500000 цикл

з = с + (ін * 2) / ін / / Деякі обчислення конецЦікла

ТекущееВремя (кЧас, кмін, кСек) / / А це час кінця обчислень

/ / Час обчислень в секундах

времяВичісленій = (кЧас нЧас) * 3600 + (кмін Н мін) * 60 + (кСек нсек) Повідомити (Тривалість процесу дорівнює + времяВичісленій + сек”)

КонецПроцедури / / Виконати

Джерело: Бартеньев О В 1С: Підприємство: програмування для всіх Базові обєкти та розрахунки на одній дискеті М: Діалог-МІФІ, 2005 464 с

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*