Имя: Пароль:
1C
1C 7.7
v7: При выборе строки
,
0 Insainer
 
22.05.14
02:44
Мне нужно обработать выделение строки, то есть если выбрана строка, где клиент не указан, то кнопка не активна. ПриВыбореСтроки не работает, как это можно сделать?
1 Холст
 
22.05.14
03:15
текстовый реквизит с формулой, она исполняется при каждом "шорохе" при запуске процедуре в ней смотри выбрана ли нужная строка и действуй
2 Insainer
 
22.05.14
03:32
Скажи пожалуйста что прописать надо
3 Insainer
 
22.05.14
03:33
Чтобы при выделении строки запустить процедуру
4 Insainer
 
22.05.14
04:37
Еще как настроить программно параметры страницы (поля и колонтитулы)
5 SleepyHead
 
гуру
22.05.14
06:44
Ставим на форму надпись, невидимую, в формуле пишем

УстановитьВидимость()

в модуле формы обработки определяем функцию:

Функция УстановитьВидимость()

   Если Выбран()=0 Тогда
      // элемент справочника отсутствует
   ИначеЕсли Клиент.Выбран()=0 Тогда
      Форма.ИдентификаторКнопки.Доступность(0)
   Иначе
      Форма.ИдентификаторКнопки.Доступность(1)
   конецЕсли;
  Возврат ""
КонецФункции
6 SleepyHead
 
гуру
22.05.14
06:52
(4) Опции
7 Insainer
 
22.05.14
07:33
Спасибо большое, со вторым вопросом разобрался - есть функция Параметры у макета
8 SleepyHead
 
гуру
22.05.14
07:46
Спасибо в стакан не нальешь..
9 Insainer
 
22.05.14
09:41
Код вставил, но он не работает, то есть при выборе позиции вход не срабатывает
10 Insainer
 
22.05.14
09:43
Есть ведь какой-то способ перехватить выделение позиции?
11 пипец
 
22.05.14
09:59
текущаяколонка   текущаястрока
12 пипец
 
22.05.14
10:00
+ только если это для печатной формы хочешь - то ой ;))
13 Insainer
 
22.05.14
10:03
Нет, чтобы при любом выделении позиции, выполнялась проверка.
14 varelchik
 
22.05.14
10:23
(0)
ПриАктивизацииСтроки
Синтаксис:
ПриАктивизацииСтроки(ТабличноеПоле)
Назначение:
Возникает, когда любая строка становится текущей.
Правда это из табличного поля.
15 varelchik
 
22.05.14
10:24
+(14) Замени табличную часть ТабличнымПолем и рабуйся.
16 Insainer
 
22.05.14
10:30
ПриАктивацииСтроки - такой процедуры я не нашел
17 varelchik
 
22.05.14
10:32
+(15) это из состава 1С++.
http://www.1cpp.ru
Там найдешь все что надо.
+ описание и помощь крупным спецов по 1С++.
18 Insainer
 
22.05.14
10:37
Помоги пожалуйста, какая команда отвечает за это действие, я 1С++ никогда не использовал в работе
19 an-korot
 
22.05.14
10:41
(0) тебе в таблице это нужно сделать?
20 Insainer
 
22.05.14
10:43
Нет фонарно перехватить выделение позиции
21 Insainer
 
22.05.14
10:44
И сделать на неё проверку, какую там уже не важно я написал
22 an-korot
 
22.05.14
10:48
(20) т.е. в таблице значений?
23 Insainer
 
22.05.14
10:49
Нет в табличной части справочника
24 an-korot
 
22.05.14
10:53
(23) ты издеваешься? во всех формах это реализуется через ТЗ (табл.значений)
25 varelchik
 
22.05.14
10:54
(24) Возьми любую типовую торговлю и посмотри как как выводиться Цена на форме списка.
26 Ёпрст
 
22.05.14
10:55
(10) есть. Текст на форме ловит всё, при должном умении, даже переход в пределах одной строки списка.
27 an-korot
 
22.05.14
10:58
повесь на свой элемент в вкладке дополнительно формулу где укажи имя свой процедуры,
в этой процедуре проверяй значение и активируй или блокируй свою кнопку, и все.
28 Insainer
 
22.05.14
10:59
Дело вот в чем, в справочнике кредитные карты есть табличная часть с номерами карт, мне нужно проверить, если выделена строка с пустым клиентом, то кнопку распечатать анкету делать неактивной
29 Insainer
 
22.05.14
11:02
На какой элемент?
30 oslokot
 
22.05.14
11:05
(10) +1, кстати у меня не получалось в своё время ловить горизонтальный переход по колонкам ТЧ, текст ловит только по строкам майна-вира
31 Insainer
 
22.05.14
11:06
Ну помогите, вы же знаете, как перехватить событие выделения текущего элемента
32 an-korot
 
22.05.14
11:07
на тот в котором проверять будешь
а вообще если не галка то все элементы можно обработать не добавляя формулу
создав в модуле процедуру
интаксис:
ОбработкаВыбораЗначения(<ВыбЗнач>,<ИдентЭлемДиалога>,<ФлагСтандОбр>)
Назначение:
Предопределенная процедура после выбора значения в форме выбора (выбор может быть инициирован в немодальном режиме интерактивно, при помощи элемента диалога с ''педалькой'').
<ВыбЗнач> - выбранный элемент справочника, документ или иной объект, передаваемый для обработки.
<ИдентЭлемДиалога> - идентификатор элемента диалога, которым инициализирован выбор значения.
<ФлагСтандОбр> - флаг, установка которого в теле процедуры в 0 (ноль) приведет к отмене стандартного присвоения значения.


и там поставить проверку есть контрик нету и соответсвтенно активировать кнопку или блокировать
33 Ясный перец
 
22.05.14
11:17
На форму справочника помести текстовое поле, как советовали выше. В свойствах на закладке Дополнительно пропиши формулу типа:
?(ПустоеЗначение(ИмяРеквизитаКлиент)=1,Форма.кнПечать.Доступность(0),Форма.кнПечать.Доступность(1))
Само текстовое поле сделай невидимым.
Работает.
34 Duke1C
 
22.05.14
11:23
(0) А не проще в САМОЙ процедуре печати твоей анкеты вставить одно условие на проверку заполнения клиента и тупо не печатать, а вывести предупреждение юзверю!
35 Ясный перец
 
22.05.14
11:28
(28) Вот ты пишешь: "в справочнике кредитные карты есть табличная часть с номерами карт"
А в названии темы стоит v7
Это точно 1С 7.7 ??
(а то я тут даю советы...)
36 an-korot
 
22.05.14
11:43
ошибся для ТЗ все таки нужно отдельную обработку (обработкавыборазнаяения или другая не реагируют при нажатии на ТЗ) на вкладке дополнительно в формуле писать процедуру которая будет обрабатывать нажатия в таблице.
37 an-korot
 
22.05.14
11:50
т.е. вот так :
на форме открываем свойства нашей таблицы значений (ТЗ)
открываем вкладку "дополнительно" в реквизите формула пишем: НажатиеТаблицы()

в модуле создаем процедуру:

Процедура НажатиеТаблицы()
    ТекСтрока = МояТабЗначений.ТекущаяСтрока();
    Если ТекСтр = 0 Тогда
        Возврат;
    КонецЕсли;
    Форма.кнПечать.Доступность(ПустоеЗначение(МояТабЗначений.ПолучитьЗначение(ТекСтрока,"Контрик")));


как видно если значение заполнено то команда "Пустоезначение" вернет единицу и кнопка станет доступна.
38 an-korot
 
22.05.14
11:50
и конечно нужно добавить КонецПроцедры  :)))))
39 Insainer
 
22.05.14
12:15
В свойствах нет вкладки дополнительно
40 Insainer
 
22.05.14
12:17
Не таблица значений, а табличная часть справочника
41 varelchik
 
22.05.14
12:55
(40)
Тебе ж в (5) уже все объяснили.
42 Insainer
 
22.05.14
13:03
Что значит (5)?
43 an-korot
 
22.05.14
13:05
Insainer
а ты не знаешь что твой вопрос относится к ФормеСписка? было бы на много меньше лабуды если бы ты сразу об этом сказал.

а вообще твой вопрос туп донельзя
посмотри в помошнике команду ПриВыбореСтроки() или ПриНачалеРедактированияСтроки()  в них ты можешь поставить проверку и установить доступность кнопки.
44 Insainer
 
22.05.14
13:15
Я знаю эту процедуру, только когда я ставлю точку останова при выборе строки отладчик туда не заходит
45 oslokot
 
22.05.14
13:20
(44) и не зайдет, тыж двойной клик не делаешь)

и что за тягомотина такая? правильный ответ дан в первом же посте
46 Insainer
 
22.05.14
13:25
Объясните пожалуйста что мне прописать :)
47 oslokot
 
22.05.14
13:31
ты текст на форму бросил?
48 Insainer
 
22.05.14
13:34
Как это делается, у табличной части нельзя поставить процедуру
49 Insainer
 
22.05.14
13:35
Что значит текст на форму бросил?
50 Ёпрст
 
22.05.14
13:39
(49) синяя Т внизу пофигуратора .. перетащи её на форму, далее читай (5)
51 Insainer
 
22.05.14
13:40
А зачем?
52 Ёпрст
 
22.05.14
13:41
(51)
Вон из профессии! © кто-то с форума
53 oslokot
 
22.05.14
13:43
Сейчас Майк придет, всё объяснит
54 varelchik
 
22.05.14
13:43
(51)За шкафом.
Складывается такое впечатление что вы вообще в конфигураторе первый раз.
+ (53) ДА он походу тут прикалывается.
55 1dvd
 
22.05.14
13:44
(51) я помню, раньше венда при перезагрузка спрашивала:
- Вы действительно хотите перезагрузить компьютер?
- Да.
- Перезагружаю.
Потом появилась Винда сервер 2003:
- Вы действительно хотите перезагрузить компьютер?
- Да.
- А зачем?
56 varelchik
 
22.05.14
13:46
(55)Зачет!
57 Duke1C
 
22.05.14
13:55
(46) (51) Посмотри уже (34) и сделай. Так проще будет! Пусть кнопка будет доступна всегда, но не всегда (по твоему условию) выводится печатная форма твоей анкеты. ТАК понятно?!
58 an-korot
 
22.05.14
13:57
он издевается. делай как тебе в (5) ответе объяснили
если ты не можешь текстовое поле на форму добавить, то закрой конфигуратор и вообще туда не лезь от греха подальше!
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс