Программное получение системной информации о компьютере и конфигурации в 1С

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

Пример выводимых данных:

Внимание! Объект СистемнаяИнформация доступен как на клиенте, так и на сервере. Будет получена информация о том компьютере, на чьей стороне выполняется код.

Читать далее

Особенность работы конструкции дополнения дат в запросе

В случае если поле, по которому рассчитываем итоги, является полем типа Дата, то возможно дополнение результатов датами в заданном периоде. Делается это при помощи ключевого слова ПЕРИОДАМИ, после которого в скобках указывается вид периода (одно из СЕКУНДА, МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ), начальная и конечные даты интересуемого периода. В случае если начальные и конечные даты не указаны, будут использованы первая и последняя даты, участвующие в результате. Допустим, мы написали запрос с дополнением дат:

  Если выполнить запрос в консоли запросов, то никакого дополнения дат мы не увидим, хотя запрос написан верно. Особенность дополнения дат в том, что эта конструкция работает только при обходе результата запроса, а консоль запросов применяет метод Выгрузить() к результату запроса и никакого дополнения не происходит. Пример №1 — выгрузка результата запроса в дерево значений (ДанныеФормыДерево)

  В данном примере дополнение дат не произойдет, т.к. происходит выгрузка результата запроса. Функция ПолучитьТекстЗапроса() возвращает выше приведенный текст запроса. Пример №2 — обход результата запроса с последующей загрузкой в дерево значений (ДанныеФормыДерево)

  В данном примере производиться обход результата запроса, причем указывается как должна получаться выборка, с помощью передачи параметров в метод Выбрать(). В этом примере будет производиться дополнение дат.

Читать далее

СКД. Программное чтение/запись СКД в/из XML

Объект типа СхемаКомпоновкиДанных не имеет в своем арсенале метода записи/чтения себя в/из XML. Но все исправимо благодаря возможности сериализации схемы компоновки данных в объект XDTO.

Сериализация объектов 1С выполняется с помощью объекта глобального контекста СериализацияXDTO — это сериализатор XDTO, соответствующий глобальной фабрики XDTO.

Читать далее

1С 8.3 : Функции языка выражений системы компоновки данных (СКД) Выразить, ЕстьNull…

Выразить (Cast) — данная функция предназначена для выделения типа из выражения, которое может содержать составной тип. В случае, если выражение будет содержать тип, отличный от требуемого типа, будет возвращено значение NULL. Синтаксис:

Параметры: Выражение — преобразуемое выражение;  УказаниеТипа (Строка). Содержит  строку типа. Например, «Число», «Строка» и т.п. Кроме примитивных типов данная строка может содержать имя таблицы. В этом случае будет осуществлена попытка выразить к ссылке на указанную таблицу. Пример:

ЕстьNull (IsNull) — данная функция возвращает значение второго параметра в случае, если значение первого параметра NULL. В противном случае будет возвращено значение первого параметра. Синтаксис:

Параметры:

Читать далее

1С 8.3 : Функции языка выражений системы компоновки данных (СКД)

Уровень (Level) — функция предназначена для получения текущего уровня записи. Синтаксис:Уровень() Пример:Уровень() НомерПоПорядку (SequenceNumber) — получить следующий порядковый номер. Синтаксис:НомерПоПорядку() Пример:НомерПоПорядку() НомерПоПорядкуВГруппировке (SequenceNumberInGrouping) — возвращает следующий порядковый номер в текущей группировке. Пример:НомерПоПорядкуВГруппировке() Формат (Format) — получить отформатированную строку переданного значения. Синтаксис:Формат(Значение, ФорматнаяСтрока) Параметры:

Читать далее

1С 8.3 : Функции языка выражений системы компоновки данных (СКД) ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений

ВычислитьВыражениеСГруппировкойМассив (EvalExpressionWithGroupArray) — функция возвращает массив, каждый элемент которого содержит результат вычисления выражения для группировки по указанному полю. Синтаксис:

Параметры: Выражение (Строка) — выражение, которое нужно вычислить. Например, «Сумма(СуммаОборот)»; ВыраженияПолейГруппировки — выражения полей группировки, перечисленные через запятую. Например, «Контрагент, Партия»; ОтборЗаписей — выражение, применяемое к детальным записям. Например, «ПометкаУдаления = Ложь». Если в данном параметре используется агрегатная функция, то при выполнении компоновки данных возникнет ошибка; ОтборГруппировок — отбор, применяемый к групповым записям. Например: «Сумма(СуммаОборот) > &Параметр1». Пример:

Читать далее

1С 8.3 : Функции языка выражений системы компоновки данных (СКД) Вычислить, ВычислитьВыражение

Вычислить (Eval) — предназначена для вычисления выражения в контексте некоторой группировки. Функция используется для совместимости с предыдущими версиями платформы. Вместо неё рекомендуется использовать функцию ВычислитьВыражение. Синтаксис:

  Параметры:  Выражение (Строка). Cодержит вычисляемое выражение;  Группировка (Строка). Содержит имя группировки, в контексте которой необходимо вычислить выражение. В случае если в качестве имени группировки используется пустая строка, вычисление будет выполнено в контексте текущей группировки. В случае если в качестве имени группировки будет использована строка ОбщийИтог, вычисление будет выполнено в контексте общего итога. В остальных случаях вычисление будет выполняться в контексте родительской группировки с таким именем.Например:

В данном примере в результате получится отношение суммы по полю «Продажи.СуммаОборот» записи группировки к сумме того же поля во всей компоновке. ТипРасчета (Строка). В случае если данный параметр имеет значение «ОбщийИтог», выражение будет вычисляться для всех записей группировки. В случае если значение параметра «Группировка», значения будут вычисляться для текущей групповой записи группировки.

Читать далее

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

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

Читать далее

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

Отсутствием подходящих индексов в СУБД, т.к. разделитель идёт первым полем для всех индексов таблиц разделённых данных, и для таких пользователей чтение разделённых данных всегда будет происходить сканированием таблиц.

Читать далее

Можно ли выполнять подсчет и анализ клиент-серверных вызовов с помощью замера производительности в конфигураторе?

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

Читать далее