Hello community,

 

Let’s say I have sent an email to a contact about a webinar. After some days I want to follow up  to this email. Is there a way to replyall or reply to that email instead of sending a different mail? The requirement is to have a single email thread instead of sending multiple emails about same thing. How can I achieve this through business process?
 

Thanks in advance!

Like 0

Like

1 comments

Hello Shivani,

 

Basically we don't have such functionality in our system. Alternatively, you can read the body of the letter that arrived (if it is available in the process) and, through the parameters, throw it into a new letter. It's essentially just working with parameters. 

 

Please also note that our core R&D department has a suggestion registered on their side to make possible send an email in single thread via business process in further releases. 

 

Thanks for the great idea!

 

Regards, 

 

Bogdan L.

Show all comments

Hi everyone,

I have created a script task to create new records from a csv.

I am trying to implement a method to search the db for a matching record and then update it (in case it exists).

The second part (the 'else' part, it's working fine) 

Does anybody know how to filter and search a DB table? What am I getting wrong?

 

 

void saveLine(string line, int rowNumber){
    if(rowNumber!=0)
    {
        string lineFormatted = line.Replace("\"", "");
        string[] lineSplitted = lineFormatted.Split(',');
        var LRNMBL = lineSplitted[0];
        var LRRIGA = lineSplitted[1];
        var LRDTBL = lineSplitted[3];
        var LRCANA = lineSplitted[6];
        // Creation of query instance with "Contact" root schema. 
       
        // An EntitySchemaQuery instance that accesses the UsrTestFTPCall table of the database.
        var esq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "UsrVedniteTestate");
        
       
        // Adding columns to the query.
        esq.AddColumn("UsrLRNMBL");
        esq.AddColumn("UsrLRRIGA");
        esq.AddColumn("UsrLRDTBL");
        esq.AddColumn("UsrLRCANA");

        // Filter the query data. according to LRNMBL and 
        var esqFirstFilter = esq.createColumnFilterWithParameters(Terrasoft.ComparisonType.EQUAL,"UsrLRNMBL", LRNMBL);
        var esqSecondFilter = esq.createColumnFilterWithParameters(Terrasoft.ComparisonType.EQUAL,"UsrLRRIGA", LRRIGA);
        
        esq.filters.logicalOperation = Terrasoft.LogicalOperatorType.AND;
        
        esq.filters.add("esqFirstFilter", esqFirstFilter);
        //esq.Filters.Add(esqSecondFilter);
          
      
        // Get the result of the query.
        var entities = esq.GetEntityCollection(UserConnection);
        // If the data is received.
        if (entities.Count > 0)//Record exists in the db --> update
        {
           var recordToUpd = entities[0];
           recordToUpd.SetColumnValue("UsrLRNMBL", LRNMBL);
           recordToUpd.SetColumnValue("UsrLRRIGA", LRRIGA);
           recordToUpd.SetColumnValue("UsrLRDTBL", LRDTBL);
           recordToUpd.SetColumnValue("UsrLRCANA", LRCANA);
        }
        else 
        {
            //the record doesn't exist --> Create one
               var TestObj = UserConnection.EntitySchemaManager.GetInstanceByName("UsrTestFTPCall").CreateEntity(UserConnection);
            //access the data position and assign it to its column
            TestObj.SetDefColumnValues();
            //Associate new column values to old Col values
            TestObj.SetColumnValue("UsrName", rowNumber.ToString());
            TestObj.SetColumnValue("UsrLRNMBL", LRNMBL);//riferimento testata di vendita
            TestObj.SetColumnValue("UsrLRRIGA", LRRIGA);//riferimento riga all'interno della stessa vendita
            TestObj.SetColumnValue("UsrLRDTBL", LRDTBL);
            TestObj.SetColumnValue("UsrLRCANA", LRCANA);
            TestObj.Save();
           }
    }
}
 

Like 0

Like

4 comments

Hello,

I don't see anywhere in the code where you're saving the updates made to the entity in recordToUpd. Try adding the following to have it save the values in the database:

recordToUpd.UpdateInDB();

Ryan

Hello Federica,

Yes, try to add the method that Ryan recommended you. It will help to resolve the issue.

Best Regards,
Tetiana

Hi Ryan,

 

The problem is to access and filter records in the db.

That part of the script ain't working.

Hi Tetiana Bakai,

The main issue atm lays in the filtering and db-access part.

Show all comments

Hi everyone, 

I'd like to automate a data Import from a FTP server using a business process, without downloading the file locally.

I also found this article (https://community.creatio.com/questions/how-automate-imports-ftp-locati…) , but the links have either been removed or deleted.

I would like to know whether it is possible to use C# code in a Script Task to store the data stream in RAM and eventually recover the data to import. 

Is it reasonable for a cloud- stored enviroment to handle this kind of process with CSV files of approx. 2 MB?

Like 1

Like

3 comments

Hi Federica, 

 

Actually you are still capable to use OData with business task to achieve required implementation. You don't need to use Scheduler for this, so disregard these deleted links, I will give you fresh one , please take a look on the actual OData 4 link with guide how to set up the integration: 

 

https://documenter.getpostman.com/view/10204500/SztHX5Qb?version=latest

 

Please also check out this link from Marketplace where you may find another solution for you task: 

 

https://marketplace.creatio.com/app/file-manager-creatio

 

here you may set up key features of needed requirements, so you can make "One click" implementation and it might be much easier for you.

 

Best Regards, 

 

Bogdan L. 

The .NET FtpWebRequest class can download a file to an in-memory stream (without actually saving the file anywhere) that you can then process from the stream. This could be used from a ScriptTask in a process etc

FtpWebRequest request =
    (FtpWebRequest)WebRequest.Create("ftp://ftp.example.com/path/file.txt");
request.Credentials = new NetworkCredential("username", "password");
request.Method = WebRequestMethods.Ftp.DownloadFile;
 
using (Stream stream = request.GetResponse().GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
    while (!reader.EndOfStream)
    {
        string line = reader.ReadLine();
        // process the line as needed
    }
}

Ryan

Ryan Farley,

That's the script I'm running at the moment and it works!

Show all comments

Hi,

I have a small problem,

I have a custom section "Client" and I created a custom field UsrName.
When lead is created, I auto create Client by setting lead.contact_name as client.usrname but it always got set as null/empty string.
In the same business process, I am creating a contact using lead.contact_name as contact.fullname and it works perfectly.

I tried setting a business rule as well that when lead is filled in, it auto copies the lead.contact_name as client.usrname, but it didn't work.

Do you have any idea why this doesn't work?

Best Regards,

Solem A.

Like 0

Like

2 comments
Best reply

I have solved this,

The lead create event was being triggered way before I clicked save button. So I changed my BP to occur during Lead Modified.

Best Regards,
Solem A.

Dear Solem Khan Abdusalam,

 

Could you please specify a few things?

 

1. Does the client object get created?

2. Is the contact's name populated?

3. Do other fields get populated correctly?

 

You can also check in the Client object configuration if the Displayed value is set to Name

 

Best Regards,

Max.

 

I have solved this,

The lead create event was being triggered way before I clicked save button. So I changed my BP to occur during Lead Modified.

Best Regards,
Solem A.

Show all comments

Hi Team,

 

I want an schedule an email weekly with a excel report as attachment that will  be generated by system 

 

I used These application to generate excel report and attach to email automatically 

 

Excel pivot report for Creatio

Excel reports builder for Creatio

Printable attachment in email for Creatio

'Save printable' process element

Send email with attachments

 

But was unable to generate and attach excel to email on a scheduled process

Excel attachment is mandatory 

 

Please suggest a work around to solve this.

 

Thank You in Advance

 

Like 0

Like

1 comments

Hello,

There is no way to generate the excel report since it is not piece of default functionality. The workaround to attach the excel report manually on the attachments detail and use simple process to send it. Here is the example that send attachments from account:

 

 

 

 

Other than that, it is necessary to develop custom integration that will call for endpoint of the excel report generation, get file, send it to Creatio and then the process would re-send it according to your needs.

 

When clicking on generate excel report, the query calls for https://yourwebsite.com/0/rest/IntExcelReportService/GetExportFiltersKey with the following parameters:

EsqString: "{\"rootSchemaName\":\"Contact\",\"operationType\":0,\"includeProcessExecutionData\":true,\"filters\":{\"items\":{\"8488ded0-40f6-4167-95ca-20bccc49bfc1\":{\"filterType\":1,\"comparisonType\":3,\"isEnabled\":true,\"trimDateTimeParameterToDate\":false,\"leftExpression\":{\"expressionType\":0,\"columnPath\":\"Id\"},\"rightExpression\":{\"expressionType\":2,\"parameter\":{\"dataValueType\":1,\"value\":\"c4ed336c-3e9b-40fe-8b82-5632476472b4\"}}}},\"logicalOperation\":0,\"isEnabled\":true,\"filterType\":6},\"columns\":{\"items\":{\"Full name\":{\"caption\":\"Full name\",\"orderDirection\":0,\"orderPosition\":-1,\"isVisible\":true,\"expression\":{\"expressionType\":0,\"columnPath\":\"Name\"}},\"Age\":{\"caption\":\"Age\",\"orderDirection\":0,\"orderPosition\":-1,\"isVisible\":true,\"expression\":{\"expressionType\":0,\"columnPath\":\"Age\"}},\"Email\":{\"caption\":\"Email\",\"orderDirection\":0,\"orderPosition\":-1,\"isVisible\":true,\"expression\":{\"expressionType\":0,\"columnPath\":\"Email\"}}}},\"isDistinct\":false,\"rowCount\":-1,\"rowsOffset\":-1,\"isPageable\":false,\"allColumns\":false,\"useLocalization\":true,\"useRecordDeactivation\":false,\"serverESQCacheParameters\":{\"cacheLevel\":0,\"cacheGroup\":\"\",\"cacheItemName\":\"\"},\"queryOptimize\":false,\"useMetrics\":false,\"adminUnitRoleSources\":0,\"querySource\":0,\"ignoreDisplayValues\":false,\"isHierarchical\":false}"
RecordCollection: ["c4ed336c-3e9b-40fe-8b82-5632476472b4"]
ReportId: "ec1724f7-e58e-491f-8471-0ce19b61bc02"

 

so it is necessary to generate the POST request to this endpoint  /0/rest/IntExcelReportService/GetExportFiltersKey with similar parameters as above. As the response - you will get the file. 

Here is the similar post describing how to generate such POST request

 

https://community.creatio.com/questions/how-can-i-generate-excel-report…

 

Regards,

Dean

Show all comments

Hi Team,

 

I got a system to clean data and do some enhancement into it but as I was working on it, I found out that there are thousands of business process in error state I tried to cancel them but it is taking a lot of time

Please suggest a way to cancel them.

there are thousands of records and easier way to delete them currently 

 

I wish to use SQL Execuer to delete data so please let me know if I am correct and its impact on the system and correct usage

 

Thank You in Advance

Like 0

Like

2 comments
Best reply

Hello Braj,

 

Creatio has inbuilt functionality that can cancel and delete the history of business process execution.

The settings can be found in System Settings section:

 

 

Best regards,

Bogdan S.

Hello Braj,

 

Creatio has inbuilt functionality that can cancel and delete the history of business process execution.

The settings can be found in System Settings section:

 

 

Best regards,

Bogdan S.

Thank You I'll use it now 

Show all comments

Hi Community,

 

We have this situation, where we need to update every day our currency rates through a business process that we've already implemented. In this process, we receive the latest rate from our api and we create a new record in the CurrencyRate detail with that rate.

Objects: CurrencyRate, Currency.

 

As you can see in the print above, after we added the new record (inside red box), the "Taxa" field, didn't update. We want to know:

  1. How can we solve this issue?
  2. Is there any trigger that is executed when we insert a new record in this detail?

 

Thanks in Advance.

 

Best Regards,

Pedro Pinheiro

Like 0

Like

2 comments

Hello Pedro,

 

Hope you're doing well.

 

To perform the mentioned business task your process needs to:

— read data from "Exchange rate" object, but not from "Currency" object or other objects (in this case the process will be triggered by adding records to the "Exchange rate" object);
— read the exchange rate that is set for your currency and that has "End" (on your screenshot it's "Fim") column value set as NULL (meaning currently active exchange rate).

 

Also, you can use web services for updating daily rate currency. For example, "https://fixer.io/"web service, which we recommended to use in one of our articles:

https://academy.creatio.com/docs/user/no-code_customization/web_service…

 

In the following link, you can find the way of implementation of the mentioned web service:

https://academy.creatio.com/docs/user/no-code_customization/web_service…

 

General information on how to work with currencies can be found here:

https://academy.creatio.com/docs/user/platform_basics/user_interface/wo…

 

Best regards,

Roman

Roman Rak,

 

Hi Roman,

 

I'm working together with Pedro on this issue and we found the problem.

As we bounded the data of "currency" table from pre-prod to prod environment, the exchange rate was filled in in the "Rate" column with the last value in the prod environment.

Once in the prod environment we have deleted the values in the "Rate" column, the currency table is working as expected.

 

Thanks for the help,

Luis

 

Show all comments

Hello, I created a new custom package to build a new custom section and business processes in. What package must mine depend on for emailing from a process to work? Right now my package depends on:

  • Base
  • CloudEmailService
  • DesignerTools
  • Managers
  • MarketingCampaign
  • NUI
  • ProductCore

Right now I've been able to write and save processes, however the process parameters are showing up blank in the email. It works if I write the process in the normal "custom" package, but why might it not work in my new package?

 

Like 0

Like

2 comments

Hello Mitch,

 

Please add these packages as dependent packages for your package:

 

MarketingSoftkeyEnu

OrderInSales_OperatorSingleWindow_Softkey_ENU

SalesEnterprise_Marketing_ServiceEnterprise

SalesEnterpriseSoftkey_EN

ServiceEnterpriseSoftkey

 

Once done please generate source code for all items, compile all items of the app and everything should work as needed.

 

Best regards,

Oscar

Oscar Dylan,

Thanks Oscar. I did get it to work.

Show all comments

Hello all,

I am working with a business process that runs each morning automatically. However, it seems to get stuck at an exclusive gateway with a conditional flow and a default flow. It doesn't error but it also doesn't continue advancing. 

In looking into the issue, I found mention of a setting on the business proccess FAQ page mentions a JIS Pool. 

"Rarely, the incorrect "Maximum number of working processes" setting in the JIS pool can cause the bug. If a value greater than 1 is set, then opened processes accumulate and stop responding."

I can't find mention of JIS pool anywhere esle in the documentation, does anybody know what the JIS pool is and where I can find it? I would like to check this setting to confirm that it is set up correctly.

Like 0

Like

2 comments

Hi Kevin, 

 

Did you find the reason for the stuck process and how to fix it?

I'm facing the same issue.

I have a scheduled business process which gets stuck (status = running) on an Exclusive Gateway (OR). Any other way of starting the process (manual or on field change) seems to work fine. 

 

Thanks,

Tiago

Hello,

 

This parameter is stored in the IIS pool settings:

this is an example from my test IIS pool from the local app, but by default the number here is 1 for the cloud-based apps.

 

Hello Tiago,

 

We need to take a look at this process on our end. Please email us at support@creatio.com and provide us with the link to the app with this process, provide us with the name of this process and also provide us with external access with access to data and configurations.

 

Best regards,

Oscar

Show all comments

A major strength of Creatio is its ability to create a process-oriented approach for sales, services, and marketing. Building out processes in Creatio helps your teams create repeatable steps that improve efficiencies, streamline operations, and create visibility across departments.

During this online user group, our experts will lay out the basics of process building to help any user get up and running with this important feature.

REGISTER HERE

Like 0

Like

Share

0 comments
Show all comments