Имя: Пароль:
1C
1C 7.7
v7: пропадают элементы на форме.
0 BolshoySmal
 
28.10.16
10:23
День добрый всем. Коллеги подскажите.
Есть внешняя обработка - форма со слоями. На отдельный слой вынесены кнопки. Не понятно с чего у пользователя этот слой пропадает. Открываешь форму переключаешь на нужный слой - нет кнопок. Закрываешь. Открываешь повторно - есть кнопки. Причем видел только у этого пользователя. У себя открываю- всё нормально.
С чем может быть связано. в какую сторону рыть.
Вот как должно быть http://webfiles.ru/files/45375464
Вот что получается у пользователя http://webfiles.ru/files/45375465
1 Это_mike
 
28.10.16
10:25
может быть с соотношением радиусов связано...
2 Это_mike
 
28.10.16
10:26
судя по размещению картинок на таком файлообменнике - версия (1) весьма вероятна...
3 BolshoySmal
 
28.10.16
10:34
вылил на другой файлообменник
как должно быть  http://my-files.ru/p49rcj
как у пользователя http://my-files.ru/ru34pz
4 BolshoySmal
 
28.10.16
10:34
что значит соотношение радиусов ?
5 BolshoySmal
 
28.10.16
10:36
Это шутка такая про радиусы ?
6 DDwe
 
28.10.16
10:37
Однозначно радиусы.
7 BolshoySmal
 
28.10.16
10:43
"Радиус кривизны рук обратно пропорционален радиусу кривизны извилин"©.  Вы об этом коллеги ?
8 BolshoySmal
 
28.10.16
10:46
Процедура ПриВыбореЗакладки(НомерЗакладки, ЗначениеЗакладки)
    
Если НомерЗакладки=1 Тогда
        Форма.ИспользоватьСлой("МНН",2);
    ИначеЕсли НомерЗакладки=2 Тогда    
        Форма.ИспользоватьСлой("Настройка",2);
        КонецЕСли;
    Иначе    
        Форма.ИспользоватьСлой("Результат,Кнопки",2);
    КонецЕсли;      
    
КонецПроцедуры // ПриВыбореЗакладки()
Ну и где тут радиус ?
9 Это_mike
 
28.10.16
10:55
(8) невооруженным взглядом виден...
10 Ёпрст
 
28.10.16
10:57
(8) подумай, при каком условии должен быть виден слой и какой.
11 Ёпрст
 
28.10.16
10:57
и что в ПриОткрытии
12 BolshoySmal
 
28.10.16
10:59
В ПриОткрытии ()
    Форма.ИспользоватьЗакладки(1);
    Форма.Закладки.ДобавитьЗначение("МНН");
    Форма.Закладки.ДобавитьЗначение("Настройка");
    Форма.Закладки.ДобавитьЗначение("Результат");
13 BolshoySmal
 
28.10.16
11:01
3 закладки на форме . В последнем случае отрабатывается
Иначе    
        Форма.ИспользоватьСлой("Результат,Кнопки",2);
ЕСли закладка не 1 и не 2 а в моем случае 3.
14 Ёпрст
 
28.10.16
11:01
(12) и какой слой будет виден в ПриОткрытии() ? И На каком слое твоя кнопка ?
15 Ёпрст
 
28.10.16
11:04
Ну и код в (8) нерабочий. Там ошибка синтаксиса, ка минимум
16 BolshoySmal
 
28.10.16
11:05
Кнопки сделаны отдельным слоем ("Кнопки").Появляются когда выбрана 3 закладка.
Еще из Приоткрытии()
Форма.ИспользоватьСлой("МНН"); Слойц при  открытии МНН.
17 BolshoySmal
 
28.10.16
11:06
(15) что здесь не рабочего ?
Процедура ПриВыбореЗакладки(НомерЗакладки, ЗначениеЗакладки)
    
Если НомерЗакладки=1 Тогда
        Форма.ИспользоватьСлой("МНН",2);
ИначеЕсли НомерЗакладки=2 Тогда    
Форма.ИспользоватьСлой("Настройка",2);
        //КонецЕСли;
    Иначе            Форма.ИспользоватьСлой("Результат,Кнопки",2);
    КонецЕсли;
18 DDwe
 
28.10.16
11:10
(17) Всё.
19 Ёпрст
 
28.10.16
11:14
(17) где-нибудь еще явно задаешь видимость кнопок ?
20 Ёпрст
 
28.10.16
11:14
У проблемного пользователя пересоздай базу в окошке выбора баз, или очисти пользовательскую ветку реестра (если знаешь какую)
21 BolshoySmal
 
28.10.16
11:15
(18) Обоснуй .
(19)  в другой процедуре вот таким кодом
...
        Форма.Закладки.ТекущаяСтрока(3);
        Форма.ИспользоватьСлой("Результат,Кнопки");     

...
22 BolshoySmal
 
28.10.16
11:16
Базу уже перепрописывал. результата не дало .
23 BolshoySmal
 
28.10.16
11:17
Причем даже если вынести кнопки на слой "Результат" , то эффект тот же.
24 Эльниньо
 
28.10.16
11:21
Форма.ИспользоватьСлой(<?>,);
Синтаксис:
Форма.ИспользоватьСлой(<ИмяСлоя>,<Режим>)
Назначение:
Установить режим отображения слоя в форме.
Параметры:
<ИмяСлоя> - строковое выражение - название слоя формы, как оно задано в конфигураторе. Параметр может быть составным (указывать несколько слоев). В этом случае имена слоев перечисляются в строке через запятую.
<Режим> - необязательный параметр. Числовое выражение:
0 - скрыть слой <ИмяСлоя> в форме;
1 - показать слой <ИмяСлоя> в форме;
2 - показать слой <ИмяСлоя> и скрыть все

2 - показать слой <ИмяСлоя> и скрыть все

и скрыть все
25 BolshoySmal
 
28.10.16
11:23
(24) спасибо за наводку.
Попробую.
26 Ёпрст
 
28.10.16
11:25
(24)
2 - показать слой <ИмяСлоя> и скрыть все остальные.
27 Ёпрст
 
28.10.16
11:25
У тебя als не верный.
28 Ёпрст
 
28.10.16
11:26
(21)
  
Форма.Закладки.ТекущаяСтрока(3);
//Форма.ИспользоватьСлой("Результат,Кнопки");
29 Ёпрст
 
28.10.16
11:27
проверь, срабатывает ли ПриВыбореЗакладки при этом, если нет, вызови её явно (хотя, должна срабатывать)
30 BolshoySmal
 
28.10.16
11:38
(29) Срабатывает. так как слой Результат появляется.
31 Ёпрст
 
28.10.16
11:40
(30) и ? Кнопок нет ?
Явно задай им видимость
32 Ёпрст
 
28.10.16
11:41
И это, turbomd не используется, случаем ?
33 Эльниньо
 
28.10.16
11:46
(26) Что не так?

Если НомерЗакладки=1 Тогда
        Форма.ИспользоватьСлой("МНН",2); //кнопки всад
    ИначеЕсли НомерЗакладки=2 Тогда    
        Форма.ИспользоватьСлой("Настройка",2); //кнопки всад
        КонецЕСли;
    Иначе    
        Форма.ИспользоватьСлой("Результат,Кнопки",2); // тока кнопки
    КонецЕсли;      
    
КонецПроцедуры// ПриВыбореЗакладки()
34 Это_mike
 
28.10.16
11:48
(33) как минимум - неоткрытое "если"
35 Ёпрст
 
28.10.16
11:48
(33) и скрыть все остальные.
36 BolshoySmal
 
28.10.16
11:49
Стоп
(28)   при использовании кода Форма.Закладки.ТекущаяСтрока(3);
//Форма.ИспользоватьСлой("Результат,Кнопки");
ЗАкладка сдигается . слой "Результат,Кнопки" не отображается . слой остаётся текущий. В моём случае МНН. (33)   так слои скрываются, параметр 2 стоит.
37 BolshoySmal
 
28.10.16
11:50
turbomd  не используется. используется Formex и 1Cpp.
38 Это_mike
 
28.10.16
11:58
(37) выложи уже обработку без внутренней логики куда-нибудь...
39 BolshoySmal
 
28.10.16
12:17
40 Ёпрст
 
28.10.16
13:04
(39) а , ну всё ясно.
Твои кнопки за таблицей значения на форме.
41 Ёпрст
 
28.10.16
13:04
а у пользователя не хватает разрешения экрана. чтоб они появились.
42 Ёпрст
 
28.10.16
13:06
Короче, или делай одну ТЗ на форме, и при переключении закладок выгружай в неё из переменных, или используй классы привязок или вк от trad-а для привязок
Или, запрети растягивание формы в свойствах формы.
43 Ёпрст
 
28.10.16
13:08
Если че, элементы формы "едут" относительно первой в порядке обхода ТЗ на форме (или многострочной части, если это форма списка справочника или форма документа/журнала)
44 Ёпрст
 
28.10.16
13:09
Ну или, кнопки располагай вверху, над ТЗ.
45 Ёпрст
 
28.10.16
13:09
если ничего менять не хочешь.
46 Это_mike
 
28.10.16
13:30
(45) стоит их передвинуть вверх-вниз, и они начинают нормально работать.
47 Ёпрст
 
28.10.16
13:33
(46) Кто ?
Не будет там ничего нормально без привязок работать. Особенно красив эффект, если в точку свернуть и опять растянуть, на второй закладке все контролы в кучку будут
48 Это_mike
 
28.10.16
13:36
(47) я подвинул вверх-вниз первые три кнопки - и стало нормально работать.
Кстати, стягивал ТЗ в минимум - кнопки не появлялись
49 Это_mike
 
28.10.16
13:37
(47) да, с контроламит эффект прикольный.
50 Ёпрст
 
28.10.16
13:40
Один хрен у ТС всё едет относительно первой ТЗ.
Ему оптимальный вариант - кнопки вверху разместить на 3-ей закладке. усё.
51 Ёпрст
 
28.10.16
13:40
ну и саму ТЗ сделать меньше. Не у всех такое большое разрешение экрана
52 Это_mike
 
28.10.16
13:42
(51) ага. ну, или привязки...
53 Это_mike
 
28.10.16
13:44
(51) но все-таки эффект передвижения "туда-сюда" я так и не понял.
Ну и на разных слоях элементы по разному ездят.
ну и фиг с ними...
54 Ёпрст
 
28.10.16
13:48
(53) да не по-разному. Все элементы "езят" относительно ТзМнн1С у автора . И пофик, на каком оне слое. Ибо она первая в порядке обхода
55 BolshoySmal
 
28.10.16
13:58
Спасибо. Кнопки вверх перенёс.