Имеется ли возможность получить файл напрямую, если нет то как из массив байт прикрепить на файлы и примечания?

Добрый день
Имеется ли в црм облаке , способ получать файл напрямую к примеру document.docx
или это можно сделать только с помощью прикрепления на файлы и примечания
Если все таки только файлы и примечания, то как я могу прикрепить туда файл
Как я понимаю, необходимо сначала в стриме получить массив байт, а после только проводить запись, но какие библиотеки и какие методы нужны для этого в террасофт

Нравится

2 комментария
Лучший ответ

Если на карточке раздела есть деталь файлы и ссылки обычно это объект {SectionName}File. К примеру для активностей это ActivityFile. 

Вот пример создания записи на детали Файлы и ссылки. Вам необходимо получить поток с файлом и записать его в поле Data.

 

Stream stream = new MemoryStream(byteArray);
var size = Convert.ToInt32(stream.Length);

 

var insertActivityFile = new Terrasoft.Configuration.ActivityFile(context.UserConnection);
        insertActivityFile.Id = Guid.NewGuid();
        insertActivityFile.SetDefColumnValues();
        insertActivityFile.Name = "Name.txt";
        insertActivityFile.SetStreamValue("Data", stream);
        insertActivityFile.Size = size;
        insertActivityFile.TypeId = new Guid("529BC2F8-0EE0-DF11-971B-001D60E938C6");
        insertActivityFile.Version = 1;
        insertActivityFile.ActivityId = activityId;
        insertActivityFile.Save();

Через FileApiService можно скачивать и записывать файлы напрямую. Попробуйте поискать на комьнити похожие темы, где-то видел, что они проскивали.

 

Если на карточке раздела есть деталь файлы и ссылки обычно это объект {SectionName}File. К примеру для активностей это ActivityFile. 

Вот пример создания записи на детали Файлы и ссылки. Вам необходимо получить поток с файлом и записать его в поле Data.

 

Stream stream = new MemoryStream(byteArray);
var size = Convert.ToInt32(stream.Length);

 

var insertActivityFile = new Terrasoft.Configuration.ActivityFile(context.UserConnection);
        insertActivityFile.Id = Guid.NewGuid();
        insertActivityFile.SetDefColumnValues();
        insertActivityFile.Name = "Name.txt";
        insertActivityFile.SetStreamValue("Data", stream);
        insertActivityFile.Size = size;
        insertActivityFile.TypeId = new Guid("529BC2F8-0EE0-DF11-971B-001D60E938C6");
        insertActivityFile.Version = 1;
        insertActivityFile.ActivityId = activityId;
        insertActivityFile.Save();

Показать все комментарии