8.х Преобразование значений

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем mhl, 16 апр 2009.

  1. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    пишу обработку для переброски данных из Эксель в 1С. При выборке из Экселя все значения выходят с типом строка. По этой причине не получается записать данные в реквизит номенклатура. Как можно преобразовать строковый тип в тип СправочникСсылка.Номенклатура?
  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Справочники.<Имя справочника?>.НайтиПоНаименованию(....)
  3. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    выборка идет не из справочника, а из документа Excel. А в реквизит с типом СправочникСсылка.Номенклатура надо вставить полученное из Экселя значение, которое имеет тип Строка.
  4. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Ну так прежде чем вставить в реквезит строку ее же нужно преобразовать. BabySG дал намек:)
  5. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Посмотрите, что делает функция, которую я описал - читайте справку и все будет понятно :)
  6. tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    на всякий случай объясню человеку то, что остальные подразумевали :)

    Нельзя ссылочному реквизиту "номенклатура" присвоить строковое значение :) Чтобы все заработало, сначала придется создать (или подобрать если уже существует такой) соответствующий элемент справочника номенклатура. строковое значение из экселя вы можете сопоставить с наименованием элемента справочника, т.е. порядок ваших действий примерно таков:
    1) проверяем есть ли уже такая номенклатура с помощью вышеприведенного кода
    2) если еще нет, то создаем новый элемент справочника номенклатура, заполняем его и записываем. Наименование элемента приравниваем к строке из экселя...
    3) подставляем в документ найденный/созданный элемент справочника номенклатура.

    П.С. единственное, что придется вам быть осторожным с наименованиями... придется отслеживать их уникальность, что не всегда возможно на уже заполненной 10000 наименованиями базе. Или использовать полное наименование, если у вас в экселе действительно оно полное :) Или же создать свой реквизит что-то типа "НаименованиеДляВыборкиИзЭкселя", по которому и будет проходить поиск элемента...
  7. tirk
    Offline

    tirk Опытный в 1С

    Регистрация:
    1 сен 2008
    Сообщения:
    1.142
    Симпатии:
    0
    Баллы:
    26
    А вообще на форуме валяются куча обработок по загрузке из excel скачай и посмотри....

    Вложения:

  8. WWW123
    Offline

    WWW123 Опытный в 1С

    Регистрация:
    23 фев 2009
    Сообщения:
    181
    Симпатии:
    0
    Баллы:
    26
    Вы просто скажите как переносятся данные, если делать
    я делал в таком виде:
    Код:
    Ячейка = Лист.Cells (ИндексСтроки,ИндексКолонки).value;
    
    
    и разу пихал в справочник(документ), всё получалось именнто с тем типом который был в Екселе
  9. WWW123
    Offline

    WWW123 Опытный в 1С

    Регистрация:
    23 фев 2009
    Сообщения:
    181
    Симпатии:
    0
    Баллы:
    26
    tirk - простоте, но это всё к 8.1
    ЗагрузкаИзExcel.epf ( 6.77 килобайт ) Кол-во скачиваний: 10
    ЗагрузкаДанныхИзТабличногоДокумента.epf ( 68.57 килобайт ) Кол-во скачиваний: 6

    а для 8.0 что нибудь осталось?
  10. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Вродь под 8.0.

    Вложения:

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