Tag: C#

Easily Showing and Hiding Tabs at Runtime in Infor CRM (Saleslogix)

Showing and hiding tabs in the Infor CRM (Saleslogix) client should be an easy thing. It should be something you can do on demand, and any time, no matter where things are in the page life-cycle. You should be able to show or hide tabs based on changes in other controls on the detail form. The help in Application Architect describes creating a module, an external assembly that you can wire up for the portal to show and hide tabs and runtime. That...

Avoiding the Dirty Data Message When Programatically Redirecting to a Record in Infor CRM (Saleslogix)

In my last post I wrote about using the OnClientClick property of a control (or button) to run JavaScript prior to running the actual server-side click action in order to prompt a confirmation message. To piggy-back on that post, there are a lot of useful things you can do with javascript that will run before your form submits back to the server to so some action. In this post, we'll look at that same idea to clear the dirty-flag with client-...

Confirming Actions With an "Are you sure?" Prompt in Infor CRM (Saleslogix)

I'm not a huge fan of bugging end users. I figure, if an end user clicked something, he or she meant to click it. However, that's not always the case. It's especially a good idea for destructive actions or for things that will make a lot of changes and you want to make sure before you pass the point of no return. If a user clicks something and you need to confirm the action with some sort of "Are you sure?" prompt, then it m...

Programmatically Using Security Roles and Secured Actions in Infor CRM (Saleslogix)

In most places in the Infor CRM (Saleslogix) web client, it's pretty easy to use security roles. You simply add the role string to an "Applied Security" property and the rest is magic. But what if you need to get more granular than that? What if you need to access the roles at runtime and apply security to something that doesn't have an Applied Security property? What if you need to apply role security to individual controls on ...

Evaluating strings in C# Code snippets

When checking for two (or more) different values for a property in a code snippet, you can't simply look at the string values without an error being thrown. For example: Sage.Entity.Interfaces.IAccount acc this.BindingSource.Current as Sage.Entity.Interfaces.IAccount; if (acc.type != "Customer" || acc.type != "Prospect")

Exporting Table data via the SalesLogix web client

Recently, I had a request to create export functionality for a datagrid in the SalesLogix web client. I had a little difficulty exporting data from the actual grid, but as an alternative, we put together functionality to export data based on a provided SQL query. (Thanks to Ryan for working out the SmartPart code) By creating a new custom smartpart, we can simply export the results of a SQL query to a CSV file, save it on the webserver and dow...

Extending Sublogix Entities

If you've followed my posts on Sublogix, or even better, given Sublogix a spin, you'll know that if you're doing SalesLogix development Sublogix can save you a ton of time and give you a much easier to use data access and entity model. This post will show you how to extend the Sublogix entities to give you even easier access and save even more time.

Launching Schedule Activity functionality in the SLX Web client

On a recent project, I worked on emulating functionality similar to what is found in the LAN client where a user is presented a dialog asking them to choose between different activity types then launching into the Schedule Activity functionality. I found this was fairly easy to duplicate in the web client, and in this post, I'll quickly go through the steps for creating that type of functionality.

Unit Testing SalesLogix .NET Extensions and Mocking the SlxApplication Object

One of the many great things about developing for the SalesLogix Windows client using .NET Extensions is that you are able to unit test your code. However, since .NET Extensions are passed references to the running instance of SalesLogix, it's important to be able to mock those objects so you can test properly. Best of all, this also allows you to fully test and debug within Visual Studio without the need to have SalesLogix even running.

Announcing the Open-Source SalesLogix .NET Extensions Helper Library

If you're working in the SalesLogix Windows (LAN) client, why not make as most use as possible of a modern development environment, language, and tools? The SalesLogix .NET Extensions feature in the SalesLogix Windows client is one of the best, and likely least used, features in the SalesLogix Windows client development story. A choice bewteen using an out-dated development environment and VBScript, with no possibility of using source control...

Running Sql Server Integration services package from a C Sharp application

If you've ever created a SSIS package and wanted to provide a way for end users to run that package without having to run the Business Intelligence Development studio, you can compile the package into a dtsx file for them to run. This would require them to manually alter connections and variables, which can get complicated for an average end user. Alternatively, it is pretty simple to put together an application which can be used to run the ...

Introducing Sublogix – a Simple .NET Repository for SalesLogix Applications

Something that was born out of a project I've been working on is a simple repository for SalesLogix that supports all the way back to SalesLogix v6.2 up to the current 7.5.3, both LAN and Web as well as stand alone applications and utilities. I've named it Sublogix. Sublogix is a simple object model and repository for SalesLogix. Sublogix is not meant to replace the SalesLogix Repository that lives in SalesLogix Web. It's purpose is t...

Type/Subtype issue in SLX Web 7.5.1

Before I get back to Sage CRM topics, I wanted to mention an issue I bumped into an issue in a couple of SLX 7.5.1 databases. Account Type/Subtype combination are generally pretty easy to set up. You just need to create a picklist and name it using the "Code" value for an item in the Account Type Picklist. (For "Lead" for example, create a picklist named "Account Lead" for example). This works fine in most cases, ...

Accessing User and Security Entity Properties in SalesLogix Web

There are likely many cases in SalesLogix Web where you need to access properties on the User and Security related entities that are not included in the entity by default, meaning that there is no public property exposing the value. For example, the IsManager property on the User entity. Modifying these entities won't work, so how do you get to these properties? This post provides an explanation of why you can't modify these entities and ...

Subscribe To Our Newsletter

Join our mailing list to receive the latest Infor CRM (Saleslogix) news and product updates!

You have Successfully Subscribed!