Руководство пользователя Semantic MDM
×
Меню
Индекс

Пример вывода диапазона измерений для калибров

 
Данный пример форматирует вывод диапазона измерений калибров по следующей формуле: “(<нижний диапазон измерений> - <верхний диапазон измерений> <обозначение ЕИ>)”. Задачей данного скрипта является:
 
import java.text.DecimalFormat;
 
String getValue(){
    //Получить тип числа с плавающей запятой и проверить что тип соответствует диапазону
    DoubleFormatType vType = support.getValueType(@[Диапазон измерения]);
    if (vType == DoubleFormatType.RANGE) {
      //Получим точность, коэффициент и обозначение ЕИ в котором пользователь задал значение
      Integer precision = support.getEiPrecision(@[Диапазон измерения]);
      BigDecimal eiKoef = support.getEiKoef(@[Диапазон измерения]);
      String eiCode = support.getEiCode(@[Диапазон измерения]);
       
      //Получим левую и правую границу диапазона
      leftValue = support.getLeftDoubleValue(@[Диапазон измерения], precision, eiKoef);
      rightValue = support.getRightDoubleValue(@[Диапазон измерения], precision, eiKoef);
    
     //Настроим формат преобразования значения к строке
      DecimalFormat df;
      if (precision == 0) {
        df = new DecimalFormat("#"); //Формат для целого числа
      } 
      else {
        df = new DecimalFormat("#.".padRight(precision+2,'#')); //Формат для числа с десятичной частью
      }                                    
      return '('+df.format(leftValue)+' - '+df.format(rightValue)+' '+eiCode+')'
    }
   
    return "";
}