Платформа 3V/Формы/Действия/Выполнение пользовательского действия/Скачивание файла: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
(Новая страница: «Атрибут типа Файл имеет следующий вид: <syntaxhighlight lang="JSON" line> { "$type": "FileLinkDto[]", "$values": [ { "file...»)
 
Строка 1: Строка 1:
Атрибут типа Файл имеет следующий вид:  
+
Элемент атрибута типа Файл имеет следующий вид:  
 
<syntaxhighlight lang="JSON" line>
 
<syntaxhighlight lang="JSON" line>
 
{
 
{

Версия 13:54, 20 декабря 2021

Элемент атрибута типа Файл имеет следующий вид:

 1 {
 2   "$type": "FileLinkDto[]",
 3   "$values": [
 4 	{
 5 		"fileId": "b94bd200-ab38-4584-b8ac-0d247c83dd91",
 6 		"fileName": "наименование.jpg",
 7 		"downloadLink": "/api/file/b94bd200-ab38-4584-b8ac-0d247c83dd91",
 8 		"signs": [],
 9 		"uploadDate": "2021-12-20T08:08:05.447Z"
10 	}
11   ]
12 }

Для того, чтобы обратиться к значениям внутри атрибута следует использовать следующую структуру:

1 {
2    "attribute": {
3      "property": "FileId",
4      "discriminator": "FileLinkTransitiveAttributeDefinitionDto",
5      "id": 20
6    }              
7 }

, где property может быть

property
fileId GUID файла
fileName Наименование файла
downloadLink Ссылка для скачивания
signs Подписи файла
uploadDate Дата загрузки

Для того, чтобы скачать файл из справочника требуется настроить выражение, в котором задать идентификатор нужного файла.

 1 {
 2  "expression": "'https://api.3v-cloud.com/filestorage'+If(IsNullOrEmpty([1]), throw('Нет данных'), ValueOf([1], 0))",
 3  "returnFirstParameterValue": false,
 4  "operands": [
 5   {
 6    "dictionaryId": 1069,
 7    "attributeId": null,
 8    "filter": {
 9     "value": {
10      "$type": "System.Int32[], System.Private.CoreLib",
11      "$values": [
12       1
13      ]
14     },
15     "attributeId": null,
16     "attribute": {
17      "discriminator": "OwnAttributeDefinitionDto",
18      "id": 1
19     },
20     "conditionType": "AttributeInCollection",
21     "discriminator": "ValueConditionalDictionaryCardsFilter",
22     "inversion": false,
23     "conditionId": null,
24     "conditionExpressionId": null
25    },
26    "attribute": {
27     "property": "DownloadLink",
28     "discriminator": "FileLinkTransitiveAttributeDefinitionDto",
29     "id": 20
30    },
31    "discriminator": "EntryExpressionByDictionaryRequest",
32    "id": 1,
33    "allowMultipleValues": false
34   }
35  ],
36  "id": 2,
37  "name": "Выражение",
38  "code": null
39 }

Пример настройки можно увидеть здесь