Opening a Record for Edit in a Specific Page in Creatio Freedom UI

In a previous article I outlined how to open a page via code in a Freedom UI page. I also outlined how to open a record’s edit page via code in a Freedom UI page. However, it’s possible you have many different pages for the same entity. What if you want to open a record to edit in a specific Freedom UI page? This article will show how to specify the specific page you want to use when opening a record to edit.

In the scenario for this article, I have a simple page (actually a mini page dialog) where I can select the case status. I am going to open a case to edit in this specific page so the status is bound and the case status can be updated in this page. My page looks as follows:

Note, this is a page where Case is the data source. It’s another page bound to the case entity. When I open the case to edit for the sample in this article, I want to use this simple page.

To open a specific page, we’ll use a crt.OpenPageRequest. We’ll include the schemaName for the page we want to use, but will also include some details to initialize the page model in edit mode for a specific record. ย The code will look as follows:

request.$context.executeRequest({
    type: "crt.OpenPageRequest",
    $context: request.$context,
    schemaName: "UsrCaseStatus_ModalPage",
	modelInitConfigs: [
		{
			action: "edit",
			recordId: caseId
		}
	]
});

The end result is that the case will open for edit using the specific page we’ve specified in the request.

Want content like this delivered to your inbox? Sign up for our newsletter!
ABOUT THE AUTHOR

Ryan Farley

Ryan Farley is the Director of Development for Customer FX and creator of slxdeveloper.com. He's been blogging regularly about SalesLogix, now Infor CRM, since 2001 and believes in sharing with the community. His new passion for CRM is Creatio, formerly bpm'online. He loves C#, Javascript, web development, open source, and Linux. He also loves his hobby as an amateur filmmaker.

4 Comments

  1. Hello, Ryan!

    Could you clarify that moment please?

    I’ve created a mini page via application hub and want to display it in modal on my entity card page.
    Code from the article just opens a new page in a chain (not in modal, just regular page)

    Is there anything extra, which didnt made to article? ๐Ÿ™‚

    Same code also do the same

    “`js
    const { instance } = HandlerChainService; // dependency from “@creatio-devkit/common”

    const result = await instance.process({
    type: ‘crt.OpenPageRequest’,
    schemaName: “MyEntityModalPage”,
    modelInitConfigs: [
    {
    action: “edit”,
    recordId: “$Id”
    }
    ]
    });
    “`

    Reply
    • What version of Creatio are you on? It was only in recent versions that they fixed this to open a modal as a modal and not as a page. In earlier versions that was not the case. I can’t remember which version it was fixed in but I believe it was 8.0.10 (or possibly 8.1). Since that was fixed, the code above does open a modal form as a modal for me.

    • Thank you for fast reply, Ryan!

      I’m sorry, your code worked perfectly.
      Issue was on my side – for some reason my app was in classic UI mode

      Now I’m wondering about setting manual size for modal window ๐Ÿ™‚
      (since there’s no API docs)

    • Ah yes, that is true, if using Classic UI modals will display only as pages. As for setting the size, that is coming in a future version. Not sure the specific version, but the roadmap shows that Q1 2024 (since we’re in April, I assume possible 8.1.2 or 8.1.3? Ive not yet checked if it’s in those versions.

Submit a Comment

Your email address will not be published. Required fields are marked *