| 
    
            
         
         | 
    
  | 
Отладчик для массива | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Roma1314704    
     07.05.18 
            ✎
    09:41 
 | 
         
        Есть следующая функция. Необходимо в хml вывести значения со справочника и с регистра сведения  - параметры
 
        Как глянуть через отладчик что в массиве? &НаСервере Функция ПолучитьМассивДанных() МассивДанных = Новый Массив; //{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА // Данный фрагмент построен конструктором. // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!! Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Товар.Код КАК Код, | Товар.Родитель, | Товар.Родитель.Код КАК РодительКод, | Товар.Наименование КАК Наименование, | Товар.Ссылка, | Товар.ЦенаПродажиРозетка КАК ЦенаПродажи, | Товар.Бренд КАК Бренд, | Товар.ХарактеристикаXML КАК ОписаниеТовара, | Товар.СсылкаФотоТовара1 Как СсылкаФотоТовара1, | Товар.СсылкаФотоТовара2 Как СсылкаФотоТовара2, | Товар.СсылкаФотоТовара3 Как СсылкаФотоТовара3, | Товар.СсылкаФотоТовара4 Как СсылкаФотоТовара4, | Товар.ТоварXml КАК ТоварXml, | Товар.СсылкаНаСайт Как СсылкаНаСайт, | Остатки.КоличествоОстаток КАК ОстатокТовара | | | | ИЗ | Справочник.Номенклатура КАК Товар | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрНакопления.ОстаткиПоСкладам.Остатки КАК Остатки | | ПО | Товар.Ссылка = Остатки.Номенклатура | | ГДЕ | Номенклатура.ТоварXml = &Истина И | Склад = &Склад; |ВЫБРАТЬ | РегистрСведенийЗначениеХарактеристикТоваров.Номенклатура КАК Номенклатура, | РегистрСведенийЗначениеХарактеристикТоваров.Характеристика КАК Характеристика, | РегистрСведенийЗначениеХарактеристикТоваров.ЗначениеХарактеристики КАК ЗначениеХарактеристики |ИЗ | РегистрСведений.ЗначениеХарактеристикТоваров КАК РегистрСведенийЗначениеХарактеристикТоваров |ГДЕ | РегистрСведенийЗначениеХарактеристикТоваров.Номенклатура = Номенклатура.Ссылка"; Запрос.УстановитьПараметр("Истина", Истина); Запрос.УстановитьПараметр("Склад", Справочники.Склады.НайтиПоНаименованию("Основной склад")); РезультатЗапроса = Запрос.ВыполнитьПакет(); ВыборкаДетальныеЗаписи = РезультатЗапроса[0].Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл НоваяЗапись = Новый Структура("Код, Наименование, Бренд, ОписаниеТовара, Характеристика, ЗначениеХарактеристики, ЦенаПродажи, СсылкаНаСайт, Категория, РодительскаяКатегорияКод,РодительскаяКатегория,СсылкаФотоТовара1,СсылкаФотоТовара2, СсылкаФотоТовара3, СсылкаФотоТовара4, ОстатокТовара"); НоваяЗапись.Код = Строка(ВыборкаДетальныеЗаписи.Код); НоваяЗапись.Наименование = Строка(ВыборкаДетальныеЗаписи.Наименование); НоваяЗапись.ЦенаПродажи = Строка(ВыборкаДетальныеЗаписи.ЦенаПродажи); НоваяЗапись.СсылкаНаСайт = Строка(ВыборкаДетальныеЗаписи.СсылкаНаСайт); НоваяЗапись.РодительскаяКатегория = Строка(ВыборкаДетальныеЗаписи.Родитель); НоваяЗапись.РодительскаяКатегорияКод = Строка(ВыборкаДетальныеЗаписи.РодительКод); НоваяЗапись.СсылкаФотоТовара1 = Строка(ВыборкаДетальныеЗаписи.СсылкаФотоТовара1); НоваяЗапись.СсылкаФотоТовара2 = Строка(ВыборкаДетальныеЗаписи.СсылкаФотоТовара2); НоваяЗапись.СсылкаФотоТовара3 = Строка(ВыборкаДетальныеЗаписи.СсылкаФотоТовара3); НоваяЗапись.СсылкаФотоТовара4 = Строка(ВыборкаДетальныеЗаписи.СсылкаФотоТовара4); НоваяЗапись.ОстатокТовара = Строка(ВыборкаДетальныеЗаписи.ОстатокТовара); ВыборкаДетальныеЗаписиХарактеристикиТовара = РезультатЗапроса[1].Выбрать(); Пока ВыборкаДетальныеЗаписиХарактеристикиТовара.Следующий() Цикл НоваяЗапись.Характеристика = Строка(ВыборкаДетальныеЗаписиХарактеристикиТовара.Характеристика); НоваяЗапись.ЗначениеХарактеристики = Строка(ВыборкаДетальныеЗаписиХарактеристикиТовара.ЗначениеХарактеристики); КонецЦикла; //Для Каждого Элемента ИЗ ВыборкаДетальныеЗаписи.Характеристика Цикл НоваяЗапись.ОписаниеТовара = Строка(ВыборкаДетальныеЗаписи.ОписаниеТовара); //МассивДанных.Добавить(НоваяЗапись); //КонецЦикла; НоваяЗапись.Бренд = Строка(ВыборкаДетальныеЗаписи.Бренд); МассивДанных.Добавить(НоваяЗапись); КонецЦикла; Возврат МассивДанных; КонецФункции &НаКлиенте Процедура ТестоваяКоманда(Команда) ПолучитьМассив = ПолучитьМассивДанных(); //Для Каждого Элемент Из ПолучитьМассив Цикл // Сообщить(Элемент); //КонецЦикла; КонецПроцедуры  | 
|||
| 
    1
    
        xxTANATORxx    
     07.05.18 
            ✎
    09:43 
 | 
         
        F2 ??     
         | 
|||
| 
    2
    
        Fish    
     гуру 
    07.05.18 
            ✎
    09:43 
 | 
         
        (0) "Показать значение в отдельном окне". Удивительный вопрос.     
         | 
|||
| 
    3
    
        Roma1314704    
     07.05.18 
            ✎
    10:06 
 | 
         
        Пока  ВыборкаДетальныеЗаписиХарактеристикиТовара.Следующий() Цикл
 
        НоваяЗапись.Характеристика = Строка(ВыборкаДетальныеЗаписиХарактеристикиТовара.Характеристика); НоваяЗапись.ЗначениеХарактеристики = Строка(ВыборкаДетальныеЗаписиХарактеристикиТовара.ЗначениеХарактеристики); КонецЦикла; Характеристик и их значений 8 позиций по факту в массив записывает только 1 как мне записать все остальные?  | 
|||
| 
    4
    
        Lexey_    
     07.05.18 
            ✎
    10:10 
 | 
         
        (3) нужно исправить код, который вне цикла     
         | 
|||
| 
    5
    
        Ненавижу 1С    
     гуру 
    07.05.18 
            ✎
    10:13 
 | 
         
        (3) потому-что у тебя всего одна НоваяЗапись     
         | 
|||
| 
    6
    
        Roma1314704    
     07.05.18 
            ✎
    10:14 
 | 
         
        Подскажите как это реализовать     
         | 
|||
| 
    7
    
        Мандалай    
     07.05.18 
            ✎
    10:15 
 | 
         
        Толи я после праздников плохо соображаю, то ли надо пакет убрать, соединить все в один запрос и организовать группировку по товарам, характеристикам. У тебя там бред какой то получается при определении ВыборкаДетальныеЗаписиХарактеристикиТовара = РезультатЗапроса[1].Выбрать();     
         | 
|||
| 
    8
    
        Boleev    
     07.05.18 
            ✎
    10:19 
 | 
         
        (6) мне просто интересно, чем ты занимался  11 лет 6 месяцев 1 день     
         | 
|||
| 
    9
    
        Roma1314704    
     07.05.18 
            ✎
    10:21 
 | 
         
        Собирался с мыслями что надо учить 1с     
         | 
|||
| 
    10
    
        Roma1314704    
     07.05.18 
            ✎
    10:23 
 | 
         
        Если серьезно , нужно помощь как это все до ума довести     
         | 
|||
| 
    11
    
        Мандалай    
     07.05.18 
            ✎
    10:28 
 | 
         
        1. Убери пакет, оставь только первый запрос.
 
        2. На регистре остатков у тебя должна хранится информация по остаткам в разрезе характеристик, иначе бред получается. 3. Бери характеристики напрямую из регистра остатков. То есть второй запрос тебе без надобности, хотя тебе видней. 4. Не очень понимаю зачем тебе справочник Номенклатура, в таком варианте ты получишь всю номенклатуру, и ту которая есть на остатках и ту которой нет на остатке. Если конечно так надо по условию значит надо. Поэтому огласи какие данные должны попасть в отчет.  | 
|||
| 
    12
    
        Roma1314704    
     07.05.18 
            ✎
    10:42 
 | 
         
        НоваяЗапись = Новый Структура("Код, Наименование, Бренд, ОписаниеТовара, Характеристика, ЗначениеХарактеристики, ЦенаПродажи, СсылкаНаСайт, Категория, РодительскаяКатегорияКод,РодительскаяКатегория,СсылкаФотоТовара1,СсылкаФотоТовара2, СсылкаФотоТовара3, СсылкаФотоТовара4, ОстатокТовара");
 
        Все это должно попасть в отчет. Но в регистре сведений характеристика товара не 1-но значение их может быть несколько - как их все выдернуть в массив -не могу осилить  | 
|||
| 
    13
    
        Мимохожий Однако    
     07.05.18 
            ✎
    10:47 
 | 
         
        Возьми листочек и нарисуй, что и где лежит. Потом по этому плану делай запрос.     
         | 
|||
| 
    14
    
        Roma1314704    
     07.05.18 
            ✎
    11:08 
 | 
         
        Да правильно. Не могу понять с этим массивом  -ведь в структуре 1 значение характеристики соответственно сколько  не перебирай запрос в цикле  -запишет только последнее значение и одно единественное значение. Как записать в структуру остальные значения Характеристик?     
         | 
|||
| 
    15
    
        Roma1314704    
     07.05.18 
            ✎
    11:58 
 | 
         
        Разобрался. Всем спасибо     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |