Показать сообщение отдельно
Старый 30.03.2007, 10:35   #9  
LRA is offline
LRA
Участник
 
41 / 39 (2) +++
Регистрация: 19.12.2005
Адрес: Москва
Ув. AndyD.
Мой метод, определенный в CustVendTable не является статическим, поэтому конструкция
custVendTable.CustVendTable::MyMethod();
не подходит, а
custVendTable.CustVendTable.MyMethod();
выдаст ошибку.

Ув. belugin.
Джоб, который Вы написали выдаст в результате TableID, как у CustTable. Но Вы инициализируете мэп кодом:
custVendTable = custTable;

При этом у Вас custVendTable будет не custVendTable, а CustTable и следовательно методы определенные только на СustVendTable доступны не будут. В коде Вы их (методы) поставить сможете, и даже нормально прокомпилится, но при выполнении кода возникнет ошибка времени выполнения. Прочитайте первое сообщение, там это как раз и написано.

Видимо, я не совсем явно обрисовал задачу.
Если
CustVendTable = CustTable; или CustVendTable = VendTable; то проблем нет. Все достаточно просто. Но у меня в модуле есть метод, который работает с FieldID полей из CustVendTable, а FieldID полей в CustVendTable отличаются от FieldID соответствующих полей в CustTable и VendTable. Поэтому инициализировать CustVendTable прямым присвоением типа CustVendTable = CustTable; нельзя. Инициализация идет через метод Data(); и присвоение RecID

custVendTable.data(custTable);
custVendTable.RecId = custTable.RecId;

При такой инициализации поля custVendTable сохраняют мэпные FieldID, при этом доступны методы, определенные только на CustVendTable, но при этом я теряю возможность определить из кого (из CustTable или из VendTable) был получен данный экземпляр custVendTable. Так же теряется возможность получить значения полей modifiedTime, modifiedBy, createdDate и т.д.
Посему вопросы:
1. Как из сustVendTable, инициализированного через сustVendTable.data(custTable), определить чьим мэпом он является (CustTable или VendTable).
2. Как из сustVendTable, инициализированного через сustVendTable.data(custTable), определить значения полей modifiedDate, modifiedTime, modifiedBy

Последний раз редактировалось LRA; 30.03.2007 в 10:39.