Esempio n. 1
0
 public UpdateItemsFromTdmsCorrectionActionsBehavior(UpdateContext client, IEnumerable <ICa> correctionActions, TDMSObject tdmsObject, int versionName)
 {
     this.client            = client;
     this.correctionActions = correctionActions;
     this.tdmsObject        = tdmsObject;
     this.versionName       = versionName;
 }
Esempio n. 2
0
        static void Main(string[] args)
        {
            #region create tdms application and login
            TDMSApplication myapp = new TDMSApplication();

            if (!myapp.IsLoggedIn)
            {
                myapp.Login("sysadmin", "", "kosmos", @"192.168.16.8\tdmsserver");
            }

            #endregion

            #region get object_tom and files

            //подключаемся к объекту по GUID
            string     GUID           = "{49DFA37A-E760-4C83-A084-9C270A47DA39}";
            TDMSObject buildingObject = myapp.GetObjectByGUID(GUID);

            // получаем все Томы (object_tom) данного Объекта (object_object). Чертежи хранятся в файловом составе Томов
            // лучше создать ручную выборку для получения Томов в примере получение черерз метод ContentAll - сквозной состав объекта

            TDMSObjects toms = buildingObject.ContentAll.ObjectsByDef("OBJECT_TOM"); //метод ObjectsByDef позволяет во всей коллекции объектов осуществить фильтр по типу объекта

            TDMSObject firstTom  = toms[0];
            TDMSFiles  tomsFiles = firstTom.Files;
            TDMSFile   firstFile = tomsFiles[0];

            firstFile.CheckOut(firstFile.WorkFileName);
            #endregion

            Console.ReadKey();
            myapp.Quit();
        }
Esempio n. 3
0
 private static Tuple <string, string, TDMSObject> CreateRowValues(TDMSObject obj,
                                                                   Tuple <string, string, string> names)
 {
     return(new Tuple <string, string, TDMSObject>(
                Utility.GetAttributeValueAsString(obj.Attributes, names.Item1),
                Utility.GetAttributeValueAsString(obj.Attributes, names.Item2),
                obj));
 }
Esempio n. 4
0
        public TDMSObject CreateCaVersion(TDMSObject tdmsObject, int versionName)
        {
            var obj = app.GetObjectByGUID(tdmsObject.GUID);

            obj.Versions.Create(versionName, $"export @: {DateTime.Now}");
            var activeVersion = tdmsObject.Versions.Active;

            return(activeVersion);
        }
        /// <summary>
        /// Retrieves correction actions from the maximum upload time file of tdmsObject
        /// </summary>
        /// <returns></returns>
        public static IEnumerable <ICa> GetObjects(TDMSObject tdmsObject)
        {
            if (tdmsObject.Files.Count == 0)
            {
                return(new List <ICa>());
            }

            var max  = tdmsObject.Files.Max(f => Convert.ToDateTime(f.UploadTime));
            var file = tdmsObject.Files.FirstOrDefault(f => Convert.ToDateTime(f.UploadTime).Equals(max));

            file.CheckOut(tdmsObject.Files.Main.WorkFileName);
            return(GetObjects(tdmsObject.Files.Main.WorkFileName));
        }
        public override void Execute()
        {
            TDMSObject         @object = application.GetObjectByGUID("{512B3024-D8B6-45A4-80A4-BF0B4C6C383E}");
            TDMSTableAttribute rows    = @object.Attributes["A_TblWorkability"].Rows;

            foreach (TDMSTableAttributeRow attributeRow in rows)
            {
                var attribute  = attributeRow["A_RecordCA"];
                var classifier = GetClassifier(attribute);
                var sysname    = (classifier == null) ? string.Empty : classifier.SysName;
                application.DebugPrint($"rowValue: {sysname}");
            }
        }
Esempio n. 7
0
        private TDMSObject GetCaRoot()
        {
            TDMSObject catalogsFolder = app.Root.Objects
                                        .Where(obj => obj.ObjectDefName == "O_Folder")
                                        .Where(obj => obj.Attributes["A_Type_Folder"].Classifier != null)
                                        .FirstOrDefault(obj => obj.Attributes["A_Type_Folder"].Classifier.SysName == "N_TYPE_FOLDER_SERVICE");

            if (catalogsFolder == null)
            {
                return(null);
            }

            TDMSObject result = catalogsFolder.Objects
                                .Where(obj => obj.ObjectDefName == "O_Folder")
                                .Where(obj => obj.Attributes["A_Type_Folder"].Classifier != null)
                                .FirstOrDefault(obj => obj.Attributes["A_Type_Folder"].Classifier.SysName == "N_TYPE_FOLDER_SERVICE_CA");

            return(result);
        }
Esempio n. 8
0
        /// <summary>
        /// Creates TdmsCorrectionAction from TdmsObject. Is mutable
        /// </summary>
        /// <param name="tdmsObject"></param>
        public static ICa ToRestoredTdmsCorrectionAction(this TDMSObject tdmsObject)
        {
            var assertIsNull = tdmsObject == null;

            if (assertIsNull)
            {
                return(new Ca());
            }

            var assertIsCorrectionAction = tdmsObject.ObjectDefName.Equals(TdmsContext.caObjectDefName);

            if (!assertIsCorrectionAction)
            {
                return(new Ca());
            }

            var tdmsCorrectionAction = new RestoredTdmsCorrectionAction(
                new TdmsCorrectionActionsFactoryFromTdmsObject(tdmsObject, new NppMaps()), tdmsObject);

            tdmsCorrectionAction.Configure();
            return(tdmsCorrectionAction);
        }
Esempio n. 9
0
        public void InitializeCaFields(TDMSObject tdmsObject, ICa tca)
        {
            var attributes = tdmsObject.Attributes;

            // wtf ????????????
            //if (!string.IsNullOrEmpty(tca.Description)) {
            //    descriptionValue = tca.Description;
            //} else {
            //    if (!string.IsNullOrEmpty(tca.LongDescription)) {
            //        if (tca.LongDescription.Length < 128) {
            //            descriptionValue = tca.LongDescription;
            //        } else {
            //            descriptionValue = tca.LongDescription.Substring(0, 127);
            //        }
            //    } else {
            //        descriptionValue = string.Empty;
            //    }
            //}

            InitializeAttribute(attributes,
                                "A_Name",
                                (string.IsNullOrEmpty(tca.Description)) ? tca.LongDescription.Trim(127) : tca.Description
                                );
            InitializeAttribute(attributes, "A_JSON", tca.LongDescription);
            InitializeAttribute(attributes, "A_System_Code", tca.Systems);
            InitializeAttribute(attributes, "A_Building_Code", tca.Buildings);
            InitializeAttribute(attributes, "A_ObjectGUID", tca.Id);

            InitializeDateAttributeBycicleSilent(attributes, "A_Date", tca.Modified);
            InitializeDateAttributeSilent(attributes, "A_Date1", tca.Export);

            FillTableWithKudanKulamNpps(
                tdmsObject.Attributes.FirstOrDefault(a => a.AttributeDefName.Equals("A_Obj_Ref_Tbl")),
                tca
                );
        }
Esempio n. 10
0
        public async Task UploadFiles(CancellationToken ct)
        {
            if (serviceRunning)
            {
                Logger.Debug("Сервис UploadFiles уже был запущен ранее.");
                return;
            }
            serviceRunning = true;
            try
            {
                UploadFilesExtensionConfiguration cfg = UploadFilesExtensionConfiguration.Current;
                Logger.Debug("Запуск расширения загрузки файлов в объект...");

                #region Attributes
                if (string.IsNullOrEmpty(cfg.Guid))
                {
                    Logger.Error("Параметр Guid не задан в файле конфигурации расширения. Выполнение операции приостановлено!");
                    return;
                }
                if (string.IsNullOrEmpty(cfg.Folder))
                {
                    Logger.Error("Параметр Folder не задан в файле конфигурации расширения. Выполнение операции приостановлено!");
                    return;
                }
                if (string.IsNullOrEmpty(cfg.Filedef))
                {
                    Logger.Error("Параметр Filedef не задан в файле конфигурации расширения. Выполнение операции приостановлено!");
                    return;
                }
                #endregion

                if (!Application.FileDefs.Has(cfg.Filedef))
                {
                    Logger.Error("В базе не найден выбранный для загрузки тип файла: " + cfg.Filedef); return;
                }

                TDMSObject obj = Application.GetObjectByGUID(cfg.Guid);

                if (obj == null)
                {
                    Logger.Debug("Не найден объект для импорта файлов с GUID: " + cfg.Guid);
                }
                else
                {
                    TDMSFiles files = obj.Files;
                    foreach (var filePath in Directory.GetFiles(cfg.Folder))
                    {
                        string filename = Path.GetFileName(filePath);
                        if (!files.Has(filename))
                        {
                            TDMSFile f = files.Create(cfg.Filedef, filePath);
                            Logger.Info("Файл " + filename + " загружен в базу. Handle загруженного файла: " + f.Handle);
                        }
                        else
                        {
                            Logger.Info("Файл " + filename + " пропущен - файл с данным именем уже загружен в объект.");
                        }
                    }
                    obj.Update();
                }

                Logger.Debug("Загрузка файлов завершена.");
            }
            finally
            {
                serviceRunning = false;
            }
        }
Esempio n. 11
0
 public void InitializeCaFields(TDMSObject tdmsObject, int versionName, ICa tdmsCorrectionAction)
 {
     InitializeCaFields(tdmsObject, tdmsCorrectionAction);
     tdmsObject.VersionName = versionName.ToString();
 }
Esempio n. 12
0
 public void InitializeCaFields(TDMSObject tdmsObject, ICa tdmsCorrectionAction, DateTime exportDateTime)
 {
     this.InitializeCaFields(tdmsObject, tdmsCorrectionAction);
     InitializeAttribute(tdmsObject.Attributes, "A_Date1", exportDateTime.ToString());
 }
Esempio n. 13
0
 public RestoredTdmsCorrectionAction(ICaFactory factory, TDMSObject tdmsObject) : base(factory)
 {
     this.tdmsObject = tdmsObject;
 }
 public InitialDataOfBlockNumbersStrategies(TDMSObject document)
 {
     this.Document = document;
 }
Esempio n. 15
0
 private bool IsExcortCard(TDMSObject tdmsObject)
 {
     return(tdmsObject.ObjectDefName.Equals(this.excortCardObjDefName));
 }
 public BlocksNumbersClient(TDMSObject document)
 {
     this.document = document;
 }
 public NppBlocks(TDMSObject npp)
 {
     this.npp = npp;
 }
 internal void CreateVersion(TDMSObject tdmsObject)
 {
     CreateVersion(tdmsObject.GUID);
 }
Esempio n. 19
0
 public TdmsCorrectionActionsFactoryFromTdmsObject(TDMSObject tdmsObject, NppMaps nppMaps)
 {
     this.tdmsObject = tdmsObject;
     NppMaps         = nppMaps;
     this.attributes = this.tdmsObject.Attributes;
 }