8.х УФ как добавить колонки в тч програмно

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

  1. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте.

    Из докумета открываю уф - передаю ей через параметр ТЗ

    Нужно сделаить так чтобы в тч была загружена тз а потом вернуть тз уже измененную в исходную вызывающую форму

    пытался сдеалть так
    ПРи создании насервере

    ЭтаФорма.Номенклатура.Загрузить(Параметры.Тз);

    показывает пустые строки.....
  2. KrivosheevEV
    Offline

    KrivosheevEV Новичок в 1С

    Регистрация:
    3 мар 2014
    Сообщения:
    35
    Симпатии:
    2
    Баллы:
    4
    В "Параметры.Тз" строки есть? Наименования колонок совпадают? Добавь пустых строк в "ЭтаФорма.Номенклатура".
  3. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Строки в передаваемой тз есть , наименования колонко не совпадают.
    в форме по сути в тч должна быть тз её структура иеё данные .
  4. KrivosheevEV
    Offline

    KrivosheevEV Новичок в 1С

    Регистрация:
    3 мар 2014
    Сообщения:
    35
    Симпатии:
    2
    Баллы:
    4
    Табличная часть.Загрузить (Tabular section.Load)
    Табличная часть (Tabular section)
    Загрузить (Load)
    Синтаксис:

    Загрузить(<Таблица>)
    Параметры:

    <Таблица> (обязательный)

    Тип: ТаблицаЗначений.
    Таблица значений, откуда загружается табличная часть. Колонки таблиц совмещаются по именам.
    Описание:

    Загружает табличную часть из таблицы значений. При этом все прежние строки табличной части удаляются. При загрузке значения в колонках табличной части заполняются значениями из колонок таблицы значений с совпадающими именами.
    Доступность:

    Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
    Примечание:

    Использование метода допустимо только в том случае, если табличная часть получена из свойства объекта. Если табличная часть получена из свойства ссылки (или выборки), то использование этого метода будет вызывать ошибку выполнения.
    Пример:

    Состав.Загрузить(ТаблицаСостава);
  5. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Тч пустая можно у неё удалить колонки и создать те колонки котрые есть в моей тз ?
  6. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    что в вашем понимании ТЧ?
  7. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Элемент формы - таблица .
  8. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.949
    Симпатии:
    149
    Баллы:
    104
    Только программно добавляя каждую колонку.
    По сути, Вам надо будет программно создать две таблицы: таблицу - реквизит формы (то, что в управляемой форме на вкладке "Реквизиты") и связанную с ней таблицу - элемент формы (то, что на вкладке "Элементы").
    Код не смогу подсказать. В голове такой код не удержать :) В интернете можно найти.
    Но если колонки известны заранее, тогда лучше и проще сразу создать таблицу с соответствующим набором колонок. )
  9. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Я сделал добавление колонок - теперь мне нужно передать тз из тч формы обратно . каким образом жэто можно сделать ?
  10. Thelearning
    Offline

    Thelearning Профессионал в 1С Команда форума

    Регистрация:
    9 сен 2010
    Сообщения:
    701
    Симпатии:
    72
    Баллы:
    54
    Через временное хранилище.
  11. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    можно пример кода ?
  12. Thelearning
    Offline

    Thelearning Профессионал в 1С Команда форума

    Регистрация:
    9 сен 2010
    Сообщения:
    701
    Симпатии:
    72
    Баллы:
    54
    В форме по кнопке "Ок" (ну или как она называется у Вас)
    Код:
    АдресВХранилище = ПоместитьВоВременноеХранилище(ВашаТЗ);
    Затем в процедуре которая у вас обрабатывает работу с формой прописываете
    Код:
    ТЗ = ПолучитьИзВременногоХранилища(РезультатЗакрытияФормы);
    ЗначениеВРеквизитФормы(ТЗ, "ТЗФормы");
    Вы кстати как форму открываете и передаете в нее ТЗ? Используя немодальные вызовы?
  13. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Сейчас пытался сделать модально

    что -то не понял когда помещаете у ваас называется адрес
    а когдвызываете результат закрытия ????
  14. Thelearning
    Offline

    Thelearning Профессионал в 1С Команда форума

    Регистрация:
    9 сен 2010
    Сообщения:
    701
    Симпатии:
    72
    Баллы:
    54
    Ну у Вас когда закрывается форма в которой были правки в ТЗ должна вызываться первая часть кода (помещение в хранилище). Это можно реализовать по кнопке "Ок"
    Код:
    &НаКлиенте
    Процедура ОкНажатие(Команда)
    
       АдресВХранилище = ПоместитьВоВременноеХранилище(ТЗ);
    
       Закрыть(АдресВХранилище);
    
    КонецПроцедуры
    А получение из хранилища уже обрабатывается в зависимости от того, как используется режим модальности. Сейчас это должно быть примерно так:
    Код:
    &НаСервере
    Процедура ОбработкаЗакрытияФормыРедактирования(РезультатЗакрытия, ДополнительныеПараметры) Экспорт
    
       Если РезультатЗакрытия = Неопределено Тогда
          Возврат;
       КонецЕсли;
    
       ЗначениеВРеквизитФормы(ПолучитьИзВременногоХранилища(РезультатЗакрытия), "ИмяРеквизита");
    
    КонецПроцедуры
  15. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    когда у меня форма на которой я изменяю тз закрывается - я перехожу к форме владельцу - мне нужно в ней обрабатывать эту полученную тз а незакрывать её сразу же .......................................

    я так и не понял - опять я кудато записываю тз и в итоге не могу её получить.........

    а может ещё подскажете у меня в при открытии на сервере есть список колонок - но когда я обрабатываю тз - для того чтобы сохранить её в хранилище - у меня их уже нет - как можно сохранить значение из параметров формы чтобы оно было потом доступно ?
    --- Объединение сообщений, 10 дек 2014 ---
    А как я уже на клиенте получу адресвхранилище ????????????
    --- Объединение сообщений, 10 дек 2014 ---
    ячто то записываю кудато- чтобы это зпатем появялось на клиенте............в итоге не решив 1дну проблему уменя аналогичная по поводу адреса .................................
    Последнее редактирование: 10 дек 2014
  16. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    ?????????????????
    --- Объединение сообщений, 10 дек 2014 ---
    примерно понял - проверяю.
    --- Объединение сообщений, 10 дек 2014 ---
    Не понял все равно что это за процедура
    Процедура ОбработкаЗакрытияФормыРедактирования

    ??????????с чем она связана ?
    Последнее редактирование: 10 дек 2014
  17. Thelearning
    Offline

    Thelearning Профессионал в 1С Команда форума

    Регистрация:
    9 сен 2010
    Сообщения:
    701
    Симпатии:
    72
    Баллы:
    54
    Так. Как Вы открываете форму для редактирования??? Без использования модальности или с использованием? Эта процедура для варианта без использования модальных окон, наименование которой пишется в описании оповещения. Имя может быть любым.
    1cport нравится это.
  18. TopicStarter Overlay
    1cport
    Offline

    1cport Опытный в 1С

    Регистрация:
    25 авг 2014
    Сообщения:
    114
    Симпатии:
    1
    Баллы:
    29
    Все получилось спасибо !!!!

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