![]() |
![]() |
![]() |
|
Поле табличного документа | ☑ | ||
---|---|---|---|---|
0
Zlodey1С
03.03.09
✎
08:06
|
Всем добрый день. Есть форма на ней поле табличного документа. в нем размещаю макет вывожу данные ( есть 4 области 2 горизонтально 2 вертикльно)Необходимо по выбору ( двойной клик по полю мышкой) получить данные строки и заполнить определенными значениями ячейку по которой тыкнули. Как посмотреть данные строки ячейки по которой тыкнули?
|
|||
1
Zlodey1С
03.03.09
✎
08:26
|
ап
|
|||
2
Zlodey1С
03.03.09
✎
08:39
|
Неужели никто не использовал Выбор() в поле табличного документа
|
|||
3
sf
03.03.09
✎
09:01
|
(2)
Элемент.ТекущаяОбласть.Значение - значение ячейки а ты какие "данные строки ячейки" хочешь? |
|||
4
Zlodey1С
03.03.09
✎
10:39
|
Элемент.ТекущаяОбласть.Значение недоступно для чтения
|
|||
5
Zlodey1С
03.03.09
✎
10:43
|
Мне нужно получить данные ячейки в столбце №1 и поместить их в ячейку во втором столбце.
|
|||
6
Zlodey1С
03.03.09
✎
10:44
|
Двойной клин будети происходить как раз по ячейки во втором столбце куда и надо поместить данные
|
|||
7
НЕА123
03.03.09
✎
10:49
|
Элемент.ТекущаяОбласть.Текст ?
|
|||
8
Zlodey1С
03.03.09
✎
10:55
|
А как добраться до данных ячейки которые в первой колонки
|
|||
9
Point
03.03.09
✎
10:58
|
(0) вообще такие вещи лучше делать через расшифровку
|
|||
10
Zlodey1С
03.03.09
✎
11:02
|
Есть у кого нибудь пример с расшифровкой (горю ппц, 2 часа осталось)?
|
|||
11
Aprobator
03.03.09
✎
11:17
|
Блин, народ, неужели так трудно читать СП? Событие для Отлова
ПолеТабличногоДокумента (SpreadsheetDocumentField) Выбор (Selection) Синтаксис: Выбор(<Область>, <Стандартная обработка>) Параметры: <Область> Тип: ОбластьЯчеекТабличногоДокумента. Область, с которой связано событие. <Стандартная обработка> Тип: Булево. В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет. Значение по умолчанию: Истина Описание: Возникает при двойном щелчке мыши (нажатии клавиши Enter) на ячейке или рисунке таблицы. ОбластьЯчеекТабличногоДокумента (SpreadsheetDocumentRange) Значение (Value) Использование: Чтение и запись. Описание: Тип: Произвольный. Содержит значение ячеек области. Примечание: Свойство доступно, только если ячейка содержит значение (СВОЙСТВО СодержитЗначение РАВНО Истина). Свойство применимо только для прямоугольных областей. и ОбластьЯчеекТабличногоДокумента (SpreadsheetDocumentRange) Текст (Text) Использование: Чтение и запись. Описание: Тип: Строка. Содержит значение текста ячеек области. Примечание: 1. Свойство доступно для записи, если ячейка не содержит значения (СВОЙСТВО СодержитЗначение равно Ложь). 2. Применимо только для прямоугольных областей. |
|||
12
Zlodey1С
03.03.09
✎
11:57
|
Да читал я все это. Я могу получить данные ячейки по которой кликнул а надо получить еще данные первой ячейки которая в этой Области
|
|||
13
Aprobator
03.03.09
✎
12:08
|
(12) ну дык текщую область ты имеешь в процедуре выбора.
СтрокаОбласти = ТекОбласть.Верх; Элемент.Область(СтрокаОбласти,1) - тебе эту область надо поймать? |
|||
14
Zlodey1С
03.03.09
✎
12:10
|
да
|
|||
15
Zlodey1С
03.03.09
✎
12:10
|
вернее нет
|
|||
16
Zlodey1С
03.03.09
✎
12:12
|
Мне надо поймать значение первого параметра из области ячейки по которой тыкнули.
Есть одна область в ней 2 параметра. По 2 параметру тыкаю и внего заносим значение из первого параметра. |
|||
17
Aprobator
03.03.09
✎
12:16
|
Элемент.Область(СтрокаОбласти,1).ЭлементУправления.Значение - это?
|
|||
18
Zlodey1С
03.03.09
✎
13:09
|
Нет там не видно значений
|
|||
19
Aprobator
03.03.09
✎
13:28
|
А! дак тебе надо:
ОбластьНужнойЯчейки = Элемент.ПолучитьОбласть(СтрокаОбласти, 1, СтрокаОбласти, НомерПоследнейКолонки); ПараметрыОбласти = областьНужнойЯчейки.Параметры; |
|||
20
Zlodey1С
03.03.09
✎
17:21
|
Вроде с координатами разобрались маленько, а как теперь добавить значение в ячейку. Он ругается на : Поле объекта недоступно для записи
|
|||
21
Zlodey1С
03.03.09
✎
17:30
|
Уже ненадо.
|
|||
22
Zlodey1С
03.03.09
✎
17:35
|
ЯчейкаАдреса = Элемент.ПолучитьОбласть(КоординатаАдреса);
ЯчейкаКоличества = Элемент.ПолучитьОбласть(КоординатаСуммы); Если ЗначениеЗаполнено(ТекОбласть.Параметр) Или ЗначениеЗаполнено (ТекОбласть.Текст) Тогда ТекОбласть.Параметр=" "; ТекОбласть.Текст=" "; // Вот тут ругается Иначе ТекОбласть.Параметр=ЯчейкаКоличества.ТекущаяОбласть.Текст; КонецЕсли; |
|||
23
Zlodey1С
03.03.09
✎
17:37
|
После ТекОбласть.Параметр=ЯчейкаКоличества.ТекущаяОбласть.Текст; в ТекОбласть.Текст заносится значение ЯчейкаКоличества.ТекущаяОбласть.Текст, а как его очистить когда мы очищаем параметр?
|
|||
24
Zlodey1С
03.03.09
✎
17:40
|
Все больше не надо
|
|||
25
Zlodey1С
03.03.09
✎
19:01
|
А как в цикле очистить все ячейки текущей строки кроме той по которой кликаем, делаю вод так но все равно они не очищаются, хотя через отладчик вроде все нормально:
_сч=1; Пока _сч<ЧислоКолонок Цикл Если _сч>2 Тогда КоординатаВодителя=Строка("R"+Строка(КоординатаСтроки)+"C"+Строка(_сч)); числоКоордината=Число(КоординатаКолонки); Если Не _сч=числоКоордината Тогда ЯчейкаОчистки=Элемент.ПолучитьОбласть(КоординатаВодителя); Если ЗначениеЗаполнено(ЯчейкаОчистки.ТекущаяОбласть.Параметр) Или ЗначениеЗаполнено(ЯчейкаОчистки.ТекущаяОбласть.Текст) Тогда ЯчейкаОчистки.ТекущаяОбласть.Параметр=" "; ЯчейкаОчистки.ТекущаяОбласть.Текст=" "; КонецЕсли; КонецЕсли; КонецЕсли; _сч=_сч+1; КонецЦикла; |
|||
26
Zlodey1С
04.03.09
✎
01:55
|
Эже пробывал Область.Очистить() один фиг
|
|||
27
Garkin
04.03.09
✎
02:28
|
Попробуй
ЯчейкаОчистки=Элемент.Область(КоординатаВодителя); |
|||
28
Zlodey1С
04.03.09
✎
05:10
|
(27) Спасибо за помощь. Но всеравно не выходит очистить все ячейки на текущей строке, кроме активной
|
|||
29
Zlodey1С
04.03.09
✎
05:14
|
Блин жалко не у кого нет маленького примера
|
|||
30
Zlodey1С
04.03.09
✎
08:28
|
Да
|
|||
31
НЕА123
04.03.09
✎
09:15
|
в (25) зачем ПолучитьОбласть()? за лишние буковочки платят?
Область(). |
|||
32
Aprobator
04.03.09
✎
10:11
|
(31) Область() возвращает область ячеек, а у нее нету параметров. А ПолучитьОбласть() ТабличныйДокумент.
|
|||
33
НЕА123
04.03.09
✎
10:13
|
(32)
да один хер там параметрами и не пахнет. |
|||
34
Aprobator
04.03.09
✎
10:15
|
А ЗначениеЗаполнено(ЯчейкаОчистки.ТекущаяОбласть.Параметр) - это че тогда?
|
|||
35
Aprobator
04.03.09
✎
10:16
|
Правда нафига текущаяобласть? Вообще конечно код странный и почему не хватило Текст и Значение - непонятно.
|
|||
36
НЕА123
04.03.09
✎
10:18
|
(34)
ЗначениеЗаполнено(ЯчейкаОчистки.ТекущаяОбласть.Параметр) будет ЛОЖЬ. офф. кто сказал что нету у облати ячеек нет свойтства параметр? |
|||
37
Zlodey1С
04.03.09
✎
12:09
|
Вроде с одной стороны не чего сложного, но с другой стороны не получается и не только у меня. Такое ощущение что не кто с динамическими отчетами не работал.
|
|||
38
Garkin
04.03.09
✎
12:31
|
"не получается и не только у меня" - О_о да у вас там эпидемия.
_сч=1; // почему бы не написать _сч=3; Пока _сч<ЧислоКолонок Цикл // <= ? Если _сч>2 Тогда // а это условие вообще убрать КоординатаВодителя=Строка("R"+Строка(КоординатаСтроки)+"C"+Строка(_сч)); числоКоордината=Число(КоординатаКолонки); // вынести за цикл Если Не _сч=числоКоордината Тогда ЯчейкаОчистки=Элемент.Область(КоординатаВодителя); Если ЗначениеЗаполнено(ЯчейкаОчистки.Параметр) Или ЗначениеЗаполнено(ЯчейкаОчистки.Текст) Тогда ЯчейкаОчистки.Параметр=" "; // непонятно нафига это ЯчейкаОчистки.Текст=" "; КонецЕсли; КонецЕсли; КонецЕсли; _сч=_сч+1; КонецЦикла; ? |
|||
39
MishaSan
04.03.09
✎
13:19
|
Номерстроки = 1;
СписокИсключаемыхКолонок = Новый СписокЗначений; СписокИсключаемыхКолонок.Добавить(2); Для НомерКолонки = 1 По ЭлементыФормы.ТабличныйДокумент.ШиринаТаблицы Цикл Если СписокИсключаемыхКолонок.НайтиПоЗначению(НомерКолонки) = Неопределено тогда Область=ЭлементыФормы.ТабличныйДокумент.Область(НомерСтроки,НомерКолонки,НомерСтроки,НомерКолонки); Область.Очистить(истина,истина,истина); КонецЕсли; КонецЦикла; |
|||
40
Zlodey1С
05.03.09
✎
15:58
|
Всем Огромное и приогромное спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |