Здравствуйте, собираю по инструкции с академии, единственное имя поменял
https://academy.terrasoft.ru/docs/user/ustanovka_i_administrirovanie/ra…

 

Система чистая, это была первая сборка. Содержимое Dockerfile:

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS base
EXPOSE 5000 5002

RUN apt-get update && \
    apt-get -y --no-install-recommends install \
    libgdiplus \
    libc6-dev && \
    apt-get clean all && \
    rm -rf /var/lib/apt/lists/* /var/cache/apt/*

WORKDIR /app
COPY . ./

FROM base AS final
WORKDIR /app
ENV ASPNETCORE_ENVIRONMENT Development
ENV TZ US/Eastern
ENTRYPOINT [ "dotnet", "Terrasoft.WebHost.dll" ]

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS base
EXPOSE 5000 5002

RUN apt-get update && \
apt-get -y --no-install-recommends install \
libgdiplus \
libc6-dev && \
apt-get clean all && \
   rm -rf /var/lib/apt/lists/* /var/cache/apt/*

WORKDIR /app
COPY . ./

FROM base AS final
WORKDIR /app
ENV ASPNETCORE_ENVIRONMENT Development
ENV TZ US/Eastern
ENTRYPOINT [ "dotnet", "Terrasoft.WebHost.dll" ]

 

Нравится

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

Евгений, здравствуйте! 

 

Ошибка "base stage name already used" говорит, что у вас компонент уже используется.

Дело в том, что у вас код продублирован:

 

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS base
EXPOSE 5000 5002

RUN apt-get update && \
    apt-get -y --no-install-recommends install \
    libgdiplus \
    libc6-dev && \
    apt-get clean all && \
    rm -rf /var/lib/apt/lists/* /var/cache/apt/*

WORKDIR /app
COPY . ./

FROM base AS final
WORKDIR /app
ENV ASPNETCORE_ENVIRONMENT Development
ENV TZ US/Eastern
ENTRYPOINT [ "dotnet", "Terrasoft.WebHost.dll" ]

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS base
EXPOSE 5000 5002

RUN apt-get update && \
apt-get -y --no-install-recommends install \
libgdiplus \
libc6-dev && \
apt-get clean all && \
   rm -rf /var/lib/apt/lists/* /var/cache/apt/*

WORKDIR /app
COPY . ./

FROM base AS final
WORKDIR /app
ENV ASPNETCORE_ENVIRONMENT Development
ENV TZ US/Eastern
ENTRYPOINT [ "dotnet", "Terrasoft.WebHost.dll" ]

На Академии уже исправили этот момент:

 

https://academy.terrasoft.ru/docs/user/ustanovka_i_administrirovanie/ra…

 

Для продолжения работы нужно выполнить

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS base
EXPOSE 5000 5002
RUN apt-get update && \
apt-get -y --no-install-recommends install \
libgdiplus \
libc6-dev && \
apt-get clean all && \
rm -rf /var/lib/apt/lists/* /var/cache/apt/*
WORKDIR /app
COPY . ./
FROM base AS final
WORKDIR /app
ENV ASPNETCORE_ENVIRONMENT Development
ENV TZ US/Eastern
ENV COMPlus_ThreadPool_ForceMinWorkerThreads 100
ENTRYPOINT ["dotnet", "Terrasoft.WebHost.dll"]

Вильшанский Дмитрий, здравствуйте подскажите в чем может быть проблема, ошибка вида:
Unhandled exception. System.Exception: Could not resolve a service of type 'Terrasoft.WebHost.IApplication' for the parameter 'application' of method 'Configure' on type 'Terrasoft.WebHost.Startup'.
 ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = Application (ReflectionActivator), Services = [Terrasoft.WebHost.IApplication], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = RedisSessionSynchronizationService (ReflectionActivator), Services = [Terrasoft.WebHost.Session.ISessionSynchronizationService], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = RedisSessionSynchronizer (ReflectionActivator), Services = [Terrasoft.Redis.ISessionSynchronizer], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = IRedisClientsManager (DelegateActivator), Services = [Terrasoft.Redis.Abstractions.IRedisClientsManager], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> No connection is available to service this operation: INFO; UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402; IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=32767,Min=256,Max=32767), Local-CPU: n/a (See inner exception for details.) (See inner exception for details.) (See inner exception for details.) (See inner exception for details.)
 ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = RedisSessionSynchronizationService (ReflectionActivator), Services = [Terrasoft.WebHost.Session.ISessionSynchronizationService], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = RedisSessionSynchronizer (ReflectionActivator), Services = [Terrasoft.Redis.ISessionSynchronizer], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = IRedisClientsManager (DelegateActivator), Services = [Terrasoft.Redis.Abstractions.IRedisClientsManager], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> No connection is available to service this operation: INFO; UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402; IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=32767,Min=256,Max=32767), Local-CPU: n/a (See inner exception for details.) (See inner exception for details.) (See inner exception for details.)
 ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = RedisSessionSynchronizer (ReflectionActivator), Services = [Terrasoft.Redis.ISessionSynchronizer], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = IRedisClientsManager (DelegateActivator), Services = [Terrasoft.Redis.Abstractions.IRedisClientsManager], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> No connection is available to service this operation: INFO; UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402; IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=32767,Min=256,Max=32767), Local-CPU: n/a (See inner exception for details.) (See inner exception for details.)
 ---> Autofac.Core.DependencyResolutionException: An error occurred during the activation of a particular registration. See the inner exception for details. Registration: Activator = IRedisClientsManager (DelegateActivator), Services = [Terrasoft.Redis.Abstractions.IRedisClientsManager], Lifetime = Autofac.Core.Lifetime.RootScopeLifetime, Sharing = Shared, Ownership = OwnedByLifetimeScope ---> No connection is available to service this operation: INFO; UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402; IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=32767,Min=256,Max=32767), Local-CPU: n/a (See inner exception for details.)
 ---> StackExchange.Redis.RedisConnectionException: No connection is available to service this operation: INFO; UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402; IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=32767,Min=256,Max=32767), Local-CPU: n/a
 ---> StackExchange.Redis.RedisConnectionException: UnableToConnect on localhost:6379/Interactive, Initializing/NotStarted, last: NONE, origin: BeginConnectAsync, outstanding: 0, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: Connecting, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.0.601.3402
   --- End of inner exception stack trace ---
   at StackExchange.Redis.RedisServer.ExecuteSync[T](Message message, ResultProcessor`1 processor, ServerEndPoint server) in C:\projects\stackexchange-redis\src\StackExchange.Redis\RedisServer.cs:line 589
   at StackExchange.Redis.RedisServer.Info(RedisValue section, CommandFlags flags) in C:\projects\stackexchange-redis\src\StackExchange.Redis\RedisServer.cs:line 258
   at Terrasoft.Redis.StackExchangeAdapters.RedisClientAdapter.get_Info() in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis.StackExchangeAdapters/RedisClientAdapter.cs:line 64
   at Terrasoft.Redis.RedisValidator.GetVersion(IRedisClientsManager redisClientsManager) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisValidator.cs:line 28
   at Terrasoft.Redis.RedisValidator.CheckVersion(IRedisClientsManager redisClientsManager) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisValidator.cs:line 42
   at Terrasoft.Redis.RedisClientsManager..ctor(String connectionStringName, IRedisValidator redisValidator) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisClientsManager.cs:line 57
   at Terrasoft.Redis.RedisClientsManager..ctor() in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisClientsManager.cs:line 39
   at Terrasoft.Redis.RedisClientsManager.<>c.<.cctor>b__21_1() in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisClientsManager.cs:line 75
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.get_Value()
   at Terrasoft.Redis.RedisClientsManager.get_Instance() in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisClientsManager.cs:line 80
   at Terrasoft.Redis.RedisExtensions.<>c.<AddRedis>b__0_0(IServiceProvider container) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Redis/RedisExtensions.cs:line 15
   at Terrasoft.Core.DI.ServiceProvider.ServiceProviderAutofacModule.<>c__DisplayClass15_0.<ConfigureFactoryBinding>b__0(IComponentContext context, IEnumerable`1 parameters) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.Core.DI/ServiceProvider/ServiceProviderAutofacModule.cs:line 216
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   --- End of inner exception stack trace ---
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   at Autofac.Core.Resolving.InstanceLookup.<>c__DisplayClass5_0.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass0_0.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   --- End of inner exception stack trace ---
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   at Autofac.Core.Resolving.InstanceLookup.<>c__DisplayClass5_0.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass0_0.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   --- End of inner exception stack trace ---
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   at Autofac.Core.Resolving.InstanceLookup.<>c__DisplayClass5_0.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass0_0.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   --- End of inner exception stack trace ---
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters, Object& decoratorTarget)
   at Autofac.Core.Resolving.InstanceLookup.<>c__DisplayClass5_0.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.ResolveOperation.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)
   at Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable`1 parameters)
   at Autofac.ResolutionExtensions.Resolve(IComponentContext context, Type serviceType, IEnumerable`1 parameters)
   at Autofac.ResolutionExtensions.Resolve(IComponentContext context, Type serviceType)
   at Autofac.Extensions.DependencyInjection.AutofacServiceProvider.GetRequiredService(Type serviceType)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
   at Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
   at Microsoft.AspNetCore.Hosting.ConfigureBuilder.<>c__DisplayClass4_0.<Build>b__0(IApplicationBuilder builder)
   at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass13_0.<UseStartup>b__2(IApplicationBuilder app)
   at Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter.<>c__DisplayClass0_0.<Configure>g__MiddlewareFilterBuilder|0(IApplicationBuilder builder)
   at Microsoft.AspNetCore.HostFilteringStartupFilter.<>c__DisplayClass0_0.<Configure>b__0(IApplicationBuilder app)
   at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
   at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost host)
   at Terrasoft.WebHost.Program.StartWebApplication(String[] args) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.WebHost/Program.cs:line 28
   at Terrasoft.WebHost.Program.<>c__DisplayClass2_0.<Main>b__0(StartOptions _) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.WebHost/Program.cs:line 61
   at CommandLine.ParserResultExtensions.MapResult[T1,T2,TResult](ParserResult`1 result, Func`2 parsedFunc1, Func`2 parsedFunc2, Func`2 notParsedFunc)
   at Terrasoft.WebHost.Program.Main(String[] args) in /opt/buildagent/work/ApplicationCoreLinux/TSBpm/Src/Lib/Terrasoft.WebHost/Program.cs:line 64

Евгений Шевченко,Это ошибка при сборке images*

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

Добрый день, неоходимо добавить функциональность перетаскивания строк для детали.  Подскажите пожалуйста, как это можно сделать?

Нравится

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

Анастасия, если речь о Drag&Drop, то кратко о том, как использовать в системе, есть тут. Примеры использования Draggable есть в схемах конфигурации, связанных с дизайнером, картами и др.

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

Можно точнее описать что необходимо?

Анастасия, если речь о Drag&Drop, то кратко о том, как использовать в системе, есть тут. Примеры использования Draggable есть в схемах конфигурации, связанных с дизайнером, картами и др.

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

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

Друзья!

Мы объявляем старт регистрации на первый Хакатон по разработке приложений и бизнес-процессов на платформе bpm’online, который пройдет в рамках Форума сообщества Terrasoft.

32 часа непрерывного соревнования, командной работы и нетворкинга для создания лучших решений под руководством ведущих экспертов-менторов из Terrasoft.

2 потока:

  • Хакатон для разработчиков - создание приложений, расширяющих базовые возможности bpm’online, а также интеграций bpm’online с другими сервисами и приложениями.
  • Хакатон для аналитиков - создание готовых, исполняемых процессов, направленных на покрытие конкретных бизнес-задач пользователей, без применения навыков разработки.

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

Какие проекты можно реализовать? Любые! Вот лишь некоторые примеры:

Приложения и интеграции:

  • Автоматическое формирование документов и отчетов из элементов системы
  • Эффективный project-менеджмент (канбан, календарь, диаграмма Ганта)
  • Интерактивные опросы
  • Расширение возможностей базы знаний
  • Инструменты лидогенерации (трекеры email-адресов, обогащение данных, скоринг)
  • Инструменты AI (анализ данных, виртуальный ассистент)
  • Интеграции с облачными сервисами
  • Интеграции с онлайн-месседжерами, чатами и чат-ботами
  • Интеграции с социальными сетями
  • Интеграции с финансовыми и платежными системами

Бизнес-процессы:

  • HR-процессы (рекрутинг, on-boarding и обучение персонала, внутренние переводы)
  • Закупки (заявка на приобретение оборудования, согласование закупки, заявка на оплату)
  • Сервисные процессы (распределение обращений, проверка оборудования, обработка жалоб)
  • Маркетинг и коммуникации (планирование и проведение мероприятий, поздравление клиентов, обработка идей)
  • Организационные процессы (визиирование документов, согласование бюджетов, оформление доверенностей)
  • Отраслевые процессы (отслеживание доставки, формирование отгрузки, взыскание задолженности)

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

Мы с радостью ответим на все вопросы в ленте либо по почте:
Виталий Айзен, v.aizen@terrasoft.ru
Евгений Колосов, e.kolosov@terrasoft.ru

Удачи!

Нравится

Поделиться

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

Подписываюсь за Разработка -> Интерактивные опросы.

Тоже обязательно будем участвовать командой от ИнТех.

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

На сайте Академии Terrasoft опубликована обновленная до версии 7.9 документация по разработке в bpm’online.

В текущем обновлении переработаны большинство кейсов раздела "Разработка в bpm'online на примерах". Также дополнены и приведены в соответствие с новым интерфейсом системы материалы раздела "Инструменты разработки"

Нравится

Поделиться

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

В SDK bpm'online дополнен раздел "Рекомендуемые средства интеграции".
Заходите на сайт Terrasoft Academy в раздел "Документация SDK" и узнайте как

Статьи расположены в разделе "Рекомендуемые средства интеграции".

Нравится

Поделиться

10 комментариев

Добрый день!
Вопрос по статье "выполнить аутентификацию внешних запросов к веб-сервисам bpm'online". Что делать, если у пользователей ntlm-аутентификация (логин/пароль доменные) и нужно обратить к сервису OData?

Добрый день, Александр.

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

Сергей, не совсем понял, при чем тут страница логина.
Есть внешний код (в примере это код на C#), там жестко зашиты логин/пароль.
Вопрос: что зашивать, если логин/пароль доменные?

NTLM - аутентификация используется только через страницу логина.
В версиях 5.4, 7.6 и выше через аутентификационный сервис можно выполнить аутентификацию по логину/паролю пользователя в системе или по LDAP.

То есть, если у меня 5 пользователей, все доменные, то я не смогу создать например лид через OData, использую какую то внешнюю систему?

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

Сергей,
я подключусь, авторизуюсь по LDAP из своего кода, а как потом обратиться к сервису (например добавить лид)? Он же попросит авторизацию логин/пароль, а я после авторизации только на уровне кода смогу проверить, что все ок, а пароль то все равно не смогу в сервис передать и он меня не пустит.

Александр, данная аутентификация не поддерживается.
Поддерживаются:
1. Basic
2. Cookie (если есть способ получить аутентификационные куки из bpm'online, выполняется с помощью auth-сервиса).

Добрый день!
Скажите, пожалуйста, правильно ли я поняла?
чтобы использовать протокол ODATA необходимо, чтобы был хотя бы один пользователь(администратор) НЕ с доменной авторизацией ?

Добрый день, Дарья!

Верно, для использования протокола OData необходим пользователь с обычной или ldap авторизацией.

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

В SDK bpm'online в подраздел "Примеры решения типовых задач" добавлены решения кейсов, связанных с разработкой пользовательского интерфейса и бизнес-логики приложения.
Заходите на сайт Terrasoft Academy в раздел "Документация SDK" и узнайте как:

Статьи расположены в разделе "Примеры решения типовых задач"

Нравится

Поделиться

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

А что за функция asyncValidate в InvoicePageV2? Это какой-то другой способ валидации?

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

В SDK bpm'online дополнен раздел "Основные сведения для разработки".
Заходите на сайт Terrasoft Academy в раздел "Документация SDK" и узнайте в чем суть механизма замещения клиентских модулей, а также как

Статьи расположены в разделе "Основные сведения для разработки".

Нравится

Поделиться

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

Приглашаем на новые обучения Академии Terrasoft в августе!

6 августа - "Работать в корпоративной системе по-своему" - всё о быстром старте работы с CRM-системой: от настройки внешнего вида до расписания и итогов.

7 августа - "Новая версия CRM-линейки bpm’online 7.6: еще один шаг к совершенству в управлении путешествием клиента" - новые инструменты bpm'online для управления маркетингом, продажами и сервисом.

18-21 августа - "Разработка на платформе bpm'online" - возможности технологий bpm'online для разработчиков в кейсах.

Зарегистрироваться и посмотреть детальную программу обучения можно на сайте.
Присоединяйтесь!

Нравится

Поделиться

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

Пришел поучаствовать в первом вебинаре. Система пишет, что он не начался. Отменили?

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

В SDK bpm'online в подраздел "Примеры решения типовых задач" добавлены решения кейсов, связанных с разработкой пользовательского интерфейса и бизнес-логики приложения.
Заходите на сайт Terrasoft Academy в раздел "Документация SDK" и узнайте как:

Статьи расположены в разделе "Разработка конфигураций на платформе" в подразделе "Примеры решения типовых задач"

Нравится

Поделиться

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

В SDK bpm'online добавлен подраздел "Примеры решения типовых задач".
В нем мы будем размещать решения кейсов, связанных с разработкой пользовательского интерфейса и бизнес-логики приложения.
Заходите на сайт Terrasoft Academy в раздел "Документация SDK" и узнайте как:

Статьи расположены в разделе "Разработка конфигураций на платформе" в подразделе "Примеры решения типовых задач"

Нравится

Поделиться

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