Аттрибут(ссылка) - на классификатор

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Аттрибут(ссылка) - на классификатор

Сообщение Алексей »

Есть внешний классификатор на таблицу katsopr.
Нужно как-то сослаться из таблицы basedoc на этот же самый классификатор.

Я попробовал создать атрибут(ссылка) - но в нем можно ссылаться либо на пользовательскую аналитику, либо на таблицы. В таблицах таблицы классификаторов нет. В аналитике тоже.
Дублировать классификатор как-то не хочется, т.к. он очень объемный и вести два таких классификатора не вижу смысла.

Может есть какой-то другой способ? Или писать в ТП и ПиР ?
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Как вариант создать пользовательскую аналитику и перевести (программно) классификатор KatSopr-а на атрибут с ссылкой на эту пользовательскую аналитику
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

была мысля. потом придется при изменении и добавлении делать это в двух местах. не хотелось бы.
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

в смысле в 2-х местах? Место будет одно, от вашего старого классификатора нужно будет вообще отказаться и оставить только пользовательскую аналитику
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

Посмотрите вот на это - это дабавление таблиц в окно с выбором ссылка - таблица. Таблу нужно добавлять типа ExClassVal - ну и ссотв.выбор. Удобней конечно пользоваться аналитикой - может нужно задуматься чтобы вн.клас. перенести туда?

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

Handler with replace Gal_CreateAttrRefTableMy on extensionPoint  epCreateAttrRefTable (AttrRef : ObjGetAttrTable) [10] // было 11
Action
{
   Result := true;
   var ifc : CreateAttrRef_GalMy;
   ifc.AddAttrRefTable (AttrRef);
}


//------------------------------------------------------------------------------
Handler with replace Gal_PickTableRefMy on extensionPoint  epPickTableRef (_coTable: word; _cAttrVal: comp) [10]
Action
{
   case _coTable of 
   coSpecMTR,coNORMSFO,1504..1507,coStErr :
   { var ifc : CreateAttrRef_GalMy;
     Result := not ifc.PickValueRef (_coTable, _cAttrVal);
     Result := False ;
     
   }
   else Result:=true ;
   end ;
}


// ObjCreateAttrRefPlugin - вызвается интерфейсом GetAttrTable для создания ссылок на таблицы не являющиеся аналитикой.
// CreateAttrRef_Gal  реализация объектного интерфейса ObjCreateAttrRefPlugin, чтобы дополнить список ссылок.

#doc
Создание атрибутов типа ссылка (не аналитика)           
#end
//========================================
Interface CreateAttrRef_GalMy;
....
//  AttrRef ссылка на интерфейс GetAttrTable
Public Procedure AddAttrRefTable (AttrRef : ObjGetAttrTable);
{
  AttrRef.AddTable (coSpecMTR);
  AttrRef.AddTable (coNORMSFO);
   AttrRef.AddTable (1504); //ПП_Статус_налогового_лица
  AttrRef.AddTable (1505); //ПП_Код_бюджетной_классификации
  AttrRef.AddTable (coSterr); //ПП_ОКАТО
  AttrRef.AddTable (1506); //ПП_Основание_налогового_платежа
    AttrRef.AddTable (1507); //ПП_Тип_налогового_платежа

}

//  Реализация интерфейса вызова для таблицы
Public  Function PickValueRef (_coTable: word; _cAttrVal: comp): boolean;
....
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

спасибо.
долго думали и пришли к выводу о необходимости переноса классификатор в пользовательскую аналитику.
для меня то проблем нет, просто по другому направлению в галактике уже написано много вещей, который не дадут одномоментно отказаться от классификатора.

решили пока оставить и то и то и постепенно все программные разработки перевести на пользовательскую аналитику.
а добавление новых записей осуществлять программно в оба места.
Ответить