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

Добавление новой настройки

Добавлено: 03 мар 2010, 12:38
Gameus_
Добрый день, подскажите пожалуйста что не так делаю.
Суть такова:
к некоторым отчетам необходимо создавать настройки, причем вип с созданием настроек компилится вместе с отчетом в один рес файл.
При попытке добавить еще один ресурсник с созданием новых настроек, после модификации реестра настроек старые настройки пропадают.
Пример:
сначала создали настройки:

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

#include CreateTune.vih
Handler with replace Gal_DateModifyTune on ExtensionPoint
  epDateModifyTune (TS : ObjStartCreateTune)
Action
{
  TS.SetLastDateModTune(21,02,2010);
  Result := true;
}
Handler with replace Gal_CreateTuneComponent on extensionPoint
  epCreateTuneComponent (TR: ObjCreateTuneEx)
Action
{
  Result := true;
  TR.SetComponent('');
  TR.AddPart (ttSysUserTune,'exttunes','Tune','Доп настройки',0);
     TR.AddPart (ttSysUserTune,'exttunes.zakaz','exttunes','Загрузка',0);
        TR.AddTune (ttSysTune,'exttunes.zakaz.kodorg','exttunes.zakaz','Классификатор',ftComp,'0','',0);
           TR.AddIntrTune ('exttunes.zakaz.kodorg','zakaz_IntrTune');
        TR.AddTune (ttSysTune,'exttunes.zakaz.orgattrmc','exttunes.zakaz','Классификатор2',ftComp,'0','',0);
           TR.AddIntrTune ('exttunes.zakaz.orgattrmc','zakaz_IntrTune');

}
настройки появились, все хорошо,
создаем еще настройки:

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

#include CreateTune.vih
Handler with replace Gal_DateModifyTune on ExtensionPoint
  epDateModifyTune (TS : ObjStartCreateTune)
Action
{
  TS.SetLastDateModTune(21,02,2010);
  Result := true;
}
Handler with replace Gal_CreateTuneComponent on extensionPoint
  epCreateTuneComponent (TR: ObjCreateTuneEx)
Action
{
  Result := true;
  TR.SetComponent('');
  TR.AddPart (1,'exttunes','Tune','Доп настройки',0);
     TR.AddPart (1,'exttunes.ard_rep','exttunes','Отчеты ard',0);
        TR.AddTune (2,'exttunes.ard_rep.price_nrec','exttunes.ard_rep','Прайс лист',ftComp,'0','',0);
                   TR.AddIntrTune('exttunes.ard_rep.price_nrec','ard_tune_GETPAYMENT');
}
После подключения ресурсника с этим кодом старые настройки пропадают. (строчку TR.AddPart (1,'exttunes','Tune','Доп настройки',0); пробовал закоментить, результат не изменился).

Подскажите плиз, что не так делаю.

Добавлено: 03 мар 2010, 12:52
edward_K
1. Я бы вам очень советовал комплить все ваши добаления настроек в отдельный файл и закинуть его в exe как user1.res. А потом уже подключать как обычно, не забывая иногда обновлять user1.res - будет мучительно больно, если при подключении реса вы запятой ошибетесь.
2. мой код

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

#include CreateTune.vih
#ifdef ComponentVersion
#component "F_USERREPORT"
#end
//Настройки Галактики \ Логистика \ Документы \ Управление договорами \ Права доступа
//Подразделение-куратор
//'DOGOVOR.CCURRPODR'
Handler with replace M_All_DateModifyTune on ExtensionPoint
  epDateModifyTuneEx (TS : ObjStartCreateTuneEx)
Action
{
  TS.SetLastDateModTuneComp('#__COMPONENT__', 29, 03, 2008);
  Result := true;
}

Handler with replace M_All_CreateTune on extensionPoint
  epCreateTuneComponent (TR: ObjCreateTune) [221]
Action
{
  Result := true;
  TR.SetComponent('#__COMPONENT__');
  TR.SetNextNumberTune(31000); // 
  TR.SetParent('GALCOMMON')
  TR.AddTuneU('GALCOMMON.ORG_ROLE','Роль на ввод заявок на организации', ftList, '0', '', 'AvtoNastroikaPravaDostupa');
    TR.AddList(0, 'Ввод');
     TR.AddList(1, 'Администратор'); //USERRIGHTS


}
#ifdef ComponentVersion
#component "F_USERREPORT"
#endif
второй файл отличается
TR.SetNextNumberTune(30000); //
ну и наименованием точки расширения и фейса.

Добавлено: 03 мар 2010, 13:41
Screw
Название подписчика на точку расширения хорошо бы делать уникальным, иначе тот, что в новом ресурсе, перекроет того, что в старом ресурсе, и старый просто не будет "виден" системе.

Добавлено: 04 мар 2010, 13:38
Gameus_
Спасибо, все дело в уникальности имени точки расширения

Добавлено: 10 мар 2010, 13:20
Gameus_
Еще проблемка появилась, не пойму в чем дело...

После пересчета реестра настроек галактика пишет, что удалена стандартная настройка из раздела управление персоналом... но при просмотре настроек её видно (видимо все-таки ничего не удалилось), кто-нить сталкивался с подобным? из-за чего такое может быть ?

Добавлено: 10 мар 2010, 14:34
Screw
Пользовательскую настройку заменили системной или наоборот.

Добавлено: 10 мар 2010, 15:13
Gameus_
эту настройку (стандартную) вообще никак не трогали..

Добавлено: 10 мар 2010, 18:39
galover
Gameus_
возможно было задвоение настроек (такое бывает), проверка реестра удаляет такие некорректные записи

Добавлено: 10 мар 2010, 19:05
Gameus_
а из-за чего может быть задвоение настроек ? теоретически....

Добавлено: 10 мар 2010, 19:25
galover
Gameus_
у нас задвоение случалось, если запустить проверку реестра настроек для Галактики, в которой сидят пользователи

Добавлено: 10 мар 2010, 20:09
edward_K
если одна удалилась это еще ничего, а вот когда много, значит настройки переехали в другой рес, а у вас он не подключен. Чего то там в кадрах выделяли недавно. И часть настроек скрыто и используются только в фейсах для своих нужд.

Добавлено: 11 мар 2010, 06:26
Алексей
galover писал(а):Gameus_
у нас задвоение случалось, если запустить проверку реестра настроек для Галактики, в которой сидят пользователи
а вот это уже интересно, что нельзя так делать? я частенько запускал проверку реестра со всеми галками...

Добавлено: 11 мар 2010, 11:28
galover
Алексей
по поводу нельзя - не знаю, просто у нас такое случалось