• Как выгрузить ассортимент с GUID из 1С?

    solotony
    @solotony Автор вопроса
    покоряю пик Балмера
    В общем проще оказалось сваять обработку, взяв за основу выгрузку из инета

    Кому потребуется - пользуйтесь
    https://vk.com/solotony?w=wall399047259_51%2Fall

    // Выполним запрос к справочнику Номенклатуры
    // Получим Таблицу Значений
    Функция ПолучитьНоменклатуру()
        Запрос = Новый Запрос;
        Запрос.Текст = 
            "ВЫБРАТЬ ПЕРВЫЕ 100000
            |    Номенклатура.Ссылка,
            |    Номенклатура.Код,
            |    Номенклатура.Родитель,
            |    Номенклатура.Наименование
            |ИЗ
            |    Справочник.Номенклатура КАК Номенклатура";
        Результат = Запрос.Выполнить();
        ТаблицаЗначений = Результат.Выгрузить();
        возврат ТаблицаЗначений;
    КонецФункции // ПолучитьНоменклатуру()    
    
    // Создаем строку загоовков для CSV-файла
    Функция СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель)
        //разделитель = "|";
        колонкиТЗ=ТаблицаЗначений.колонки;
        Для каждого колонка Из колонкиТЗ Цикл
            стрКолонки = "" + стрКолонки + колонка.Имя + разделитель ;
        КонецЦикла; 
        Возврат стрКолонки;
    КонецФункции
    
    // Создаем текст CSV:
    // текст заголовков и 
    // текст данных
    Функция СоздатьДанныеCSV(ТаблицаЗначений,разделитель)
    
        текст="";
        для каждого запись из ТаблицаЗначений Цикл
            если текст="" тогда
                текст=СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель) 
                    + Символы.ПС;    
            КонецЕсли;    
    
            сообщить(запись.Наименование);
            текст = текст  + запись.Ссылка.УникальныйИдентификатор()
                + разделитель + запись.Код
                + разделитель + запись.Родитель
                + разделитель + запись.Наименование             
                + Символы.ПС;        
        КонецЦикла;
    
            //сообщить(текст);
        Возврат текст;
    
    КонецФункции //
    
    // Запишем данные в файл
    Функция ЗаписатьCSV(текст,имяФайла)              
        кодировка = КодировкаТекста.ANSI;
    
        ТекстовыйФайлЗапись = Новый ЗаписьТекста(имяФайла,Кодировка);            
        ТекстовыйФайлЗапись.ЗаписатьСтроку(текст); 
        ТекстовыйФайлЗапись.Закрыть();    
        Возврат 0;
    
    КонецФункции // ЗаписатьCSV()
    
    // Основная логика:
    Функция ВыгрузитьВCSV(имяФайлаCSV);
        разделитель = "|";
        ТаблицаЗначений = ПолучитьНоменклатуру();
        текст = СоздатьДанныеCSV(ТаблицаЗначений,разделитель);
        ЗаписатьCSV(текст,имяФайлаCSV);
    
    КонецФункции
    
    
    // Начало 
    ВыгрузитьВCSV("C:\work\my.csv");
    Ответ написан
    Комментировать