Имя: Пароль:
1C
1С v8
Загрузка XML файла в 1с 8.3.5
,
0 Лелька23
 
03.04.17
10:49
Добрый день, в 1с недавно и столкнулась с проблемой.
В общем выгружает у меня метаданные справочника и данные в XML файлик, вот ниже результат:
<?xml version="1.0"?>
-<Конфигурация>
-<Справочник Синоним="Должности" Имя="Должности">
<Справочники Наименование="Наименование1" Код="Код1"/>
<Справочники Наименование="Наименование1" Код="Код1"/>
<Справочники Наименование="Наименование1" Код="Код1"/>
<Реквизит Синоним="Название" Имя="Название"/>
<Реквизит Синоним="Возраст" Имя="Возраст"/>
<Реквизит Возраст="Уае"/>
<Реквизит Возраст="55"/>
<Реквизит Возраст="55"/>
<Реквизит Возраст="Ауе"/>
<Реквизит Возраст="13"/>
<Реквизит Возраст="13"/>
<Реквизит Возраст="Аеу"/>
<Реквизит Возраст="23"/>
<Реквизит Возраст="23"/>
<ТабличнаяЧасть Синоним="Диплом" Имя="Диплом"/>
<Реквизит Синоним="Название" Имя="Название"/>
<Реквизит Синоним="Имя" Имя="Имя"/>
</Справочник>
</Конфигурация>


И нужно загрузить эти данные обратно в конфигурацию, вот код:

ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл("F:\СтруктураКонфигурации.xml");

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

Пока ЧтениеXML.Прочитать() Цикл
     Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеXML.Имя = "Справочники" Тогда
        //Чтение атрибутов узла
        Пока ЧтениеXML.ПрочитатьАтрибут() Цикл
             Атрибут = ЧтениеXML.Значение;
                Если ЧтениеXML.Имя = "Код" или ЧтениеXML.Имя = "size" Тогда
                СЗ.Добавить(Атрибут);
                КонецЕсли;
                
        КонецЦикла;
    КонецЕсли;
    
    Если ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента и ЧтениеXML.Имя = "Конфигурация" Тогда
    //СоздатьЭлементСправочника(СЗ);
    СЗ.Очистить();
    КонецЕсли;
КонецЦикла;

Но он асолютно ничего не выгружает, уже и так и сяк, помогите пожалуйста, или хотя бы направьте в нужное русло
10 Лелька23
 
03.04.17
11:05
(9) в смысле, я в него выгружаю все справочники с данными, а как мне потом тогда загрузить обратно? если вы говорите он непригоден((
11 DrShad
 
03.04.17
11:07
(10) вы некорректно выгружаете, так понятнее?
12 DrShad
 
03.04.17
11:07
давайте начнем с того, что вы знаете об XML?
13 Лелька23
 
03.04.17
11:09
(11) Вот механизм моей выгрузки


Для каждого Справочник из Метаданные.Справочники Цикл  
     Файл.ЗаписатьНачалоЭлемента("Справочник");
     Файл.ЗаписатьАтрибут("Имя", Справочник.Имя);
     Файл.ЗаписатьАтрибут("Синоним", Справочник.Синоним);
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ТекущийСправочник.Код,
        |    ТекущийСправочник.Наименование
        |ИЗ
        |    Справочник." +
        Справочник +
        " КАК ТекущийСправочник";
        
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Файл.ЗаписатьНачалоЭлемента("Справочники");
        Файл.ЗаписатьАтрибут("Код", ВыборкаДетальныеЗаписи.Получить(0));
        Файл.ЗаписатьАтрибут("Наименование", ВыборкаДетальныеЗаписи.Получить(1));
        Файл.ЗаписатьКонецЭлемента();
    КонецЦикла;
14 DrShad
 
03.04.17
11:14
(13) этот код не мог дать такой файлик как в (0)
15 Вафель
 
03.04.17
11:17
использую лучше выгрузку-загрузку
16 Лелька23
 
03.04.17
11:18
(14) этот цикл дает только наименования справочника и код, там дальше так же циклом выгружает реквизит и табличную часть, поэтому такой код
17 Лелька23
 
03.04.17
11:19
(15) нужно свое и попроще)
18 Вафель
 
03.04.17
11:20
(17) это тестовое задание?
19 DrShad
 
03.04.17
11:26
(17) из своего вы ничего не получите ))) уж поверьте
20 Лелька23
 
03.04.17
11:27
(19) а как тогда сделать чтоб получить?((
21 DrShad
 
03.04.17
11:28
(20) давайте начнем с начала
база приемник и источник идентичны?
22 Лелька23
 
03.04.17
11:29
(21) да, база одна и та же, абсолютно с такими же данными
23 Рэйв
 
03.04.17
11:30
(17)Держи,дарю:-)

//-----------------

Процедура Выгрузка()
    Запрос=Новый Запрос;
    Запрос.Текст="ВЫБРАТЬ
                 |    Спр.Ссылка КАК Ссылка
                 |ИЗ
                 |    Справочник.ТвойСпр КАК Спр";
тРез=Запрос.Выполнить().Выгрузить();
    тДанные=Новый ТаблицаЗначений;
    тДанные.Колонки.Добавить("Данные");
    Для Каждого Стр Из тРез цикл
         Нов=тДанные.Добавить();
         НОв.Данные=XML(Стр.Ссылка.ПолучитьОбъект());
    КонецЦикла;    
    ЗначениеВФайл("E:\справочник.выгрузка",тДанные);
КонецПроцедуры

Процедура Загрузка()
    тДанные=ЗначениеИзФайла("E:\справочник.выгрузка");
    Для Каждого Стр из тДанные Цикл
        Об=ДанныеИзXML(Стр.Данные);
        Об.ОбменДанными.Загрузка=Истина;
        Об.Записать();
        Сообщить("Записан '"+Об+"'");
    КонецЦикла;    
КонецПроцедуры

//----------Сериализация

Функция XML(Данные)
    ЗаписьXML = Новый ЗаписьXML();
    ЗаписьXML.УстановитьСтроку();
    СериализаторXDTO.ЗаписатьXML(ЗаписьXML, Данные);
    Возврат ЗаписьXML.Закрыть();
КонецФункции


    
//------Десериализация

Функция ДанныеИзXML(Стр)
    ЧтениеXML = Новый ЧтениеXML();
    ЧтениеXML.УстановитьСтроку(Стр);
    Возврат СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
КонецФункции
24 DrShad
 
03.04.17
11:34
(23) для начала вполне пойдет )))
25 Рэйв
 
03.04.17
11:35
(24)Да даже не для начала пойдет:-)  у меня на такой основе даже документы с движениями перекидываются между базами
26 Лелька23
 
03.04.17
11:35
(23) ошибка вылетает
{Обработка.об1.Форма.ФормаУправляемая.Форма(2056)}: Ошибка при вызове метода контекста (Выполнить)
тРез=Запрос.Выполнить().Выгрузить();
по причине:
{(4, 5)}: Таблица не найдена "Справочник.ТвойСпр"
<<?>>Справочник.ТвойСпр КАК Спр
27 DrShad
 
03.04.17
11:36
(26) и что в этой ошибке вам не понятно?
28 Рэйв
 
03.04.17
11:36
(26)Ты не тормоз, ты медленный газ?:-)
29 Рэйв
 
03.04.17
11:36
(26)имя СВОЕГО справочника вставь, чукча!:-)
30 Лелька23
 
03.04.17
11:37
(27) что это написано для определенного справочника, у меня их более чем много)
31 Лелька23
 
03.04.17
11:37
(29) зачем обзываться?:)
я понимаю что вставить своего справочника, у меня их много мне не нужно каждый так писать, у меня уже написано что он циклом прокручивает каждый!;)
32 Рэйв
 
03.04.17
11:39
(31) у тебя же сделано
уже было:
>>
|    Справочник." +
        Справочник +
        " КАК ТекущийСправочник";

что мешает повторить?
33 DrShad
 
03.04.17
11:42
(32) как только у нее в справочниках пойдут ссылочные реквизиты - будет беда )))
34 Рэйв
 
03.04.17
11:44
(33)Ну да..Ссылки должны быть в базе, иначе будет <Объект не найден> пока они не появятся
35 Лелька23
 
03.04.17
11:46
(34) (33) Есть уже такой обход у меня, я сделала по простому, просто беру реквизиты с типом "Строка", остальные обхожу
36 DrShad
 
03.04.17
11:46
(34) либо же при загрузке нужно создавать по имеющейся ссылке пустой элемент и когда до него дойдет очередь его заполнить
37 DrShad
 
03.04.17
11:46
(35) так ты ничего путнего не создашь
38 Рэйв
 
03.04.17
11:47
(36)да не, не надо пустой. Пусть будет битая. Если правильно пернесет недастающие, то они автоматом встанут туда где был "<Оббъект не найден>"
39 DrShad
 
03.04.17
11:49
(38) как? разве сериализатор сам создает "битые" ссылки?
40 Лелька23
 
03.04.17
11:50
(34) (37) Вот мой код выгрузки, но там есть косяк единственный, реквизиты когда записывает в файлик, они берут имя первого реквизита..

Процедура Выгрузить()
ИмяФайла =  "F:\СтруктураКонфигурации.xml";
Файл = Новый ЗаписьXML();
Файл.ОткрытьФайл(ИмяФайла);
Файл.ЗаписатьНачалоЭлемента("Конфигурация");

Для каждого Справочник из Метаданные.Справочники Цикл  
     Файл.ЗаписатьНачалоЭлемента("Справочник");
     Файл.ЗаписатьАтрибут("Имя", Справочник.Имя);
     Файл.ЗаписатьАтрибут("Синоним", Справочник.Синоним);
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ТекущийСправочник.Код,
        |    ТекущийСправочник.Наименование
        |ИЗ
        |    Справочник." +
        Справочник +
        " КАК ТекущийСправочник";
        
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Файл.ЗаписатьНачалоЭлемента("Справочники");
        Файл.ЗаписатьАтрибут("Код", ВыборкаДетальныеЗаписи.Получить(0));
        Файл.ЗаписатьАтрибут("Наименование", ВыборкаДетальныеЗаписи.Получить(1));
        Файл.ЗаписатьКонецЭлемента();
    КонецЦикла;
    
     стр = "ВЫБРАТЬ
            |    Спр.";
    
     Для каждого Реквизит из Справочник.Реквизиты Цикл
          Файл.ЗаписатьНачалоЭлемента("Реквизит");
          Файл.ЗаписатьАтрибут("Имя", Реквизит.Имя);
          Файл.ЗаписатьАтрибут("Синоним", Реквизит.Синоним);
          Файл.ЗаписатьКонецЭлемента();
          стр = стр + Реквизит.Имя + ", Спр.";
      КонецЦикла;
      
      стр = Лев(стр,СтрДлина(стр)-6);
      стр = стр + " ИЗ
                  |    Справочник." +
                  Справочник +
                  " КАК Спр";

      
      Запрос = Новый Запрос;
      Запрос.Текст = стр;
      РезультатЗапроса = Запрос.Выполнить();
    
      ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
      Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
              Для индекс = 0 по ВыборкаДетальныеЗаписи.Количество()-1   Цикл

            Попытка
                Элемент =  ВыборкаДетальныеЗаписи.Получить(индекс);
             Исключение
            КонецПопытки;
                Если Элемент <> Неопределено Тогда
                  Знч = ТипЗнч(Элемент);
                     Если Знч = Тип("Строка") Тогда
                          Файл.ЗаписатьНачалоЭлемента("Реквизит");
                        Файл.ЗаписатьАтрибут(Реквизит.Имя, Элемент);
                          Файл.ЗаписатьКонецЭлемента();      
                     КонецЕсли;
                   КонецЕсли;
             КонецЦикла;

  КонецЦикла;
          
    таб = "ВЫБРАТЬ
           | Справ.";
    
     Для каждого ТЧ из Справочник.ТабличныеЧасти Цикл
          Файл.ЗаписатьНачалоЭлемента("ТабличнаяЧасть");
          Файл.ЗаписатьАтрибут("Имя", ТЧ.Имя);
          Файл.ЗаписатьАтрибут("Синоним", ТЧ.Синоним);
          Файл.ЗаписатьКонецЭлемента();

      Для каждого Реквизит из ТЧ.Реквизиты Цикл
               Файл.ЗаписатьНачалоЭлемента("Реквизит");
               Файл.ЗаписатьАтрибут("Имя", Реквизит.Имя);
               Файл.ЗаписатьАтрибут("Синоним", Реквизит.Синоним);
               Файл.ЗаписатьКонецЭлемента();
               таб = таб + Реквизит.Имя + ", Справ.";
      КонецЦикла;
                    
      таб = Лев(таб,СтрДлина(таб)-8);
      таб = таб + " ИЗ
                  |    Справочник." +
                  Справочник + "." + ТЧ.Имя +

                  " КАК Справ";
                  
      Запрос = Новый Запрос;
      Запрос.Текст = таб;
      РезультатЗапроса = Запрос.Выполнить();
      
    КонецЦикла;
    
      ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
      
          Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
              Для индекс = 0 по ВыборкаДетальныеЗаписи.Количество()- 1   Цикл

            Попытка
                Элемент =  ВыборкаДетальныеЗаписи.Получить(индекс);
        Исключение
            КонецПопытки;
                Если Элемент <> Неопределено Тогда
                  Знч = ТипЗнч(Элемент);
                     Если Знч = Тип("Строка") Тогда
                          Файл.ЗаписатьНачалоЭлемента("Реквизит");
                        Файл.ЗаписатьАтрибут(Реквизит.Имя, Элемент);
                          Файл.ЗаписатьКонецЭлемента();      
                     КонецЕсли;
                   КонецЕсли;
             КонецЦикла;

        КонецЦикла;

Файл.ЗаписатьКонецЭлемента();
КонецЦикла;
Файл.ЗаписатьКонецЭлемента();
Файл.Закрыть();
Сообщить("Ваш файл записан и находится в "+ИмяФайла+" ");  
КонецПроцедуры


и вот XML файл

<?xml version="1.0"?>

-<Конфигурация>


-<Справочник Синоним="Сотрудники" Имя="Сотрудники">

<Справочники Наименование="Зайцев Анатолий Александрович" Код="003"/>

<Справочники Наименование="Синицина Алла Петровна" Код="004"/>

<Справочники Наименование="Петрова Ольга Владимировна" Код="005"/>

<Справочники Наименование="Иванов Иван Иванович" Код="006"/>

<Справочники Наименование="Работающие" Код="007"/>

<Справочники Наименование="Уволенные" Код="008"/>


<Реквизит Синоним="Оклад" Имя="Оклад"/>

<Реквизит Синоним="Дата приема" Имя="ДатаПриема"/>

<Реквизит Синоним="Дата увольнения" Имя="ДатаУвольнения"/>

<Реквизит Синоним="Пол" Имя="Пол"/>

<Реквизит Синоним="Адрес" Имя="Адрес"/>

<Реквизит Адрес="Мужской"/>

<Реквизит Адрес="г. Москва"/>

<Реквизит Адрес="г. Москва"/>

<Реквизит Адрес="г. Москва"/>

<Реквизит Адрес="женский"/>

<Реквизит Адрес="саратов"/>

<Реквизит Адрес="саратов"/>

<Реквизит Адрес="саратов"/>

<Реквизит Адрес="Женский"/>

<Реквизит Адрес="г.Самара"/>

<Реквизит Адрес="г.Самара"/>

<Реквизит Адрес="г.Самара"/>

<Реквизит Адрес="мужской"/>

<Реквизит Адрес="москва"/>

<Реквизит Адрес="москва"/>

<Реквизит Адрес="москва"/>

<Реквизит Адрес="Женский"/>

<Реквизит Адрес="самара"/>

<Реквизит Адрес="самара"/>

<Реквизит Адрес="самара"/>

<ТабличнаяЧасть Синоним="Трудовая деятельность" Имя="ТрудоваяДеятельность"/>

<Реквизит Синоним="Организация" Имя="Организация"/>

<Реквизит Синоним="Начало работы" Имя="НачалоРаботы"/>

<Реквизит Синоним="Окончание работы" Имя="ОкончаниеРаботы"/>

<Реквизит Синоним="Должность" Имя="Должность"/>

<Реквизит Должность="Газпром"/>

<Реквизит Должность="Работник отдела кадров"/>

<Реквизит Должность="Работник отдела кадров"/>

<Реквизит Должность="Работник отдела кадров"/>

<Реквизит Должность="Газпром"/>

<Реквизит Должность="Старший специалист"/>

<Реквизит Должность="Старший специалист"/>

<Реквизит Должность="Старший специалист"/>

<Реквизит Должность="Газпром"/>

<Реквизит Должность="Главный специалист"/>

<Реквизит Должность="Главный специалист"/>

<Реквизит Должность="Главный специалист"/>

<Реквизит Должность="Москва"/>

<Реквизит Должность="Специалист"/>

<Реквизит Должность="Специалист"/>

<Реквизит Должность="Специалист"/>

<Реквизит Должность=""/>

<Реквизит Должность=""/>

<Реквизит Должность=""/>

<Реквизит Должность=""/>

<Реквизит Должность="Газ"/>

<Реквизит Должность="Специалист контроллер"/>

<Реквизит Должность="Специалист контроллер"/>

<Реквизит Должность="Специалист контроллер"/>

</Справочник>


-<Справочник Синоним="Должности" Имя="Должности">

<Справочники Наименование="Наименование1" Код="Код1"/>

<Справочники Наименование="Наименование1" Код="Код1"/>

<Справочники Наименование="Наименование1" Код="Код1"/>

<Реквизит Синоним="Название" Имя="Название"/>

<Реквизит Синоним="Возраст" Имя="Возраст"/>

<Реквизит Возраст="Уае"/>

<Реквизит Возраст="55"/>

<Реквизит Возраст="55"/>

<Реквизит Возраст="Ауе"/>

<Реквизит Возраст="13"/>

<Реквизит Возраст="13"/>

<Реквизит Возраст="Аеу"/>

<Реквизит Возраст="23"/>

<Реквизит Возраст="23"/>

<ТабличнаяЧасть Синоним="Диплом" Имя="Диплом"/>

<Реквизит Синоним="Название" Имя="Название"/>

<Реквизит Синоним="Имя" Имя="Имя"/>

</Справочник>

</Конфигурация>
41 Рэйв
 
03.04.17
11:52
(39)Он создает объект, считая, что все ссылки в ссылочных реквизитах уже есть в базе и не заморачивается. В результате если их пока нет, то будет <Объект не найден>. но если с таким  УИД перенести объект, то ссылка тут же перестанет быть битой,т.к. объект найдется
42 DrShad
 
03.04.17
11:52
(40) и снова, из вашего файлика вы ничего и никогда не загрузите

тем более когда Адрес = "Женский"
43 DrShad
 
03.04.17
11:53
(41) не думал что он это умеет
44 Рэйв
 
03.04.17
11:53
(43)я так думаю просто он не копает вглубь и создает как есть.
Ссылочный реквизит - это же просто референс на запись.Практически текст с УИД
45 Лелька23
 
03.04.17
11:55
(42) а вот как мне сделать, чтоб он брал реквизит, в данном случае реквизит "Пол", ведь названия формирует он в этом куске кода:
Файл.ЗаписатьАтрибут(Реквизит.Имя, Элемент);
46 DrShad
 
03.04.17
11:56
(45) да выбросьте вы свой код и начните с (23)
47 Рэйв
 
03.04.17
11:56
(45)Значит как я подсказал делать не хочешь?   Ну удачи тогда в изобретении велосипедов!:-))
48 Лелька23
 
03.04.17
11:58
(47) так я попробовала и у меня ошибка выскочила, я же говорю я только начала 1с изучать и мне тяжело.... причем тут велосипед? у меня тоже неплохой код, который выгружает и работает, а ваш код не стал, и как я с вашим кодом буду реквизиты и табличную часть выгружать, мне это трудно очень, я имеющийся код с трудом и поисками делала, а тут заново получается
49 Лелька23
 
03.04.17
11:59
(46) а как мне с 23 выгрузить реквизиты?
50 Рэйв
 
03.04.17
11:59
(49)Объект выгрузится ВЕСЬ, полностью. Со всеми реквизитами и табличной частью. и загрузится также.
51 Рэйв
 
03.04.17
12:01
(49)Попробуй сначала кодом из (23) выгрузить какойнибудь один справочник, потом зайди в кучу реквизитов и поменяй все как хочешь. а затем загрузи обратно. И посмотри что будет
52 Лелька23
 
03.04.17
12:03
(50) ну в общем сделала я с вашим, ииии у меня ничего не выгрузилось((

вот что поменяла:

Запрос=Новый Запрос;
    Запрос.Текст="ВЫБРАТЬ
                 |    Спр.Ссылка КАК Ссылка
                 |ИЗ
                 |    Справочник.Сотрудники КАК Спр";
тРез=Запрос.Выполнить().Выгрузить();
    тДанные=Новый ТаблицаЗначений;
    тДанные.Колонки.Добавить("Данные");
    Для Каждого Стр Из тРез цикл
         Нов=тДанные.Добавить();
         НОв.Данные=XML(Стр.Ссылка.ПолучитьОбъект());
    КонецЦикла;    
    ЗначениеВФайл("F:\СтруктураКонфигурации.xml",тДанные);
    КонецЦикла;
53 DrShad
 
03.04.17
12:04
(48) вам же говорят, что то что вы наваяли пусть и с поисками и прочей фигней - мертворожденное, т.е. нерабочее
54 Лелька23
 
03.04.17
12:04
(53) блин как жалко(((
я месяц потратила((((
55 DrShad
 
03.04.17
12:05
(54) нужно было раньше спросить )))

(52) а в справочнике есть хоть что-то?
56 Адинэснег
 
03.04.17
12:06
57 Лелька23
 
03.04.17
12:06
(55) да конечно, есть и реквизиты и тч и фамилии, ну вот что в файлике xml
58 Рэйв
 
03.04.17
12:06
(52)>> меня ничего не выгрузилось((
откуда такие умозаключения?
файл F:\СтруктураКонфигурации.xml появился?
59 Рэйв
 
03.04.17
12:07
+(52)имей в виду что файл будет совсем не xml
60 Адинэснег
 
03.04.17
12:10
Откуда-Куда выгружаешь?
если конфы идентичные - то ВыгрузкаЗагрузкаДанныхXML82.epf или ВыгрузкаЗагрузкаДанныхXML83.epf с ИТС
Если нет - то пиши правила в Конвертация данных
Но тут тебе придется вызвать программиста уже
61 DrShad
 
03.04.17
12:10
(56) сохранил себе на всякий случай
62 DrShad
 
03.04.17
12:11
(60) она учится и ей нужно свое и попроще - для понимания
63 Лелька23
 
03.04.17
12:11
(58) да он у меня автоматически создан)
я внего зашла и там одна надпись"конфигурация"
64 DrShad
 
03.04.17
12:13
(63) его не код из (52) создал
65 Рэйв
 
03.04.17
12:15
(63)сделай его не xml, а txt  хотя бы.Тогда откроешь блокнотом и сразу будет видно
66 Лелька23
 
03.04.17
12:15
(64) не выгрузил он мне ничего, я удалила этот файл и повторн попробовала выгрузить ии ничего(
67 Лелька23
 
03.04.17
12:15
(65) так я с помощью блокнота и открываю и там просто написано конфигурация
68 DrShad
 
03.04.17
12:16
(67) скинь свою обработку на файлообменник
69 DrShad
 
03.04.17
12:17
и фотку в личку выложи, чем больше будет тема раскрыта - тем качественней буду ответы
70 Адинэснег
 
03.04.17
12:17
вообще мужчина пишущий о себе в женском роде, иногда путаясь в ходе обсуждения, в принципе xml осилить не сможет
определись с полом, потом с кодом
71 Лелька23
 
03.04.17
12:20
(69) ойой ой я тупенькая))
я просто перед запросом цикл не убрала, выше подянлась все удалила и оставила чисто код который советовал умничка выше и у меня выгрузилось, Божечки сколько у меня радости)) ща буду пробовать загрузить!)
72 Лелька23
 
03.04.17
12:20
(70) ты намекаешь, что я мужчина?;)
73 Лелька23
 
03.04.17
12:21
(65) спасибо тебе огроменнное я тупила просто, твой чудо код работает, блин я прям счастлива, ща буду дальше пробовать))))
74 Адинэснег
 
03.04.17
12:23
(72)ни на что не намекаю, ты сам в анкете так указал
75 Лелька23
 
03.04.17
12:27
В общем решила я удалить реквизит адрес и у меня вон что получилось


{Обработка.об1.Форма.ФормаУправляемая.Форма(1965)}: Ошибка при вызове метода контекста (ПрочитатьXML)
    Возврат СериализаторXDTO.ПрочитатьXML(ЧтениеXML);
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}CatalogObject.Сотрудники    Форма: Элемент    Тип: {http://v8.1c.ru/8.1/data/enterprise/current-config}CatalogObject.Сотрудники
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data/enterprise/current-config}Адрес    Форма: Элемент    Тип: {http://www.w3.org/2001/XM (65) (65)
76 Рэйв
 
03.04.17
12:31
(75)Выгруженное должно обязательно по структуре совпадать с конфигурацией куда загружаешь. Иначе не взлетит.
77 Лелька23
 
03.04.17
12:33
(65) Я тебя обожаю, ты просто чудо!!!!! Спасибо тебе огроменное,побольше бы таких как ты, я уже второй месяц бьюсь все форумы облазила, а тут ты мне так помог!!!! Спасибо просто!!!!!! у меня все выгружает и загружает!!!!!!!!!
78 Рэйв
 
03.04.17
12:36
(77)Фотку вставь в личку и помогать будут охотнее:-)
79 Лелька23
 
03.04.17
12:43
(78) нууу, я не знаю,если поставлю отбоя от ответов не будет;)
80 DrShad
 
03.04.17
12:46
Ольга Бугрова )))
81 Рэйв
 
03.04.17
12:46
(79)Пока не попробуешь - не узнаешь
82 Лелька23
 
03.04.17
12:48
(80) а как вы находите?))
83 Лелька23
 
03.04.17
12:49
(81) я вот тут пробую запрос преобразовать, но не очень получается, чтоб он каждый справочник брал и выгружал с данными

делаю вот так, не выходит, как подправить?)
Справочник = Метаданные.Справочники;
    Запрос=Новый Запрос;
    Запрос.Текст="ВЫБРАТЬ
                 |    Спр.Ссылка КАК Ссылка
                 |ИЗ
                 |    Справочник." +
                 Справочник +
                 " КАК Спр";
84 Рэйв
 
03.04.17
12:50
(82)Это тайное колдунство!:-)
85 Лелька23
 
03.04.17
12:51
(84) наколдуйте мне умение программировать))
86 Рэйв
 
03.04.17
12:51
Запрос=Новый Запрос;
Для каждого Спр из Метаданные.Справочники Цикл

    
    Запрос.Текст="ВЫБРАТЬ
                 |    Спр.Ссылка КАК Ссылка
                 |ИЗ
                 |    Справочник." +
                 Спр.Имя+
                 " КАК Спр";
Конеццикла;
87 Рэйв
 
03.04.17
12:52
(85)Это очень сложное колдунство.Его колдовать надо во франче как минимум год, лучше два:-)
88 Лелька23
 
03.04.17
12:55
(86) попробовала, он выгружает только один справочник, у меня их два один сотрудники другой должности и вот с этим запросом выгружает только должности)
89 Рэйв
 
03.04.17
12:57
(88)Потому что все пишется в один и тот же файл.
Делай имя файла из имени справочника и тогда будут тебе разные файлы
90 Лелька23
 
03.04.17
13:00
(89) эм, это как?)
91 Лелька23
 
03.04.17
13:00
(87) дааа, вначале и простое кажется очень сложным(
92 Рэйв
 
03.04.17
13:02
(90)
.........
ЗначениеВФайл("F:\"+Спр.Имя+".txt",тДанные);
93 Лелька23
 
03.04.17
13:05
(92) а при загрузке как сделать, он же не поймет какоц ему нужен файл?
94 Лелька23
 
03.04.17
13:06
(92) в ручную прописывать все созданные файлы?))
95 Рэйв
 
03.04.17
13:13
(93) сделай выбор файла в ручную. Или сложи их в отдельную папку и перебирай все файлы
96 Лелька23
 
03.04.17
13:18
(95) все сделала, с помощью запроса) в общем теперь мне все понятно, спасибо большое еще раз, эх мне бы такую голову умную! желаю продвижения!))
97 DrShad
 
03.04.17
13:19
(96) спасибо, но мы уже продвинулись - дальше некуда
98 Рэйв
 
03.04.17
13:21
(96)Спасибо в карман не положишь:-)  Фотку выкладывай в личку давай!:-)
99 DrShad
 
03.04.17
13:23
(98) кто хотел - фотки уже нашел, ничего особенного там нет
100 Рэйв
 
03.04.17
13:27
(99)я не настолько прям жажду,чтобы лезть в интернеты но традиция жешь:-)
101 DrShad
 
03.04.17
13:28
(100) пофигу традиция - ТС ждет много шишек
102 Рэйв
 
03.04.17
13:30
(101)такова селявуха:-)
103 DrShad
 
03.04.17
13:32
(102) главное не потерять человека - сегодня ведь многодневный труд одним постом убили нахрен
104 Рэйв
 
03.04.17
13:35
(103)Надо смотреть более позитивно. Мы сэкономили человеку еще пару месяцев бесполезных мучений.
105 DrShad
 
03.04.17
13:41
(104) дальше больше
106 Рэйв
 
03.04.17
13:43
(105):-)все такие были
107 DrShad
 
03.04.17
13:44
(106) были, но вводные у всех разные )))
108 Лелька23
 
03.04.17
14:40
(99) Да ты что, спасибо за комплимент, сказал как истинный джентельмен, первый раз мне такое сказали уж поверь;)
109 Лелька23
 
03.04.17
14:42
(106) спасибо, уж сэкономили время то и правда!))
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.