0
mTema32
25.02.16
✎
12:11
|
Добрый день!
Собственно есть код по заполнению СпискаXDTO.
req.AddressReq - это собственно сам список.
Для Каждого СтрокаАдреса Из АдресаКонтрагента Цикл
AddressReq.street = СтрокаАдреса.Улица;
AddressReq.houseNumber = СтрокаАдреса.Дом;
AddressReq.apartment = СтрокаАдреса.Квартира;
AddressReq.city = СтрокаАдреса.Город;
AddressReq.postal = СтрокаАдреса.ПочтовыйИндекс;
Если СтрокаАдреса.Вид = Справочники.ВидыКонтактнойИнформации.АдресПоПрописке Тогда
ТипАдреса = 1;
ИначеЕсли СтрокаАдреса.Вид = Справочники.ВидыКонтактнойИнформации.АдресПроживания Тогда
ТипАдреса = 2;
КонецЕсли;
AddressReq.addressType = Строка(ТипАдреса);
req.AddressReq.Добавить(AddressReq);
КонецЦикла;
Все вроде просто, но есть проблема.
В массиве адресов два элемента. И в цикле оба успешно добавляются в списокХDTO. НО(!) значения в этом списке (улица, дом и т.п.) у обоих элементов списка сохраняются те, которые были в последнем элементе массива адресов.
Получается два элемента в списке с одинаковыми значениями.
Чего не так делаю?
|
|
1
DmitrO
25.02.16
✎
12:23
|
>>Чего не так делаю?
Добавляешь один и тот же экземпляр объекта XDTO в список.
Внутри цикла на каждой итерации создавай новый, заполняй его, и его добавляй в список.
|
|