Показать сообщение отдельно
Старый 08.05.2008, 17:22   #10  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Попробовал в классе DialogField добавить метод по примеру mandatory:
X++:
//DEV_DialogExtensions_IKash Mandatory property on DialogField IKASH -->
void mandatory(boolean mandatory = buildControl.mandatory())
{
    // If properties exists then we are on server
    if (properties)
    {
        Dialog::setProp(properties, #PropertyMandatory, mandatory);
    }
    else
        this.fieldControl().mandatory(mandatory);
}
X++:
void extendedDataType(ExtendedTypeId _edt)
{
    FormStringControl fsc;
    // If properties exists then we are on server
    if (properties)
    {
        Dialog::setProp(properties, #PropertyExtendeddatatype, _edt);
    }
    else
    {
        fsc = this.fieldControl();        // проваливаемся при этом сюда
        fsc.extendedDataType(_edt);
    }
}
И вызывать его в dialog:
X++:
protected Object dialog()
{
    ;
    dialog = Dialog::newFormnameRunbase('', this);
    dialog.caption(this.caption());
    dialog = super(dialog);
    dialog.addGroup("@SYS32327");
    dfDistrId       = dialog.addFieldValue(typeId(AclDistrId),  this.parmDistrId(),     "@ACL3",        '', 'dfDistrId');
dfDistrId.extendedDataType( extendedTypeNum(AclDistrId) );
}
Результат тот же - св-во EDT у контрола прописывается, но пункта нет... Метод toolTip тоже не удалось перегрузить.

Последний раз редактировалось Eldar9x; 08.05.2008 в 17:47.