ДобавитькДате запрос в 1С
-

ДобавитькДате запрос в 1С

0
1512
15.05.2022 Владимир Быков

Содержание:

1.       Описание функции языка запроса ДобавитьКДате

2.       Работа с функцией языка запроса ДобавитьКДате в Конструкторе запросов 1С 8.3  

 

1.     Описание функции языка запроса ДобавитьКДате

 


ДобавитьКДате

 

ДобавитьКДате(DATEADD) - Функция предназначена для прибавления к дате некоторой величины.

Описание функции.

Параметры

<Дата> - тип Дата, выражение (функции и параметры языка запросов)



ДАТАВРЕМЯ

 

·        ДАТАВРЕМЯ(<Год>,<Месяц>,<День>,<Час>,<Минута>,<Секунда>) – функция языка запросов.



Функция языка запросов ДатаВремя

 

·        &ДатаВремя – параметр языка запросов.

 


Параметр языка запросов ДатаВремя

 

·        <Тип> - строка без кавычек. Варианты: Секунда, Минута, Час, День, Неделя, Месяц, Квартал, Год, Декада, Полугодие.



ДабавитьКДатеДатаВремя

 

<Количество> - тип Число, может быть число, выражение (функция языка запросов).  


2.     Работа с функцией языка запроса ДобавитьКДате в Конструкторе запросов 1С 8.3


Попрактиковаться можно с помощью управляемой консоли запросов.



Управляемая консоль запросов

 

После того как открыли консоль запросов в 1С 8.3 «Предприятие» в «пользовательском режиме». В той части окна консоли запросов, где пишется текст запроса вызвать конструктор запросов (позволяет сделать контекстное меню). Все функции языка запросов находятся в правой части окна. Находим в иерархическом древовидном списке функцию ДОБАВИТЬКДАТЕ и переносим её с помощью мыши в поле, где пишем код.


Теперь можно выбрать какую-нибудь таблицу (например, справочник), вывести поле (обязательно, хотя бы одно). Потом создать своё поле с функцией ДОБАВИТЬКДАТЕ, для быстроты можно на закладке «Дополнительно» установить выборку записей «Первые» с значением 1. Проверить результат.


Задание. В торговой компании сотрудникам возраст, которых достиг 30 лет начисляются бонусы на дисконтную карту. А также сотрудникам, которые отработали в компании 5 лет также начисляются бонусы на дисконтную карту т.к. статистика показала, что 60% сотрудников меняют место работы срок стажа которых, не превышает 5 лет. Таким образом компания решила поощрить сотрудников за постоянство. Появилась необходимость определить возраст сотрудников и их стаж работы.


Для этого потребуется создать обработку и написать код. Для примера использовано прикладное решение 1С Зарплата и управление персоналом КОРП, редакция 3.1 (3.1.15.96), демоверсия. Ниже написан основной код отчета.

    

&НаСервере

Процедура СформироватьНаСервере()

 

                Запрос = Новый Запрос;

                Запрос.Текст= "ВЫБРАТЬ РАЗРЕШЕННЫЕ

                               |              Сотрудники.Ссылка КАК Сотрудник

                               |ИЗ

                               |              Справочник.Сотрудники КАК Сотрудники

                               |ГДЕ

                               |              Сотрудники.ПометкаУдаления = ЛОЖЬ"

                ;

               

                ВсеСотрудники= Запрос.Выполнить().Выгрузить();

                              

                // Получить кадровые данные

КадровыеДанные = КадровыйУчет.КадровыеДанныеСотрудников(Истина, ВсеСотрудники.ВыгрузитьКолонку("Сотрудник"),

                "Организация,ФизическоеЛицо,ДатаУвольнения,ДатаПриема", УстановитьДемоДату);

               

                КадровыеДанные.Колонки.Добавить("ДатаРождения", Новый ОписаниеТипов("Дата"));

               

                Для Каждого СтрокаКадровыеДанныеИзКадровыеДанныеЦикл

СтрокаКадровыеДанные.ДатаРождения= СтрокаКадровыеДанные.ФизическоеЛицо.ДатаРождения;             

                КонецЦикла;

               

                Результат.Очистить();

               

                ОтчетОбъект= РеквизитФормыВЗначение("Объект");

                Макет = ОтчетОбъект.ПолучитьМакет("Макет");

               

                ОбластьШапка= Макет.ПолучитьОбласть("Шапка");

                Результат.Вывести(ОбластьШапка);

               

                ОбластьСтрока= Макет.ПолучитьОбласть("Строка");

               

                ДемонстрационныйЗапрос= Новый Запрос;

                ДемонстрационныйЗапрос.Текст="ВЫБРАТЬ

                                               |            КадровыеДанные.Организация КАК Организация,

                                               |            КадровыеДанные.ФизическоеЛицо КАК ФизическоеЛицо,

                                               |            КадровыеДанные.ДатаУвольнения КАК ДатаУвольнения,

                                               |            КадровыеДанные.ДатаПриема КАК ДатаПриема,

                                               |            КадровыеДанные.ДатаРождения КАК ДатаРождения,

                                               |            ДОБАВИТЬКДАТЕ(КадровыеДанные.ДатаРождения, ГОД, 30) КАК ВозрастСотрудника,

                                               |            ДОБАВИТЬКДАТЕ(КадровыеДанные.ДатаПриема, ГОД, 5) КАК СтажРаботы

                                               |ПОМЕСТИТЬ ВТКадровыеДанные

                                               |ИЗ

                                               |            &КадровыеДанные КАК КадровыеДанные

                                               |ГДЕ

                                               |            КадровыеДанные.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)

                                               |;

                                               |

                                               |////////////////////////////////////////////////////////////////////////////////

                                               |ВЫБРАТЬ

                                               |            ВТКадровыеДанные.Организация КАК Организация,

                                               |            ВТКадровыеДанные.ФизическоеЛицо КАК ФизическоеЛицо,

                                               |            ВТКадровыеДанные.ДатаУвольнения КАК ДатаУвольнения,

                                               |            ВТКадровыеДанные.ДатаПриема КАК ДатаПриема,

                                               |            ВТКадровыеДанные.ДатаРождения КАК ДатаРождения,

                                               |            ВТКадровыеДанные.ВозрастСотрудника КАК ВозрастСотрудника,

                                               |            ВТКадровыеДанные.СтажРаботы КАК СтажРаботы

                                               |ИЗ

                                               |            ВТКадровыеДанные КАК ВТКадровыеДанные";

               

                ДемонстрационныйЗапрос.УстановитьПараметр("КадровыеДанные",КадровыеДанные);

                ДемонстрационныйЗапрос.УстановитьПараметр("ТекущаяДата",УстановитьДемоДату);

                РезультатДемоЗапроса=ДемонстрационныйЗапрос.Выполнить().Выбрать();

 

                Пока РезультатДемоЗапроса.Следующий()Цикл

                              

                               Исполнилось30Лет = Истина;

                               Отработал5Лет = Истина;

                              

                               // Отметить сотрудников, которым не исполнилось 30 лет

                               Если НачалоМесяца(УстановитьДемоДату)<>

                                               НачалоМесяца(РезультатДемоЗапроса.ВозрастСотрудника) Тогда

                                               Исполнилось30Лет = Ложь;         

                               КонецЕсли;

                              

                               // Отметить сотрудников, которые не отработали 5 лет или

                               // отработали более и уже получили бонусы

                               Если Год(УстановитьДемоДату) <>Год(РезультатДемоЗапроса.СтажРаботы) Тогда

                                               Отработал5Лет = Ложь;

                               КонецЕсли;

                              

                               // Исключить из отчета сотрудников, которым не исполнилось 30 лет

                               // Исключить из отчета сотрудников, которые не отработали 5 лет или

                               // отработали более и уже получили бонусы

                               Если Не Исполнилось30Лет И Не Отработал5Лет Тогда

                                               Продолжить;     

                               КонецЕсли;

                              

                               ОбластьСтрока.Параметры.ФИО=РезультатДемоЗапроса.ФизическоеЛицо;

                               ОбластьСтрока.Параметры.БонусЗаСтаж                =Отработал5Лет;

                               ОбластьСтрока.Параметры.БонусЗаВозраст          =Исполнилось30Лет;

                              

                               Результат.Вывести(ОбластьСтрока);

                              

                КонецЦикла;

               

КонецПроцедуры

 

После создания интерфейса, написания кода, получается результат.



Результат написания кода в 1С Зарплата и управление персоналом КОРП

    

В написании отчета использовалась функция ДобавитькДатев запросе (см. в конструкторе запроса 1С 8.3 ЗУП).

 


ИспользованиеДобавитьКДате в запросе 1С

 

Система, выполнив запрос, обходит выборку, где проверяет условия стажа работы и возраста сотрудников. Данный пример приведен для представления, как можно использовать данную функцию ДобавитьКДате в запросе в 1С.

    

Специалист компании «Кодерлайн»

Владимир Быков

Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Теги
# абота Риелторского Агентства # Управление торговлей 11 #Забалансовый счет #Контекстное меню #Параметры запуска #Работа Риелторского Агентства # 1C # CRM-система # Cинтаксис-помощник # Cинхронные методы работы # Cправочник номенклатуры # PDF документами # PowerShell # XML-файл # Бизнес-процесс # Виды событий оповещения # Возврат товаров # Глубина анализа # Графические объекты # Динамический список # Документ заказ клиентов # Документ заполнен # Документ Отбор (размещение) товаров # Документ Отгрузка товаров ИС МП # Документ Приобретение товаров и услуг # Документ УПД # Документы продажи # Доступ на ТСД # ДтКт # ЕАЭС # Задержка зарплаты работодателем # Заказ на перемещение # Закладка Администрирование # Зарплата и кадры # Имя таблицы # ИТС # Кабель NYM(Севкабель) 3x5.5 # Книга учета доходов и расходов # Курс валюты # Лицо с правом подписи # Лицо, имеющее право подписи документов # Маркировка цифровыми кодами # Минимальные цены продажи в 1С # Настройка НСИ и разделов # Настройка ценообразования # НДФЛ # Нематериальные активы # Нормативно-правовые документы # Обмен электронными документами # Оплата через банк # Оптовые продажи # Основное ответственное лицо организации # Остаток товара на складе # Отчет комиссионера # Передача на комиссию # Перемещение ТС и оборудования # Проведение инструктажа # Продажи или Закупки # Прочие доходы # Пункт Подключить обработки # Пункт Сервис # ПФР и ФФОМС # Работа ТС # Расчёт зарплаты # Расчет налога УСН # Расчетные счета # Режим использования модальности # Система «Честный знак» # Система GS1 # Списание на расходы # Справка-расчет налога УСН # Страховые взносы # Табель учёта рабочего времени # Таблица формы # Таблица формы «Сотрудники» # Товары # Установка цен на товары # Формат Цифровой Маркировки # Форматированное письмо # Функция Дата # Функция ДеньГода # Функция ДеньНедели # Центральный Банк России # Цены номенклатуры 2.5 # Эквайринговый терминал # Элементы #1.6-НДФЛ #1С Бухгалтерия #1С Договоры #1С: CRM #1С: ERP #1С: ERP Управление строительной организацией #1С: ERP. Управление буровой компанией #1С: WMS Управление складом #1С: Аренда и управление недвижимостью #1С: БУХ #1С: Договорчики #1С: Документооборот #1С: ЗУП #1С: Интеграция #1С: КА #1С: Колледж #1С: Конвертация данных #1С: Модули #1С: Платформа #1С: Предприятие #1С: Розница #1С: Сценарное тестирование #1С: ТОИР #1С: УАТ #1С: УКФ #1С: Университет #1С: УНФ #1С: УПП #1С: Управление строительной организацией #1С: УТ #1С: УХ #1С:ERP #1С:БГУ #1С:БП #1С:Риелтор #1С:Управление холдингом #1С.6-НДФЛ #ADO #APACHE #API #canonical #com-объекты #Cинтаксис-помощник #Cопроводительных документов #Cправочник БИК #Excel #Excel в 1С #FTP-сервер #GoogleDrive #Googleаккаунт #GUID #HTTP #ITIL #Koderline: Управление медиа-холдингом #Koderline: Управление проектами строительства скважин #LINUX #MS SQL Server #PDF #ragent.exe #SOAP-протокол #USB- ключ #WEB #WEB-сервисы 1С #Word #WS-ссылки #XDTO-объект #XML #XML-обмен #Авансовый платеж #Администрирование 1С #Адрес URL описания #Адресный классификатор #акты в 1С #Аутентификации операционной системы #База XML #База данных #Балансовый метод #Балансовый расчет #Банковские счета #Безопасность сервера #Бесшовная интеграция #Бизнес-процесс #БИТ.Финанc #Битрикс24 #Блокировка данных #Блокировки в 1С #БСП #БУ #Бурение скважин #Бухгалтерская отчётность в МСФО #Бухгалтерский отчет #Бюджетирование #Валовая прибыль #Ввод команд #Ввод пароля #Ввоз товаров #Веб-сервер #Веб-сервер Apache #Вид договора #Вид Характеристики #Вкладка Документы #Внедрение #Внедрение ERP #Внешний вид формы #Внешнюю обработку #Возврат от покупателя #Временные разницы #Временные таблицы #Всплывающие ошибки #Выбор каталога #Выбранные файлы #Вызов процедуры #Выпадающий список #Выплата аванса #Выплата отпускных сотруднику #Выполнение запроса #Выполнение кода #Выполнение транзакций #График отпусков #ГТД #Дата действия договора #Дата документа #Движение документа #Декларация по НДС #Диагностика ошибки #Директория сервера #Дистрибутивы программ #Документ Заказ клиента #Документ Отпуск #Документ1 #Дополнительный оплачиваемый отпуск #Доработка конфигурации #Доступ к файлам #Журнал проводок #Журнал регистрации #Журнал транзакций #Журналы #Загрузить Значения #Загрузка цен в 1С #Задача для 1С #Заказ-наряд #Закладка Торговля #Закрытие месяца #Закрытие сделки #Заменить #Запись регистра сведений #Заполнения полей #Запросы 1С #Заработная плата #Зарплата и управление персоналом #Импорт товара #Имущество предприятия #инвентаризационная опись #Инвентаризация склада #Интеграция 1С #Интервал dpi #Интерпретатор языка #Интерфейс пользователя #Информационная база #История пользователя #Источник данных #Кадровые документы #Кадровый документ #КАК ОТРАЖАЮТСЯ ТОВАРЫ В ПУТИ 1С #Как сделать в 1С #Карточка должности #Карточка номенклатуры #Карточка Объекта недвижимости #Касса ККМ #Кассовый документ #Квалификационные надбавки #Классификаторы и курсы валют #Классификаторы и курсы валют #Клиент-серверная схема #Клиент-серверный режим #Код доступа #Код ЦМТ #Код языка #Команда вызова #Командная строка #Конвертация данных #Контроль документов #Конфигурация 1С #Конфигурация 1С ЗУП 3.1 #Конфигурация системы 1С #Копирование настроек пользователей #Корпоративное сопровождение #Корректировка расчётов с учредителем #Криптография данных #Критерии отбора документов #Курс валюты #Курсовые разницы #Левое соединение #Лизинг #Лицензии 1С #Лицензионный договор #Лицензия 1С КОРП #Лицензия 1С ПРОФ #Личные документы #Локальный каталог #Маркетинговая акция #Массив Номенклатур #Массовая регистрация отгулов #Меню Отчет #Место хранения #Метод объекта #Метод устранения ошибки #Методы устранения ошибки #Механизм Анализа Данных в 1С #Механизм записи #Мобильное приложение #Мобильный клиент #Моделирование #Модель данных #Модуль Диадок #Монопольный режим #МРОТ #МСФО #Налоги #Налоговая декларация #Налоговый актив #Налоговый регистр #Налоговый учет #Написание запроса #Настройка панели #Настройка параметров #Настройка пользователя #Настройка системы #Настройки пользователя по умолчанию #Начальная таблица #Начисления Арендной платы #Новый Массив #Нормативно-справочная информация #Облачный сервис #Обмен между базами #Обмен сведениями #Обновления #Обособленное подразделение #Обработка проведения документов #Общие ознакомительные рассылки #Объект системы #Объективность информации #Объектная база данных #Окно сообщений #Оперативная аналитика #Операции в 1С #Оплата агента #Оплата по квитанции #Оповещение по видам события #Оптимизация #Организация #Организация хранения #ОС и НМА #Основное окно #Остатки взаиморасчетов #Остатки товаров на складах #Остаток товара #Отпуск #Отчет комитенту #Отчетность #Отчетный период #Отчеты в 1С #Оформление документа #Оформление перевода работника #Оценка задач #Параллельный учет #Параметр «Количество» #Параметры отбора #Параметры подключения #Партнер #Передача данных #Передача неисключительных прав #Перемещение отчета #Перенос данных #Перенос цен из Excel в 1С #Перечисление денежных средств #Период отбора #Периодичность ДЕНЬ #Периодичность МЕСЯЦ #Печатная форма #Печатная форма документа #План счетов #Планирование #Планировать события #Платежный документ #Погашение обязательств #Подчиненный справочник #Поле Ввода Значение Субконто #Полезные обработки #Политика учета #Пользователь Администратор #Пользовательский режим #Поступление денежных средств #Поступление основных средств #Потенциальный контрагент #Права доступа #Правила обмена #Правое соединение #предопределенные элементы справочников #Прием на работу #Принцип работы 1С #Приходная накладная #Приходно-кассовый ордер #Проведение документов #Проведение инвентаризации #Проводки 1С #Проводок документации #Программа 1С #Программирование в 1С #Программные права #Программный код #Продажа маркированной продукции #Продажа ТМЦ #Продажа товара #Продажи #Продление #Производственный план #Производство #Просмотр #Процедура и функция #Пункт «Касса» #Путь к файлу #Работа с объектами в 1С #Рабочий сервер #Раздел Справочники #Расположение ссылки #Расторжение #Расходная накладная #Расходный ордер #Расходы по амортизации #Расчет зарплаты #Расчет НДФЛ #Расчетные документы #Расширение конфигурации #Расширение прав доступа #Расширение функционала #Регистр бухгалтерского учета #Регистр бухучета #Регистр данных #Регистры бухгалтерии #Регистры движения документов #Регламентированная отчетность #Регламентное задание #Режим записи #Режим использования модальности #Режим конфигуратор #Режим РИБ #Резерв отпусков #Результаты поиска #Реквизит «СпЗнч» #РМК #РМК кассира #РСБУ #С # #Сверка данных учёта НДС #Свойства характеристики номенклатуры #Свойство ячейки таблицы #Сдельный заработок #Сеанс Администратор #Сегмент номенклатуры #Сервис-деск #Сетевой ключ защиты #Сетевой ключ защиты #Сетевые структуры системы #СЗВ-СТАЖ #Синхронизация данных #Система программы #СКД #Служба ИТ #Служба НСИ #Соединение COM в 1С платформе #Соединение СОМ в 1С платформе #Список документов #Список номенклатуры #Список прав #Справочник Лиды #Сравнение конфигураций #Строка «Касса (ККМ)» #Схема отчетности #Счет-фактура #Табличная часть #Табличная часть обработки #Таможенные пошлины #Текстовый формат #Текущая Строка #Территориальная привязка #Территориальные рамки #Тестирование 1С #Техническое задание #Тип данных #Тип свойства #Тип строки #Типы данных ссылки #Толстый клиент #Тонкий клиент #Торговое оборудование #Транспортная логистика #Универсальные коллекции #Управление проектами #Управленческое взаимодействие #Условие предоставления скидки #Условия труда #Установка цен номенклатуры #Учет зарплаты #Учетная политика организации #Файл обмена данными #Файловая база #Файлы обмена #Физический ключ #Финансовый результат #Финансовый учет #Форма ввода #Форма выбора элемента #Формат MicrosoftExcel #Формат даты #Формирование отчета #Формирование отчета #Функционал МРМ #Х-точка #Характеристики Товаров #Хранение информации #Хранилище настроек #Хранить историю изменений #Ценообразование #Центральный узел #Чтение #Шаблон обновления #Шапка отчета #Эквайринговая операция #Экзамен 1С #Экспорт товаров #Экспортная процедура #Электронная подпись #электронные подписи #элемент справочника #Элемент языка #Язык программирования #Яндекс-диск или Google-диск #Яндекс.Касса 1С под Linux 1С:УНФ Email или телефон Работа с объектами в 1С тип да Функциональные опции в 1С
Услуги программиста 1С
Получите специалиста  
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.