8.х УНФ Загрузка номенклатуры из Excel

Тема в разделе ""1С:Управление небольшой фирмой УНФ"", создана пользователем yhou, 29 янв 2016.

  1. TopicStarter Overlay
    yhou
    Offline

    yhou Новичок в 1С

    Регистрация:
    29 янв 2016
    Сообщения:
    6
    Симпатии:
    1
    Баллы:
    4
    Есть проблема при загрузке номенклатуры из Excel стандартными средствами. Суть - в справочник номенклатуры вставлены дополнительные поля (длина/ширина/производитель и т.д.). Ном-а грузится, но если чтото изменить и загрузить еще раз (обновляя данные номенклатуры) - Пишет что значения обновлены, а по факту - нет. Help me pleease! В чем загвоздка?
  2. bajiepka
    Offline

    bajiepka Опытный в 1С

    Регистрация:
    26 сен 2014
    Сообщения:
    322
    Симпатии:
    22
    Баллы:
    29
    может они "вставлены" не в справочник номенклатуры? конфигуратором надо пробежаться и посмотреть что записывает и записывает ли...
  3. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    ...
    Последнее редактирование: 26 ноя 2016
  4. TopicStarter Overlay
    yhou
    Offline

    yhou Новичок в 1С

    Регистрация:
    29 янв 2016
    Сообщения:
    6
    Симпатии:
    1
    Баллы:
    4
    А может быыыыыыть...... я просто не опытный в 1с? И "пробежаться конфигуратором" для двух опытных в 1с это вовсе не то же самое что для меня?
  5. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    Статус на форуме, реальные профессиональные навыки, просто желание помочь - это много разные вещи.:)
    Последнее редактирование: 26 ноя 2016
  6. TopicStarter Overlay
    yhou
    Offline

    yhou Новичок в 1С

    Регистрация:
    29 янв 2016
    Сообщения:
    6
    Симпатии:
    1
    Баллы:
    4
    Еще кто ерничает... Зайду думаю, зарегистрируюсь, скажу ребятам, что вставил дополнительные поля. А то они не в курсе еще... Чего сделать то?
    http://joxi.ru/YmEVvkJIZLJ8P2
    Поле не изменяется
    http://joxi.ru/krDpw9Jf0dJpRr
    значения имеются
    ехсель их не меняет
  7. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    ...
    Последнее редактирование: 26 ноя 2016
  8. TopicStarter Overlay
    yhou
    Offline

    yhou Новичок в 1С

    Регистрация:
    29 янв 2016
    Сообщения:
    6
    Симпатии:
    1
    Баллы:
    4
    Ну я б уж так горяче не сказал, мне на начальном этапе здорово помог, коль позиций много. Только он на самом деле работает не понятно как.
    Example: Загрузил колонками данные номенклатуры - все в норме.
    если потом менять/дополнять:
    загружаю Наименование (обязаловка) + Артикул + например Вес то слетает Описание
    загружаю Наименование + Описание +Вес - слетает Артикул
    Загружаю Наименование +Описание +Артикул +Вес - значение Веса не изменяется... Х-поймешь...
    Криво/косо как то загрузил все данные, остальное руками подкорректировал.
    Кстати про атомы: кабель и проволоку мелких сечений продают как правило бухтами, причем налево и направо. Так вот "Бухта" типовом справочнике ед. изм. отсутствует, зато присутствует единица "Килограмм урана" ))))
    А так, я не обижаюсь. Я че сюда то и написал, что тут вроде не боты, и вопрос решить гораздо реальней, нежели с ИТС. А мне в ответ "Может автор... "
    Короче, буду в этой теме писать свои замечания по Excel. Спасиб за помощь коллеги!
    alexburn нравится это.
  9. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    а фишка в том что ранее "Бухта" была, 100%
    сам подбирал из ОКЕИ, шланги в них были :)
  10. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    ...
    Последнее редактирование: 26 ноя 2016
  11. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    там в редакции от 28.03.2014

    -"№9 утверждено Приказом Росстандарта от 28.03.2014 №248-ст, действует с 01.07.2014"
  12. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    ...
    Последнее редактирование: 26 ноя 2016
  13. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.433
    Симпатии:
    373
    Баллы:
    104
    не было :) , просто считается от даты изменяющего документа, в данном случае от 28 марта 2014.
  14. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    ...
    Последнее редактирование: 26 ноя 2016
  15. TopicStarter Overlay
    yhou
    Offline

    yhou Новичок в 1С

    Регистрация:
    29 янв 2016
    Сообщения:
    6
    Симпатии:
    1
    Баллы:
    4
    Короче замечено следующее при загрузке из Excel номенклатуры с дополнительными реквизитами: Если в справочнике есть позиции, и мы пытаемся добавить данные по ним, обязательными для заполнения полями являются помимо Наименования еще Артикул, Поставщик, Описание (хотя при загрузке данное поле называется Комментарий). Если какое либо из этих столбцов не указать - оно обнулится. Более того, если есть дополнительные реквизиты, и эту колонку хотя бы раз загружали в Номенклатуру - перезаписать с помощью Excel ее невозможно.
  16. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    Погонял на Демо 1.6.3.11. Заодно в очередной раз подивился прочим "творениям"...
    Ошибка здесь:
    ОбщиеМодули-ЗагрузкаДанныхИзВнешнегоИсточника-Процедура ДобавитьДополнительныйРеквизитВОбъект
    Код:
    Если ЭтоСуществующийОбъект Тогда
                   ОтборСтрок = Новый Структура("Свойство", Свойство);
            СтрокаДопРеквизита = ЭлементСправочника.ДополнительныеРеквизиты.НайтиСтроки(ОтборСтрок);
            ///Вместо        ///Если СтрокаДопРеквизита.Количество() < 1 Тогда
            ///поставить так
            Если СтрокаДопРеквизита.Количество() > 0 Тогда
    
    Проверено с указанием при загрузке Наименование, Артикул, доп.реквизит Производитель.
    Последнее редактирование: 13 мар 2016
  17. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    1.6.4.х - ничего не исправлено.
    Добавляю также свое решение при начальном импорте, либо групповом добавлении с новыми значениями строковых доп.реквизитов. Исключаем создание дубликатов значений:
    ОбщиеМодули-ЗагрузкаДанныхИзВнешнегоИсточникаПереопределяемый-Процедура СопоставитьДополнительноеСвойство
    добавляется вставка
    Код:
    Если НЕ РезультатЗапроса.Пустой() Тогда
    
            Выборка = РезультатЗапроса.Выбрать();
            Если Выборка.Следующий() Тогда
     
                ЗначениеДопРеквизита = Выборка.ЗначениеСвойства;
     
            КонецЕсли;
        ///Rad начало вставки
        Иначе
             Если НЕ ПустаяСтрока(СтроковоеЗначение)  Тогда 
             /// СокрЛП(СтроковоеЗначение)<>""
    
              СоздатьДополнительноеСвойство(ЗначениеДопРеквизита, Свойство, ИспользоватьИерархию, СтроковоеЗначение);
            КонецЕсли;
        ///Rad конец вставки
        КонецЕсли;
    Топикстартер пропал куда-то :)
    Последнее редактирование: 16 мар 2016
  18. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    Пока гонял и с партиями разобрался. :)
    Добавлю сюда же корректировку Загрузки начальных остатков (Запасы) с партиями. Может кому пригодится.
    С августа прошлого года разработчики так и не удосужились доработать.
    ОбщиеМодули-ЗагрузкаДанныхИзВнешнегоИсточникаПереопределяемый-Процедура СопоставитьПартию
    добавляется вставка:
    Код:
    Если НЕ ЗначениеБылоСопоставлено
                И ЗначениеЗаполнено(Партия_ВходящиеДанные) Тогда
               
                СправочникСсылка = Справочники.ПартииНоменклатуры.НайтиПоНаименованию(Партия_ВходящиеДанные, Ложь, , Номенклатура);
                Если ЗначениеЗаполнено(СправочникСсылка) Тогда
                   
                    Партия = СправочникСсылка;
                ///Rad начало вставки Создание партий и их сопоставление
                Иначе
                    НоваяПартия = Справочники.ПартииНоменклатуры.СоздатьЭлемент();
                    НоваяПартия.Владелец = Номенклатура;
                    НоваяПартия.Наименование = СокрЛП(Партия_ВходящиеДанные);
                    НоваяПартия.Статус = ПредопределенноеЗначение("Перечисление.СтатусыПартий.СобственныеЗапасы");
                    НоваяПартия.Записать();
                    Партия = НоваяПартия.Ссылка;
                 ///Rad конец вставки
                КонецЕсли;
               
            КонецЕсли;
  19. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    Вопрос автора темы, в общем-то, решен.
    Будем надеяться, что разработчики планируют в корне переписать все модули ОбщиеМодули-ЗагрузкаДанныхИзВнешнегоИсточника.

    P.S.: Все что предложено мной, мною проверено. Используем же на свой страх и риск. :)
    Последнее редактирование: 17 мар 2016
  20. Rad&K
    Offline

    Rad&K Профессионал в 1С

    Регистрация:
    3 авг 2015
    Сообщения:
    484
    Симпатии:
    40
    Баллы:
    54
    1.6.6.54, а воз и ныне там...
    Добавим в это же "грязное дело" ещё одну "кляксу" с Характеристиками...
    ОбщиеМодули-ЗагрузкаДанныхИзВнешнегоИсточникаПереопределяемый-Процедура СопоставитьХарактеристику
    добавляется вставка:
    Код:
    Если ЗначениеЗаполнено(СправочникСсылка) Тогда
                  
                    Характеристика = СправочникСсылка;
                  
                /// Начало вставки Создание характеристик и их сопоставление
                Иначе
                    НоваяХарактеристика = Справочники.ХарактеристикиНоменклатуры.СоздатьЭлемент();
                    НоваяХарактеристика.Владелец = Номенклатура;
                    НоваяХарактеристика.Наименование = СокрЛП(Характеристика_ВходящиеДанные);
                    НоваяХарактеристика.Записать();
                    Характеристика = НоваяХарактеристика.Ссылка;
                 /// Конец вставки
                КонецЕсли;
    
    Leravit нравится это.

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