8.х Вопрос по созданию таблицы значений

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

  1. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Создала новую таблицу значений ТЗ
    Создала колонки,добавляю строку и заполняю колонки.
    Но при выполнении выдает сообщение: "Поле объекта недоступно
    для записи (ТЗ)"
    Поскажите в чем дело
    Спасибо
  2. PaNo
    Offline

    PaNo

    Регистрация:
    11 сен 2007
    Сообщения:
    29
    Симпатии:
    0
    Баллы:
    1
    Код в студию.
  3. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Извините ,а мне не понятен ваш ответ или как говорится не догоняю
    Спасибо
  4. PaNo
    Offline

    PaNo

    Регистрация:
    11 сен 2007
    Сообщения:
    29
    Симпатии:
    0
    Баллы:
    1
    Я имею ввиду, что для того чтобы мы поняли где именно у Вас ошибка нам нужно увидеть часть кода, где возникает данная ошибка. Скопируйте из 1с в эту ветку форума код, так будет проще.
  5. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    ТЗ=Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Контрагент");
    НовСтр=ТЗ.Добавить();
    НовСтр["Контрагент"]=ТабДок.Область("R2C4").Текст;
    В Последней строке этого куска я задавала явное выражение
    Все равно сообщение дает
    Подскажите в чем причина
    Спасибо
  6. coder1cv8
    Offline

    coder1cv8 Опытный в 1С

    Регистрация:
    30 авг 2007
    Сообщения:
    101
    Симпатии:
    0
    Баллы:
    26
    В самом коде ошибок нет.
  7. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    1
    Баллы:
    26
    А если попробовать:
    Код:
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Контрагент");
    НовСтр = ТЗ.Добавить();
    НовСтр.Контрагент = ТабДок.Область("R2C4").Текст;
    
    
    В отладчике проверьте на какой строке ошибка. Возможно переменная ТЗ или НовСтр уже где-то используются. Проверьте ТабДок.
  8. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Да, действительно ТЗ уже использовалась
    Как приятно ,что вы помогли.
    Еще хотела бы узнать можно ли колонку в таблице значений ,
    которая заполняется текстовой информацией из табличного документа сделать числовой
    и подвести итог по этой колонке.
    Спасибо большое
  9. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    1
    Баллы:
    26
    Пожалуйста - за названиями переменных надо очень следить :)

    Если вы не определите тип значения колонки таблицы значений и будете заполнять эту колонку числами, ну например как нибудь так:

    Код:
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("ТекстоваяКолонка");
    ТЗ.Колонки.Добавить("ЧисловаяКолонка");
    
    
    И дальше заполните эту таблицу так, что в текстовой колонке будет текст, а в числовую будут попадать значения типа Число, то сможете подсчитать итог по числовой колонке.

    Кроме того - тип колонки можно заранее определить - посмотрите Хелп по методу Добавить() объекта КоллекцияКолонок

    А еще - если вы из документа берете ТЧ - можно заполнять таблицу значений другими методами, например Скопировать, ВыгрузитьКолонку и ЗагрузитьКолонку и т.д.
  10. TopicStarter Overlay
    OIT
    Offline

    OIT Опытный в 1С

    Регистрация:
    7 май 2007
    Сообщения:
    347
    Симпатии:
    0
    Баллы:
    26
    Спасибо Вам большое
    Все получилось с таблицей значений
    Но возник другой вопрос
    Без Вас никак
    Я получаю табличный документ на экране
    его редактирую и сохраняю через файл с расширением mxl
    но затем я собираюсь его прочитать,а мне выдает сообщение
    "Слишком много фактических параметров"
    ТабДок.Прочитать("Tabl","mxl");
    если убрать расширение то, не обнаруживает
    В чем дело
    Спасибо
  11. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    1
    Баллы:
    26
    Копирую Help

    Вам надо написать
    ТабДок.Прочитать("tabl.mxl");

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