Таблицы Значений и Табличные части

    На всякий случай работаем так:
  • Внешняя Обработка
  • 1С 8.3 Бух 3.0
  • Отладка через Толстый клиент

Открытие №1 Таблица Значений и Табличная часть НЕ одно и то же.

2. Окно Форма / Закладка Элементы - тут Имя у всех реквизитов уникальное.

    Закладка Реквизиты:
  • Табличная часть (см. под Объектом ) , можно добавить несколько через основное окно.
  • Таблиц Значений тут может быть много

Из Закладки Реквизиты таскаем объекты на Форму.

Теперь главное "Таблица Значений" и "Табличная часть" ПРОГРАММНО заполняются &НаСервере. ИНТЕАКТИВНО заполняюся через визуальные формы &НаКлиенте.

Проблема в том, что заполнив программно &НаСервере , надо еще отобразить как-то &НаКлиенте [на Форме] (само ничего не отображается).

Для этого в процедуре &НаСервере ОБЯЗАТЕЛЬНО вначале применяем :


реквизитОбъект = РеквизитФормыВЗначение("Объект"); 
// для табличной части, т.к. 
//табличная часть входит в Объект:

реквизитТаблицаЗначений1=РеквизитФормыВЗначение("тз0");
 // а это для таблиц значений, самостоятельных ,
// не принадлежащих Объекту

тут &НаСервере работаем с данными , читаем , изменяем ....

в конце &НаСервере не забываем обновить отображение на форме:


ЗначениеВРеквизитФормы(реквизитТаблицаЗначений1,"тз0");

ЗначениеВРеквизитФормы(реквизитОбъект, "Объект");

Скопировать()

В середине кода &НаСервере заполняем:
допустим некая таблица значений тз1 создана в памяти на сервере, ее можно записать в таблицу значений на форме
реквизитТаблицаЗначений1 = тз1 .Скопировать(); // будут скопированы все колонки таблицы значений, но Колонки в реквизитТаблицаЗначений1 должны быть проименованы уже как в тз1.

С табличной частью такое не проходит , тут надо заполнять построчно через тч1.добавить();

Наименование колонок на Форме и в Объекте на сервере должны совпадать. Если наименования колонок не сходятся , то ЗначениеВРеквизитФормы(реквизитТаблицаЗначений1,"тз0") - выдаст ошибку и вы долго , как и я будете думать что ЗначениеВРеквизитФормы не работает!