Практическая шпаргалка по новым возможностям языка запросов 1С

Публикация № 1760453 21.11.22

Приемы и методы разработки - Механизмы платформы 1С

язык запросов новые возможности 8.3.20

В предлагаемой статье решил привести примеры применения новых возможностей языка запросов 1С, начиная с версии платформы 8.3.20.

 

Введение

Всем привет! Я решил немного отвлечься от изучения и описания функционала Библиотеки стандартных подсистем и решил затронуть возможности встроенного языка.

Думаю, что немного опоздал с материалом для этой статьи "Практическая шпаргалка по новым возможностям языка запросов 1С" - но все-таки решил разобрать на практических примерах новые возможности языка запросов 1С. Хотя этим возможностям уже примерно пару лет - они появились в версии 1С: Предприятия 8.3.20.

Кроме того, здесь на портале есть пара-тройка публикаций, затрагивающих данный вопрос. Но, тем не менее, материал данной статьи будет полезен всем разработчикам и программистам, а также все желающим, кто хочет разобраться в элементарных запросах платформы. В крайнем случае, статья подойдет даже в качестве некой простейшей "напоминалки".

В данном материале вы найдете практические примеры использования вот этих функций языка запросов 1С:

 
 Перечень функций языка запросов в данной статье

 

  • Строка(String) – преобразует в строку.

  • Sin, Cos, Tan, ASin, ACos, ATan - тригонометрические функции (в радианах)

  • Exp - вычисляет результат возведения основания натурального логарифма (числа e) в степень

  • Log - натуральный логарифм числа.

  • Log10 - десятичный логарифм числа.

  • Pow -  возведение в степень.

  • Sqrt – квадратный корень.

  • Окр(Round) - округляет число до нужной разрядности

  • Цел(Int) - вычисляет целую часть числа, полностью отсекая дробную часть.

  • ДлинаСтроки(StringLength) – длина строки.

  • СокрЛ(TrimL) – отбрасывает пробелы слева.

  • СокрП(TrimR) – отбрасывает пробелы справа.

  • СокрЛП(TrimAll) – отбрасывает пробелы слева и справа.

  • Лев(Left) – получает первые слева символы строки.

  • Прав(Right) – получает первые справа символы строки.

  • СтрНайти(StrFind) – находит первую позицию подстроки в строке (без учета регистра).

  • ВРег(Upper) – преобразует символы строки в верхний регистр.

  • НРег(Lower) – преобразует символы строки в нижний регистр.

  • СтрЗаменить(StrReplace) – заменяет все вхождения подстроки на другую подстроку (без учета регистра).

  • РазмерХранимыхДанных(StoredDataSize) – размер данных в байтах, которые занимают данные параметра.

 

Я буду использовать только типовую консоль запросов, Платформу 8.3.20.1674 и демо-конфигурацию "Библиотека стандартных подсистем 3.1" (3.1.7.137), режим совместимости которой я поднял до 8.3.20 (без использования). Надеюсь, что данные примеры будут вам полезны в дальнейшем.

Так же отмечу, что для реализации данных примеров вы можете использовать любую типовую или самописную конфигурацию, если в поднимите в ней режим совместимости до 8.3.20 или выше. Никакого отношения к стандартам разработки этот материал не имеет отношения.

Переходим к практическим примерам использования функций на примере простых запросов. Условно, я разбил эти функции на 11 групп (по одной или несколько функций близких по смыслу).

 

Практические примеры использования:

1. Функция Строка(String) :

 
// с ссылками работать не умеет.
// только с примитивными типами
// ошибки не будет только если применить "Выразить"

ВЫБРАТЬ
	Строка(ВЫРАЗИТЬ(_ДемоНоменклатура.Ссылка.Наименование КАК СТРОКА(100))),
	Строка(_ДемоНоменклатура.Цена) КАК Цена,   // преобразовал число в строку
	Строка(ИСТИНА) КАК АА, // преобразовал булево в строку
	Строка(ДАТАВРЕМЯ(1,1,1)) Как ТекДата // пробразовал дату
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

2. Функции Sin, Cos, Tan, ASin, ACos, ATan :

Тригонометрические функции для типа "число".

 

// тригонометрические функции работают исключительно с примитивным типом "число"

ВЫБРАТЬ
	SIN(1) КАК Син1,
	COS(1) КАК Кос2,
	TAN(1) КАК Тан3,
	ASIN(1) КАК АСин1,
	ACOS(0) КАК АКос2,
	ATAN(1) КАК АТан3,
	_ДемоНоменклатура.Ссылка КАК Ссылка
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

3. Функции Exp, Log, Log10, Pow и Sqrt :

Математические функции.

 

// данные математические функции в запросе работают только с типом "число"

 ВЫБРАТЬ
	Exp(1) КАК Exp1,   //2.7
	Log(2.718) КАК Log1,   //0.9999
	Log10(10) КАК Log101, // 1
	Pow(3,2) КАК Pow1, // 9
	Sqrt(9) КАК Sqrt1, // 3
	_ДемоНоменклатура.Ссылка КАК Ссылка
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

4. Функции Окр(Round) и Цел(Int) :

Округляет по правилу и возвращает целое значение числа.

 

// округление или целое число

ВЫБРАТЬ
	ОКР(13240.345235, -2) КАК Округление,  // 13200 
	ЦЕЛ(13240.345) КАК Цел1,  // 13240

	_ДемоНоменклатура.Ссылка КАК Ссылка
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

5. Функция ДлинаСтроки(StringLength) :

Возвращает длину строки.

 
// здесь определим длину стоки - длина наименования

ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	ДЛИНАСТРОКИ(_ДемоНоменклатура.Ссылка.Наименование) КАК ДлинаНаименования,
	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

6. Функции СокрЛ(TrimL), СокрП(TrimR) и СокрЛП(TrimAll) :

Убирает пробелы слева, справа или с обеих сторон.

 
// запрос убирает пробелы слева, справа, с обеих сторон строки

ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	СокрЛ(" "+_ДемоНоменклатура.Ссылка.Наименование+" ") КАК УбратьПробелыСлева,
	СокрП(" "+_ДемоНоменклатура.Ссылка.Наименование+" ") КАК УбратьПробелыСправа,
	СокрЛП(" "+_ДемоНоменклатура.Ссылка.Наименование+" ") КАК УбратьПробелы,

	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

7. Функции Прав(Right) и Лев(Left) :

Возвращает "обрезанную" подстроку слева или справа на количество символов.

 
// обрезаем строку и выводим результат

ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	Лев(_ДемоНоменклатура.Ссылка.Наименование,5) КАК Слева5,
	Прав(_ДемоНоменклатура.Ссылка.Наименование,10) КАК Справа10,
	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

8. Функция СтрНайти(StrFind) :

Возвращает номер позиции символа вхождения.

 

ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	СтрНайти(_ДемоНоменклатура.Ссылка.Наименование, "коллекция") КАК Нашли1,  // номер символа вхождения
	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

9. Функции ВРег(Upper) и НРег(Lower) :

Переводит в верхний и нижний регистры.

 
// переводим в заглавные или строчные буквы

ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	Врег(_ДемоНоменклатура.Ссылка.Наименование) КАК Заглавными,
	Нрег(_ДемоНоменклатура.Ссылка.Наименование) КАК Прописными,
	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

10. Функция СтрЗаменить(StrReplace) :

Ищет подстроку вхождения и меняет ее на другую подстроку.

 
ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	СтрЗаменить(_ДемоНоменклатура.Ссылка.Наименование, "журнал","газета") КАК Нашли1,  // меняем подстроку "журнал" на "газета"
	_ДемоНоменклатура.Цена КАК Цена1
	
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

11. Функция РазмерХранимыхДанных(StoredDataSize) :

Данная функция возвращает размер хранимых данных в байтах.

 
ВЫБРАТЬ
	_ДемоНоменклатура.Ссылка КАК Ссылка,
	РазмерХранимыхДанных(_ДемоНоменклатураПрисоединенныеФайлы.ФайлХранилище) КАК ФайлХранилище, // применяю к реквизиту с типом ХранилищеЗначений, хотя можно применить к любому реквизиту (размер в байтах)
	_ДемоНоменклатураПрисоединенныеФайлы.Размер КАК Размер
ИЗ
	Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник._ДемоНоменклатураПрисоединенныеФайлы КАК _ДемоНоменклатураПрисоединенныеФайлы
		ПО _ДемоНоменклатура.ФайлКартинки = _ДемоНоменклатураПрисоединенныеФайлы.Ссылка
ГДЕ
	_ДемоНоменклатура.Цена > 0

 

 

Так, ну вроде, все проверено - все работает. Примеры приведены и все они рабочие. Как видно все эти функции "перетянуты" из языка платформы в язык запросов 1С.

При строгой типизации - ошибок в применении не будет.

Как говориться - смотри и применяй в своих "самописках" ). Перейдем к заключению и сделаем выводам по материалам, представленным в этой статье.

 

Выводы статьи

В материале представлены практические примеры применения новых функций языка запросов 1с. Эти функции характерны для платформы 1с предприятия версии от 8.3.20. Предполагаю уже, что данная статья не вносит какие-либо "новшества" в разработку, а представлена только в качестве базовой шпаргалки, помогающей вам использовать новые возможности в разработке и программировании (чтобы все не держать в голове).

Отмечу, что отличный и правильный запрос - это уже решение вашей задачи. По опыту - это самое оптимальное решение.

Так же, я хотел затронуть момент применения данных функций в "типовых" конфигурациях. Например, возьмем последний релиз 1С Бухгалтерии 3 (на момент написания статьи - ноябрь 2022 - это 3.0.123.26). Режим совместимости этой версии конфигурации до сих пор 8.3.17., т.е. здесь, спустя пару лет, и в помине нет применения данных функций. Когда они появятся - вопрос открытый?

Еще один момент, в комментариях можете написать, кто что думает, по этому поводу - типовая Бухгалтерия 3.0.123.26 в режиме 8.3.17, а требуют самую новую платформу от последних чисел.

 

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

Наиболее интересные из них и полезные для вас - это:

Базовые принципы работы с регламентными заданиями подсистем БСП

Основные возможности работы с файлами в типовой конфигурации на БСП

Система контроля ведения учета [БСП]

Стандартные подсистемы БСП - параметры работы клиента и возможности диалогов

Шаблоны сообщений пользователю - подсистема БСП

Оценка производительности с помощью БСП

 

В заключение статьи напишу:

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

Любая поддержка по развитию канала и профиля приветствуется и повлечет за собой более качественные, сложные и интересные материалы для вашей профессиональной деятельности на портале и в других форматах. Также я готов к любому взаимовыгодному сотрудничеству в разных форматах профессионального взаимодействия.

Спасибо за прочтение данной статьи и оценку материала. Всем привет и пока.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. maksa2005 366 21.11.22 13:18 Сейчас в теме
Sin, Cos, Tan, ASin, ACos, ATan - тригонометрические функции (в радианах)

Exp - вычисляет результат возведения основания натурального логарифма (числа e) в степень

Log - натуральный логарифм числа.

Log10 - десятичный логарифм числа.

Pow - возведение в степень.

Sqrt – квадратный корень.

за всю свою жизнь, ни разу не применял...
Tarlich; VladC#; progersan; Eugene_Elhaz; zabaluev; user621724_Dimav1979; Tolpinski; alap; coollerinc; Hans; vowg; mrChOP93; rpgshnik; t278; AlbinaAAA; quazare; sapervodichka; МихаилМ; svezr; +19 1 Ответить
2. quazare 2602 21.11.22 13:22 Сейчас в теме
(1) вероятно, это для школьников, когда платформу на факультативе изучают
lostcay; t278; +2 1 Ответить
3. maksa2005 366 21.11.22 13:25 Сейчас в теме
(2)Exp использовал только для программирование в esp8266 на С++, там она была нужна т.к. вычислял соотношение звука и цвета на rgb ленту)
12. starik-2005 2771 21.11.22 18:38 Сейчас в теме
(3) Я как-то температуру считал с терморезистора на ардуинке, но, как приличный школьник, я просто скопировал формулу из методички. Думать? За нас уже подумали старшие товарищи!
14. maksa2005 366 21.11.22 19:03 Сейчас в теме
(12) не всегда. У меня на esp много поделок работаю: подсветка плинтуса с датчик движения. Can шина на с gsm модулем для приложения...
AntonProgma; +1 Ответить
5. cybjavax 39 21.11.22 13:54 Сейчас в теме
(1) тригонометрию использовал однажды в калькуляторе стропильной системы
6. lmnlmn 67 21.11.22 14:18 Сейчас в теме
(1) Log10 и Pow вполне себе встречаются, но нечасто.
25. Shmell 447 22.11.22 19:15 Сейчас в теме
(6) В методике расчета полной стоимости кредита от Центра Банка есть Pow )
8. user1466751 21.11.22 15:13 Сейчас в теме
(1)
Расстояние между геоточками, например.
13. starik-2005 2771 21.11.22 18:40 Сейчас в теме
(8) между геоточками ненулевая кривизна плоскости, так что банальной теоремы Пифагора уже маловато будет ))))
mrChOP93; +1 Ответить
21. user1466751 22.11.22 09:25 Сейчас в теме
(13)
(13)
Именно по-этому нужны тригонометрические функции.
17. rpgshnik 3179 22.11.22 06:53 Сейчас в теме
(1) Но при этом гуид они в 20-й не добавили, а только в 22-й :)) он видимо реже применяется чем вот это всё... Я тоже ни разу не применял :))
23. gzharkoj 456 22.11.22 09:52 Сейчас в теме
(17) Очень нужна вещь, особенно когда строятся отчеты между разными базами, которые синхронизируются между собой. Для сверок, или сводная информация.
rpgshnik; +1 Ответить
27. kembrik 3 23.11.22 13:27 Сейчас в теме
(1) Я до последнего времени тоже не подозревал что может понадобится, а сейчас пишу баллистический калькулятор на 1С )
4. Samarin 97 21.11.22 13:39 Сейчас в теме
1. "Когда они появятся - вопрос открытый?" Когда типовые конфигурации начнут переход на БСП версии 3.1.8, тогда режим совместимости и минимальные требования поднимутся до версии 8.3.21.

2. "типовая Бухгалтерия 3.0.123.26 в режиме 8.3.17, а требуют самую новую платформу от последних чисел."
Сначала минимальные версии платформ были подняты спешно для закрытия критических уязвимостей платформы.
Потом еще пару раз устраняли недочеты.
https://1c.ru/news/info.jsp?id=29958
7. kser87 2274 21.11.22 14:45 Сейчас в теме
Вот бы иметь возможность создавать свои функции.
VladC#; maksa2005; AntonProgma; RustIG; rpgshnik; user1304317; rhtr; svbel85; quazare; +9 Ответить
22. AntonProgma 39 22.11.22 09:36 Сейчас в теме
9. pstrig 21.11.22 16:43 Сейчас в теме
Интересно, а функции "Строка", "ДлинаСтроки", "СокрЛ", "СокрП", "СокрЛП", "СтрНайти", "СтрЗаменить" со строками неограниченной длины как отрабатывают?
Angealtor; mkolpakov; rpgshnik; Abduvali; +4 Ответить
10. sapervodichka 6071 21.11.22 17:28 Сейчас в теме
Не нашел примера ожидаемой всеми функции в 8.3.22 в запросе УникальныйИдентификатор(....)
VladC#; mkolpakov; rpgshnik; sys1c; bilex; quazare; +6 Ответить
11. quazare 2602 21.11.22 17:34 Сейчас в теме
(10) кстати, да. я работал на 20-ой платформе. УИД можно достать из 22-ой!
15. sapervodichka 6071 21.11.22 19:51 Сейчас в теме
(11) а почему ты не на 22 сделал обзор?
TimofeySin; rpgshnik; +2 Ответить
16. quazare 2602 21.11.22 20:04 Сейчас в теме
(15) если честно, я просто забыл про этот гуид, поскольку запросом я его еще не получал, тк режим совместимости типовых даже не равен 8.3.20.

но вот тут товарищ написал, что есть тестовая БСП 3.1.8 с режимом 8.3.21 - посмотрим, что там новенького.. но даже для нее гуид получить не актуально еще....
18. DrAku1a 1568 22.11.22 07:03 Сейчас в теме
ИЗ
Справочник._ДемоНоменклатура КАК _ДемоНоменклатура
ГДЕ
_ДемоНоменклатура.Цена > 0
По идее, это можно убрать. Будет 1 строка в ответе.
19. quazare 2602 22.11.22 07:07 Сейчас в теме
(18) в БСП в справочнике номенклатуры есть "Цена", причем, она не заполнена у всех. Это я так - отделил зерна от плевел...
20. Brawler 438 22.11.22 08:43 Сейчас в теме
Как это все использовать, когда режим совместимости типовых конфигураций на позорно низком уровне...
28. r.zdorkin 24.11.22 13:39 Сейчас в теме
(20)
Режим совместимости не мешает использовать функционал платформы в случае даже если платформа выше режима совместимости.
Это касается новых операторов, метаданных,запросов
29. Brawler 438 24.11.22 14:19 Сейчас в теме
(28) Тота я погляжу, что меня платформа посылает в желаниях использовать новые плюшки в расширениях, а оно нужно было просто вас послушать.

Далеко не все возможности можно юзать не повысив режим совместимости!!!
24. mkolpakov 22.11.22 18:37 Сейчас в теме
"типовая Бухгалтерия 3.0.123.26 в режиме 8.3.17, а требуют самую новую платформу от последних чисел."
Это скорее всего для фреша. Там до сих пор 17.
Только недавно тонкий клиент для 22 добавили. Но полную версию такой платформы еще не скачать.
26. zeltyr 279 23.11.22 09:37 Сейчас в теме
Полезная статья, спасибо!

Для более полного погружения в новые функции, сошлюсь на себя же: https://infostart.ru/1c/articles/1733279/ - тут рассмотрел некоторые ограничение этих нововведений, кому интересно - тоже ознакомьтесь.
Поручик; quazare; +2 Ответить
30. ovasiliev 6 27.11.22 20:26 Сейчас в теме
А вы точно уверены, что для возможности применения этих функций требуется нужная совместимость базы данных? Проверяли это?
А то как-то не очевидно, что требуется совместимость БД...
31. mondordom 29.11.22 10:40 Сейчас в теме
(30) Не нужен там никакой режим совместимости. Все работает "из коробки"
32. ovasiliev 6 29.11.22 12:11 Сейчас в теме
(31) Да я вот тоже думаю, причём здесь режим совместимости базы данных, если это на уровне "платформа-SQL". Пофиг что там за база данных.
Оставьте свое сообщение

См. также

Программные перечисления, ч.2: приемы кэширования при разработке Промо

Универсальные функции Механизмы платформы 1С Запросы Платформа 1С v8.3 Бесплатно (free)

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

30.10.2017    30066    unichkin    18    

Схема запроса: практические примеры использования

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

Учимся использовать схему запроса.

08.11.2022    3455    RocKeR_13    15    

Новые возможности языка запросов в платформе 8.3.20

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

С платформы 8.3.20 анонсировали ряд изменений в языке запросов, с которыми интересно было повозиться на практике, что и было проделано. Результатом этих изысканий решил поделиться с вами.

27.09.2022    6925    zeltyr    17    

Аналог PIVOT в запросе 1С (как выполнить транспонирование таблицы в запросе 1С) Промо

Запросы Платформа 1С v8.3 Бесплатно (free)

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

12.12.2020    7692    Eugen-S    25    

1С и Unicode

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Разбираемся, как 1С работает с текстом и отдельными символами в контексте Unicode.

05.09.2022    2304    Irwin    30    

Почему нельзя использовать ТекущаяДата()

БСП (Библиотека стандартных подсистем) Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

ИТС и ИС не ответили исчерпывающе, поэтому написал данную заметку.

23.08.2022    7497    Патриот    56    

Ускорим проведение в 1С:Управление холдингом

HighLoad оптимизация Запросы Платформа 1С v8.3 1С:Управление холдингом Бесплатно (free)

В 1С:Управление холдингом есть "нехороший" запрос, который съедает значительную часть времени проведения документов. Если его подправить, то проведение заметно ускорится.

10.08.2022    4439    sapervodichka    59    

Использование классов .Net в 1С для новичков Промо

Механизмы платформы 1С Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    90150    Serginio    116    

Шпаргалка по функциям АСИНХ

Механизмы платформы 1С Платформа 1С v8.3 Россия Бесплатно (free)

При знакомстве с новой механикой работы с асинхронностью (обещание, ждать и асинх) делал пометки, которыми и хочу поделиться. Ничего сверхъестественного в них нет, просто небольшие примеры и некоторые всплывшие нюансы использования.

29.07.2022    7484    zeltyr    16    

Экспертный кейс. История расследования одного небыстрого закрытия месяца в 1C:ERP. Пример неочевидных путей расследования в виде детективной истории

HighLoad оптимизация Механизмы платформы 1С Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

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

11.07.2022    4708    it-expertise    27    

Использование программных перечислений, ч.1: строковые константы Промо

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    42645    unichkin    74    

Динамическое обновление - это зло?

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Копнем глубже в тему "Что же такое динамическое обновление" и почему оно может привести к проблемам. И может ли?

09.05.2022    13856    Infostart    77    

Отборы динамического списка

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Динамический список предоставляет несколько объектов "Отбор". В статье разбирается, какой для чего нужен и как их использовать на форме. Рассматриваются только возможности платформы (без БСП).

28.03.2022    13708    Gladkov_Anton    5    

Экспертный кейс. Расследование фатального замедления времени расчета себестоимости в 1С:ERP 2

HighLoad оптимизация Механизмы типовых конфигураций Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

При выполнении нагрузочного тестирования информационной системы на базе 1С:ERP для одного из клиентов с целью оценки возможности миграции системы на PostgreSQL и Astra Linux мы столкнулись с неприемлемым увеличением времени выполнения расчета себестоимости. Строго говоря, сценарий тестирования закрытия месяца не был выполнен вообще – он не укладывался в таймаут выполнения теста, 24 часа. По прошествии 18 часов всё ещё шло выполнение операции «Распределение затрат и расчет себестоимости». Более 16 часов выполнялся подэтап “Расчет партий и себестоимости. Этап. Расчет себестоимости: РассчитатьСтоимость”. Всё это время выполнялся запрос, который в текущей инфраструктуре клиента (СУБД MS SQL Server) выполняется чуть более 3 минут на аналогичных данных.

25.03.2022    4810    it-expertise    92    

Вспомогательные инструкции в коде 1С Промо

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    39258    tormozit    107    

Фишки платформы 1С 8.3 для начинающего разработчика

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

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

11.03.2022    9385    Dimbayyyy    98    

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

Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

12.11.2021    10893    acces969    95    

Как спроектировать структуру регистра сведений

Механизмы платформы 1С Платформа 1С v8.3 Запросы Бесплатно (free)

«Что может быть проще?» — это первое, что приходит в голову. Но что, если это не так? В этой статье мы попробуем затронуть некоторые вопросы, которые могут возникнуть при проектировании больших регистров.

08.11.2021    7847    Neti    60    

Как прикрутить ГУИД к регистру сведений Промо

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

16.04.2019    24632    m-rv    18    

Готовые механизмы 1С: ЗУП, представления

Механизмы типовых конфигураций Запросы Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Бухгалтерский учет Бесплатно (free)

Здесь будет храниться архив запросов, которые могут помочь разработчику правильно строить отчеты и получать данные в 1С: ЗУП. Статью буду периодически дополнять.

03.11.2021    5472    Margo462    19    

Работа с SQL. Шаблон общего модуля

Запросы Платформа 1С v8.3 Бесплатно (free)

Шаблон общего модуля для работы с MS/PG SQL из 1С.

21.10.2021    3692    mrChOP93    3    

Обработчик ожидания. Нюансы

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

ПодключитьОбработчикОжидания: некоторые подробности и особенности работы

24.08.2021    19516    Yashazz    25    

Как сделать запрос на изменение данных Промо

Запросы Платформа 1С v8.3 Запросы Конфигурации 1cv8 Бесплатно (free)

В статье приведены особенности внутренней архитектуры и примеры работы с расширением языка запросов 1С.

01.06.2018    41721    m-rv    23    

Новичок новичку: как добавить программно кнопку на форму путем расширения

Механизмы платформы 1С Платформа 1С v8.3 Россия Бесплатно (free)

Рассказываю очень простым языком, как добавить программно кнопку в типовую конфигурацию. Сам новичок в этом деле и рассказываю на "новичковом" языке.

13.05.2021    30483    user1312100    25    

Программное создание расширения

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Создание нового расширения "на лету", только штатными средствами 1С.

06.04.2021    6217    Yashazz    15    

Метод формирования движений в типовых регистрах нетиповыми регистраторами Промо

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Вариант решения задач с проведением по типовым регистрам нетиповыми регистраторами. Зачем - чтобы при сравнении конфигурации не обращать внимание на свойства регистров и исключить вероятность допущения горькой оплошности при обновлении информационных баз, заменив типы регистраторов основной конфигурации типами конфигурации поставщика. Для программных продуктов, имеющих в своем составе метаданных документ "Корректировка регистров"("Корректировка записей регистров").

05.12.2017    31810    itriot11    34    

Советы из Желтой тетради 📒 #1

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

В этой публикации я собрал в одном месте часть советов и лайфхаков, которые открыл для себя в последнее время. Регулярно я публикую их в своём телеграм-блоге "Жёлтая тетрадь 📒 Блог программиста 1С", здесь же - дайджест этих публикаций.

15.03.2021    6041    builin    120    

Последний раз про срез последних (на каждую дату в запросе)

Запросы Платформа 1С v8.3 Запросы Бесплатно (free)

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

15.02.2021    25906    randomus    47    

Флаг "Использовать ПОЧТИ всегда", или Нюанс динамических списков

Механизмы платформы 1С Платформа 1С v8.3 Платформа 1C v8.2 Конфигурации 1cv8 Бесплатно (free)

Небольшая пятничная история по программной работе со строкой динамического списка.

11.02.2021    8111    SeiOkami    36    

Ускоряем 1С: модули с повторным использованием возвращаемых значений Промо

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

04.09.2017    63031    m-rv    64    

О формах 1С замолвите слово... Необычное использование знакомого всем объекта

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

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

13.01.2021    9839    CyberCerber    46    

Наследование свойств элементов, или Как пользователь может сломать вашу форму

Механизмы платформы 1С Платформа 1С v8.3 Платформа 1C v8.2 Конфигурации 1cv8 Бесплатно (free)

В 1С можно установить свойства ТолькоПросмотр, Доступность и Видимость не только на элементы формы, но и на группы элементов. Но стоит ли так делать? Оказывается, пользователь может обойти запреты, которые установлены на папку. Об этом подробнее в видео.

12.01.2021    5817    SeiOkami    27    

Итоги по объединенной совокупности группировок в запросе

Запросы Платформа 1С v8.3 Бесплатно (free)

Способ формирования итогов в запросе по совокупности группировок, объединенных в единый набор, при помощи функции АВТОНОМЕРЗАПИСИ.

18.11.2020    9750    antonivan    21    

Выразить число как строку и дату как строку в запросе Промо

Запросы Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Предлагается новый и более компактный метод преобразования даты и числа в строку в запросе

22.02.2015    144610    ildarovich    79    

Установка отбора для поля ввода управляемой формы через ПараметрыВыбора (без переопределения событий "НачалоВыбора", "Автоподбор")

Механизмы платформы 1С Платформа 1С v8.3 Управляемые формы Бесплатно (free)

Зачастую возникает необходимость ограничить вывод элементов какого-нибудь справочника или перечисления при редактировании поля ввода (отфильтровать доступные для выбора элементы) эта публикация показывает простой и эффективный способ реализации этого.

15.11.2020    13628    Eugen-S    11    

Учимся создавать http сервис (часть четвертая). Изучение метода POST http запроса (передача текстовых данных)

Запросы Платформа 1С v8.3 Бесплатно (free)

Пошаговое руководство по созданию http сервисов (часть четвертая). Изучение метода POST http запроса.

11.10.2020    28306    hpi    29    

Лайфхаки для разработчиков 1С. Часть 1

Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Россия Бесплатно (free)

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

30.09.2020    8782    Neti    47    

Регулярные выражения без внешних компонент? Легко! Промо

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Сложный способ организовать проверку строки с помощью регулярного выражения в 1С. При этом ни одна внешняя компонента не пострадала. Ну и от платформы (Linux, MustDie) - не зависит.

04.03.2016    78073    starik-2005    111    

Улучшенный конструктор запроса тонкого клиента (Infostart Toolkit)

Запросы Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

07.09.2020    7988    Evg-Lylyk    21    

Новое отображение ошибок в 1С

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Рассмотрим развитие механизма отображения ошибок в 1С (начиная с 8.3.17)

10.08.2020    33151    SeiOkami    45    

Вы запускаете приложения, но делаете это без уважения

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

21.07.2020    13924    Infostart    32    

Методика переопределения и вызова обработчиков событий обычной формы Промо

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

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

24.06.2007    91516    tormozit    31    

Использование Стека вызовов в качестве условия оператора Если [...] Тогда

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Делюсь интересным приёмом, позволяющим использовать данные стека исполнения кода 1С в качестве условия, накладываемого на выполнение кода.

12.07.2020    11858    sapervodichka    63    

Серверные вызовы, которые нельзя вызывать

Механизмы платформы 1С Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Бесплатно (free)

Не баян, а классика. Рассмотрим особенность платформы настолько же древнюю, как сами УФ.

12.05.2020    12682    SeiOkami    34    

Проводим по БУ "на лету"

Инструментарий разработчика Запросы Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Бухгалтерский учет Налоговый учет Бесплатно (free)

В базе ERP и КА есть форма тестировщика, которая автоматически получает из конфигурации полные тексты запросов формирования бухгалтерских проводок выбранного документа, даёт возможность модифицировать запрос и сразу проверить результат.

01.05.2020    8705    sapervodichka    1    

Отладка подключаемых обработок Промо

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

04.01.2017    87263    unichkin    119    

Нечёткий поиск "ПОДОБНО". Нюансы

Запросы Платформа 1С v8.3 Бесплатно (free)

Заметки о "ПОДОБНО" в языке запросов

23.02.2020    50593    Yashazz    31    

Совместимость работы со строками. Жизнь до 8.3.6 и после

Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Немного о совместимости со старыми версиям платформы 1С в работе со строками.

21.02.2020    6883    Infostart    24    

Эволюция расширения конфигурации

Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

С каждым днем всё больше возможностей появляется в расширении конфигурации, но не все до сих пор работают даже на платформе 8.3.6! Давайте окунемся в историю появления и эволюции расширения конфигурации, чтобы знать и понимать, когда можно применить тот или иной функционал!

06.02.2020    20624    Xershi    48