Оператор если в 1с: Условный оператор Если в языке 1С 8.3, 8.2 (в примерах)

Оператор 1С, работа оператором 1с, вакансии оператор 1с в Верхней Пышме

Оператор ПК

от 35 500 ₽/месяц

Добавить в избранное

Мегаполис

7.1

Верхняя Пышма

Опыт не нужен

Отражение торговых операций в системе учета данных SAP. Работа с первичной бухгалтерской документацией. Проверка документов…
Ответственность, честность, внимательность

Смотрят

8

 

человек

Скрыть

Мы показываем вам вакансии по вашему запросу с удаленной работой по всему миру.Если вы не хотите их видеть мы можем их скрыть

Оператор 1С/ помощник менеджера по закупкам светотехнической продукции

По договорённости

Добавить в избранное

РУССВЕТОПТТОРГ

Москва

Удаленная работа

Учет и корректировка номенклатуры в базе данных. Работа с отчетами и т. д. Минимальное, но регулярное общение с поставщиками

Опыт работы на рынке светотехнической/электротехнической продукции

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Алматы

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Разместите резюме, и мы подберем вам подходящие вакансии

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Армавир (Краснодарский край)

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Астана / Нур-Султан

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Хотите получать новые вакансии первым?

Лучшие вакансии закрываются быстрее остальных. Подпишитесь на новые актуальные вакансии

В Telegram

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Астрахань

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Брянск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Валуйки

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Великий Новгород

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Владимир

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Вологда

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Воркута

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Воронеж

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Иваново

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Йошкар-Ола

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Калининград

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Нижневартовск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Нижний Тагил

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Новороссийск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Ярославль

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании.

Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Череповец

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Мурманск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Липецк

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

23

 

человека

Скрыть

Разместите резюме, и мы подберем вам подходящие вакансии

Менеджер по логистике и складу (удаленно)

50 000 — 80 000 ₽/месяц

Добавить в избранное

BucaLapi

Обнинск

Будьте первым

Удаленная работа

Работа в 1С, документами, составление таблиц и отчетов. Организация и контроль работы маркировщиков, кладовщиков. Совместная инвентаризация с бухгалтерией и складом
Опыт аналогичной работы, внимательность, умение работать удаленно (постоянная…

В компании есть ещё 3 похожие вакансии

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Архангельск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

В компании есть ещё 86 похожих вакансий

Смотрят

7

 

человек

Скрыть

18 апреля

Менеджер по продажам оборудования для складов

от 100 000 ₽/месяц

Добавить в избранное

Москва

2 минутыВыставочная

 и ещё 2 станции

Удаленная работа

Наша … предварительная работа, а … клиентской базе заинтересованных … контрактов
Пожалуйста … к данной вакансии, … по данному тексту … время. Пожалуйста не открывайте…
Абсолютно … как специалистам по … зарабатывать. Что очень удобно, можете работать…

Смотрят

25

 

человек

Скрыть

18 апреля

Менеджер по продажам оборудования для складов

от 50 000 ₽/месяц

Добавить в избранное

Москва

10 минутВыставочная

Опыт не нужен

Удаленная работа

Доступно студентам

Наша … предварительная работа, а … клиентской базе заинтересованных … контрактов
Пожалуйста … к данной вакансии, … по данному тексту … время. Пожалуйста не открывайте…
Абсолютно … как специалистам по … зарабатывать. Что очень удобно, можете работать…

Смотрят

23

 

человека

Скрыть

Менеджер по логистике и складу (удаленно)

50 000 — 80 000 ₽/месяц

Добавить в избранное

BucaLapi

Калуга

Будьте первым

Удаленная работа

Работа в 1С, документами, составление таблиц и отчетов. Организация и контроль работы маркировщиков, кладовщиков. Совместная инвентаризация с бухгалтерией и складом
Опыт аналогичной работы, внимательность, умение работать удаленно (постоянная…

Смотрят

14

 

человек

Скрыть

Менеджер по логистике и складу (удаленно)

50 000 — 80 000 ₽/месяц

Добавить в избранное

BucaLapi

Балабаново

Будьте первым

Удаленная работа

Работа в 1С, документами, составление таблиц и отчетов. Организация и контроль работы маркировщиков, кладовщиков. Совместная инвентаризация с бухгалтерией и складом
Опыт аналогичной работы, внимательность, умение работать удаленно (постоянная…

Смотрят

16

 

человек

Скрыть

Менеджер по логистике и складу (удаленно)

50 000 — 80 000 ₽/месяц

Добавить в избранное

BucaLapi

Наро-Фоминск

Будьте первым

Удаленная работа

Работа в 1С, документами, составление таблиц и отчетов. Организация и контроль работы маркировщиков, кладовщиков. Совместная инвентаризация с бухгалтерией и складом
Опыт аналогичной работы, внимательность, умение работать удаленно (постоянная…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Белгород

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Калуга

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Киров (Кировская область)

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Кострома

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Краснокамск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Смотрят

1

 

человек

Скрыть

Специалист по вводу данных

25 000 — 40 000 ₽/месяц

Добавить в избранное

РОБОТ КАРЛ

Новочебоксарск

Отклик без резюме

Опыт не нужен

Удаленная работа

Совершать исходящие звонки или повторный звонок, клиентам нашей компании. Консультировать…
Опыт не обязателен, всему научим. Интернет проводной или wi-fi
Пк/ноутбук. Удаленная работа в любом удобном для вас месте. ЗП: от 25 000 до 40 000…

Скрыть

Специалист по вводу данных

от 30 000 ₽/месяц

Добавить в избранное

Яндекс

Москва

Опыт не нужен

Удаленная работа

Регулярно пополнять базу знаний поддержки. Заниматься разметкой задач (например, менять статус, теги, исполнителя и т. д.)
Более года работали в системах для ведения бухгалтерской и финансовой деятельности организации. Умеете работать с большими…

В компании есть ещё 172 похожие вакансии

Скрыть

Оператор интернет-магазина (удаленно)

42 500 ₽/месяц

Добавить в избранное

АТЛАНТ

Москва

Опыт не нужен

Удаленная работа

Переадресация клиентов на других специалистов
Приветствуется опыт работы на … центра, Менеджер по работе с … магазина, Менеджер интернет магазина, Менеджер по … Диспетчер. Базовые навыки пользователя ПК (MS Office, 1С, браузер, эл.почта)

Смотрят

1

 

человек

Скрыть

18 апреля

Оператор call-центра

50 000 — 80 000 ₽/месяц

Добавить в избранное

Ваше Право

Санкт-Петербург

15 минутПриморская

 и ещё 2 станции

Удаленная работа

Проведение … для менеджеров по продажам. Ведение базы клиентов в 1С
Уверенный пользователь ПК. Ответственность, пунктуальность, аккуратность в работе с документами. Уверенный пользователь ПК

Скрыть

Попробуйте поискать вакансии по похожим запросам

Менеджер оператор 1С

Оператор базы данных 1С

Кладовщик оператор 1С

Оператор склада

Старший оператор 1С

Бухгалтер-оператор

Оператор ввода данных

Оператор базы данных

Оператор 1С удаленно

Бухгалтер на первичную документацию

Оператор БД

Товаровед

Оператор ПК

Администратор 1С

Ещё 5 вариантов

Запросы 1С:Предприятие 8.

Прочие функции

Оглавление:

  1. Основы работы.
  2. Параметры и операторы сравнения.
  3. Условия отбора.
  4. Группировки.
  5. Итоги.
  6. Вложенные запросы.
  7. Функции работы с датами.
  8. Прочие функции и операторы

В языке запросов 1С существует большое количество различных функций и операторов, облегчающих построение запроса. Часть из них мы рассмотрели в статьях Функции работы с датами, Группировки в запросах 1С, остальные рассмотрим сейчас.

Функции работы со строками в запросах 1С

Функций и операторов для работы со строковыми данными в запросах 1С немного.

Во-первых, строки в запросах можно складывать. Для этого используется оператор «+»:

Запрос.Текст=»ВЫБРАТЬ
«»Строка: «» + Источник.Наименование
Из Справочник.Источник КАК Источник»;

Во-вторых, можно выделить часть строки. Для этого используется функция ПОДСТРОКА. Функция аналогична функции СРЕД () встроенного языка 1С. У нее три параметра:

  1. Строка-источник.
  2. Номер символа, с которого должна начинаться выделяемая строка.
  3. Количество символов.

Запрос.Текст=»ВЫБРАТЬ
ПОДСТРОКА(«»Строка: «», 4, 3) КАК Результат»; // Результат: ока

И, наконец, существует оператор, которые позволяет сравнить строку с неким шаблоном. Это оператор ПОДОБНО. О его использовании читайте в нашей статье о парамертах и операторах сравнения в запросах 1С.

Функция

ЕСТЬNULL

NULL — особый тип данных на платформе 1С:Предприятие. Он же является единственным возможным значением этого типа. NULL может возникать в запросах в нескольких случаях: при соединениях источников запроса, если не было найдено соответствующего значения в одной из таблиц; при обращении к реквизитам несуществующего объекта; если NULL был указан в списке полей запроса (например при объединении результатов выборки из нескольких таблиц) и т.д.

Поскольку NULL не является ни нулем, ни пустой строкой, ни даже значением Неопределено, его часто бывает полезно заменять на какой-то более полезный тип данных. Для этого и предназначена функция ЕСТЬNULL.

Она имеет два параметра:

  1. Проверяемое значение.
  2. Значение, на которое нужно заменить первый параметр, если он оказался равен NULL.

Запрос.Текст=»ВЫБРАТЬ
ЕСТЬNULL(Источник.Остаток, 0) КАК Остаток»; // Если в результате запроса поле остаток=NULL,
// то оно заменится на 0, и с ним можно будет выполнять математические действия

Функции

ПРЕДСТАВЛЕНИЕ и ПРЕДСТАВЛЕНИЕССЫЛКИ

Эти функции предназначены для получения строковых представлений различных значений. То есть, они преобразуют ссылки, числа, булево и т.д. в обычный текст. Разница между ними в том, что функция ПРЕДСТАВЛЕНИЕ преобразует в текст (строку) любые типы данных, а функция ПРЕДСТАВЛЕНИЕССЫЛКИ — только ссылки, а остальные значения возвращает как есть, не преобразованными.

Запрос.Текст=»ВЫБРАТЬ
ПРЕДСТАВЛЕНИЕ (ИСТИНА)  КАК Булево,
ПРЕДСТАВЛЕНИЕ (4) КАК Число,
ПРЕДСТАВЛЕНИЕ (Источник. Ссылка) КАК Ссылка,
ПРЕДСТАВЛЕНИЕ(ДАТАВРЕМЯ(2016,10,07)) КАК Дата»;
// Булево = «Да», Число = «4», Ссылка = «Документ Расходный кассовый ордер №… от…»
// Дата=»07.10.2016 0:00:00″

Запрос.Текст=»ВЫБРАТЬ
ПРЕДСТАВЛЕНИЕССЫЛКИ (ИСТИНА)  КАК Булево,
ПРЕДСТАВЛЕНИЕССЫЛКИ (4) КАК Число,
ПРЕДСТАВЛЕНИЕССЫЛКИ (Источник.Ссылка) КАК Ссылка,
ПРЕДСТАВЛЕНИЕССЫЛКИ (ДАТАВРЕМЯ(2016,10,07)) КАК Дата»;
// Булево = ИСТИНА, Число = 4, Ссылка = «Документ Расходный кассовый ордер №… от…»
// Дата=07.10.2016 0:00:00

Функции

ТИП и ТИПЗНАЧЕНИЯ

Функция ТИП возвращает тип данных платформы 1С:Предприятие.

Запрос.Текст=»ВЫБРАТЬ
ТИП (Число) ,
ТИП (Строка),
ТИП (Документ.РасходныйКассовыйОрдер)»;

Функция ТИПЗНАЧЕНИЯ возвращает тип переданного в нее значения.

Запрос.Текст=»ВЫБРАТЬ
ТИПЗНАЧЕНИЯ (5) КАК Число,
ТИП («»Строчка»») КАК Строка,
ТИП (Источник.Ссылка) КАК Справочник
Из Справочник. Источник КАК Источник»;
//Число=Число, Строка=Строка, Справочник = СправочникСсылка.Источник

Эти функции удобно применять, например, когда нужно выяснить является ли полученное в запросе поле значением какого-то типа. Например, получим контактную информацию контрагентов из регистра сведений КонтактнаяИнформация (там хранятся контакты не только контрагентов, но и организаций, физических лиц и т.д.):

Запрос.Текст=»ВЫБРАТЬ
КонтактнаяИнформация.Представление
ИЗ
РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ГДЕ
ТИПЗНАЧЕНИЯ(КонтактнаяИнформация.Объект) = ТИП(Справочник.Контрагенты)»;

Функция

ЗНАЧЕНИЕ

Функция Значение позволяет использовать в запросе объекты конфигурации 1С напрямую, без применения параметров запроса.

Дополним предыдущий пример еще одним условием. Необходимо получить только телефоны контрагентов.

Запрос.Текст=»ВЫБРАТЬ
КонтактнаяИнформация.Представление
ИЗ
РегистрСведений. КонтактнаяИнформация КАК КонтактнаяИнформация
ГДЕ
ТИПЗНАЧЕНИЯ(КонтактнаяИнформация.Объект) = ТИП(Справочник.Контрагенты)
И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон)»;

Следует отметить, что эту функцию можно использовать только с предопределенными значениями, т.е. со значениями, к которым можно обратиться напрямую из конфигуратора. То есть функция ЗНАЧЕНИЕ не можно использоваться с элементами справочников, созданными пользователями, но может работать с перечислениями, с предопределенными элементами справочников, со значениями ПустаяСсылка.

Оператор

ССЫЛКА

Оператор ССЫЛКА предназначен для проверки значений, получаемых запросом, на принадлежность к определенному ссылочному типу. Эту же задачу можно выполнить с помощью функций ТИП и ТИПЗНАЧЕНИЯ (которые имеют более широкую область применения и были рассмотрены выше).

Например, задачу выбора контактной информации контрагентов можно было решить и так:

Запрос. Текст=»ВЫБРАТЬ
КонтактнаяИнформация.Представление
ИЗ
РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ГДЕ
КонтактнаяИнформация.Объект ССЫЛКА Справочник.Контрагенты»;

Оператор

ВЫРАЗИТЬ

Оператор ВЫРАЗИТЬ используется в запросах 1С в двух случаях:

  • когда нужно изменить характеристики примитивного типа;
  • когда нужно из поля с составным типом данных сделать поле с одиночным типом.

К примитивным типам данных относятся: число, строка, дата, булево. Некоторые из этих типов данных имеют дополнительные характеристики. Тип Число имеет длину и точность, тип Строка — длину или неограниченность.

Оператор ВЫРАЗИТЬ позволяет изменять не тип данных, а именно дополнительные характеристики. Например, он может из строки с неограниченной длиной сделать строку с длиной ограниченной. Это бывает полезно, если нужно сгруппировать результаты запроса по такому полю. Выполнять группировку по полям с неограниченной длиной нельзя, поэтому мы его преобразуем в строку с длиной 200 символов.

Запрос.Текст=»ВЫБРАТЬ
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПоступлениеТоваровУслуг.Ссылка) КАК Ссылка
ИЗ
Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
СГРУППИРОВАТЬ ПО
ВЫРАЗИТЬ(ПоступлениеТоваровУслуг.Комментарий КАК СТРОКА(200))»;

В ряде случаев, запросы к полям с составным типом данных могут обрабатываться платформой 1С неоптимально. Это приводит к увеличению времени выполнения запросов, поэтому бывает полезно заранее преобразовать составной тип в одиночный.

Запрос.Текст=»ВЫБРАТЬ
ВЫРАЗИТЬ(ДвижениеТоваровОбороты.Распоряжение КАК Документ.ЗаказКлиента).Дата КАК ДатаЗаказа,
ДвижениеТоваровОбороты.Номенклатура
ИЗ
РегистрНакопления.ДвижениеТоваров.Обороты КАК ДвижениеТоваровОбороты
ГДЕ
ДвижениеТоваровОбороты.Распоряжение ССЫЛКА Документ.ЗаказКлиента»;

Операторы

ВЫБОР и ЕСТЬ NULL

Оператор ВЫБОР аналогичен оператору ЕСЛИ во встроенном языке 1С, но имеет несколько урезанный функционал.

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

Запрос.Текст=»ВЫБРАТЬ
КонтактнаяИнформация.Представление,
ВЫБОР
КОГДА ТИПЗНАЧЕНИЯ(КонтактнаяИнформация.Объект) = ТИП(Справочник.Контрагенты)
ТОГДА «Контрагент»
ИНАЧЕ ВЫБОР
КОГДА ТИПЗНАЧЕНИЯ(КонтактнаяИнформация.Объект) = ТИП(Справочник.ФизическиеЛица)
ТОГДА «ФизЛицо»
ИНАЧЕ «Кто-то другой»
КОНЕЦ
КОНЕЦ КАК Владелец
ИЗ
РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация»;

Как видно из примера, в конструкции ВЫБОР всегда присутствует условие после слова КОГДА; значение, применяемое, если условие выполняется, после слова ТОГДА и значение, применяемое, если условие не выполняется, после слова ИНАЧЕ. Все три элемента конструкции ВЫБОР являются обязательными. Опустить элемент ИНАЧЕ, так же, как это делается при использовании оператора ЕСЛИ во встроенном языке 1С, нельзя. Также у оператора ВЫБОР отсутствует аналог конструкции ИНАЧЕЕСЛИ, зато можно вложить один ВЫБОР в другой, как и было сделано в нашем примере.

Оператор ЕСТЬ NULL используется в конструкции ВЫБОР для сравнения поля запроса с типом NULL.

Запрос.Текст=»ВЫБРАТЬ
ВЫБОР
КОГДА Значение ЕСТЬ NULL ТОГДА 0
ИНАЧЕ Значение
КОНЕЦ»;

Кроме того, оператор ЕСТЬ NULL можно использовать в условиях запроса, например в предложении ГДЕ.

PostgreSQL: Документация: 15: 9.2. Функции и операторы сравнения

Доступны обычные операторы сравнения, как показано в таблице 9.1.

Таблица 9.1. Операторы сравнения

Оператор Описание
тип данных < тип данных логический Менее
тип данных > тип данных логическое значение Больше
тип данных <= тип данных логическое значение Меньше или равно
тип данных >= тип данных логический Больше или равно
тип данных = тип данных логическое значение Равно
тип данных <> тип данных логическое значение Не равно
тип данных != тип данных логическое значение Не равно

Примечание

<> — это стандартная нотация SQL для «не равно». != — псевдоним, который на самом раннем этапе парсинга преобразуется в <> . Следовательно, невозможно реализовать операторы != и <> , которые делают разные вещи.

Эти операторы сравнения доступны для всех встроенных типов данных, которые имеют естественный порядок, включая числовые, строковые типы и типы даты/времени. Кроме того, можно сравнивать массивы, составные типы и диапазоны, если их типы данных компонентов сопоставимы.

Обычно также можно сравнивать значения связанных типов данных; например целое число > bigint будет работать. Некоторые случаи такого рода реализуются непосредственно с помощью операторов сравнения «кросс-типа», но если такой оператор недоступен, синтаксический анализатор приведёт менее общий тип к более общему типу и применит оператор сравнения последнего.

Как показано выше, все операторы сравнения являются бинарными операторами, которые возвращают значения типа boolean . Таким образом, выражения типа 1 < 2 < 3 недействительны (поскольку нет оператора < для сравнения логического значения с 3 ). Используйте показанные ниже предикаты BETWEEN для выполнения тестов диапазона.

Существуют также некоторые предикаты сравнения, как показано в таблице 9.2. Они ведут себя так же, как операторы, но имеют специальный синтаксис, предусмотренный стандартом SQL.

Таблица 9.2. Предикаты сравнения

50 boole

Между, после сортировки двух значений конечных точек.

2 МЕЖДУ СИММЕТРИЧНЫМИ 3 И 1 т

Предикат

Описание

Пример(ы)

тип данных МЕЖДУ тип данных И тип данных логический

Между (включая конечные точки диапазона).

2 МЕЖДУ 1 И 3 t

2 МЕЖДУ 3 И 1 f

тип данных НЕ МЕЖДУ тип данных AND тип данных логический

Не между (отрицание МЕЖДУ ).

2 НЕ МЕЖДУ 1 И 3 f

тип данных BETWEEN SYMMETRIC тип данных AND тип данных 6an

тип данных НЕ МЕЖДУ СИММЕТРИЧНЫМИ тип данных AND тип данных 60

7 →

Не между, после сортировки двух значений конечных точек.

2 НЕ МЕЖДУ СИММЕТРИЧНЫМИ 3 И 1 f

тип данных ОТЛИЧЕН ОТ тип данных логическое значение

Не равно, ноль рассматривается как сопоставимое значение.

1 ОТЛИЧЕН ОТ NULL t (вместо NULL )

NULL ОТЛИЧЕН ОТ NULL f (вместо NULL )

тип данных НЕ ОТЛИЧАЕТСЯ ОТ тип данных логическое значение

Равно, обрабатывая нуль как сопоставимое значение.

1 НЕ ОТЛИЧАЕТСЯ ОТ NULL f (вместо NULL )

NULL НЕ ОТЛИЧАЕТСЯ ОТ NULL t (вместо NULL )

тип данных IS NULL логический

Проверить, является ли значение нулевым.

1.5 IS NULL f

тип данных НЕ NULL логический

Проверить, не равно ли значение null.

'null' НЕ NULL t

тип данных ISNULL логический

Проверить, является ли значение нулевым (нестандартный синтаксис).

тип данных NOTNULL логический

Проверить, не равно ли значение null (нестандартный синтаксис).

логическое значение ИСТИНА логическое значение

Проверить, дает ли логическое выражение значение true.

истина ИСТИНА t

NULL::boolean IS TRUE f (вместо NULL )

логическое значение НЕВЕРНО логическое значение

Проверяет, дает ли логическое выражение значение false или неизвестно.

верно НЕ ВЕРНО f

NULL::boolean IS NOT TRUE t (вместо NULL )

логическое значение ЛОЖЬ логическое значение

Проверить, дает ли логическое выражение значение false.

истина ЕСТЬ ЛОЖЬ f

NULL::boolean IS FALSE f (вместо NULL )

логическое значение НЕ ЛОЖЬ логическое значение

Проверяет, дает ли логическое выражение значение true или unknown.

истина НЕ ЛОЖЬ t

NULL::boolean IS NOT FALSE t (вместо NULL )

логическое значение НЕИЗВЕСТНО логическое значение

Проверить, дает ли логическое выражение значение unknown.

правда НЕИЗВЕСТНО f

NULL::boolean IS UNKNOWN t (вместо NULL )

логическое значение НЕИЗВЕСТНО логическое значение

Проверяет, дает ли логическое выражение значение true или false.

правда НЕИЗВЕСТНО t

NULL::boolean НЕИЗВЕСТНО f (вместо NULL )


Предикат BETWEEN упрощает проверку диапазона:

   a   МЕЖДУ   x   И   y  
 

эквивалентно

   a   >=   x   И   a   <=   y  
 

Обратите внимание, что МЕЖДУ рассматривает значения конечной точки как включенные в диапазон. МЕЖДУ СИММЕТРИЧНЫМИ аналогичны МЕЖДУ , за исключением того, что нет требования, чтобы аргумент слева от И был меньше или равен аргументу справа. Если это не так, эти два аргумента автоматически меняются местами, так что всегда подразумевается непустой диапазон.

Различные варианты BETWEEN реализованы в терминах обычных операторов сравнения и, следовательно, будут работать для любых типов данных, которые можно сравнивать.

Примечание

Использование И в синтаксисе МЕЖДУ создает неоднозначность при использовании И в качестве логического оператора. Чтобы решить эту проблему, в качестве второго аргумента предложения BETWEEN разрешен только ограниченный набор типов выражений. Если вам нужно написать более сложное подвыражение в МЕЖДУ , напишите круглые скобки вокруг подвыражения.

Обычные операторы сравнения дают значение null (означающее «неизвестно»), а не true или false, если любой из входных данных равен null. Например, 7 = NULL дает null, как и 7 <> NULL . Если такое поведение не подходит, используйте предикаты IS [ NOT ] DISTINCT FROM :

   a   ОТЛИЧАЕТСЯ ОТ   b  
   a   НЕ ОТЛИЧАЕТСЯ ОТ   b  
 

Для ненулевых входных данных оператор ОТЛИЧЕН ОТ аналогичен оператору <> . Однако, если оба ввода равны нулю, он возвращает false, а если только один ввод равен нулю, он возвращает true. Точно так же НЕ ОТЛИЧАЕТСЯ ОТ идентично = для ненулевых входных данных, но возвращает истину, когда оба входных параметра равны нулю, и ложь, когда только один вход имеет значение нуль. Таким образом, эти предикаты фактически действуют так, как если бы null был обычным значением данных, а не «неизвестным».

Чтобы проверить, является ли значение нулевым, используйте предикаты:

   выражение   IS NULL
   выражение   НЕ НУЛЕВОЕ
 

или эквивалентные, но нестандартные предикаты:

   выражение   ISNULL
   выражение   NOTNULL
 

Делать , а не писать выражение = NULL , потому что NULL не «равно» NULL . (Нулевое значение представляет собой неизвестное значение, и неизвестно, равны ли два неизвестных значения.)

Подсказка

Некоторые приложения могут ожидать, что выражение = NULL возвращает значение true, если выражение дает нулевое значение. Настоятельно рекомендуется модифицировать эти приложения, чтобы они соответствовали стандарту SQL. Однако, если это невозможно сделать, доступна переменная конфигурации transform_null_equals. Если он включен, PostgreSQL преобразует x = NULL предложений в x IS NULL .

Если выражение имеет значение строки, то IS NULL истинно, когда само выражение строки равно null или когда все поля строки пусты, а IS NOT NULL истинно, когда само выражение строки не равно NULL и все поля строки не равны NULL. Из-за этого поведения IS NULL и IS NOT NULL не всегда возвращают обратные результаты для строковых выражений; в частности, строковое выражение, содержащее как нулевые, так и ненулевые поля, вернет false для обоих тестов. В некоторых случаях может быть предпочтительнее писать ряд ОТЛИЧЕН ОТ NULL или ряд IS NOT DISTINCT FROM NULL , который просто проверяет, является ли общее значение строки нулевым, без каких-либо дополнительных проверок полей строки.

Логические значения также можно проверить с помощью предикатов

   логическое_выражение   ИСТИНА
   логическое_выражение   НЕВЕРНО
   логическое_выражение   ЛОЖЬ
   логическое_выражение   НЕ ЛОЖЬ
   логическое_выражение   НЕИЗВЕСТНО
   логическое_выражение   НЕИЗВЕСТНО
 

Они всегда будут возвращать истину или ложь, но никогда не будут возвращать нулевое значение, даже если операнд равен нулю. Нулевой ввод обрабатывается как логическое значение «неизвестно». Обратите внимание, что IS UNKNOWN и IS NOT UNKNOWN фактически аналогичны IS NULL и IS NOT NULL соответственно, за исключением того, что входное выражение должно быть логического типа.

Также доступны некоторые функции, связанные со сравнением, как показано в таблице 9..3.

Таблица 9.3. Функции сравнения

Функция

Описание

Пример(ы)

num_nonnulls ( VARIADIC "любой" ) → целое число

Возвращает количество ненулевых аргументов.

num_nonnulls(1, NULL, 2) 2

num_nulls ( VARIADIC "любой" ) → целое число

Возвращает количество нулевых аргументов.

num_nulls(1, NULL, 2) 1


Условия и циклы | Котлин-документация

Если выражение

В Kotlin , если является выражением: оно возвращает значение. Следовательно, нет тернарного оператора ( condition ? then : else ), потому что обычный if отлично работает в этой роли.

весело main() { значение а = 2 значение б = 3 // начало выборки вар макс = а если (а < b) max = b // С другим если (а > б) { макс = а } еще { макс = б } // Как выражение max = если (a > b) a иначе b // Вы также можете использовать `else if` в выражениях: значение макслимит = 1 val maxOrLimit = if (maxLimit > a) maxLimit else if (a > b) a else b //конец выборки println("максимум $max") println("maxOrLimit равно $maxOrLimit") }

Ветви выражения if могут быть блоками. В этом случае последнее выражение является значением блока:

val max = if (a > b) { print("Выберите") а } еще { print("Выберите б") б }

Если вы используете , если в качестве выражения, например, для возврата его значения или присвоения его переменной, ветвь else является обязательной.

Когда выражение

когда определяет условное выражение с несколькими ветвями. Он похож на 9Оператор 0025 switch в C-подобных языках. Его простая форма выглядит так.

когда (х) { 1 -> печать ("х == 1") 2 -> печать ("х == 2") иначе -> { print("x не 1 и не 2") } }

, когда последовательно сопоставляет свой аргумент со всеми ветвями, пока не будет выполнено какое-либо условие ветвления.

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

Ветвь else оценивается, если ни одно из других условий ветвления не выполняется.

Если , когда используется как выражение , ветвь else является обязательной, если только компилятор не может доказать, что все возможные случаи покрываются условиями ветвления, например, с enum элементами класса и запечатанными подвиды классов).

класс перечисления Бит { НОЛЬ, ОДИН } val numericValue = когда (getRandomBit()) { Бит.НОЛЬ -> 0 Бит.ОДИН -> 1 // 'else' не требуется, поскольку охватываются все случаи }

В , когда операторы , ветвь else обязательна при следующих условиях:

  • , когда имеет предмет Boolean 6, 0 2 en , 90um 025 запечатанный типа , или их обнуляемые аналоги.

  • ветви , когда не покрывает все возможные случаи для этой темы.

класс перечисления Цвет { КРАСНЫЙ, ЗЕЛЕНЫЙ, СИНИЙ } когда (получитьцвет()) { Color.RED -> println("красный") Color. GREEN -> println ("зеленый") Color.BLUE -> println ("синий") // 'else' не требуется, поскольку охватываются все случаи } когда (получитьцвет()) { Color.RED -> println("red") // нет ветвей для GREEN и BLUE else -> println("not red") // требуется 'else' }

Чтобы определить общее поведение для нескольких случаев, объедините их условия в одну строку с запятой:

когда (x) { 0, 1 -> печать ("х == 0 или х == 1") иначе -> напечатать("иначе") }

Вы можете использовать произвольные выражения (не только константы) в качестве условий ветвления

when (x) { s.toInt() -> print("s кодирует x") else -> print("s не кодирует x") }

Вы также можете проверить значение на наличие в или диапазон или набор:

когда (х) { in 1..10 -> print("x находится в диапазоне") in validNumbers -> print("x действителен") !in 10..20 -> print("x вне диапазона") иначе -> print("ничего из вышеперечисленного") }

Другим вариантом является проверка того, что значение равно или !равно определенного типа. Обратите внимание, что благодаря смарт-приведениям вы можете получить доступ к методам и свойствам типа без дополнительных проверок.

fun hasPrefix(x: Any) = when(x) { это строка -> x.startsWith («префикс») иначе -> ложь }

, если , также можно использовать в качестве замены цепи , если - , иначе , если . Если аргумент не указан, условия ветвления представляют собой просто логические выражения, и ветвь выполняется, когда ее условие истинно:

when { x.isOdd() -> print("x нечетно") y.isEven() -> print("y четно") else -> print("x+y нечетно") }

Вы можете захватить , когда субъекта в переменной, используя следующий синтаксис:

весело Request.getBody() = когда (val response = executeRequest()) { успех -> response.body это HttpError -> бросить HttpException (response.status) }

Область действия переменной, введенной в , когда тема ограничена телом этого , когда .

Циклы For

Цикл for перебирает все, что предоставляет итератор. Это эквивалентно циклу foreach в таких языках, как C#. Синтаксис для выглядит следующим образом:

для (предмет в коллекции) print(предмет)

Телом для может быть блок.

для (элемент: Int в целых числах) { // ... }

Как упоминалось ранее, вместо перебирает все, что предоставляет итератор. Это значит, что это:

Все эти три функции нужно пометить как оператор .

Для перебора диапазона чисел используйте выражение диапазона:

fun main() { // начало выборки для (я в 1..3) { println(я) } for (i in 6 downTo 0 step 2) { println(я) } //конец выборки }

Цикл for по диапазону или массив компилируется в цикл на основе индекса, который не создает объект итератора.

Если вы хотите просмотреть массив или список с индексом, вы можете сделать это следующим образом:

fun main() { val array = arrayOf («а», «б», «с») // начало выборки для (я в массиве.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *