/// <summary>
        /// Get Id for data
        /// </summary>
        /// <param name="connectionGroup">Connection group</param>
        /// <param name="instance">Instance</param>
        /// <returns></returns>
        public Int64? GetId(ConnectionGroupInfo connectionGroup, InstanceInfo instance)
        {
            connectionGroup.ReadGroupIdFrom(Storage.ConnectionGroupDirectory);

            Int64?           loginId    = Storage.LoginDirectory.GetId(instance);
            ServerProperties props      = instance.ServerProperties;
            string           serverName = null;
            string           serverVers = null;

            if (props != null)
            {
                serverName = props.Name;
                serverVers = props.Version.ToString();
            }

            return this.GetRecordIdByFields(
                this.CreateField(ConnectionGroupIdFn,     connectionGroup.Identity),
                this.CreateField(LoginIdFn,               loginId),
                this.CreateField(ConnectionNameFn,        instance.Name),
                this.CreateField(ServerInstanceNameFn,    serverName),
                this.CreateField(ServerInstanceVersionFn, serverVers),
                this.CreateField(DbTypeFn,                instance.DbType),
                this.CreateField(IsOdbcFn,                instance.IsODBC),
                this.CreateField(IsDynamicConnectionFn,   instance.IsDynamicConnection)
            );
        }