Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Программирование формы списка справочника          
andrew76 Подменю пользователя
сообщение 19.05.14, 17:59
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Добрый вечер !

В 1С версии 7.7 периодические реквизиты справочника можно было указать для размещения их (периодических реквизитов) в форме списка этого справочника, т.е. чтобы
можно было их просматривать, редактировать и так далее.
При переносе прикладной задачки из версии 7.7 в версию 8.1 возникла проблема совместимости интерфейсов. Если раньше в 7-ке можно было указать в форме списка справочника следующие поля (Код, Наименование, Отдел(периодический реквизит),то в 8-ке это только через просмотр формы списка регистра. Пользователи привыкли (хотят чтобы интерфейс формы списка справочника был как в 1с 7.7). Нет ли какого-нибудь примера как этот механизм синхронизации данных в версии 8 реализовать (т.е. чтобы в форме списка справочника присутствовали поля Код, Наименование, а поле Отдел заполнялось бы из периодического регистра .(Число записей в справочнике более 20000).

Vofka Подменю пользователя
сообщение 19.05.14, 18:44
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Обработчик события списка ПриПолученииДанных() поможет вам.

Спасибо сказали: andrew76,

andrew76 Подменю пользователя
сообщение 20.05.14, 11:17
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Процедура ТабличноеПоле1ПриПолученииДанных(Элемент, ОформленияСтрок)
    
    Подразделение=РегистрыСведений.КадровыеДанныеГруппа;
    Отбор1 = Новый Структура("КадрДанные", Элемент.ТекущаяСтрока);
    Тек=Подразделение.ПолучитьПоследнее(ТекущаяДата(),Отбор1);
    Подр_=Тек.Группа;

КонецПроцедуры


 ! 

Правила, п.12
 

Примерно так вот вышло,а как строку Подр_ "приклеить" к форме списка справочника ?
Сделал пустую колонку в табличном поле ,при попытке записать туда результат чтения регистра-вылетает ошибка
"Ошибка при установке значения атрибута"

Сообщение отредактировал logist - 20.05.14, 11:30

Altair777 Подменю пользователя
сообщение 20.05.14, 13:21
Сообщение #4

Общительный
**
Группа: Пользователи
Сообщений: 30
Из: Харьков
Спасибо сказали: 3 раз
Рейтинг: 0

Во-первых, это надо делать в цикле. ПриПолученииДанных возвращает коллекцию строк.
А, во-вторых, как-то так
ОформлениеСтроки.Ячейки.СостояниеОбъекта.УстановитьТекст(СостояниеОбъекта);

Спасибо сказали: andrew76,

andrew76 Подменю пользователя
сообщение 21.05.14, 6:27
Сообщение #5

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Данные колонки (Колонка1 в форме списка) заполняются,но не синхронно:
Может кто подскажет , что в коде не так как надо?


Процедура ТабличноеПоле1ПриПолученииДанных(Элемент, ОформленияСтрок)
    
          Подразделение=РегистрыСведений.КадровыеДанныеГруппа;
          Отбор1 = Новый Структура("КадрДанные", Элемент.ТекущаяСтрока);
          Тек=Подразделение.ПолучитьПоследнее(ТекущаяДата(),Отбор1);
    
          Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
             ОформлениеСтроки.Ячейки.Колонка1.УстановитьТекст(Тек.Группа);
          КонецЦикла;

КонецПроцедуры

logist Подменю пользователя
сообщение 21.05.14, 8:16
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

В Отбор1 должно быть что-то еще после ТекущаяСтрока, в регистре не может хранится ссылка на строку таблицы в таком виде.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Vofka Подменю пользователя
сообщение 21.05.14, 8:45
Сообщение #7

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

logist, в ТекущаяСтрока скорей всего содержится ссылка на элемент справочника.

andrew76 Подменю пользователя
сообщение 21.05.14, 8:58
Сообщение #8

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Так точно,сейчас проблема не в чтении из регистра (здесь всё работает),проблема с заполненнием Колонки1 в табличном поле.Данные из регистра записываются в колонку ,но не синхронно.

Vofka Подменю пользователя
сообщение 21.05.14, 9:13
Сообщение #9

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

А что значит не синхронно?

andrew76 Подменю пользователя
сообщение 21.05.14, 9:22
Сообщение #10

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

При открытии формы списка справочника Колонка1(просто колонка,не связанная с реквизитом справочника) пуста.
Почему ? Может обработчик на другое событие повесить? Далее-При скроллинге записей Колонка1 начинает заполняться.Может я не верно написал код ?


Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл 
      ОформлениеСтроки.Ячейки.Колонка1.УстановитьТекст(Тек.Группа);
КонецЦикла;

andrew76 Подменю пользователя
сообщение 22.05.14, 6:34
Сообщение #11

Оратор
*****
Группа: Пользователи
Сообщений: 443
Из: Казахстан
Спасибо сказали: 43 раз
Рейтинг: 43

Ура,заработало.Событие то же самое -ПриПолученииДанных,только читать данные из регистра мне надо было в цикле,что я и сделал.Теперь следующий вопрос-Как эту (вычисляемую по сути) Колонку1 добавить в список доступных
полей отбора для формы списка справочника? Если такое вообще возможно-ведь Колонка1 ни с каким реквизитом формы справочника не связана?

Vofka Подменю пользователя
сообщение 22.05.14, 7:42
Сообщение #12

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Цитата(andrew76 @ 22.05.14, 7:34) *
Теперь следующий вопрос

Теперь пришло время ознакомится с правилами, в частности пункт 6.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Тема закрыта Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 26.04.24, 17:06
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!