8.х Чтение и запись их XML

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем iLona90, 24 фев 2016.

  1. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    Доброго всем дня) столкнулась с такой проблемкой: нужно из XML-файла импортировать данные в Накладную, но появилась проблема с записью данных... не могу понять куда записать... не могу найти поля Номенклатура, цена, сумма и тд...
    на Стадии чтения всё работает хорошо, проверяю по отладчику, данные читаются:
    Код:
    &НаСервере
    Процедура ПрочитатьXMLФайлНаСервере(Файлик)
    ПутьКФайлу    = файлик[0];
    
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.ОткрытьФайл(ПутьКФайлу);
    
    СЗ = Новый СписокЗначений;
    
    Пока ЧтениеXML.Прочитать() Цикл
        Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
            ЧтениеXML.ПрочитатьАтрибут();
            Атрибут = ЧтениеXML.Значение;       
        КонецЕсли;
       
        Если ЧтениеXML.ТипУзла = ТипУзлаXML.Текст Тогда
            Если Атрибут = "S000008" Тогда
                СЗ.Добавить(ЧтениеXML.Значение);           
            КонецЕсли;
            Если Атрибут = "S000005" Тогда
                СЗ.Добавить(ЧтениеXML.Значение);           
            КонецЕсли;
            Если Атрибут = "S000006" Тогда
                СЗ.Добавить(ЧтениеXML.Значение);           
            КонецЕсли;
    
        КонецЕсли;
       
        Если ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента and Атрибут = "S000003" Then
            СоздатьДокумент(СЗ);
            СЗ.Очистить();
           
        КонецЕсли;
    КонецЦикла;
    КонецПроцедуры
    

    А вот с записью...
    Код:
    Процедура СоздатьДокумент(СЗ)
        Если СЗ.Количество() >0 Тогда
    !!!        НовыйЭлемент = Документы.();
    //        НовыйЭлемент.Номенклатура = СЗ[0].Значение;
    //        НовыйЭлемент = СЗ[1].Значение;
    //        НовыйЭлемент.Дата = СЗ[2].Значение;
            НовыйЭлемент.Заполнить(СЗ);
        КонецЕсли;
    КонецПроцедуры
    
    не могу понять куда записывать эти данные( может подскажете где посмотреть?) спасибо
  2. web.num
    Offline

    web.num Опытный в 1С Команда форума

    Регистрация:
    6 окт 2011
    Сообщения:
    905
    Симпатии:
    4
    Баллы:
    29
    этачо?
  3. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    Код:
    НовыйЭлемент = Документы.ПриходнаяНакладная.СоздатьДокумент();
    НовыйЭлемент.Дата = Дата;
    НовыйЭлемент.СуммаПоДокументу = 78767;
    Попытка
        НовыйЭлемент.Записать(РежимЗаписиДокумента.Проведение);
    Исключение
        Сообщить(ОписаниеОшибки());
    КонецПопытки;
    Дата - это стандартный реквизит, а СуммаДокумента - это реквизит в метаданных.
    upload_2016-2-24_9-45-52.png
  4. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    Здесь вместо "Документы.()" нужно написать место куда будет идти запись... я сразу писала Документы.РеализацияТоваровУслуг, но там я не нашла нужных реквизитов для заполнения
  5. nbIpKuH_BaH9I
    Offline

    nbIpKuH_BaH9I Модераторы Команда форума Модератор

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    Меня Вы, видимо, не увидели. Ну да ладно. Что за реквизиты то?
  6. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    нет нет) увидела) просто у себя искала такой документ) ПриходнаяНакладная... у меня такого нету почему-то, только РеализацияТоваровУслуг...
  7. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    В терминах пользователей приходной накладной обычно называют документ "ПоступлениеТоваровУслуг" в терминах 1С :)
  8. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    ну мне нужно заполнить эту форму [​IMG]
  9. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    там тоже нету нужных реквизитов... Не Номенклатуры, не цены...
  10. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    Цена и Номенклатура, как правило, это реквизиты табличной части.
  11. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    ну да... там они есть... а к ним я могу как-нибудь обратиться? записать в них данные
  12. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.549
    Симпатии:
    716
    Баллы:
    204
    Конечно, обращение к реквизитам ТЧ/присвоение им значений происходит на подобие обращения к/присвоения значений реквизитам объекта.

    Илона, вы насколько хорошо знакомы с программированием 1С?
    Может быть стоит почитать книги/сходить на курсы?
    Последнее редактирование: 24 фев 2016
  13. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    Ну я уже пол года работаю с 1С интенсивно) курсы меня ждут в Марте) спасибо, сейчас попробую обратиться к табличной части)
  14. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    Доброе утро. читала разную информацию в интернете по поводу записи данных в реквизиты табличной части, но так и не смогла разобраться...:( может кто подскажет, как обратиться к Табличной части документа РеализацияТоваровУслуг... Спасибо
  15. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    НоваяСтрока = ДокументОбъектТипаРеализацияТоваровУслуг.<ИмяТабличнойЧасти>.Добавить();
    НоваяСтрока.<Нужный реквизит 1> = <Значение реквизита 1>;
    ...
    НоваяСтрока.<Нужный реквизит n> = <Значение реквизита n>;
  16. TopicStarter Overlay
    iLona90
    Offline

    iLona90 Опытный в 1С

    Регистрация:
    9 ноя 2015
    Сообщения:
    131
    Симпатии:
    2
    Баллы:
    29
    Спасибо, Разобрались)

Поделиться этой страницей