Подсчет элементов в поле Infopath

Я создал форму в Infopath с полем форматированного текста. Поле используется для хранения списка имен пользователей (первого и последнего). Я хочу иметь возможность вести учет каждой записи и вести подсчет. Затем я хочу использовать это общее количество записей для добавления или вычитания из других полей. Есть ли способ сделать это?


person Marvin Woolfolk    schedule 30.12.2019    source источник
comment
Можете ли вы добавить пример данных?   -  person M.P.    schedule 05.02.2020
comment
Список имен John Doe, John Doe2, John Doe3.... Хотите сохранить текущий счет John Doe, введенный в текстовое поле   -  person Marvin Woolfolk    schedule 22.05.2020


Ответы (1)


Является ли поле форматированного текста просто большой строкой? Если это так, вы можете просто использовать встроенную в python функцию разделения и либо разделить на ("\ r\n"), либо (","). Пример:

u = "Bob, Michael, Jean"
x = u.split(",")

X будет списком имен пользователей. Если вы используете разрывы строк для каждого нового имени пользователя, замените (",") на ("\r\n").

Теперь, чтобы подсчитать элементы в списке, вам просто нужно выполнить итерацию по списку, который вы создали с помощью цикла for. Пример:

b = 0
u = "Bob, Michael, Jean"
x = u.split(",")

for i in x:
    b += 1 // b will be the number of usernames
person Overhaul Paul    schedule 30.12.2019
comment
Поле форматированного текста будет представлять собой список имен, по 2 на строку (first_last1, first_last2), которые будут введены в Sharepoint. Список мне неизвестен, пока он не введен в Sharepoint. Не знаю, как отделить. Не вижу функции разделения в Infopath. - person Marvin Woolfolk; 30.12.2019