Добрый день!
Есть документ, к которому можно прикреплять множество файлов. Нужно в одной таблице вывести список файлов, связанных с документом в разных строках.
На файлы уже есть енд поинты и логика на беке, по этому отдельный объект на файл в модели данных не создал.
Создаю таблицу из одного документа, далее нахожу массив связанных файлов, вывожу их имена по одному в кастомный столбец таблицы. Проблема в том, что имена файлов записываются все в одну строку, а мне надо, чтобы они выводились в разных строках, как это сделать?
Если кастомный столбец уже есть, то только сделать нужный БП по их выводу.
Не совсем ясно в каком виде этот массив файлов с именами приходит. Если это массив, то можно, например, использовать блок join strings с разделителем в виде переноса строки.
Можно прямо в столбец таблицы добавить list и выводить файлы в листе.
Приложил БП, который сейчас у меня на таблице.
TextBlock это объект в кастомном столбце
Я беру массив связанных файлов документа, выбираю по одному файлу, беру от него строку с именем и хочу вставить в текстовой блок таблицы. Я думал, что если я буду повышать ID текстового блока с каждой итерацией, то будут создаваться новые текстовые блоки. По факту это так не работает, я просто получаю несуществующий ID. Хотелось бы реализовать таким образом, чтобы это были именно строки таблицы, чтобы можно было использовать весь функционал таблицы по выбору строк и тд. Чтобы не было много строк в одной строке таблицы. С List у меня тоже не получилось, проблема та же, не получается заполнить следующую строку, создается только одна строка.
Работает правильно. В таблицу добавляется массив, состоящий из одного элемента, соответственно и строка в таблице будет только одна.
Оно бы работало как планировалось, если бы массив состоял из множества Document, в каждом из которых один file_name. А сейчас ровно наоборот - один Document со множеством file_name.
Тут или на ходу ремапинг делать, либо изначально другую модель использовать.
Плюс сам факт того, что строки планируется заполнять последовательно - а при таком БП запросы идут по порядку, один за другим - очень плохая идея. Лучше делать БП по отображению данных в текстовом блоке на триггере On Create текстового блока. Тогда и выполнение будет параллельным и склеивать строки для определения правильного Element Key не понадобится.
Сделал отдельную модель Dataset, которая связана с Document. В нем один файл. Dataset вывожу в таблицу, и все естественным образом работает. Единственное, не понял как скачивать файл, вызываю существующий запрос, но нечего не происходит.
Попробуйте использовать Download File From URL. Он будет возвращать файл, как цельный объект.
А как сформировать url для файла?
Тот же, что у эндпойнта в предыдущем запросе. /_files/:id/download/
Естественно только нужно прописать полный путь, :id заменить на требуемый и убедиться, что сам эндпойнт открыт для запросов без авторизации.
Спасибо! Все получилось!
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.