Имя: Пароль:
 
1C
1С v8
Как узнать есть ли у табличного документа данная область?
0 SherifSP
 
20.06.13
18:00
Как узнать есть ли у табличного документа данная область?
1 Marine Band
 
20.06.13
18:01
Попытка?
2 Нуф-Нуф
 
20.06.13
18:02
попытайся через попытку, попытка не пытка
3 patapum
 
20.06.13
18:02
(0) продам СП. 5 000 р.
4 SherifSP
 
20.06.13
18:03
(3) Там нету, я смотрел
5 SherifSP
 
20.06.13
18:03
+(4) Так что он и за рубль не катит
6 Нуф-Нуф
 
20.06.13
18:04
(5) там есть попытка
7 SherifSP
 
20.06.13
18:05
(5) Попытку и я знаю, я думал мб вы что то получше предложите
8 SherifSP
 
20.06.13
18:06
Думал мб какой у тд метод есть, а я не знаю о нем)
9 patapum
 
20.06.13
18:06
(4) табличный документ, свойство Области. с тебя 5 круб. )))
10 Marine Band
 
20.06.13
18:06
(8) Все методы в СП.
11 dzhehangir
 
20.06.13
18:06
Пытайтесь - и все получится.
12 ale-sarin
 
20.06.13
18:07
(4)(5) Внимательно смотрел?

КоллекцияОбластейТабличногоДокумента (SpreadsheetDocumentAreaCollection)
Найти (Find)
Синтаксис:

Найти(<НаименованиеОбласти>)
Параметры:

<НаименованиеОбласти> (обязательный)

Тип: Строка.
Имя области ячеек табличного документа или рисунка.
Возвращаемое значение:

Тип: ОбластьЯчеекТабличногоДокумента; РисунокТабличногоДокумента, Неопределено.
Если указанная область отсутствует, то возвращается значение Неопределено.
Описание:

Осуществляет поиск области ячеек табличного документа или рисунка табличного документа по имени.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Пример:

Макет = ЭтотОбъект.ПолучитьМакет("СоставПоказателей");
ТекОбласть = Макет.Области.Найти(ИмяОбласти);
13 SherifSP
 
20.06.13
18:15
(12) Таким методом могу найти именно в текущей области, а не по всему макету?
14 ale-sarin
 
20.06.13
18:18
(13) Чегооо?
Я сам не пользовался. Для тебя поискал. Но вроде написано по-русски: Ищет в макете область по наименованию.
15 SherifSP
 
20.06.13
18:24
(14) Спасибо)
16 SherifSP
 
20.06.13
18:25
+(15) Но мне надо было не область а параметр области )
17 SherifSP
 
20.06.13
18:25
+(16) Вопрос конечно не правильно поставил, не судите строго)
18 ale-sarin
 
20.06.13
18:29
(17) Ну как не судить строго, если лентяй, а?

ТабличныйДокумент (SpreadsheetDocument)
НайтиТекст (FindText)
Синтаксис:

НайтиТекст(<Строка>, <Начало>, <Где>, <ИскатьПоСтрокам>, <ЯчейкаЦеликом>, <ИскатьВперед>, <ИгнорироватьРегистр>)
Параметры:

<Строка> (обязательный)

Тип: Строка.
Искомый текст.
<Начало> (необязательный)

Тип: ОбластьЯчеекТабличногоДокумента.
Область, после которой начинать поиск. Если параметр не указан, поиск будет выполнен с начала табличного документа.
<Где> (необязательный)

Тип: ОбластьЯчеекТабличногоДокумента.
Область, в которой осуществляется поиск. Если параметр не указан, поиск будет выполнен по всем ячейкам табличного документа.
<ИскатьПоСтрокам> (необязательный)

Тип: Булево.
Определяет последовательность обхода ячеек при поиске.
Истина - искать по текущей строке, затем переходить на следующую и т.д. в общем направлении поиска, Ложь - искать по текущей колонке, затем переходить на следующую и т.д. в общем направлении поиска.
Значение по умолчанию: Истина
<ЯчейкаЦеликом> (необязательный)

Тип: Булево.
Истина - искать только такие ячейки, в которых с искомым текстом совпадает весь текст ячейки, Ложь - искать часть текста ячейки.
Значение по умолчанию: Ложь
<ИскатьВперед> (необязательный)

Тип: Булево.
Определяет направление поиска: Истина - искать вперед; Ложь - искать назад.
Значение по умолчанию: Истина
<ИгнорироватьРегистр> (необязательный)

Тип: Булево.
Истина - без учета регистра, Ложь - поиск с учетом регистра.
Значение по умолчанию: Ложь
Возвращаемое значение:

Тип: ОбластьЯчеекТабличногоДокумента; РисунокТабличногоДокумента.
Область, содержащая искомый текст. Если текст не найден, то возвращается значение Неопределено.
Описание:

Осуществляет поиск текста в ячейках табличного документа.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Пример:

// чтобы посмотреть работу данного метода, добавьте
// следующие строки в конец примера метода НачатьГруппуСтрок()
Отдел = "Итого2";
Область=ТабДок.НайтиТекст(Отдел);
Если ТипЗнч(Область)=Тип("Неопределено") Тогда
   Сообщить("Значение не найдено!");
Иначе
   Поз = Найти(Область.Имя,"C");
   Имя= Лев(Область.Имя,Поз)+
       Строка(Число(Прав(Область.Имя,СтрДлина(Область.Имя)-Поз))+1);
   Сообщить("Итог по отделу 2 = "+ТабДок.Область(Имя).Текст);
КонецЕсли;
19 GANR
 
20.06.13
18:30
Никаких лишних попыток - лично меня они достали в режиме "Остановка по ошибке" останавливать код, где не надо.

(0) К слову, альтернативно, если бы не было метода (12) можно было бы проверить есть ли в объекте поле с определенным именем, это делается так:

ИдентификаторНезаполненности = Новый УникальныйИдентификатор;
СтруктураПроверки = Новый Структрура("ТвояОбласть", ИдентификаторНезаполненности);
ЗаполнитьЗначенияСвойств(СтруктураПроверки, ТвойОбъектСИменамиОбластей);

Если СтруктураПроверки.ТвояОбласть <> ИдентификаторНезаполненности Тогда
  // такая область есть
Иначе
  // такой области нет
КонецЕсли;

Понятен смысл кода выше? Он помог мне избавиться от бесчисленного множества блоков Попытка - Исключение в партнерских тиражниках. Это так, на будущее...
20 SherifSP
 
20.06.13
18:31
(18) Спасибо, то что доктор прописал)
21 SherifSP
 
20.06.13
18:32
(19) Вот почему и на мисту пошел, когда на спеца сдавал, там за попытку исключение - 1 бал снимали)
22 GANR
 
20.06.13
18:34
(21) Там-то зачем эти Попытки нужны - ума не приложу? Там и (19) не надо.
23 SherifSP
 
20.06.13
18:38
(22) Это я к слову)
AdBlock убивает бесплатный контент. 1Сергей