In "Operation permissions" section of system designer (see screenshot http://prntscr.com/nfjxsf) there are two records called "Duplicates processing" and "Duplicates search" that are responsible for duplicates merging and duplicates search respectively. You need to add records about roles or users to those permissions so those users or roles could be able to find and merge duplicates.
The table that stores all the data about each user section/detail columns sectings, etc is SysProfileData table. You would need find the correct section by Key column in this table and update the SysUserId column with the required role/user id taken from SysAdminUnit table.
And execute below script to create the view in database.
After executing the view, I made sure that there is data by executing select query on that view
After doing this, I tried to display the data of this view in a dashboard list. but unfortunately I am not getting any data from this view object on crm. Am I missing something, any idea how i can fix this issue?
In order to create a view in the system you need to do the following:
1. Create a new object in the system configuration. Give it the same name as view. Set "Represents Structure of Database View" option to true (put a tick); The object should include all columns, that you will add to the view.
2. Run a script to the database to create a view with needed columns.
Please take into account, that structure of columns in the view should match the object columns structure.
Based on your screenshot I can tell, that in the object for the view Contact and Account fields will be lookup type columns and will be referred as [Column name]+Id e.g. UsrContactId, UsrAccountId. However, in the view, you have named them simply UsrContact and UsrAccount. Please check the naming.
Also, as you open dashboards, please open developers console as well (F12). You will see errors indicating which column cannot be found. This will help you to determine the issue.
In order to change the package, please go to system configuration (System designer --> Advanced settings). Find the needed schemas you want to transfer. Open schemas, in the right side panel click on the schema name and choose needed package. Save schema.
The procedure is same for entities ? or is there any procedure or hierarchy i need to follow like first i need to transfer entities followed by module schema and business process . What are the recommended steps ?
Business process are quite independent schemas, you can easily transfer them in the first place, or at the end, it does not matter. The only recommendation is to double check that all lookups and objects, used in the process are "visible" to it. What I mean, is that, for example, you have created a new object, which is in Custom package. However, your other package is higher is the hierarchy and it won't "see" objects from lower package in hierarchy, which is Custom.
Same principal with access to objects and hierarchy goes for objects, which have lookup fields, and as result, dependencies to those objects.
To sum up, the procedure is same for entities, modules and processes. Just keep in mind, that you need to have all needed objects in one package, or in the packages on which your package depends.
To ensure, that you won't have any difficulties along entities transfer, please indicate the package and publish the object. In case or any errors, you will be notified. The other approach is to change package in entities, save them without publish, afterwards click once "compile all items". In any case be sure to compile the application after transfer done.
I have created a Widget, which data is already populating. Any idea how I can filter data and put header labels on the grid and add action buttons on each record in the list.
You can add filtration an captions in the configuration of your custom widget, in case you have created it via new module. In case you use the basic system functionality of List, there is a second tab when configuring the List. where you can apply needed filtration:
In any case you can find the needed widget in the SysDashboard table. In the "Items" column you can find the configuration of your widget. Here you can indicate column captions as well as filtration ("caption". "filterData"). Dashboard configuration looks like this:
{"DashboardGrid":{"parameters":{"caption":"Top emails by audience","sectionBindingColumn":"Id","sectionId":"9de4f21c-e418-4172-9c3a-1bf1ae366b92","entitySchemaName":"BulkEmail","filterData":"{\"className\":\"Terrasoft.FilterGroup\",\"items\":{\"d357f339-ce45-4586-b832-7f2d90808db5\":{\"className\":\"Terrasoft.InFilter\",\"filterType\":4,\"comparisonType\":3,\"isEnabled\":true,\"trimDateTimeParameterToDate\":false,\"leftExpression\":{\"className\":\"Terrasoft.ColumnExpression\",\"expressionType\":0,\"columnPath\":\"Status\"},\"isAggregative\":false,\"key\":\"d357f339-ce45-4586-b832-7f2d90808db5\",\"dataValueType\":10,\"leftExpressionCaption\":\"Status\",\"referenceSchemaName\":\"BulkEmailStatus\",\"rightExpressions\":[{\"className\":\"Terrasoft.ParameterExpression\",\"expressionType\":2,\"parameter\":{\"className\":\"Terrasoft.Parameter\",\"dataValueType\":10,\"value\":{\"Name\":\"Completed\",\"Id\":\"42328932-9ad6-4512-9950-662ffba2c53c\",\"value\":\"42328932-9ad6-4512-9950-662ffba2c53c\",\"displayValue\":\"Completed\"}}},{\"className\":\"Terrasoft.ParameterExpression\",\"expressionType\":2,\"parameter\":{\"className\":\"Terrasoft.Parameter\",\"dataValueType\":10,\"value\":{\"Name\":\"Starting\",\"Id\":\"c6e21ad8-e243-4656-aafc-1312f97c4521\",\"value\":\"c6e21ad8-e243-4656-aafc-1312f97c4521\",\"displayValue\":\"Starting\"}}},{\"className\":\"Terrasoft.ParameterExpression\",\"expressionType\":2,\"parameter\":{\"className\":\"Terrasoft.Parameter\",\"dataValueType\":10,\"value\":{\"Name\":\"In progress\",\"Id\":\"7789ac0c-450b-40a3-b341-3d6b799649b4\",\"value\":\"7789ac0c-450b-40a3-b341-3d6b799649b4\",\"displayValue\":\"In progress\"}}}]}},\"logicalOperation\":0,\"isEnabled\":true,\"filterType\":6,\"rootSchemaName\":\"BulkEmail\",\"key\":\"\"}","style":"widget-navy","orderDirection":2,"orderColumn":"SendCount","rowCount":5,"gridConfig":{"items":[{"bindTo":"Name","caption":"Name","type":"link","position":{"column":0,"colSpan":16,"row":1},"aggregationType":"","metaCaptionPath":"Name","metaPath":"Name","path":"Name","serializedFilter":"{\"className\":\"Terrasoft.FilterGroup\",\"items\":{},\"logicalOperation\":0,\"isEnabled\":true,\"filterType\":6,\"key\":\"\"}"},{"bindTo":"SendStartDate","caption":"Sent on","type":"text","position":{"column":17,"colSpan":5,"row":1},"dataValueType":7,"aggregationType":"","metaCaptionPath":"Started on","metaPath":"SendStartDate","path":"SendStartDate","serializedFilter":"{\"className\":\"Terrasoft.FilterGroup\",\"items\":{},\"logicalOperation\":0,\"isEnabled\":true,\"filterType\":6,\"key\":\"\"}"},{"bindTo":"SendCount","caption":"Sent","position":{"column":22,"colSpan":2,"row":1},"dataValueType":4,"metaPath":"SendCount","path":"SendCount","orderDirection":2,"orderPosition":1}]}},"widgetType":"DashboardGrid"},"DashboardGrid1":{"parameters":{"caption":"Links by number of clicks","sectionBindingColumn":"BulkEmail","sectionId":"9de4f21c-e418-4172-9c3a-1bf1ae366b92","entitySchemaName":"BulkEmailHyperlink","style":"widget-turquoise","orderDirection":2,"orderColumn":"ClicksCount","rowCount":5,"gridConfig":{"items":[{"bindTo":"Url","caption":"URL","type":"link","position":{"column":0,"colSpan":20,"row":1},"dataValueType":1,"aggregationType":"","metaCaptionPath":"URL","metaPath":"Url","path":"Url","serializedFilter":"{\"className\":\"Terrasoft.FilterGroup\",\"items\":{},\"logicalOperation\":0,\"isEnabled\":true,\"filterType\":6,\"key\":\"\"}"},{"bindTo":"ClicksCount","caption":"No. of clicks","position":{"column":20,"colSpan":4,"row":1},"dataValueType":4,"metaPath":"ClicksCount","path":"ClicksCount","orderDirection":2,"orderPosition":1}]}},"widgetType":"DashboardGrid"}
Unfortunately there is no detailed explanation how to achieve such task.
I can give you some recommendations:
To pass any value from landing page you should act like you do with usual oob fields. Please note that fields that will be passed to the service should be present in the object.
Basically, it will be difficult to map checkbox values to the lookup object. I think it can be implemented in business process that will start when new object is created.
What I recommend is to check how this functionality works in oob version. Landing page sends request to the GeneratedObjectWebFormService (you can find it in configuration) and this service saves the data. The idea is to understand how this service works and you can achieve the task using this service.
I am trying to create a business rule where date1 should be greate date2 fields and want to stop the form for submission or show some message to user. How is that possible ?
SAML 2.0 protocol support is implemented in bpmonline when setting up Single sign-on. Any identity provider that supports this protocol is compatible. If that is what you are trying to set up here are academy pages that would help you to do that: