Имя: Пароль:
1C
 
1С: v7.7 Как "заморозить" колонку в табличной части документа?
0 panikena
 
03.12.03
16:14
В табличной части документа имеется несколько десятков реквизитов. При редактировании (в строке таблицы)очередного реквизита, предыдущий сдвигается  влево и пропадает из видимости. Как сделать(к примеру первую колонку с наименованием) постоянно видимой в документе?
1 gr13
 
03.12.03
16:21
Интересный вопрос, в Exсel делается без проблем, а в 1с надо подумать
2 skunk
 
03.12.03
18:22
Играть видимостью колонок. Но это не красиво. Постоянно моргает. И все равно возможны глюки. Поскольку в модуле ты не можешь узнать изменил ли пользователь размер формы документа, и какова ширина табличной части и какова ширина текущей колонки.
Поэтому можно 100% сказать, что нет.
3 shura
 
03.12.03
18:31
Ищи FormEx. Или давай мыло, вышлю.
4 skunk
 
03.12.03
19:25
(3) прикольная вещь. спасибо
Народ кому надо версию 1.8 от 24.10.2003 можно взять здесь
http://www.download.ru/russian/sp/14158.htm

Краткое описание

Перед Вами компонента, предоставляющая дополнительные средства для работы с формами в 1С:Предприятии. Основнной функционал сводится к следующим пунктам:
- раскраска таблиц на форме (многострочные части документов, формы списков, таблицы значений и т.д.);
- работа с реквизитами формы (доступ вне зависимости от существования у реквизита идентификатора);
- перехват событий от мыши (выполнено в виде предопределенных процедур);
- перехват нажатий на клавиатуре (выполнено в виде предопределенных процедур);
- обработка события "после открытия окна формы" (предопределенная процедура);
- обработка события изменения размера формы (предопределенная процедура);
- выполнение процедур и функций модуля формы через ее контекст;
- выбор значения в виде дерева или многоуровневого меню (расширенный аналог метода ВыбратьЗначение() штатного объекта СписокЗначений);
- получение контекста (в понятиях 1С) активного окна;
- получение типа любой формы, а так же полного пути к форме в метаданных;
- получение части окна в виде штатного объекта Картинка;
- фиксирование многострочной части формы (аналог метода Фиксировать штатного объекта ТаблицаЗначений).
5 shura
 
03.12.03
19:29
Но, если често, как-то не пришлось мине... Кинулся сначала тоже, думаю: Класс! Но как посмотрел демку, че-то больно медленно работает, потом поставил , хотел раскраску таблиц сделать, глюки какие-то непонятные полезли, типа, кнопка не видна в поле ввода для выбора справочника и т.д.
6 shura
 
03.12.03
19:29
а так, конечно штука хорошая
7 Львенок
 
04.12.03
12:39
(1) Все гораздо проще.
Зачем вам нужна первая колонка зафиксированной? Чтобы всегда было видно наименование текущего элемента? Элементарно. Сделайте на форме отдельный элемент в который это наименование будет выводиться. Например текстовое поле с крупным жирным шрифтом с формулой Наименование.
8 skunk
 
04.12.03
13:20
(7) вот здесь ты не прав а как быть с изменением размера формы, изменением шрифта. Нет такой способ явно не катит
9 Puh
 
04.12.03
13:24
Почему Львенок не прав? (7) При начале редактирования строки передаем в функцию наименование (товар, например)функция возвращает переменную. оттображаемее на форме и ок. Придется с формой поработать и все. Где я ошибся?
10 skunk
 
04.12.03
13:36
(9)изменился размер формы, что делаешь было в таблице три строки стало десять. Ладно можно поставить размер не изменять, что для документа уже гуд, но бог сним.
А как быть со шрифтами. Они могут быть на каждой машике разные. Соответсвено высота строк табличной части будет разная. У когото стоит по умолчанию шрифт размером 8, у когото 14 и что делать. Да согласен поставить в таблице жеско использовать шрифт такой то. Но когда передашь сфой конвфу на другую машину где нет этого шрифта, или гарнитура другая. В Офисе там, для этого сделали щашивание шрифта в документ, ты тоже с конфой будешь шрифт поставлять. А если мне будет нужен то шрифт который у меня стоит, и никакой другой. Короче финт с полями не проходит, или использовать только для себя.
11 Puh
 
04.12.03
13:55
(10)Согласен, если речь идет об универсальности этот вариант не подходит.
panikena, а задача как стоит? настроить для всех или только для данного предприятия на заданном количестве компьютеров?
12 Львенок
 
05.12.03
10:06
Вариант для маньяков (но полностью отвечающей поставленной задаче)- создать печатную форму (объект Таблица) в которой можно зафиксировать левые столбцы и верхние строки, и всю логику работы построить на процедуре ПриВыбореЯчейкиТаблицы. Все довольны?
___
Искренне Ваш, Львенок.
13 skunk
 
05.12.03
10:30
(12) Опять не согласен, А прокурутку в окне ячеек таблицы, а разный размер колонок.
А стоит оно воббще этого, так извращаться на собой.
Корочче 100% штатными средствами не сделать полноцено и красиво.

Хе народ а если использовать не стандартную табличную часть документа, а "таблицу значений".
Сейчас попробую
14 skunk
 
05.12.03
10:51
То же не канает. Как вводить значения в таблицу.
15 Львенок
 
05.12.03
10:56
(13) А причем тут это?
Итак исходноне Техническое задание:
"Как сделать(к примеру первую колонку с наименованием) постоянно видимой в документе? "
1) В форме документа в процедуре ПриОткрытии:
Схематично:
  а) Таб=СоздатьОбъект("Таблица");
  б) Таб.ВывестиСекцию ("КнопкиУправления");
  в) ВыбратьСтроки();
     Пока ПолучитьСтроку()=1 Цикл
     Таб.ВывестиСекцию ("ТекущаяСтрокаДокумента");
  г) Таб.ВывестиСекцию ("ЕщеКнопкиУправления");//Сохранить, Провести, ...
  д) Таб.Опции(,,<ФиксСтрок>,<ФиксСтолбцов>,,,,); // Фиксируем нужное число столбцов слева.
  е) Таб.Показать();
  ж) СтатусВозврата(0); Оригинальную форму документа вообще не показываем.

А дальше, все редактирование происходит в Таблице. И шрифты можно какие угодно и расцветку и вообще много чего можно. Только новые строчки добавлять неудобно. Придется под это дело специальную кнопку (ячейку) в таблице заводить.

1) Вообще проблема, конечно, не стоит таких методов решения.
2) Это все только теория, может на практике и не работать.
16 Львенок
 
05.12.03
11:00
(14) В ТаблицуЗначений - никак. А в Таблицу - сколько угодно (см. документацию).
___
Искренне Ваш, Львенок.
17 kvm
 
05.12.03
11:51
(15) С примечанием 1 согласен полностью.
Мы такое делали, только использовали обработку, которая потом делала документ. В обработке таблица, и процедура ОбработкаЯчейкиТаблицы()
18 Испанец
 
09.12.03
08:20
Может я чего не допонимаю, но в конфигураторе в табличной части документа есть такая панель "Редактор таблиц" так вот там есть кнопочка "фиксция" аналогичная екселю...
19 skunk
 
09.12.03
08:31
(18)А что такое для тебя табличная часть документа
20 Испанец
 
09.12.03
09:28
Не, неправ, этим не решить...