iMIS Community facilitates the collaborative development of iMIS applications and solutions among the customers, partners, and developers of Advanced Solutions International.

Website community eMails Showing

Hi Guys,

When someone subscribing to community articles on our website, then he/she is getting the emails with "To:" instead of showing the subscriber email id in "To" section.
Anyone having idea, how it could be changed to user email id or in the To section?


Violation of PRIMARY KEY constraint 'PK_Individual'

We are suddenly getting PK violations on Individuals

Msg 2627, Level 14, State 1, Procedure asi_Name_Insert_Update, Line 634
Violation of PRIMARY KEY constraint 'PK_Individual'. Cannot insert duplicate key in object 'dbo.Individual'. The duplicate key value is (81d60870-20ff-4f7a-8b3e-3ac8c6ea2d1b).
The statement has been terminated.

it i is throwing an error on the asi_name_insert trigger at this code.

PHP Connection to iMIS15


Our system is IMIS Version 15, I am new to this kind of system in other words I am newbie to iMIS platform.
What i am trying to do is connect and fetch some data from the server where the iMIS 15 resided.

Now my noob question is here:

1. Is it possible to connect with PHP over SOAP?
I actually try this thing but I can't figure out where is the ServiceEntity.svc located
here is my script i tried from the iMIS SOA Helpsite but never get the luck.

Adding an Event in Staff Site (With Registrant Class Determination = Stored Procedure)


We are just starting to use staff site on iMIS and are wondering if it's possible to set the Registrant Class Determination = Stored Procedure? See attached image for reference.

Adding a new event via staff site would only offer pricing for default and member registrant classes.

Have anyone achieved setting up event with stored procedure in staff site for registrant class dertermination?

But I'm sure is a valid email address.

Fielded a recent SMR regarding an unusual email address with a "+" (plus sign) in it right before the @. Henry suggested my response would make a good article.

This is not a bug but is working as designed and documented. The iMIS documentation says the default regex allows “+” as long as it’s followed by an alphabet character, a number, or “_”, i.e. [a-zA-Z0-9_]. The regex is there and editable so clients can customize it.
There are lots of “valid” email address rules and validators, and lots of disagreement on what those valid rules are. The Internet Engineering Task Force (IETF) RFC 2822 is pretty much the definitive source.

Everywhere has unique email rules that don’t allow certain characters.
Gmail doesn’t allow “-“ (dash) in the name portion (local-part) of an email address but AT&T does.
AT&T doesn’t allow “.” in the name portion (local-part) but Gmail does.
I bet neither allows a “+” at the end or a name, if they allow “+” at all. I confirmed that Gmail doesn't allow it. Gmail allows "letters (a-z), numbers, and periods" only.

The default regex expression could be adjusted to remove the requirement that the name part have at least 1 [a-zA-Z0-9_] after a special character.

2 regex strings I found for email that seem more all-inclusive are below:

^(?!\.)("([^"\r\\]|\\["\r\\])*"|([-a-z0-9!#$%&'*+/=?^_`{|}~] |(?@[a-z0-9][\w\.-]*[a-z0-9]\.[a-z][a-z\.]*[a-z]$ Seems like there might be issues with this one. Seems to be missing some “)s” but my regex mojo is not what it used to be.

So here is one from Microsoft.

both assume RegexOptions.IgnoreCase are on.

Remove hiberfil.sys to save diskspace

If you are short on disk and don't use or just don't like Windows Hibernation Mode, you can turn if off and save the disk space used by hiberfil.sys. This is a file that Windows reserves on your C:\ drive that equal to the amount of RAM you have so that it can store your machine's state. You can't otherwise delete this file, Windows either won't let you or will put it back. We have found getting rid of file particularly helpful on VMs where the hibernation option is essentially useless. Here's how ...

Supress Non-Displayed iPart Blank Space

Good day,

I'm looking to see if there is a method to suppress the blank space left on a page when an iPart is not shown.  In my case I am looking to remove the space left by a Query Menu that returns no data.  I've already suppressed the Query Menu headers but I am still left with a sizable white space.  One stock example is the Cart Checkout Button Link iPart on the Event Display page.  The button is suppressed until registration but you can see the white space padding removed if you move the iPart elsewhere on the page.

Credit balance on account from orders entry

Issue....A customer made a web purchase but the credit (payment) will not apply properly to the order number....please assist on how to fix this.

Create iMIS Record from outside iMIS environment

Can we create new imis record (create account) using iBO coding or SOA coding from outside iMIS environment. I did configure custom ipart, and using iBO coding able to create new record, but Client having different requirement, he want call process or DLL to create new record in iMIS.

IMIS Version: 15.2

Thanks in Advance.


SQL Server non-default port

Just incase someone else has experienced this, if you are using a non-default port for your SQL Server, you will need to set up a SQL Server alias and use the alias in the web.config file to allow the iMIS desktop to work.  It seems that iMIS database string parsed by the iMIS desktop DSN will interpret the comma for the port to be the database name.  For example, if you have a named instance of SQL Server called PROD located on MyServer listening on port 55000, you typically would access it by MyServer\PROD,55000 but the iMIS desktop would create the ODBC using the MyServer\PROD but would default the database to 55000.  Since the iMIS desktop recreates the ODBC everytime it runs, you cannot just manually change it on the ODBC connection.  You must create a SQL Server alias using the SQL Server Configuration Manager to create an alias and reference the alias in the web.config file on the Application server.