Как можно удалить файл в ходе БП ?

Пример: 

Нужно в  ходе БП удалить все файлы кроме файла который загрузили в конце (По дате ) 

Прикрепленные файлы

Нравится

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

Добрый день.

 

Можно в БП реализовать такую логику 2-мя стандартными элементами.

1. С помощью элемента 'Чтение данных' получить Id последней загруженной записи:

2. С помощью элемента 'Удаление данных':

Добрый день.

 

Можно в БП реализовать такую логику 2-мя стандартными элементами.

1. С помощью элемента 'Чтение данных' получить Id последней загруженной записи:

2. С помощью элемента 'Удаление данных':

Спасибо 

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

Добрый день!

Использую версию 7.18.2.

Необходимо файлы, которые находятся в письме прикрепить к созданному обращению.

С помощью БП реализую следующее:

1. Приходит электронное письмо с вложением (файлы, документы и т.п.);

2. Получаю данные из письма (Заголовок, Тело письма, ....);

3. Получаю данные по отправителю;

4. Создаю новое обращение;

5. Прикрепляю файлы которые были в письме (их может быть несколько) к только что созданному Обращению (объект "файл и ссылки объекта раздела Обращения").

Но есть проблема! Отправляю письмо для проверки. При проверке выясняется следующее: файлы могут прикрепляться к Обращению (добавляться в объект "файл и ссылки объекта раздела Обращения"), а могут и не прикрепляться. Если было несколько вложений в письме, то может на деталь добавиться несколько одинаковых файлов, файлы дублируются. В чем может быть проблема?

Нравится

4 комментария

Добрый день, Павел.

Это нестандартное поведение такого бизнес-процесса, так как вне зависимости от количества файлов они все должны обрабатываться корректно. Я так понимаю, каких-то закономерностей не выявлено? Возможно проблема воспроизводится только с конкретными типами файлов?

 

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

Олег Нефедьев,

Спасибо за ответ. Закономерности нет. Не зависит от формата.

Создавал БП которое отслеживает изменения в ActivityFile. Файлы добавляются, но если их количество в письме больше одного, то создаются дубликаты этих файлов, т.е. прикреплено к письму 2, 4, 7 штуки, то добавляется 4, 8, 14 соответственно. Если одно вложение, то все нормально.

Pavel Litvinovich,

В таком случае рекомендую направить обращение в техническую поддержку, так как в рамках обсуждения в этом посте будет проблематично выяснить причину проблемы.

Олег Нефедьев,

Спасибо!

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

Доброго времени суток , необходимо к стандартной детали "файлы и ссылки" добавить поля сумма и тд, пробовал создать деталь унаследованной от объекта файлы и ссылки , добавил CSS файл к данному модулю , но при загрузке изображения выдает ошибку "Ошибка загрузки файла"

Нравится

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

Кирилл Паксюдкин,

Если для всех то заместить объект File или же если вам например только для файлы и ссылки активностей то 

ActivityFile

Не понял вас какое отношение имеет добавление CSS файла к добавлению полей к детали.

Вам нужно для начала расширить базовый объект Файлы и ссылки (если добавлять для всех деталей) Или расширить например Файлы и ссылки в Активности если доп поля нужны только для детали в Активностях

2 Разблокировать мастер настройки колонок для детали Файлы и ссылки. Подробнее тут

3 Настроить деталь

Григорий Чех,  т.е добавить замещающий объект с родилельским объектом FileDetailV2 и добавить к нему необходимые мне поля ? (с разблокировкой разобрался)

Кирилл Паксюдкин,

Если для всех то заместить объект File или же если вам например только для файлы и ссылки активностей то 

ActivityFile

Григорий Чех,

я заместил деталь добавил необходимые мне дополнительные поля и  сзвязал с разделом, далее  настроил колонки чтобы показывались мои доп поля , но при добавлении не выскакивают мои поля не смотря на то что в "карточка схемы" я полям добавил свойство "enabled": true   Как видите только стандартные поля видны.... Заранее спасибо)

Свойство «enabled» отвечает за доступность для редактирования, за видимость отвечает свойство «visible». Ограничения работы с ним описаны тут.

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

Добрый день!

Создал кастомную страницу в разделе Активности, добавил деталь Файлы и ссылки активности. В данный момент в данной детали нет возможности настроить колонки и отсортировать файлы (например, по дате создания).

Можно ли как-то добавить доп. колонки к данной детали и настроить сортировку файлов?

Нравится

3 комментария

Попробуйте переопределить метод getGridDataColumns
 

getGridDataColumns: function () {
                var config = this.callParent(arguments);
 
                config["Название колонки"] = {
                    path: "Название колонки",
                    orderPosition: 1,
                    orderDirection: this.Terrasoft.OrderDirection.ASC
                };
 
 
                return config;
            },

 

Здравствуйте!

На Академии присутствует детальная инструкция: https://academy.terrasoft.ru/documents/technic-sdk/7-11/otobrazhenie-dopolnitelnyh-kolonok-na-detali-fayly-i-ssylki

Проводили данный опыт давным-давно.

Все что вам необходимо это добавить данный метод

getGridSettingsMenuItem: function() {
	return this.getButtonMenuItem({
		Caption: "Настройка колонок",
		Click: {"bindTo": "openGridSettings"}
	});
}

Таким образом вы сможете получить доступ к стандартной настройке колонок в этой детали)

Сортировка настраивается в методе:

getGridDataColumns: function() {
	return {
		"Id": {path: "Id"},
		"SysAdminUnit": {path: "SysAdminUnit"},
		"SysAdminUnit.SysAdminUnitTypeValue": {path: "SysAdminUnit.SysAdminUnitTypeValue"},
		"Name": {path: "KmName", orderPosition: 1, orderDirection: Terrasoft.OrderDirection.DESC}
	};
}

Кстати у выше упомянутой статьи странно, но уровень сложности очень высокий, хотя кастомизация ну если не типовая, то тривиальная.

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

Добрый день!

В рамках интеграции сайта клиента с bpm`online появилась необходимость добавлять с сайта файлы на деталь "Файлы и ссылки" обращения. Для этого был написал веб-сервис для добавления файла, так выглядит метод добавления:

 [OperationContract]
        [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped,
        ResponseFormat = WebMessageFormat.Json)]
      public string InserCaseFile(CaseFileData data)
    {
      try
      {
        var appConnection = HttpContext.Current.Application["AppConnection"] as AppConnection;
        var userConnection = HttpContext.Current.Session["UserConnection"] as UserConnection;
        var caseFile = new Terrasoft.Configuration.CaseFile(userConnection);
 
    //    byte[] bytes = Convert.FromBase64String(data.File);
     ASCIIEncoding ascii = new ASCIIEncoding();
    var t = ascii.GetBytes(data.File);
	Stream stream = new MemoryStream(t);
 
          var id = Guid.NewGuid();
          caseFile.SetDefColumnValues();
           caseFile.Id = id;
           caseFile.Name = data.Name;
           caseFile.Size = (int)stream.Length;
           caseFile.SetStreamValue("Data", stream);
           caseFile.CaseId = new Guid(data.CaseId);
          caseFile.Save();
          return "Ok";
      }
      catch(Exception er)
      {
        return er.ToString();
      }
 
    }

Для тестирования с помощью SelectQuery веб-службы DataService был получен уже существующий в bpm файл *.txt, при получении значения из колонки Data в json возвращалась строка в кодировке 7-bit ASCII. 

При попытке записи этого значения с помощью описанного выше метода в таблицу CaseFile, на детали появляется файл, но при нажатии на него страница перезагружается и скачивания или открытия не происходит.

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

Нравится

4 комментария

Здравствуйте,

Посмотрите, как передается файл в ConfigurationFileApi, метод upload.

И принимается в схеме FileApiService, метод public string Upload(Stream fileContent)

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

Добрый день, коллеги.  Проблема была в TypeId, как и написал Максим. Спасибо.

я имею в виду поле TypeId='529BC2F8-0EE0-DF11-971B-001D60E938C6' (это тип File из таблицы FileType)

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

Создал деталь, унаследовался от FileDetailV2, при обновлении страницы (с очисткой кеша, или без - не имеет значения) файлы не отображаются, выдает ошибку:
GET http://***************/1/Nui/Terrasoft/ImageListViewModel.js?_dc=1480419... 404 (Not Found)
Помогает только релогин, или обновление страницы, на которой нет этой детали.
Такая же проблема наблюдается в стандартной EmailFileDetailV2. Подскажите возможно ли решить.
Версия 7.5.0.1328
P.S. Варианты ответов вроде "в 7.8 такой проблемы нет" не являются решением проблемы.

Нравится

1 комментарий

Уточните каким образом была создана данная деталь (по возможности прикрепите исходный код схем детали).

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