3. Строение документов
Документы хранятся в таблице
Docs. Номер документа UDN является сквозным.Документ имеет три отображаемых поля
, два строковых (Name и No), и одно поле даты. Производные от класса Doc объекты могут выносить в эти поля часть своей информации. Например, имя пользователя логично выносить в Name.Поле
No является особым именем или aliasом. Также его можно назвать внутренним именем или Id. Трудно формально определить использование этого поля. Можно привести примеры его использования в различного рода объектах: в классах это короткое латинское название класса, в пользователях - его login в SQL serverе, в бухгалтерских счетах - это номер. Поле Folder является ссылкой на папку (UDN), куда входит данный документ. Shortcut хранятся как документ,у которого
DocFlags=1, a ParentDoc указывает на родительский документ.Поле
Deleted является признаком того, что документ удален, если данный класс предполагает логическое удаление.При создании нового класса могут потребоваться другие таблицы
. Поле, равное Docs.UDN следует называть в этих таблицах UDN и делать первым (требование стиля). Если объект имеет четко определимое название, alias и/или дату, то не следует заводить для них свои поля, а следует использовать поля Docs.Для обслуживания работы с документами есть следующие макросы
: existUDN({UDNдокумента} - если документа с данным UDN нет, то выдается сообщение обnondelUDN{UDNдокумента}
- тоже, но документ не должен быть удаленным (Deleted=0)Написание в принципе можно приближенно описать следующим циклом
: