#palantir-foundry #foundry-code-repositories
Вопрос:
Я довольно новичок в машинописи и особенно в пользовательской реализации Palantir для объектов(наборов). Что я пытаюсь заархивировать: я хотел бы отфильтровать набор объектов до некоторых определенных значений. Затем я хотел бы вернуть первое из этих значений. На самом деле я просто хотел бы вернуть одну строчку. Что я сделал до сих пор:
@Function()
public nextUnprocessedValueString(inputObject: ObjectSet<CombinedSentencesForTagging>): ObjectSet<CombinedSentencesForTagging>{
const result = Objects.search().combinedSentencesForTagging().filter(f => f.customerFeedback.exactMatch('i like it very much.'))
return result
Мне понадобится только первая строка (или случайная строка).
Спасибо!
Комментарии:
1. Я не могу легко найти документацию по PF, но: я предполагаю
result
, что в этой функции есть массив отфильтрованных значений (например, 3 на скриншоте), правильно? Просто возьмите первый индекс этого массива.
Ответ №1:
Дайте этому попробовать:
@Function()
public nextUnprocessedValueString(inputObject: ObjectSet<CombinedSentencesForTagging>): CombinedSentencesForTagging {
const result =
inputObject.filter(f => f.customerFeedback.exactMatch('i like it very much.'))
.orderBy(f => f.customerFeedback.asc())
.take(1);
return result[0];
}
Вот изменения, которые я внес в исходную функцию:
- Изменил тип возвращаемого значения на один
CombinedSentencesForTagging
объект. - Изменил
filter
строку для запуска вinputObject
соответствии с указанными в параметрах функции - Использовал
orderBy
take
предложения и фильтр, чтобы выбрать только один из отфильтрованных результатов.