WELCOME TO THE COMMUNITY
find what you are looking for or ask a new question
Home > Forum > Latest posts

latest posts

MVP

Hi,
Do someone know how can to create an attachment instances with content and filegroup for send in specific instances?
I need for version sdk 2023
I attached the cod fromversion 2022.

NewAttachmentData newAttachmentData = new NewAttachmentData(args.Context,Configuration.informationNecessary.FileName, fileMerge_Necorupt);

newAttachmentData.FileGroup = new AttachmentsGroup(Configuration.informationNecessary.GropuName.Split('#')[0], Configuration.informationNecessary.GropuName.Split('#')[1]);

new DocumentAttachmentsManager(args.Context).AddAttachmentAsync(
new AddAttachmentParams() { Attachment = newAttachmentData, SkipPermissionsCheck = true, DocumentId = Convert.ToInt32(Configuration.informationNecessary.InstanceID) }
);

Thanks,
Raluca

WEBCON

Hi,

Generally speaking, License Service role is handled by a thread of a WEBCON Workflow Service. This means that you can get license service error in two cases:
- a thread responsible for License Service dies,
- WEBCON Workflow Service is not responding at all (or is turned off).

The second case can happen on any WEBCON BPS version and for multiple reasons. Since we're talking about errors every "few seconds", a possible scenario is an infinite loop operation (like timeout actions) or other heavy operations which make Workflow Service to consume too much resources (or even memory leak) and crash. These are just examples, it'd require more diagnostics, such as monitoring resource usage, availability of other service roles etc.

However, on builds 2023.1.3 (up to and including .202) we recognized an issue that may lead to killing a License Service thread, leading to this error.
This may happen when some particular service operations exceed a time limit set in "Service operations timeout in seconds" (https://docs.webcon.com/docs/2024R1/Studio/SystemSettings/ServiceConf/SystemSettings_ServiceManagDetails#2-miscellaneous).
Most common reasons are:
- a recurrent (cyclical) action that creates/moves too many workflow elements or actions executed on these elements are too time-consuming
- a text layer is put on a PDF file and SOLR indexing of that text layer exceeds the limit.
That's why Tomasz and Przemysław suggested increasing the limit. In some cases this may be enough. But it may happen that there are still some configuration/optimization issues on the environment and some operations done by the Workflow Service are taking too much time.
It'd be a good idea to take a peek at action executions statistics (WFActionExecutions table) and recurrent action definitions (WFRecurrentActionsDefinitions table) and analyze if there are actions with long average duration times. Better optimization (lower automation times, lower amount of elements proceeded simultaneously) may give better results.

What's most important is that the issue with license service thread being killed will be addressed in next 2023.1.3 publication (builds higher than .202), so I'd suggest that every environment that's currently on 2023.1.3 should be upgraded to that version.

Kind regards

Hi,
If this is the first step and the process is not saved in the database yet, you have to use some path (e.g. a rule to change the field value using "move to next step").
If it is already saved (has a signature), you can simulate pressing the save button in the top menu or use the path again.

Just out of curiosity, why do you need it?

This code checks if the selected date is today and if the current time is after 9:00 A.M., blocking form submission if both conditions are true. Otherwise, it allows the form to be submitted:

function validateForm() {
var selectedDay = document.getElementById('dayField').value;
var today = new Date();
var selectedDate = new Date(selectedDay);

if (selectedDate.toDateString() === today.toDateString()) {
var currentTime = today.getHours();
if (currentTime >= 9) {
alert("You cannot select today after 9:00 A.M.");
return false;
}
}
return true;
}

// Attach this function to your form's onsubmit event
document.getElementById('yourFormId').onsubmit = validateForm;