Вход | Регистрация
 

УФ. Ноль целых в динамической ТЧ

УФ. Ноль целых в динамической ТЧ
Я
   nAPACEHAK
 
18.03.19 - 09:29
Доброго

Где то запутался. подскажите плз

УФ.ТЧ создается динамически из ТЗ

в ТЗ тип колонки - число 15.3
в ТЧ ввожу, например, 1.5 - в ячейке 1.5
ввожу 0.5 - в ячейке становится 5. При чем "0," вводится. как только ввожу "5" то значение в ячейке преобразуется просто в "5"
если вводить "1,5" то значение остается "1,5"

* привернул при создании: НовыйЭлементФормы.КнопкаОткрытия = Истина;
Кнопка открытия "квадратиками" а не "вводом числа"

что прикрутить забыл?

Спасибо
 
 
   aleks_default
 
1 - 18.03.19 - 09:55
"что прикрутить забыл?" - скорее что-те перекрутил, с масками, форматом и тп
   spiller26
 
2 - 18.03.19 - 09:59
(0) Смотри в сторону событий.
   nAPACEHAK
 
3 - 18.03.19 - 10:04
(1) ни масок ни форматов ничего такого нет
НовыйЭлементФормы = Элементы.Добавить("ТЗ"+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ);
НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлементФормы.ПутьКДанным = "ТЗ." + Колонка.Имя;
НовыйЭлементФормы.Заголовок = ПолучитьЗаголовок (Колонка.Имя);
НовыйЭлементФормы.Ширина = 10;
НовыйЭлементФормы.ВыбиратьТип = Ложь;
;;НовыйЭлементФормы.КнопкаОткрытия = Истина;
;; МассивТипов = новый Массив;
;;МассивТипов.Добавить(Тип ("Число"));
;;ОписаниеТипов = Новый ОписаниеТипов (МассивТипов);
;; НовыйЭлементФормы.ОграничениеТипа.ПривестиЗначение(Колонка);
НовыйЭлементФормы.ТолькоПросмотр = НЕ ЕстьПраваНаРедактирование();
   nAPACEHAK
 
4 - 18.03.19 - 10:06
в колонке из ТЗ это
http://prntscr.com/mzby5d
   nAPACEHAK
 
5 - 18.03.19 - 10:33
может так?

Как созданной ячейке присвоить тип "число"?
я так понимаю он у меня сейчас совсем не число, судя по кнопке http://prntscr.com/mzc82f
кстати, на скрине, как только введу цифру после запятой, то "0," сотрется и будет просто целое число. хотя если первое не "0" то все вводится все (см.строка выше)
   Вафель
 
6 - 18.03.19 - 10:37
формат
   aleks_default
 
7 - 18.03.19 - 10:44
НовыйЭлементФормы.ОграничениеТипа.ПривестиЗначение(Колонка); Колонка это ж реквизит формы, что ты хочешь тут получить?
   nAPACEHAK
 
8 - 18.03.19 - 10:46
(6) не получается с Формат
он "0," убирает как только ввожу дробную часть. Там еще значения то не введено что бы что то форматировать
Например, хочу ввести 0,53
ввожу 0, - в ячейке "0,"; нажимаю 5 - в ячейке "5", хотя ввод еще не закончен
   nAPACEHAK
 
9 - 18.03.19 - 10:47
(7) не. не обращай внимания, жест отчаяния ))))
   aleks_default
 
10 - 18.03.19 - 10:49
(9)У тебя там весь код такой. Описание типов создал а присвоить забыл
   nAPACEHAK
 
11 - 18.03.19 - 10:50
(7) хочу что бы в этот реквизит вводилось число а не пойми что ((

http://prntscr.com/mzcgx9 как в этом реквизите объекта ТЧ
(9) не. то что с ;; там не смотрите
   nAPACEHAK
 
12 - 18.03.19 - 10:54
ТЗ_рез = РезультатЗапросаПоЦФО();// рез.выгрузить ()


Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
        МассивТипов = Новый Массив;
        МассивТипов.Добавить(Колонка.ТипЗначения);
        НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Новый ОписаниеТипов(МассивТипов), "ТЗ");
        МассивРеквизитов.Добавить(НоваяКолонка);
    КонецЦикла;      
    ИзменитьРеквизиты(МассивРеквизитов);  
    ЗначениеВРеквизитФормы(ТЗ_рез, "ТЗ");

// **************


ЭлементТЗ = Элементы.ТЗ;
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
        Если Колонка.Имя = "ВидРабот" Тогда
// ...

Иначе            
            НовыйЭлементФормы = Элементы.Добавить("ТЗ"+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ);
            НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
            НовыйЭлементФормы.ПутьКДанным = "ТЗ." + Колонка.Имя;
            НовыйЭлементФормы.Заголовок = ПолучитьЗаголовок (Колонка.Имя);
            НовыйЭлементФормы.Ширина = 10;
            НовыйЭлементФормы.ВыбиратьТип = Ложь;
            НовыйЭлементФормы.ТолькоПросмотр = НЕ ЕстьПраваНаРедактирование();
        КонецЕсли; 


вот создание
   aleks_default
 
13 - 18.03.19 - 11:13
Может у тебя результат запроса что-то не то возвращает. Там тип у этой колонки составной
   nAPACEHAK
 
14 - 18.03.19 - 11:21
вроде заработало. Поправьте если не так сделал
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
        МассивТипов = Новый Массив;
        МассивТипов.Добавить(Колонка.ТипЗначения);
        НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Новый ОписаниеТипов(МассивТипов), "ТЗ");
        МассивРеквизитов.Добавить(НоваяКолонка);

        НоваяКолонка.ТипЗначения = Колонка.ТипЗначения;//вот эта строка добавлена


    КонецЦикла;   

   nAPACEHAK
 
15 - 18.03.19 - 11:21
(13) результат возвращает тип этой колонки - число 15.3.
нет, не составной
   aleks_default
 
16 - 18.03.19 - 11:23
(15)Уверен?:)
   nAPACEHAK
 
17 - 18.03.19 - 12:46
(16) да.
там и составному неоткуда взяться, и результат запроса обходится - изменяется таблица
http://prntscr.com/mze2lm

...
Иначе
    Заголовок = ИдентификаторЗаголовка(ДД.Дата);
    Таб.Колонки.Добавить("План" + Заголовок, Новый ОписаниеТипов ("Число",,, Новый КвалификаторыЧисла (15,3)), Формат(ДД, "ДФ=dd.MM.yy"));
КонецЕсли;     
...

Выборка = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Пока Выборка.Следующий() Цикл
        Стр = Таб.Добавить();
        Стр.ВидРабот = Выборка.ВидРабот;
        Стр.ЕдИзм = Выборка.ЕдИзм;
        
        ВыборкаДет = Выборка.Выбрать();
        Пока ВыборкаДет.Следующий() Цикл
            Если ВыборкаДет.ТипЗаписи () = ТипЗаписиЗапроса.ДетальнаяЗапись Тогда
                Заголовок = "План" + ИдентификаторЗаголовка(ВыборкаДет.Дата);
                Стр[Заголовок] = ВыборкаДет.План;    
            КонецЕсли; 
        КонецЦикла; 
        
    КонецЦикла; 
...
Возврат Таб


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.