XSLT для суммирования номера столбца, где есть ячейки без значения
-
16-10-2019 - |
Вопрос
Это сродни этот вопрос Но я не мог получить предложение sumAll
функция для работы. У меня также есть несколько разных столбцов, и это кажется глупым иметь отдельный шаблон для каждого столбца, который я хочу суммировать. У меня есть столбец, где не все ряды имеют значение. Я хочу подвести итог рядов, которые имеют значения. Я попробовал следующее:
<xsl:value-of select="sum($nodeset/@MyField[string-length(@MyField) > 0])" />
Кажется, это должно работать. Тем не менее, я получаю 0 как общее количество. В том же представление данных показывает отдельные строки ниже общего числа со значениями, такими как 300, 160 и т. Д., Таким образом, 0, очевидно, является неправильным общим. Я пробовал упаковку @MyField
в number()
, но я в конечном итоге получаю NaN
как итога тогда. Все примеры, о которых я видел в Интернете translate()
И иметь дело с десятичными детьми в британском стиле, но я работаю с десятичными актерами в американском стиле и не вижу никаких индивидуальных ценностей с запятыми.
Как подвести итог в этом столбце?
Решение
Я не уверен, что это ответит на весь ваш вопрос, так как я не уверен в том, что вы используете десятичные десятики и т. Д.
Попробуйте заменить длину строки (@myfield) на строку (.):
<xsl:value-of select="sum($nodeset/@MyField[string-length(.) > 0])" />
Я протестировал это быстро, и это возвращает значение, когда ваше выражение возвращалось 0, так что оно должно иметь большое значение для решения ваших проблем.