Difference between revisions of "GlobalStringsAdd"
1>Admin |
m (1 revision imported) |
(No difference)
| |
Latest revision as of 11:59, 1 April 2026
| GlobalStringsAdd (Глобальные строки-массивы) | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
Функция добавляет произвольное количество строк из списка или одной строки с разделителями в массив, заданный по его наименованию или идентификатору. Режим функции задает условие добавления, а также формат ответа (последний может быть как числовым, так и в виде списка).
Синтаксис
GlobalStringsAdd(<Имя или идентификатор массива (STRING,INT)>,<Значения (STRING,LIST)>,<Режим (INT)>=0):<Статус или результат (INT,LIST)>
Аргументы
<Имя или идентификатор массива (STRING,INT)>- Параметр задает имя массива (строка) или идентификатор массива (число) для добавления значений.<Значения (STRING,LIST)>- Значения для добавления могут быть в списке или в строке. Каждое значение может содержать префикс, отделенный от основной строки разделителем префикса (см. GlobalStringsHeapsAdd). При добавлении из строки, каждое значение (с префиксом) должно быть разделено разделителем значений (см. GlobalStringsHeapsAdd).<Режим (INT)>- (необязательный аргумент) Аргумент задает режим добавления и является битовой маской. На данный момент доступны следующие биты:- бит 0 -- если установлен, функция возвращает список уже присутствующих (из добавляемых) в массиве значений, иначе статус будет числом (см. ниже).
- бит 1 -- если установлен, функция добавляет те значения, которых нет, игнорируя те, что уже присутствуют в массиве. Если сброшен (по умолчанию), функция не изменяет массив, если по крайней мере одно из добавляемых значений уже содержится в массиве.
- бит 2 -- если установлен, функция обновит префиксы для значений, которые уже присутствовали в массиве (в не зависимости от того, установлен ли бит 1 или нет).
- бит 3 -- если установлен (и не установлен бит 0), функция возвращает только 0 (все значения новые) или 1 (некоторые значения присутствовали в массиве). Вместо статуса 2 (все значения уже присутствовали в массиве) также возвращается число 1, что позволяет выполнить операцию немного быстрее.
Возвращаемое значение
Если бит 0 аргумента режима сброшен (по умолчанию), возвращает следующее числовое значение: 0 -- все значения новые и были добавлены в массив, 1 -- некоторые значения присутствовали в массиве (по умолчанию, в массив ничего не добавлено, но при установке бита 1 аргумента режима, отсутствующие значения все-таки были добавлены, также в зависимости от бита 2 режима, в массиве могли быть обновлены префиксы найденных значений), 2 -- все значения уже присутствали в массиве (в зависимости от бита 2 режима, в массиве могли быть обновлены префиксы значений). Если бит 0 аргумента режима установлен, функция возвращает список.
Примеры
Массив:=GlobalStringsHeapsFind("MRK"+FormatDate(Date(),"YYYYmmdd"));
...
//Находится строка добавления СтрНовыеМарки, значения разделены заранее заданной строкой-разделителем.
...
If Массив>0 Then
GlobalStringsAdd(Массив,СтрНовыеМарки,6);//форсированное добавление, обновление префиксов, если они изменились
EndIf;