back to top

Building new Main Views in SalesLogix LAN – Part 2

In my last Main Views article, I created the detail view as well as the mainview.  For this next part, I’ll go through creating an insert view, as well as toolbar and menu items for the new SLXProject entity.

 

Creating the Insert View:

The insert view for this new area will be created as a manage view, and the data will be written to the database using ADO.  We will start by creating a launch script for this view.  After creating a new active script in architect, I added the following code:

Option Explicit

Sub Main
Dim objMv

    Application.BasicFunctions.DoInvoke “Form”, “System:Insert SLXProject”
    Set objMv = Application.MainViews.Add(“System:Quote Details”, 1, True)
    With objMv
         .Refresh
         .Show
    End With

End Sub

 

The Insert view itself is a simplified version of the detail view we already created.  Being a manage view, the controls on the insert view are not mapped to fields in the new SLXProject table.

 

I’ve also added code to two events on the insert view.  

The WhenOpen event is being used to set defualts on the form.  In this case, creating the ID for the new record, and defaulting the leader field to the currently logged in user:

Sub AXFormOpen(Sender)
     Form.CurrentID = Application.BasicFunctions.GetIDFor(“SLXProject”)
     lkeLeader.LookupID = Application.BasicFunctions.CurrentUserID
End Sub

On the WhenClick Event of the OK button on the form, I am creating a new ADO recordset and saving the data entered on the form:

Sub Button1Click(Sender)
Dim objRS

     Set objRS = Application.CreateObject(“ADODB.Recordset”)
     With objRS
         Set .ActiveConnection = Application.GetNewConnection
         .CursorLocation = adUseClient
         .CursorType = adOpenStatic
         .LockType = adLockOptimistic
         .Open “select * from slxproject where 1=2”

         .AddNew
         .Fields(“slxprojectid”).Value = Application.BasicFunctions.GetIDFor(“c_test”)
         .Fields(“accountid”).Value = CurrentID
         .Fields(“createuser”).Value = Application.BasicFunctions.CurrentUserID
         .Fields(“createdate”).Value = Now
         .Fields(“modifyuser”).Value = Application.BasicFunctions.CurrentUserID
         .Fields(“modifydate”).Value = Now
         .Fields(“name”).Value = txtProjectName.Text
         .Fields(“description”).Value = memDescription.Text
         .Fields(“leader”).Value = lkeLeader.LookupID
         .Fields(“isactive”).Value = “T”
         .Fields(“accountid”).Value = “”
         .Update

         .Close
     End With
     Set objRS = Nothing

     Form.ModalResult = mrOK
End Sub

Creating Menu/Toolbars:

I also have created menu and toolbar plugins to view SLXProject data, as well as launching the insert view.

 

The menu plugin contains two menus.  The SLXProject NavMenu is referenced in the toolbar plugin below to allow for right-click functionality to insert a new record from the navbar. Both menus launch the Active script, which in turn loads the insert view.

 

(Note the popup menu property, referencing the SLXProject NavMenu.)

 

We’re not quite fully functional yet.  In the next article, I’ll go through finalizing the plugins we’ve created so far, and setting up groups and other suplimental views.

Thanks for reading!  

Contact Customer FX for your CRM project
We let our expertise speak for itself - let us know how our all-star team can help on your CRM project
About the Author
Jason Buss
Jason Buss
Jason is a senior application developer with Customer FX.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Infor CRM Sync for Exchange: Action Required by August 31, 2026

Using Infor CRM Sync for Exchange with Microsoft 365? Your Exchange administrator must update tenant settings by August 31, 2026 to prevent sync disruption.

[Webinar] What’s Coming Next for Infor CRM SLX and Why v10 Matters

See what’s coming next for Infor CRM SLX, including new marketing workflows, automation improvements, and reasons to consider upgrading to v10.

Disable Caching in Infor CRM SLX Web Client

In the rare case caching is causing issues in the Infor CRM SLX web client, it is possible to disable specific types of caching by making edits using Application Architect, and then deploying.

Exploring AI Options for Infor CRM v10

I've started taking a closer look at the AI capabilities built into Infor CRM v10. Over the next several posts, I'll share what I learn. From the built-in features and supported AI providers to implementation considerations, costs, and practical use cases.

Infor CRM SLX 10.0: Delegate Ownership Changes for “Everyone” Records

Learn how the new EveryoneOwnerAssignment secured action in Infor CRM SLX 10.0 allows designated users to change ownership of Everyone-owned records without requiring Administrator access.

Related Articles

Infor CRM Sync for Exchange: Action Required by August 31, 2026

Using Infor CRM Sync for Exchange with Microsoft 365? Your Exchange administrator must update tenant settings by August 31, 2026 to prevent sync disruption.

[Webinar] What’s Coming Next for Infor CRM SLX and Why v10 Matters

See what’s coming next for Infor CRM SLX, including new marketing workflows, automation improvements, and reasons to consider upgrading to v10.

Disable Caching in Infor CRM SLX Web Client

In the rare case caching is causing issues in the Infor CRM SLX web client, it is possible to disable specific types of caching by making edits using Application Architect, and then deploying.

Exploring AI Options for Infor CRM v10

I've started taking a closer look at the AI capabilities built into Infor CRM v10. Over the next several posts, I'll share what I learn. From the built-in features and supported AI providers to implementation considerations, costs, and practical use cases.

Related Videos