Объект - базовое понятие TDMS.
Объект в TDMS - это информационная единица, модель конкретной сущности реального мира (предмет, явление, процесс или их часть). Создается по описанию, заложенному в соответствующем типе объекта (другими словами, объект является экземпляром некоторого типа); однотипные объекты обладают одинаковой структурой, поведением и отношением (связями) с объектами других типов.
Объектами в TDMS могут быть любые материальные, финансовые или людские ресурсы, различные виды документации (чертежи, спецификации, ...), работы различных уровней (проекты, этапы, задания, ...). Объект в TDMS описывается набором значений его свойств (атрибутов) и в каждый момент времени находится в определенном состоянии (статусе); он обладает заданным набором способов перехода из текущего состояния в следующее; может иметь в своем составе другие объекты и/или файлы (обычно используются для представления документов и чертежей). Набор свойств объекта TDMS состоит из нескольких предопределенных системных свойств и произвольного набора дополнительных атрибутов.

Для редактирования свойств объекта (атрибутов, файлов и т.д.) пользователь должен иметь соответствующие права. Исключение составляет обращение во внутренних скриптах через специальную переменную ThisObject - это дает пользователю права системного администратора на объект. Замечания к назначению прав пользователям см. также в разделах TDMSPermissions Объект, TDMSRole Объект, TDMSStatus Объект.
Ссылка на API-объект "TDMSObject" может быть получена разными способами: из коллекции (например, Parent.Content, Object.Uplinks) или напрямую из базы данных (например, методом ThisApplication.GetObjectByGUID). От того, как была получена ссылка, зависит поведение некоторых свойств и методов объекта (например, свойство TDMSObject.Order Свойство не имеет смысла для объектов, не принадлежащих коллекции). В каждом конкретном случае см. замечания к свойствам и методам.
При работе с объектами через API следует учитывать особенности многопользовательских систем. Желательно перед обращением к свойствам запрашивать обновление из базы данных, а затем блокировать объект от изменений другими пользователями:
MsgBox ThisObject.Description ' "Old description"
MsgBox "Please, wait..." 'Вы послушались и ушли обедать.
'Кто-нибудь изменил описание объекта: ThisObject.Description = "New description"
MsgBox ThisObject.Description ' "Old description" - мы работаем с локальной необновленной копией объекта
ThisObject.Update 'Свойства объекта перезачитаны из базы.
MsgBox ThisObject.Description ' "New description" - мы получили последние данные
'Перед редактированием надо заблокировать объект:
ThisObject.Lock
'Редактирование...
ThisObject.Description = "Old description, I sad" 'Новое описание немедленно сохранено
'Даже если Вы отлучились, никто не может изменить объект пока он не разблокирован:
ThisObject.Unlock 'Не забыть разблокировать объект.