Создание своей суммы в справочнике сумм
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
evgeniy Участник - экстремал
Вступление в Клуб: 31.03.2008
|
Пн Мар 31, 2008 06:20  Создание своей суммы в справочнике сумм |
|
Полезность: Нет оценки
|
Здраствуйте люди добрый.
Подскажите, как настроить свою сумму в справочнике сумм. Сумма заявки на обналичку, РКО, Ежедневные кассовые заявки. А если более точно вопрос сформулировать, как настроить её в Администраторе словаря данных. Сейчас нашел операцию в "Расширения.Дистрибутив", с кодом RKO_GET_SUMMA_1, перенес её в "Банк.Расширения" (так называемый hook). А что дальше не знаю... |
|
 |
dnk_dz Эксперт
Вступление в Клуб: 19.09.2007
|
Пн Мар 31, 2008 06:35   |
|
Полезность: 2
|
1. Добавить в справочник сумм свой код суммы, например с кодом МОЯ_СУММА, поставить признак "Получать через метод продукта".
2. В хуке RKO_GET_SUMMA_1 описать алгоритм вычисления суммы
Код: | if P_TYPE_SUMMA.[COD] = 'МОЯ_СУММА' then
-- Здесь алгоритм расчета суммы
summa := ....
...
return summa;
end if;
|
З.Ы.
Ссылка на договор РКО доступна через переменную P_RKO |
|
 |
evgeniy Участник - экстремал
Вступление в Клуб: 31.03.2008
|
Пн Мар 31, 2008 06:56   |
|
Полезность: Нет оценки
|
dnk_dz спасибо. Попробую. |
|
 |
evgeniy Участник - экстремал
Вступление в Клуб: 31.03.2008
|
Пн Мар 31, 2008 07:31   |
|
Полезность: Нет оценки
|
Добрался, через переменную Код: | summa := P_RKO.[DAILY].[STR_DAY_CHECK].[SUMM] |
Компилятор, говорит, что "У типа [STR_DAY_ARR] нет реквезита или операции [STR_DAY_CHECK]".???
Явно не хватает знаний... интересно узнать, где можно взять доку. по программированию под ИБСО? |
|
 |
dnk_dz Эксперт
Вступление в Клуб: 19.09.2007
|
Пн Мар 31, 2008 07:46   |
|
Полезность: 2
|
evgeniy пишет: | Добрался, через переменную Код: | summa := P_RKO.[DAILY].[STR_DAY_CHECK].[SUMM] |
Компилятор, говорит, что "У типа [STR_DAY_ARR] нет реквезита или операции [STR_DAY_CHECK]".???
Явно не хватает знаний... интересно узнать, где можно взять доку. по программированию под ИБСО? |
Документация прилагается к дистрибутиву. Посмотрите документацию по АРМ "Администратор словаря данных" там есть описание PL+. Также неплохо почитать об ООП. А также неплохо бы съездить в ЦФТ на курсы по программированию на PL+.
По Вашей ошибке - DAILY - массив, соответственно, он содержит несколько элементов. Чтобы вытащить конкретный элемент, необходимо произвести поиск в данном массиве по какому-либо критерию, чтобы в результате поиска получить ссылку на один элемент. Например, так.
Код: |
str ref [STR_DAY]; -- Ссылка на элемент массива
summa number;
begin
-- Найдем сумму кассовой заявки по чеку с максимальной датой подачи заявки
begin
locate str in P_RKO.[DAILY] order by str.[DAT_GIVE] desc;
summa := str.[STR_DAY_CHECK].[SUMM];
exception when NO_DATA_FOUND then
pragma error('Нет ни одной заявки.');
end;
end; |
|
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|