Пример #1
0
        private UPSESingleAdditionalItemInformation(UPSerialEntry _serialEntry, string _configName, string _keyColumnName,
                                                    Dictionary <string, object> filterParameters, UPSESingleAdditionalItemInformationDelegate theDelegate)
        {
            IConfigurationUnitStore configStore = ConfigurationUnitStore.DefaultStore;
            SearchAndList           searchAndListConfiguration = configStore.SearchAndListByName(_configName);

            if (searchAndListConfiguration == null)
            {
                throw new Exception("Search & List Config is null");
            }

            this.FieldControl = configStore.FieldControlByNameFromGroup("List", searchAndListConfiguration.FieldGroupName);
            if (this.FieldControl == null)
            {
                throw new Exception("FieldControl is null");
            }

            if (searchAndListConfiguration.FilterName != null)
            {
                this.Filter = configStore.FilterByName(searchAndListConfiguration.FilterName);
                if (this.Filter != null && filterParameters != null)
                {
                    this.Filter = this.Filter.FilterByApplyingReplacements(UPConditionValueReplacement.ReplacementsFromValueParameterDictionary(filterParameters));
                }

                if (this.Filter == null)
                {
                    throw new Exception("Filter is null");
                }
            }

            UPConfigFieldControlField field = this.FieldControl.FieldWithFunction(_keyColumnName);

            if (field == null)
            {
                throw new Exception("Field is null");
            }

            this.keyColumnIndex = field.TabIndependentFieldIndex;
            this.SerialEntry    = _serialEntry;
            this.KeyColumnName  = _keyColumnName;
            this.TheDelegate    = theDelegate;
        }
Пример #2
0
 /// <summary>
 /// Creates the specified serial entry.
 /// </summary>
 /// <param name="serialEntry">The serial entry.</param>
 /// <param name="configName">Name of the configuration.</param>
 /// <param name="keyColumnName">Name of the key column.</param>
 /// <param name="filterParameters">The filter parameters.</param>
 /// <param name="theDelegate">The delegate.</param>
 /// <returns></returns>
 public static UPSESingleAdditionalItemInformation Create(UPSerialEntry serialEntry, string configName, string keyColumnName,
                                                          Dictionary <string, object> filterParameters, UPSESingleAdditionalItemInformationDelegate theDelegate)
 {
     try
     {
         return(new UPSESingleAdditionalItemInformation(serialEntry, configName, keyColumnName, filterParameters, theDelegate));
     }
     catch
     {
         return(null);
     }
 }