Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 апр 2024, 01:08

Запись значения в Реквизит

Автор Malum, 11 сен 2018, 19:27

0 Пользователей и 1 гость просматривают эту тему.

Malum

Нужно записать прочитанное из файла значение в реквизит документа.
Делаю так, но не срабатывает.

&НаСервере
Процедура Команда3НаСервере()
   Файл = Новый ЧтениеТекста(Объект.Реквизит2);
   Стр = Файл.ПрочитатьСтроку();
   НовДок = Документы[Стр].СоздатьДокумент();
   НовДок.Дата = ТекущаяДата();
   Стр = Файл.ПрочитатьСтроку();
   Пока (Стр<>"НачТабЧасти") Цикл
      ИмяРек = Файл.ПрочитатьСтроку();
      НовДок[Стр]=ИмяРек;
      Стр = Файл.ПрочитатьСтроку();
   КонецЦикла;
   НовДок.Записать();
КонецПроцедуры

alex0402

Цитата: Malum от 11 сен 2018, 19:27Делаю так, но не срабатывает.

что не срабатывает? на первый взгляд все логично?
неожиданный результат?
алгоритм завершается по ошибке?
Спасибо за Сказать спасибо

Malum

Цитата: alex0402 от 12 сен 2018, 12:20
Цитата: Malum от 11 сен 2018, 19:27Делаю так, но не срабатывает.

что не срабатывает? на первый взгляд все логично?
неожиданный результат?
алгоритм завершается по ошибке?

Значение просто не записывается в реквизит. Т.е. создается документ, ставится дата, но он остается пустым.

alexandr_ll

Цитата: Malum от 12 сен 2018, 12:27
Цитата: alex0402 от 12 сен 2018, 12:20
Цитата: Malum от 11 сен 2018, 19:27Делаю так, но не срабатывает.

что не срабатывает? на первый взгляд все логично?
неожиданный результат?
алгоритм завершается по ошибке?
Что за реквизит НовДок[Стр]? Какой у него тип? Что в переменной ИмяРек?
Значение просто не записывается в реквизит. Т.е. создается документ, ставится дата, но он остается пустым.

Malum

Цитата: alexandr_ll от 12 сен 2018, 12:37
Цитата: Malum от 12 сен 2018, 12:27
Цитата: alex0402 от 12 сен 2018, 12:20
Цитата: Malum от 11 сен 2018, 19:27Делаю так, но не срабатывает.

что не срабатывает? на первый взгляд все логично?
неожиданный результат?
алгоритм завершается по ошибке?
Что за реквизит НовДок[Стр]? Какой у него тип? Что в переменной ИмяРек?
Значение просто не записывается в реквизит. Т.е. создается документ, ставится дата, но он остается пустым.
НовДок это документ объект. Стр это строка с именем реквизита, имярек это значение реквизита, взято из того же файла.

alex0402

Цитата: Malum от 12 сен 2018, 13:00имярек это значение реквизита

это не значение реквизита, а некое строковое представление реквизита в файле.
Его необходимо привести к типу реквизита, а только потом присваивать.
Если это справочник, то нужно найти соответствующий элемент, если документ, то соответствующий документ и так далее.
Спасибо за Сказать спасибо

alexandr_ll

Либо НовДок[Стр] не является реквизитом документа, либо этот реквизит не имеет тип Строка

Malum

Цитата: alex0402 от 12 сен 2018, 13:19
Цитата: Malum от 12 сен 2018, 13:00имярек это значение реквизита

это не значение реквизита, а некое строковое представление реквизита в файле.
Его необходимо привести к типу реквизита, а только потом присваивать.
Если это справочник, то нужно найти соответствующий элемент, если документ, то соответствующий документ и так далее.
НовЭлем = Справочники.Номенклатура.НайтиПоНаименованию(ИмяРек);
      НовДок[Стр]=НовЭлем;

Пишет, Поле объекта не обнаружено (Номенклатура)

alex0402

Цитата: Malum от 12 сен 2018, 13:38Пишет, Поле объекта не обнаружено (Номенклатура)

В какой строке?
справочник Номенклатура в базе имеется и он именно так называется? до буковки?
Спасибо за Сказать спасибо

Malum

Цитата: alex0402 от 12 сен 2018, 13:57
Цитата: Malum от 12 сен 2018, 13:38Пишет, Поле объекта не обнаружено (Номенклатура)

В какой строке?
справочник Номенклатура в базе имеется и он именно так называется? до буковки?
Я вас понял. Подскажите пожалуйста, можно ли сделать поиск среди всех справочников?

Теги: помощь 8.3  

Похожие темы (5)

Рейтинг@Mail.ru

Поиск