Exemplo n.º 1
0
Arquivo: ARef.cs Projeto: sanekkop/WPM
        private bool FoundIDDorID(string IDDorID, bool ThisID)
        {
            FID = null;
            string prefix = "Спр." + TypeObj + ".";
            Dictionary <string, object> DataMap;
            List <string> FieldList = new List <string>();

            FieldList.Add("ID");
            FieldList.Add("ISMARK");
            if (HaveName)
            {
                FieldList.Add("DESCR");
            }
            if (HaveCode)
            {
                FieldList.Add("CODE");
            }
            if (!ThisID)
            {
                FieldList.Add(prefix + "IDD");
            }
            int ServCount = FieldList.Count;    //Количество сервисных полей

            SS.AddKnownAttributes(prefix, ref FieldList);
            if (!SS.GetSCData(IDDorID, TypeObj, FieldList, out DataMap, ThisID))
            {
                return(false);
            }
            FID     = DataMap["ID"].ToString();
            FIsMark = (bool)DataMap["ISMARK"];
            FCode   = HaveCode ? DataMap["CODE"].ToString() : null;
            FName   = HaveName ? DataMap["DESCR"].ToString().Trim() : null;
            //Добавляем оставшиеся поля в словарик
            for (int i = ServCount + 1; i < FieldList.Count; i++)
            {
                Attributes[FieldList[i].Substring(prefix.Length)] = DataMap[FieldList[i]];
            }
            return(true);
        }