ДляВсех(Переменных) |
Последовательно перебирает все переменные объекта.
ДляВсех(Переменных(Объект|Массив, Имя))
Объект| Массив (объект или массив) – объект, переменные которого будут перебираться.
Имя (переменная) – имя переменной, в которую будет помещаться имя очередной переменной объекта. Если переменной с таким именем в момент вызова функции ещё нет, то она будет создана. А вот если такая переменная существует, то она должна быть типа "текст". Иначе функция будет присваивать переменной текст, который будет приводиться к типу переменной, и результат будет непредсказуемым.
Функция последовательно присваивает переменной "Имя" имена переменных объекта или массива. Переменные объектов отсортированы по имени (А,Б,В…), в этом порядке они и будут перебираться. То есть, если в объекте хранятся переменные с именами "1", "2", "3"… "10", то они будут перебираться так: "1", "10", "2", "3"… "9". Чтобы перебрать такой объект в порядке от 1 до 10, нужно просто организовать цикл от 1 до 10. Элементы массива не сортируются и будут перебираться по номеру индекса.
Ничего не возвращает.
Например, чтобы вывести наименования накладной с указанием их цен, можно воспользоваться следующим примером:
перем мЦены[];
ДляВсех(Наименований)
мЦены[Наименование] = Цена; # набираем массив цен по
наименованиям накладной.
перем пИмя;
ДляВсех(Переменных(мЦены, пИмя))
Сообщить("Товар: " + пИмя + "<br>" +" Цена: " +
мЦены[пИмя]); # выводим все переменные набранного массива.
Перебрать все переменные базового объекта (у него имя – точка):
перем Имя;
ДляВсех(Переменных( . , Имя))
Сообщить( Имя + " = " + .[Имя]);
Перебрать двумерный массив, то есть массив с именем "М" в качестве своих переменных содержит массивы, которые уже содержат определённые значения:
перем мИмя1, мИмя2;
ДляВсех(Переменных(мМ, мИмя1))
ДляВсех(Переменных(мМ[мИмя1], мИмя2))
Сообщить(мМ[мИмя1, мИмя2]);