Insert a value into a K2 control via JQuery

Sometimes there are operations that are not feasible or hardly feasible on K2. But that we can do via JQuery, only we need to store in a K2 control the result that the JQuery code returns. How to do it?  😕  

Let’s imagine this case: We have a list view containing the list of students of a class, and we want to display the first three students of a list without user interaction after loading the view. As below:

Insérer une valeur dans un contrôle K2 via JQuery

  • How to do it without user interaction?  😯 
  • Answer: By writing in a K2 control via JQuery.  😉

We will use JQuery and we will do it in two steps:

  1. Retrieve the first three rows of the list view
  2. Insert the retrieved rows in a K2 control (DataLabel)
  3. Trigger the JQuery code snippet

Let’s go !!!  😎

  1. Retrieve the first three rows of the list view

First we should add a DataLabel on the view to identify the view (in our case we will call it dl_FirstStudentName). Then from this Data Label we will use this piece of code :

a) Recovery of the 1st line

$('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:first td:first span').text()
Récupération de la 1er ligne

 

b) Recovery of the 2nd line

$('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:nth-child(2)  td: first span').text()
Récupération de la 2ième ligne

 

c) Recovery of the 3rd line

$('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:nth-child(3)  td: first span').text()
Récupération de la 3ième ligne

 

  1. Insert the retrieved rows in K2 control (DataLabel) :

Here is the JQuery code snippet to insert text into a DataLabel :

$("[name='dl_FirstStudentName']").SFCLabel('option', 'text', XXXXX);
Insérer du texte dans un Data Label

The value XXXXX will be replaced by the recovery code of the first three lines which will give us the following code:

<script>$("[name='dl_FirstStudentName']").SFCLabel('option', 'text', 
'1-) ' + $('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:first td:nth-child(2) span').text() + "\n" + 
'2-) ' + $('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:nth-child(2) td:nth-child(2) span').text()+ "\n" + 
'3-) ' + <script>$('span[name="dl_FirstStudentName"]').closest('.grid-toolbars').siblings('.grid-body').find('.grid-body-content tr:nth-child(3) td:nth-child(2) span').text());</script>

Let’s insert on our view a Data Label (named dl_JQuery in our case), then create an expression containing expression below this value:

Insérer une valeur dans un contrôle K2 via JQuery : Expression

  1. Trigger the JQuery code snippet

Cette phase nous permet lancer l’exécution de notre code, pour ce faire nous utiliserons une règle sur K2 :Insérer une valeur dans un contrôle K2 via JQuery: Règle

First transfer data is used to empty the Data Label dl_JQuery

Insérer une valeur dans un contrôle K2 via JQuery: Règle

Second transfer data is used to empty the Data Label dl_JQuery

Insérer une valeur dans un contrôle K2 via JQuery: Règle

So we can call our rule when initializing the view:

Insérer une valeur dans un contrôle K2 via JQuery: Règle

We obtain this result

Insérer une valeur dans un contrôle K2 via JQuery

K2 Five Authorization Framework

Did you know that a K2 administrator can control access to K2 objects (category, form, view and smartobject) and entities (user, group and role) by setting permissions (Allow and Deny) on rights (view, execute, modify and delete) ❓

Well, Authorization Framework is a feature in the new K2 Five and Cloud releases, which allows to do this. Hence the purpose of our article.

Read more

Word content control: Replace its content by another word content control

We will see how to replace the content of a content control of a word document from its K2 application. Let us consider that we have two word documents (D1 and D2). Each document have a content control C1 and C2 respectively. Here we will see how to replace the content of C1 by the content of C2 while maintaining the style. Indeed, the integration of a service that would do this is interesting.
Read more

Broker: merge two word documents on K2

Merging two word documents via the K2 application is an interesting feature. Indeed, the integration of a service that merges two word documents by generating another document is very interesting 🙂☝.
We present you a solution among one of the solutions developed in other articles on the same subject.

Read more

How to dynamically add images in a List view

This article will be dedicated to the dynamic addition of images in a List view on K2 Blackpearl.

First of all, what are dynamic images? 🙂

Read more

Installation and use of a broker service for Back-Up of a Database

Backup a SQL database in a single click is now possible throught your K2 forms. You just have to install the appropriate broker service. For more information read the article until the end 🙂.

Read more

Use tab key to navigate between your forms tab

Since browsers have integrated tabs, we all use the tab key to change tabs.

Why not have the same functionality in a K2 form? Read more

Discovering K2 APIs

Have you ever heard of K2 APIs? No importance because precisely in this article we will discover them together. From their activation to their connection to K2 Read more

How to install and use the Broker Excel Export

Sometimes, it is more useful to have our data in a more practical format, for example to have the contents of a table or the result of a stored procedure in an excel file. You can do it with the Excel Export Broker. Interested ? Yes ? This article is made for you !

Read more

Manipulate different versions of a document stored in SharePoint in a K2 form

In any application, we need to add documents to our requests, and in some cases, it is interesting to manage versions of these documents. This is possible when using SharePoint to store documents. This article will focus on manipulating versions of a document in a SharePoint library.

Read more