8.х ЗагрузкаИзТабличногоДокумента

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

  1. TopicStarter Overlay
    qwed557
    Offline

    qwed557 Опытный в 1С

    Регистрация:
    21 авг 2011
    Сообщения:
    131
    Симпатии:
    0
    Баллы:
    26
    Ситуация такая: с помощью обработки ЗагрузкаИзТабличногоДокумента загружаю номенклатуру цену, ед. измерения. Как задать единицу для отчетов и единицу хранения остатков? Если поставить искать в том же поле что и единица измерения то выходит ошибка:{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(1455)}: Ошибка при вызове метода контекста (Свойство)
    ТекущиеДанные.Свойство(Колонка.СвязьПоВладельцу,СвязьПоВладельцу);
    по причине:
    Задано неправильное имя атрибута структуры.

    И еще вопрос: Есть родитель в нем подпапки, допустим есть папка 1 а вней папка 2 и есть папка 3 и в ней тоже есть папка 2, то как грузить номенкалтуру в такие папки, пишет что вариантов 2 или больше.

    З.Ы. Управление торговлей 10
  2. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    ну первая ошибка говорит сама за себя... найдите строку с этим номером и проверьте название атрибута
  3. TopicStarter Overlay
    qwed557
    Offline

    qwed557 Опытный в 1С

    Регистрация:
    21 авг 2011
    Сообщения:
    131
    Симпатии:
    0
    Баллы:
    26
    а вы сами пользовались этой обработкой? там скорее всего надо прописать какой то код, чтобы эти значения брались из базовой ед. измерения, вопрос какой код?
  4. Pawlic
    Offline

    Pawlic

    Регистрация:
    2 мар 2012
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Такая задача делается в два этапа.

    1 Этап:

    1. В файле из которого грузите номенклатуру создаете две колонки. В этих колонках пишите: шт.
    2. Загружаете в справочник наименование и полное наименование. Колонки шт. пока не трогаете.


    2 Этап:

    Ставите галочку "Не создавать новых элементов"
    В строке "Наименование" ставите галочку "поле поиска", режим загрузки - Искать, указываете номер колонки с наименованием

    В строках Единица для отчетов и Единица хранения остатков ставите режим закрузки "Вычислять", указываете номера строк, где ранее ввлели значение "шт.", а в вырежение пишите:
    Код:
    СсылкаНоменклатуры = Справочники.Номенклатура.НайтиПоНаименованию(ТекущиеДанные["Наименование"]);
    БазоваяЕдиницаИзмерения = Справочники.КлассификаторЕдиницИзмерения.НайтиПоКоду(796);
    ТекСпр=Справочники.ЕдиницыИзмерения.НайтиПоРеквизиту("ЕдиницаПоКлассификатору",БазоваяЕдиницаИзмерения,,СсылкаНоменклатуры);
    Если ТекСпр.Пустая() Тогда
    НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент();
    НайденнаяЕдиницаОбъект.Наименование = СокрЛП(БазоваяЕдиницаИзмерения);
    НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = БазоваяЕдиницаИзмерения;
    НайденнаяЕдиницаОбъект.Коэффициент = 1;
    НайденнаяЕдиницаОбъект.Владелец = СсылкаНоменклатуры;
    Попытка НайденнаяЕдиницаОбъект.Записать();
    Результат = НайденнаяЕдиницаОбъект.Ссылка;
    Исключение Сообщить("Не удалось записать");
    КонецПопытки;
    Иначе Результат =ТекСпр.Ссылка;
    КонецЕсли;

    И наслаждаетесь...
  5. TopicStarter Overlay
    qwed557
    Offline

    qwed557 Опытный в 1С

    Регистрация:
    21 авг 2011
    Сообщения:
    131
    Симпатии:
    0
    Баллы:
    26
    а если не только штуки а много разных ед измерений то как тогда быть?
  6. daWindie
    Offline

    daWindie

    Регистрация:
    6 мар 2012
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    опыт нет, посему подпишусь.

    сформулирую свой вопрос на эту же тему:

    как указать множество "родителей" в Excel-вском файле, чтобы при "Загрузке из табличного документа" номенклатура была создана в соответствии со своей группой?
  7. Dmitriy_76
    Offline

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

    Регистрация:
    26 мар 2011
    Сообщения:
    2.175
    Симпатии:
    13
    Баллы:
    29
    Родитель1/Родитель2/.../РодительN/

    разбирай строку(ищи символ "/"), создавай родителей...
  8. daWindie
    Offline

    daWindie

    Регистрация:
    6 мар 2012
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    уж не знаю как признаться, но я похоже в 1с ниже уровня любого пользователя... :vis:

    итак по-шагово:
    1. сформирован лист экселя с такими столбцами: 1 - артикул, 2 - наименование, 3 - родители
    в артикуле понятно что, в наименовании понятно что, в родителях записи такого вида: "Весна-Лето 2012/Мужской/Кроеный трикотаж/"

    2. в 1с в справочнике номенклатура, заведены группы в соответствии: Основная группа "Весна-Лето 2012", в ней группа "Мужской", в ней группа "Кроеный трикотаж"
    3. при использовании внешней обработки "Загрузка данных из табличного документа", указываю, что где находится и проставляю номера этих столбцов, кроме родителей и просто загружаю номенклатуру в справочник, потом второй круг, указываю что родителей надо искать по Наименованию и нажимаю "Контроль заполнения", получаю ответ "Ячейка[R2C3](Родитель): Не найден" и так ко всем позициям.

    естественно у меня в справочнике есть точно такие же группы, но "женские" аля "Весна-Лето 2012/Женский/Кроеный трикотаж/" и если я убираю _старших_родителей_ и оставляю только "Кроенный трикотаж", то ошибка уже идет такая: "Ячейка[R2C3](Родитель): Не однозначное представление. Вариантов: 2"

    Что я делаю может быть не так?

    1С 8.2.15.289 Управление Торговлей 10.3.14.5
  9. Vell61
    Offline

    Vell61

    Регистрация:
    9 апр 2012
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Прошу прокоментировать подробнее... если можно как на примере со Шт, заранее спасибо!

    П.С. требуется помощь 1с писаря, обращаться в личку...
  10. alexlab
    Offline

    alexlab

    Регистрация:
    29 май 2011
    Сообщения:
    18
    Симпатии:
    0
    Баллы:
    1
    Загружаю номенклатуру из экселя. Как сделать так чтобы при каждой загрузке не создавался дубль элемента. Если ставлю галку Не создавать новых элементов, то вообще ничего не добавляется в справочник. В общем нужно так: если элемент есть в справочнике он должен обновиться, если нет- добавиться.
  11. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    через чего загружаете? надо просто сделать проверку, если нашли элемент, то получить его, изменить реквизиты и записать, а если не нашли, то создаем новый
  12. alexlab
    Offline

    alexlab

    Регистрация:
    29 май 2011
    Сообщения:
    18
    Симпатии:
    0
    Баллы:
    1
    Ну как через чего, тема то про стандартную обработку ЗагрузкаИзТабличногоДокумента.
  13. x_under
    Offline

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

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Поля поиска не заданы значит. Галки проставьте.
  14. tipatun
    Offline

    tipatun

    Регистрация:
    30 дек 2011
    Сообщения:
    11
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте! Подскажите как сделать если не только штуки а много разных ед измерений
  15. x_under
    Offline

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

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Написать код, который будет создавать их.
  16. newuser1c
    Offline

    newuser1c

    Регистрация:
    30 июл 2012
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Добрый день! К сожалению, не являюсь 1с-программистом - нужна Ваша помощь. Единица хранения остатков товара - упаковки. Базовая единица - штуки. Коэффициент перевода из штук в упаковки - 5 (в одной упаковке 5 штук). Всего позиций, которых необходимо загрузить в базу - 2370. Руками набивать - умрешь. Подскажите, как надо модифицировать приведенный ниже код (спасибо to Pawlic), чтобы правильно заполнить единицы хранения остатков?

    Код:
    СсылкаНоменклатуры = Справочники.Номенклатура.НайтиПоНаименованию(ТекущиеДанные["Наименование"]);
    БазоваяЕдиницаИзмерения = Справочники.КлассификаторЕдиницИзмерения.НайтиПоКоду(796);
    ТекСпр=Справочники.ЕдиницыИзмерения.НайтиПоРеквизиту("ЕдиницаПоКлассификатору",БазоваяЕдиницаИзмерения,,СсылкаНоменклатуры);
    Если ТекСпр.Пустая() Тогда
    НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент();
    НайденнаяЕдиницаОбъект.Наименование = СокрЛП(БазоваяЕдиницаИзмерения);
    НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = БазоваяЕдиницаИзмерения;
    НайденнаяЕдиницаОбъект.Коэффициент = 1;
    НайденнаяЕдиницаОбъект.Владелец = СсылкаНоменклатуры;
    Попытка НайденнаяЕдиницаОбъект.Записать();
    Результат = НайденнаяЕдиницаОбъект.Ссылка;
    Исключение Сообщить("Не удалось записать");
    КонецПопытки;
    Иначе Результат =ТекСпр.Ссылка;
    КонецЕсли;
    Заранее большое спасибо!
  17. jetonz
    Offline

    jetonz

    Регистрация:
    6 окт 2012
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Что-то не так. Данные в номенклатуру подтягиваются, но значения "Единицы хранения остатков" и "Ед. для отчетов" не применяются до тех пор, пока не откроешь новую позицию, и не нажмешь на кнопку "Записать".
    Как быть?
Похожие темы
  1. minion
    Ответов:
    2
    Просмотров:
    389
Загрузка...

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