---------------------------------
| Entrys |
---------------------------------
/ | \
------------- ------------- -------------
| Entry | | Entry | | Entry |
------------- ------------- -------------
/ \
------------- -------------
| Entry | | Entry |
------------- -------------
Структура реквизитов документа
Код:
Entrys –коллекция реквизитов, SYS_ENTRYS_COLLECTION
Entry – отдельно взятый реквизит, SYS_ENTRY.
Реквизит может быть составным и выступать в качестве коллекции реквизитов, SYS_SUBENTRY_COLLECTION.
Отдельно взятый реквизит этой коллекции SYS_SUBENTRY.
Итого имеем четыре типа на данный момент.
Код:
SYS_ENTRY = SYS_ENTRYS_COLLECTION->GetFirstSysEntryFromCollection()
SYS_SUBENTRY_COLLECTION = SYS_ENTRY->GetSubEntrysCollection()
SYS_SUBENTRY = SYS_SUBENTRY_COLLECTION->GetFirstSysSubEntryFromCollection()
SYS_SUBENTRY_COLLECTION = SYS_ENTRY->GetSubEntrysCollection()
SYS_SUBENTRY = SYS_SUBENTRY_COLLECTION->GetFirstSysSubEntryFromCollection()
Для реализации нужно использовать только Entrys и Entry.
Код:
Entrys
{
bool GetFirstEntry();
bool GetNextEntry(Entry hEntry);
};
Entry
{
String strValue;
};
{
bool GetFirstEntry();
bool GetNextEntry(Entry hEntry);
};
Entry
{
String strValue;
};
Наследуешь Entrys от Entry или наоборот.
Ну и... эта... в чём проблема-то? ;)
Цитата: Green
Ну и в чем проблема?
Наследуешь Entrys от Entry или наоборот.
Наследуешь Entrys от Entry или наоборот.
Имеется два метода получения указателя на первый реквизит из массива:
Код:
SYS_ENTRY = SYS_ENTRYS_COLLECTION->GetFirstSysEntryFromCollection()
SYS_SUBENTRY = SYS_SUBENTRY_COLLECTION->GetFirstSysSubEntryFromCollection()
SYS_SUBENTRY = SYS_SUBENTRY_COLLECTION->GetFirstSysSubEntryFromCollection()
их надо в один
Код:
Entrys->GetFirstEntry()
и как лучше хранить указатели на реквизиты SYS_ENTRY и SYS_SUBENTRY