Имя: Пароль:
1C
1С v8
Как получить ОписаниеТипов из реквизита УФ?
0 fisher
 
10.12.21
17:11
Задача: хочу приводить значение числовой переменной к разрядности числового реквизита УФ (не трогая значение этого реквизита).
Вопрос: как это сделать?
1 fisher
 
10.12.21
17:12
Через промежуточную переменную не предлагать :)
2 mistеr
 
10.12.21
17:16
(0) А почему ты не знаешь разрядности реквизита? Это какой-то универсальный механизм?
3 Ненавижу 1С
 
гуру
10.12.21
17:20
тут одной переменной не отделаться:

Для каждого Реквизит Из ПолучитьРеквизиты() Цикл
    
        Если Реквизит.Имя="МойРеквизит" Тогда
            
            ОписаниеТипа = Реквизит.ТипЗначения;
            Результат = ОписаниеТипа.ПривестиЗначение(МоеЗначение)
        
        КонецЕсли;
    
    КонецЦикла;
4 fisher
 
10.12.21
17:22
Ясно. Проще пожертвовать капелькой универсальности. Буду разрядность явно передавать.
5 Kassern
 
10.12.21
17:31
(0) ни клиенте хотите этим делом заниматься, или на сервере?
6 Kassern
 
10.12.21
17:37
(3) Можно наверное так:

    Если Реквизит.Имя="МойРеквизит" Тогда

        Разрядность=Реквизит.ТипЗначения.КвалификаторыЧисла.РазрядностьДробнойЧасти;

    КонецЕсли;
7 Kassern
 
10.12.21
17:38
Если нужно решить только используя клиент, то можно вот так извратиться)

    Если ТипЗнч(ЧисловойРеквизит)=Тип("Число") Тогда
        МассивСтрок=СтрРазделить(Элементы.ЧисловойРеквизит.ВыделенныйТекст,",",Истина);
        Разрядность=?(МассивСтрок.Количество()<=1,0,СтрДлина(МассивСтрок[1]));
    КонецЕсли;
8 fisher
 
10.12.21
17:42
(3) От блин, это еще и сервер нужен...
(5) На клиенте
(7) ВыделенныйТекст? Не. Без меня.
9 Kassern
 
10.12.21
17:43
(8) там всего 2 свойства с явной разрядностью - ВыделенныйТекст и ТекстПодвала)
10 Kassern
 
10.12.21
17:44
(9) ой не подвала, а ТекстРедактирования
11 fisher
 
10.12.21
17:45
Нельзя по-человечески - обойдусь. Невелика беда.
12 ДедМорроз
 
11.12.21
11:05
У тебя что переменные меняются в процессе работы?
Загнал нужные данные в отдельный реквизит при создании и пользуйся потом хоть на клиенте хоть на сервере.