Hello community!

How are you?

I have a lookup that is displayed in the "List" mode,

I need to add / remove values ​​from this list dynamically based on the value of another field.

The same value in the list can be displayed for more than one value in this last field.

How can I do that?

Regards

 

Like 0

Like

5 comments

Dear Raul,

This target can be achieved with the help of the business process that will add data to the field if another field is filled in with some data.

For example you need to insert value "1" in the "List" lookup when the value of field "Field" is modified to "2". In this case you should create a business process with "Signal" start element which will be triggered if the field "Field" is changed to value "2". After that there should be "Read data" element which should read the object where the "List" lookup is present. Then "Add data" element should go which will add data to "List" lookup and you can also specify that you need to add value "1" there.

Another issue: you need to add data to the "List" if the added record has been added with the specific value of "Field". In this case the business process is similar to the previous except of the start signal: it should be "Signal" -> "Record added" and after that you should add "Read data" and "Modify data" elements.

As a result you will have your list filled in automatically with new data or existing data based on the value of another field. You can also read more about business process deign in the academy article here.

Best regards,

Oscar

Dear Oscar,

I expressed wrong.

I have two type list fields

 

 

 

 

 

 

The field named "Contexto Sospecha", should filter  its values in base to "Tipo Sospecha Vulneracion" field value. But it is not a simple FILTRATION BUSINESS RULE. A same value of "Contexto Sospecha" field can belong to more than one value of the other field. Is a N to N relation. I create a table with the relation of both fields, 

How can i filter the values based on that table

i tried to configure filters but I was not succesful

Any idea?

Regards,

Ezequiel

Maybe an article from the academy "Using filtration for lookup fields. Examples" will help you.

You can also use the business rule filtering (without programming using the wizard)

Hello!

The above-mentioned articles

( https://academy.bpmonline.com/documents/technic-sdk/7-13/using-filtrati…

https://academy.bpmonline.com/documents/technic-sdk/7-12/filtration-rul… )

should indeed help you out with achieving your task.

Best regards,

Matt

Show all comments

How can I connect the activities to a newly created custom object?

Like 0

Like

8 comments

Dear Massimiliano,

If you want to add this object in a Connected To tab you would need to add the record into EntityConnection with SysEntitySchemaUId = SysSchema.UId for the SysSchema for Activity and ColumnUId = SysEntitySchemaReference.ColumnId for corresponding object.

If this object is already connected to the Activity you can add the object as a detail. https://academy.bpmonline.com/documents/technic-sdk/7-13/adding-details

Best regards,

Dennis

Thank's Dennis for your answer.

Where can I find an example on how to add the record to the database?

Best regards

Massimiliano Mazzacurati,

Can you please specify which record do you want to add? Do you mean 

the SQL INSERT INTO Statement?

Angela Reyes,

I found the SQL statement but I don't know exactly where to find the ID's involved in the "SQL INSERT INTO" statement

Massimiliano Mazzacurati,

You will need to get UID of your custom object from

SysEntitySchema. Every record has its unique ID so you will need to find it in your DB using SELECT statement from SysSchema. 

Thank's Angela,

OK for my custom object.

I've seen that there are a lot of records in that table about the same standard object (lice Activity, Account and so on): if I want to connect my custom object to activities, which "activity" should I use from the SysEntitySchema table?

Massimiliano Mazzacurati,

Hello,

You need to choose the desired object and select the record that has the value of the ExtendParent = '0'. Generally, that's the objects from the very basic application packages.

Best regards,

matt

Here is what I did, based on Matt Watts comments:

  1. On the activity section, add a new lookup to the custom entity.  You do not need to add it onto the form itself (because at the end of this it will show in the connected to detail).  Save the activity section.
  2. In the SQL Console (for cloud instances), run this query to get the correct uid for the activity record:
    1. select uid, * from sysschema where name = 'activity' and extendparent=0
  3. Now we need to find the relevant related columnuid in the sysentityschemareference table, for your custom entity and the activity entity.
    1. select * from sysentityschemareference where columnname like '%CustomEntityName%'
    2. You are looking for the columnuid with a createdon of today (if you added the lookup column just now)
    3. Otherwise, run this query to find the right record:
      1. select * from sysschema where id=’sysschemaid’
  4. Once you have that, it is time to insert into the entityconnection table:
    1. insert into entityconnection values (newid(), getdate(), NULL, getdate(), NULL, 0, 'uidfromstep2’, 'columnuidfromstep3', 0)
Show all comments

Hi Community,

 

Is there an easy way to transfer Access rights - Object permission done from one bpm system instance to another? or do i need to re create again all the permissions on the other instance. 

 

Thanks

 

Like 1

Like

1 comments

Dear Fulgen,

Unfortunately, there is no way to import/export only access right from the system since it is a very complicated mechanism and it cannot be extracted from the system easily. Instead we suggest you to use Marketpace app wich can ease access rights setup: https://marketplace.bpmonline.com/app/access-rights-setup-wizard-bpmonl…

Show all comments

Hi,

I have on-premise installation of bpmonline by local vendor.

however when I do verify configuration check, it showing list of error on data binding.

 

how to fix this ?

I tried to delete it but it showing this message:

 

Thank you

Like 0

Like

1 comments

Dear Antonius, 

Please contact your vendor or our support regarding this issue. Our support email is support@bpmonline.com We will be happy to help you! 

Regards, 

Anastasia

Show all comments

I'm trying to translate a custom section named Reports and failing so far. I used the translation page, searched for untranslated strings with the English name Reports and translated them. I also manually updated SysModuleLcz to put my translated name there. The sections still only displays its English name. Do you know what should I do to fix it?

Like 0

Like

2 comments

Hi! Can you please send more detailed description (link to the instance ect) on support@bpmonline.com so we could investigate this? 

Ok, never mind. It seems I had to restart the server for the changes to show.

Show all comments

Is it possible for BPM to create separate unique instances for every work space? I would prefer not to have the same data set for contacts, leads, cases, and accounts be shared across multiple work spaces and instead be unique for each group. 

Meaning that sales has their own unique set of contacts, and service has their own set of contacts, and etc without any overlap in data.

 

Is this possible within BPM?

Like 0

Like

1 comments

Dear Carl,

It all can be achieved with the help of the correct access rights creation.

First of all you will need to create separate roles if you don't have them yet (for example "Sales","Marketing" etc.). The process of roles creation is fully described in the academy article here.

After that you will need to add a lookup field on all pages using "Section wizard" and name it, for example, "Role". In this lookup you should specify roles that you've created for this task. The process of creation and filling of lookups with values is described in the academy article here.

Then you will have to make this field not visible on the page. And lets say you want to have the Supervisor user to be the only one user who can see that field. You'll need to create a business rule on each page with the help of "Business rule" tab in the "Section wizard" so to hide the field on the page and you can also read more about business rules creation in the academy article here.

After it is done you should start the main part of all of this - creation of several business processes. The first business process should re-write all existing rights for existing records. Let's say we want to change access rights for contacts and we want Marketing role to read contacts that have value of the created lookup set as "Marketing". What should be the structure of this business process? The start element should be "Simple". The next element should be "Change access rights" and we should specify "Contact" object there and add a filtering condition that will choose only those contacts that have the value of the created lookup set for "Marketing". After that in this element you should remove all access rights for all users and roles. Then you should add another change access rights process element with absolutely same conditions but this element should add access rights but only for the specific role "Marketing". And then should go the "Terminate" element.

What do we have as a result. When we start this business process, we will change access rights for all existing contacts with the created lookup value set as "Marketing" in the way that only marketing role system users will be able to see them. You should also create absolutely similar processes for other roles and sections. Also don't forget to add system users to the specified roles.

If you want access rights to be applied for new records for some specific section then you need to create the second business rule with the "Signal" start element which will trigger the business process when the record is added for the specific section and has a lookup value set as needed. After that there should be "Change access rights" element that will delete all existing access rights, but here you should add the condition so to find the Id of the record based on the Id of the "Signal" process element. Then you should add another "Change access rights" process element that will add access rights for this new record and then should go "Terminate" process element.

The last thing you should do is to restrict access to workplaces and sections for several roles due to your needs. If you don't want "marketing" role user be able to see "Service" workplace then you'll need to change workplace permissions in the "Workplace setup" in the system designer. You'll need to specify exact role for exact workplace so the user from specific role could see only his workplace.

As a conclusion at the end you will get the application in which users are able to see only their workplaces with their role set of data specified by the business process conditions. New records will get access rights specified by business processes. It is a huge work but this is the best way to achieve the target you need.

Oscar

 

Show all comments

Is BPM able to create unique sections (e.g. Leads, Contacts, Cases, etc) for each workspace? I would like every department to have their own data set in each section instead of all departments seeing the same data set.

Like 0

Like

1 comments

Dear Carl, 

The best way to do that would be to set up Managed by operations in Access rights as there is no functionality to set up different data for different workspace. You would need to set up organisational roles for your departments and create rules according to which the record would be accessible. 

https://academy.bpmonline.com/documents/administration/7-13/object-perm…

Best regards, 

Dennis

Show all comments

I'm trying to insert a custom button on a section page my code looks like that:

{
	"operation": "insert",
	"name": "DailyReportButton",
	"parentName": "SeparateModeActionButtonsLeftContainer",
	"propertyName": "items",
	"values": {
		"itemType": Terrasoft.ViewItemType.BUTTON,
		"style": Terrasoft.controls.ButtonEnums.style.BLUE,
		"caption": {"bindTo": "Resources.Strings.DailyReport"},
		"click": {"bindTo": "generateDailyReport"},
		"classes": {
			"textClass": ["actions-button-margin-right"],
			"wrapperClass": ["actions-button-margin-right"]
		},
	}
}

It works but I don't know how to specify exactly where the button should be placed. In this case I want it to be between New and Actions buttons. I tried experimenting with setting values.index but it didn't seem to change anything. Do you know how to do that?

Like 0

Like

1 comments

Dear Carlos,

You can find detailed description on our Academy. You will need this part: 

                    // Setting the location of the button.
                    "layout": {
                        "column": 1,
                        "row": 6,
                        "colSpan": 1
                    }
                }
 
Show all comments

This may be more of a style question than a technical question.  

We have a business process that could take a month to complete.  We are replacing parts on equipment, and we request that the customer return the broken part for repair or refurbishment.  

The process to ship the part generally occurs in the same day, but the trigger for the second half of the process doesn't happen until the customer returns the item.  This is normally 1 to 4 weeks.  

If I implement it as a single business process, it would be running for weeks on end.  Is this a problem?  

Any advice on the best practice would be helpful.  

Like 0

Like

3 comments

Dear Bob,

There are several out-of-the-box processes that also have a big run time. Each time you'll trigger your process it will create a record in the process log and the process will be waiting for the next step. Theoretically it shouldn't affect performance of the system and it is ok. But we can think on how can we manage the process in another way.

Your product is servicing of broken parts and your "opportunity" or "case" ("service request") is a broken part. As you wrote it in the topic of the question, it is a very good idea to use "Case" section to manage your business. For example some part is broken and you register the incident. You have the number of the incident, you have the information on the client (you can call or email him and provide with all necessary information and get information from customer and write it down in feed or update some fields and the customer will also no the number of the incident and he can get up-to-date information any time) and also on the part that is under processing (the process of part repairing can be also managed with the help of incidents and you can bind the incident with the part repairing to the general request from customer). You can set up case statuses as "New" -> "Part not received" (if the customer still has the broken part) -> "Part received" (if you the customer gave you the part) -> "Part  repairing" -> "Part repaired" (if the part is repaired but yet not received by customer) -> "Part is on the way"(when the part is on the way to the customer) -> "Resolved" (part received by customer).

It will be much more easier for you to track down the status of the incident: where is the part, who is the client, when it needs to be done, who is assigned for repairing. I think that cases will become the ideal choice for you.

Oscar

Oscar,

Thanks for your input.  The business process that I'm working through is actually the different phases of a case.  The way we do things is that the service technician is assigned the case, and during each step of the process an activity is created for our accounting team, shipping/receiving team, inventory control team, and production team.  I am using the business process to create activities within the case and assign them to the appropriate individuals. 

The actual case which handles the RMA is a child of the case where the service technician is working out the problem.  In general, the parent case will be closed before the child case is, primarily due to the fact that our production team will do root cause analysis on the returned part on a separate schedule than the initial case. 

Thanks for your input. 

Bob  

Bob Walters,

Then you can create a separate process which will be triggered by some changes you or the employees made in the system. Will this work for you? 

Show all comments

Hello Community! 

Is posible increase the numbers of digits in a decimal type to 5 after comma?

Regards,

Like 0

Like

1 comments

There is no such option

You can try to create an integer type column and assume that it contains everything on a scale of 1 to 100,000

Show all comments