Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Пт Май 18, 2012 15:01  Внедрение Пластика |
|
Полезность: Нет оценки
|
Помогите разобраться с настройками для запуска Пластика, хотя бы в базовом варианте. В документации по настройкам только общие фразы о том, что настройки выставляются в зависимости от требований бизнеса. Но как это делается, ни примеров, ни рекомендаций нету.
Заранее, спасибо |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Пт Май 18, 2012 15:50   |
|
Полезность: Нет оценки
|
Тебе смотреть Справочники для карт->Карты. Универсальные настройки....
1. смотрим группы (Карты. Универсальные настройки. Группы настроек)
2. настраиваем иерархию (Карты. Универсальные настройки. Иерархия)
3. ну и сама настройка (Карты. Универсальные настройки. Настройка продукта)
Это в двух словах |
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Сб Май 19, 2012 06:21   |
|
Полезность: Нет оценки
|
2 pas
А если не в двух словах ?
Поначалу была проблема в настройке параметра "Процент ЛА". Настроил для него Группу и Иерархию. Программа дала возможность выполнить операцию "Выдача карты". Но уверенности, что настройки сделал правильно, нет. Можно есть какие-то рекомендации по настройке этих справочников для одного процессинга.
Проблема текущего момента - это настройки в справочнике "Настройки". Не получается правильно настроить параметр CARD_TMPL_NUM_REQUEST, в частности система не воспринимает настройку тега [BANK_POST_CODE] при формировании файла реестра для процессинга. |
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Вт Июн 19, 2012 10:14   |
|
Полезность: Нет оценки
|
Вроде с настройками немного разобрался. Уже формируется файл запроса в ПЦ на выпуск карт, но....
Некоторые поля нужно переопределить. Пытался это сделать хуком, но не получилось. Может кто-то подсказать вариант хука CARD_PROT_CALC?
Заранее спасибо |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Вт Июн 19, 2012 10:31   |
|
Полезность: 1
|
Пример:
Цитата: |
res_val ::[CARD_REE_FIELDS].[VAL_INT]%type;
begin
--stdio.put_line_pipe('Ищем '||P_PROT.[NAME],'pas');
case P_PROT of
-- [Информация о телефоне для СМС]
: ::[CARD_REE_PROT]([NAME] = 'SMS_INFO_MOBILE') :
declare
old_info_oper ref [PROPERTY];
old_info_phone ref [PROPERTY];
info_oper ref [PROPERTY];
info_phone ref [PROPERTY];
begin
old_info_oper := ::[CARD_REE_HISTORY].[LIB_PROTOTYPE].get_param_serv(p_cash_table(p_cash_index).appl_ref.[CARD_SERV], ::[PROPERTY_TYPE](CODE = 'INFO_MOBILE_OPERATOR'), true);
old_info_phone := ::[CARD_REE_HISTORY].[LIB_PROTOTYPE].get_param_serv(p_cash_table(p_cash_index).appl_ref.[CARD_SERV], ::[PROPERTY_TYPE](CODE = 'INFO_MOBILE_PHONE'), true);
info_oper := ::[CARD_REE_HISTORY].[LIB_PROTOTYPE].get_param_serv(p_cash_table(p_cash_index).appl_ref.[CARD_SERV], ::[PROPERTY_TYPE](CODE = 'INFO_MOBILE_OPERATOR'));
info_phone := ::[CARD_REE_HISTORY].[LIB_PROTOTYPE].get_param_serv(p_cash_table(p_cash_index).appl_ref.[CARD_SERV], ::[PROPERTY_TYPE](CODE = 'INFO_MOBILE_PHONE'));
if nvl(old_info_oper.[REF_VALUE], -1) <> nvl(info_oper.[REF_VALUE], -2) or nvl(old_info_phone.[STR_VALUE], chr(10)) <> nvl(info_phone.[STR_VALUE], chr(11)) then
if old_info_oper.[REF_VALUE] is not null or old_info_phone.[STR_VALUE] is not null then
res_val := old_info_oper.[REF_VALUE]->([UD_CODE_NAME])[CODE] || old_info_phone.[STR_VALUE];
end if;
if info_oper.[REF_VALUE] is not null or info_phone.[STR_VALUE] is not null then
if res_val is not null then
res_val := res_val || ' '|| info_oper.[REF_VALUE]->([UD_CODE_NAME])[CODE] || info_phone.[STR_VALUE];
else
res_val := info_oper.[REF_VALUE]->([UD_CODE_NAME])[CODE] || info_phone.[STR_VALUE];
end if;
end if;
end if;
end;
--stdio.put_line_pipe('!!!!!!!!!!!!!!!!!!!!!!!!!!! '||res_val,'pas');
: ::[CARD_REE_PROT]([NAME] = 'ЧТО_НУЖНО_ПЕРЕОПРЕДЕЛИТЬ') :
res_val := 'ЧТО_НУЖНО_ПЕРЕОПРЕДЕЛИТЬ';
else
--stdio.put_line_pipe('!!!!!!!!!!!!!!!!!!!!!!!!!!! NULL','pas');
res_val := null;
end;
Return res_val;
&call_meth
end;
|
|
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Вт Июн 19, 2012 14:50   |
|
Полезность: Нет оценки
|
2 pas
Огромное спасибо ! Смысл вроде уловил. Буду пробовать |
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Вт Июн 19, 2012 19:06   |
|
Полезность: Нет оценки
|
2 Pas
Вроде смысл уловил, начал с простого
Код: | res_val ::[CARD_REE_FIELDS].[VAL_INT]%type;
begin
case P_PROT of
: ::[CARD_REE_PROT]([NAME] = 'BANK_CODE') : res_val := '1111';
else
res_val := null;
end;
Return res_val;
&call_meth
end; | Но не работает, почему ? |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Ср Июн 20, 2012 08:09   |
|
Полезность: Нет оценки
|
А в "Справочники"→ "Расширения и перекрытия. Точки вызова" hook банка есть?
Дока: Приложение_1-04_(Механизм_множественных_расширений_и_перекрытий).chm |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Ср Июн 20, 2012 08:11   |
|
Полезность: Нет оценки
|
Добавь еще отладку.
Как пример stdio.put_line_pipe('мы в hook','XXXXX');
, где XXXXX - наименование имя канала |
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Ср Июн 20, 2012 10:10   |
|
Полезность: Нет оценки
|
2 pas
В "Справочники"→ "Расширения и перекрытия. Точки вызова" hook банка есть, но видимо засада с методами. Поэтому хук не работает. В массиве мододов дожлны присутсвовать ссылки только на групповые операции, но операция "Сформировать файл" - простая и ее зависмостях только библиотечные функции. Указанние в методах библиотеки переводит хук в невалидное состояние. Что-то я запутался |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Ср Июн 20, 2012 10:23   |
|
Полезность: Нет оценки
|
Точки вызова CARD_PROT_CALC, см. вложение. |
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Ср Июн 20, 2012 10:30   |
|
Полезность: Нет оценки
|
Получилось создать свой метод и прописать его в методах "Справочники"→ "Расширения и перекрытия. Точки вызова". Хук из расширения банка так и не захотел работать |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Ср Июн 20, 2012 10:44   |
|
Полезность: Нет оценки
|
Посмотри hook банка такой:
Глобальное описание:
Код: | Pragma Include([RUNTIME].[MACRO_LIB]);
|
Локальное описание:
Код: | pragma include ('APPAUX_CALLPOINT.COMPILE_LIB');
&setcallpoint('CARD_PROT_CALC','Карты. Расчет значения по прототипу',1)
|
|
|
 |
DmiSbr Участник
Вступление в Клуб: 18.05.2012
|
Ср Июн 20, 2012 10:52   |
|
Полезность: Нет оценки
|
2 pas
Ур-р-р-а
Каким-то чудом заработал и хук в расширениях Банка.
Локальные и глобальные описания совпадают
Огромное спасибо !!! |
|
 |
pas Профи
Вступление в Клуб: 20.11.2007
|
Ср Июн 20, 2012 10:59   |
|
Полезность: Нет оценки
|
Наверное забыл сказать ахаляй-махаляй  |
|
 |
|