internal void ExecuteSelectState()
        {
            DM.LocationDataManager dm = new DM.LocationDataManager(
                CS.InternalApplication.Settings.Database.Connection,
                CS.InternalApplication.Settings.Database.DataAreaID);

            if (string.IsNullOrEmpty(this.Country))
            {
                // throw "must select country first" error
                Customer.InternalApplication.Services.Dialog.ShowMessage(903, MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            var    names = dm.GetStates(this.Country);
            var    list  = names.ToList();
            string value;
            var    dialogResult = CS.InternalApplication.Services.Dialog.GenericLookup(
                list, "Description", CaptionState, "Name", out value, null);

            if (dialogResult == DialogResult.OK && value != null)
            {
                this.State = value;
                this.Zip   = string.Empty;
            }
        }