Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 мая 2024, 05:25

Как обойти список значений в цикле

Автор Pavel779, 27 авг 2012, 21:54

0 Пользователей и 1 гость просматривают эту тему.

Pavel779

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

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

А уменя получается, что в переменную записывается лишь последний элемент массива элементов.

Помогите разобраться!!!!!!!!!!!!!!

&НаКлиенте
Процедура Прочитать(Команда)

       
       ПрочитатьНаСервере();


КонецПроцедуры

&НаСервере
Процедура  ПрочитатьНаСервере()

       ФИО = " ";
       
       СписокЗначений = Новый СписокЗначений;

       СписокЗначений.Добавить("Асбест+");
       СписокЗначений.Добавить("ООО");

       МассивЭлементов = СписокЗначений.ВыгрузитьЗначения();


       Для каждого ФИО Из МассивЭлементов Цикл


               СписокЗначений.Добавить(ФИО);

 
       КонецЦикла

       НовыйЭлемент =  Справочники.Контрагенты.СоздатьЭлемент();

       НовыйЭлемент.Наименование = ПолноеИмя;

       НовыйЭлемент.Записать();



КонецПроцедуры

MuI_I_Ika

А какая переменная так и не написали.

У вас переменная СписокЗначений заполняется 2 раза. Первый раз вы добавляете просто значения, а потом добавляете значения из массива.

MuI_I_Ika

А если речь про переменную ФИО, то она будет заполнена последним значением из массива. КОнкретизируйте, что вы хотите в результате получить.

Pavel779

Возможно я что то в цикле не так сделал.
Мне надо чтоб МассивЭлементов был записан в переменную ФИО

MuI_I_Ika

&НаКлиенте
Процедура Прочитать(Команда)

       
        ПрочитатьНаСервере();


КонецПроцедуры

&НаСервере
Процедура  ПрочитатьНаСервере()

        ФИО = " ";
       
        СписокЗначений = Новый СписокЗначений;

        СписокЗначений.Добавить("Асбест+");
        СписокЗначений.Добавить("ООО");

        МассивЭлементов = СписокЗначений.ВыгрузитьЗначения();

        ФИО = МассивЭлементов;

        НовыйЭлемент =  Справочники.Контрагенты.СоздатьЭлемент();

        НовыйЭлемент.Наименование = ПолноеИмя;

        НовыйЭлемент.Записать();

КонецПроцедуры

cska-fanat-kz

ПолноеНаименование = "";

Для каждого ЭлСписка Из СЗ Цикл
      ПолноеНаименование = ПолноеНаименование + ЭлСписка.Значение + " ";
КонецЦикла;

НовыйЭлемент = Справочники.Контрагенты.СоздатьЭлемент();
НовыйЭлемент.Наименование = СокрЛП(ПолноеНаименование);
НовыйЭлемент.Записать();
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Pavel779

Вот как решил:

&НаКлиенте
Процедура Прочитать(Команда)


ПрочитатьНаСервере();


КонецПроцедуры

&НаСервере
Процедура ПрочитатьНаСервере()

ФИО = "";

СписокЗначений = Новый СписокЗначений;

СписокЗначений.Добавить("Асбест+");
СписокЗначений.Добавить("ООО");


Для Счетчик = 0 По СписокЗначений.Количество()-1 Цикл

ФИО = ФИО+СписокЗначений.Получить(Счетчик);


КонецЦикла;

НовыйЭлемент =  Справочники.Контрагенты.СоздатьЭлемент();

НовыйЭлемент.Наименование = ФИО;

НовыйЭлемент.Записать();



КонецПроцедуры


Pavel779

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

Klyacksa

ФИО = ФИО+" "+СписокЗначений.Получить(Счетчик);
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Лучше все таки ИМХО цикл Для каждого...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск