Показать сообщение отдельно
Старый 13.08.2015, 11:47   #6  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,495 / 1070 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Можно попробовать пойти таким путем.
X++:
protected FieldId fieldIdByExtendedType(TableId _tableId, int _extendedTypeNum)
{
    DictTable       dictTable = new DictTable(_tableId);
    DictField       dictField;

    ExtendedTypeId  extendedTypeId;
    FieldId         fieldId, fieldIdRet;
    int             i, n;
    ;

    fieldId = dictTable.fieldNext(0);

    while (fieldId && ! isSysId(FieldId))
    {
        dictField      = new DictField(DictTable.id(), fieldId);
        extendedTypeId = dictField.typeId();

        if (extendedTypeId == _extendedTypeNum)
        {
            fieldIdRet = fieldId;
            break;
        }

        fieldId        = dictTable.fieldNext(fieldId);
    }

    return fieldIdRet;
}
За это сообщение автора поблагодарили: mazzy (2).