Страница 1 из 1

Внешние КАУ в конфигураторе

Добавлено: 26 ноя 2009, 10:51
sildae
Подскажите, пожалуйста, как можно вывести внешние КАУ в каталог матценностей, так, чтобы в карточку матценностей не заходить, а было видно сразу. Конфигуратором что-то не прицепляется.

Добавлено: 26 ноя 2009, 12:01
edward_K
2 пути, оба через "добавить поле", 1 - вычисляемое функциями из настройки хозопераций - уже 100 раз обсуждалось, 2 классификаторы.
Бывает, что главная для сортировки другая таблица(часто временная) - тогда только через вычисляемое (например вы представления включили в каталоге МЦ). По 1 ищите InitSerTxo по форуму.

Добавлено: 26 ноя 2009, 12:55
sildae
kaureff.crec==katmc.nrec
kaureff.ckau==spkau.nrec
Нужно получить spkau.name
StxoGetField('spkau','name',kaureff.ckau). А как получить kaureff.ckau ?

Добавлено: 26 ноя 2009, 14:14
edward_K
сорри. перепутал внешний класс. с внешним кау. Для внешних КАУ вроде как нет готовых функций - хотя мож LaaLaa подскажет что. Можно конечно попробвать подтянуть TxoSetKau c нужным режимом, но врядли сработает здесь. Так что либо вы пишите свою dll, либо alter. Хотя вроде как в последних атлантисах можно функции и на vip написать, но не юзал еще это. Посмотрите в vipprogr.chm RegisterGlobalIfc, там правда в строку handler with replace еще наверное [10] добавить.

Добавлено: 26 ноя 2009, 14:34
LaaLaa
Для внешних КАУ готовые функций есть.

Код: Выделить всё

// Получить значения внешних КАУ - одну запись из привязанных
function GetKauReffNrec   (TableName: string; cRec:comp; wKau:word) : comp; external 'G_Kau.dll';
function GetKauReffName   (TableName: string; cRec:comp; wKau:word) : string; external 'G_Kau.dll';
function GetKauReffStrKod (TableName: string; cRec:comp; wKau:word) : string; external 'G_Kau.dll';
function GetKauReffAbbr   (TableName: string; cRec:comp; wKau:word) : string; external 'G_Kau.dll';
function GetKauReffCode   (TableName: string; cRec:comp; wKau:word) : string; external 'G_Kau.dll';

// Получить значения внешних КАУ - всех привязанные записи, через разделитель '\'
function GetKauReffArrayKatalog (TableName: string; cRec:comp) : string; external 'G_Kau.dll';
function GetKauReffArrayName    (TableName: string; cRec:comp) : string; external 'G_Kau.dll';
function GetKauReffArrayStrKod  (TableName: string; cRec:comp) : string; external 'G_Kau.dll';
function GetKauReffArrayAbbr    (TableName: string; cRec:comp) : string; external 'G_Kau.dll';
function GetKauReffArrayCode    (TableName: string; cRec:comp) : string; external 'G_Kau.dll';
Но вместо внешних КАУ, при внедрениях Галактики рекомендую все же использовать внешние атрибуты с типом "Ссылка на аналитику".

Добавлено: 26 ноя 2009, 15:07
Алексей
о как. запомним. а почему?

Добавлено: 26 ноя 2009, 16:28
LaaLaa
Потому что по смыслу - внешние атрибуты с типом "Ссылка на аналитику" этот тоже самое.

Но для атрибутов больше сервисов и в инструментарии, и в Галактике: конфигуратор, функции и объекты для программирования, фильтры в отчетах, больше конкретных готовых прикладных применений и т.д.