CftClub.ru
Клуб специалистов ЦФТ-Банк

Статус документа финансового распоряжения
На страницу 1, 2  След.
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
nata
Участник


Вступление в Клуб: 07.09.2009
СообщениеСр Июл 31, 2013 13:01   Статус документа финансового распоряжения Ответить с цитатой
Полезность: Нет оценки
Добрый день!
Помогите. пожалуйста. Стоит задача в преставлении создать столбец в котором хранится статус документа определенного финансового распоряжения.
В нужном столбце представления. Параметр Источник данных пишем

(select count(*) from Z#PATTERN_DISTR a2, Z#FIN_ORDER a1
where
a1.C_PRODUCT = a1_1.id
and a1.C_PATTERN_DOC_REF=a2.id
and (a2.C_PATTERN_CODE = 'BL_CRED_OUT'))
это мы выбрали финансовые распоряжения бизнес операции.
как по фин распоряжению дальше выбрать документы с определенным статус затык.
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеСр Июл 31, 2013 13:21   Re: Статус документа финансового распоряжения Ответить с цитатой
Полезность: Нет оценки
nata пишет:
Добрый день!
Помогите. пожалуйста. Стоит задача в преставлении создать столбец в котором хранится статус документа определенного финансового распоряжения.
В нужном столбце представления. Параметр Источник данных пишем

Код:
(select count(*) from Z#PATTERN_DISTR a2, Z#FIN_ORDER a1
where
a1.C_PRODUCT = a1_1.id
and a1.C_PATTERN_DOC_REF=a2.id
and (a2.C_PATTERN_CODE = 'BL_CRED_OUT'))

это мы выбрали финансовые распоряжения бизнес операции.
как по фин распоряжению дальше выбрать документы с определенным статус затык.


Код:
(select count(*) from Z#PATTERN_DISTR a2, Z#FIN_ORDER a1
where
a1.C_PRODUCT = a1_1.id
and a1.C_PATTERN_DOC_REF=a2.id
and (a2.C_PATTERN_CODE = 'BL_CRED_OUT'))
-- Здесь указываем статус например "Исполнен"
and a1.STATE_ID = 'PROV'


И для чего такой сложный запрос, если необходимо вытащить статус документа во вьюху?
Для этого:
1. В простом представлении достаточно вытащить поле "Cостояние".
2. В PL+ вывести %statename.
_________________
всегда есть как минимум 2 выхода
nata
Участник


Вступление в Клуб: 07.09.2009
СообщениеСр Июл 31, 2013 13:30    Ответить с цитатой
Полезность: Нет оценки
Нам нужен статус платежного документа
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеСр Июл 31, 2013 13:39    Ответить с цитатой
Полезность: Нет оценки
nata пишет:
Нам нужен статус платежного документа


Так вам собственно и рассказали, как его вывести (проведён, ликвидирован, к кассиру и т.д.).
Или что вы имеете в виду под статусом документа?
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеСр Июл 31, 2013 13:40    Ответить с цитатой
Полезность: Нет оценки
nata пишет:
Нам нужен статус платежного документа

Как вы это себе представляете? На фин. распоряжениях порожденные документы это массив, причем документов верхнего уровня. Можно конечно извратиться. Только что-то мне подсказывает, что распоряжение не перейдет в конечное состояние пока все документы не будут проведены. Из чего следует, что документ перешли в конечное состояние "Проведен" и были исполнены. Так что на мой взгляд стоит проговорить целесообразность данной доработки с бизнесом.
_________________
всегда есть как минимум 2 выхода
nata
Участник


Вступление в Клуб: 07.09.2009
СообщениеСр Июл 31, 2013 14:08    Ответить с цитатой
Полезность: Нет оценки
Нам нужно контролировать состояние документов в продукте.
А так финасовое распоряжение исполнено когда документ проведен. А если документ внешний, то тогда возникает статус в РЦ, а здесь уже задержки в обработке. Документов в РЦ много и пока обработается нужный для бизнеса тоже много времени уходит. поэтому стоит задача: Чтобы пользователь , обработавший сделку, уже видел что он необходимые для него телодвижения сделал. И не просматривал финансовые распоряжения.
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеСр Июл 31, 2013 14:40    Ответить с цитатой
Полезность: Нет оценки
Ну как вариант - сделать в представлении в фин-распоряжениях колонку, в которой селект будет смотреть массив плат. документов папки ФР , если все в статусах ('проведен','оплачен') тогда выводим ОК иначе " не ОК" , например case или decode.

щас код некогда писать, на работе завал ...
Alexsey
Эксперт


Вступление в Клуб: 06.09.2007
СообщениеСр Июл 31, 2013 15:02    Ответить с цитатой
Полезность: Нет оценки
nata пишет:
Нам нужно контролировать состояние документов в продукте.
А так финасовое распоряжение исполнено когда документ проведен. А если документ внешний, то тогда возникает статус в РЦ, а здесь уже задержки в обработке. Документов в РЦ много и пока обработается нужный для бизнеса тоже много времени уходит. поэтому стоит задача: Чтобы пользователь , обработавший сделку, уже видел что он необходимые для него телодвижения сделал. И не просматривал финансовые распоряжения.

Насколько я знаю, задержки в обработке документов в статусе РЦ, при включенной автообработке, возникают, когда документ требует либо дополнительного утверждения, либо в документе возникла какая-либо ошибка.
Опять же хочу отметить что есть множество промежуточных состояний документа, например: "Проконтролировать", "На подтверждение", которые настраиваются в справочниках или продукте "Обслуживание счетов банка".
Как писал уважаемый Vtar проще сделать флаг "ОК" и "не Ок", только как это поможет от промежуточных состояний?
В общем тут надо сначала продумать как следует доработку, учесть все подводные камни и только потом реализовывать.
_________________
всегда есть как минимум 2 выхода
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеСр Июл 31, 2013 15:15    Ответить с цитатой
Полезность: Нет оценки
Как вариант - выводите максимальный статус из папки документов по данному фин.распоряжению.
Тогда пользователь будет видеть прошел он или висит в статусе "в РЦ".
И дальше пусть действует как у вас принято или забивает (т.к. от него более не требуется) или подталкивает сотрудников РЦ
nata
Участник


Вступление в Клуб: 07.09.2009
СообщениеСр Июл 31, 2013 15:22    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Как вариант - выводите максимальный статус из папки документов по данному фин.распоряжению.
Тогда пользователь будет видеть прошел он или висит в статусе "в РЦ".
И дальше пусть действует как у вас принято или забивает (т.к. от него более не требуется) или подталкивает сотрудников РЦ


А как вывести максимальный статус из папки документо по финансовому распоряжению?
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеСр Июл 31, 2013 15:48    Ответить с цитатой
Полезность: Нет оценки
Используя case или decode для присвоения рейтинга вашим состояниям (например 0 самый низкий (статус не обработано), 10 самый высокий (статус проведён)).
Какие переходы у вас настроены, знаете только вы. Но, в принципе, они все описаны в доке, например для кредитов Глава 6-08 (Работа с финансовыми распоряжениями и платежными документами).pdf
Random
Эксперт


Вступление в Клуб: 27.06.2011
СообщениеЧт Авг 01, 2013 07:12    Ответить с цитатой
Полезность: Нет оценки
nata пишет:
yaffil пишет:
Как вариант - выводите максимальный статус из папки документов по данному фин.распоряжению.
Тогда пользователь будет видеть прошел он или висит в статусе "в РЦ".
И дальше пусть действует как у вас принято или забивает (т.к. от него более не требуется) или подталкивает сотрудников РЦ


А как вывести максимальный статус из папки документо по финансовому распоряжению?


Можно не максимальный, а все (ну или по набору состояний)
Код:
select id, wm_concat(text)
from (
   select i1.id, j1.state_id||':'||count(1) text
   from Z#MAIN_DOCUM j1, Z#DOC_IN_FOLD i2, Z#FOLDER_PAY i1
   where   i1.C_DOCS_IN_FOLD=i2.collection_id
      and i2.C_DOCUMENT = j1.ID
   group by i1.id, j1.state_id
   order by i1.id, j1.state_id
)
group by id
devor
Профи


Вступление в Клуб: 13.02.2012
СообщениеЧт Авг 01, 2013 11:02    Ответить с цитатой
Полезность: 1
Random пишет:


Можно не максимальный, а все (ну или по набору состояний)
Код:
select id, wm_concat(text)
from (
   select i1.id, j1.state_id||':'||count(1) text
   from Z#MAIN_DOCUM j1, Z#DOC_IN_FOLD i2, Z#FOLDER_PAY i1
   where   i1.C_DOCS_IN_FOLD=i2.collection_id
      and i2.C_DOCUMENT = j1.ID
   group by i1.id, j1.state_id
   order by i1.id, j1.state_id
)
group by id


wm_concat - очень плохо, недокументированная функция..
В Oracle 11 есть халяльно-кошерно-православный LISTAGG


Код:

select id, LISTAGG(text, ';')
WITHIN GROUP (order by id)
from (
   select i1.id, j1.state_id||':'||count(1) text
   from Z#MAIN_DOCUM j1, Z#DOC_IN_FOLD i2, Z#FOLDER_PAY i1
   where   i1.C_DOCS_IN_FOLD=i2.collection_id
      and i2.C_DOCUMENT = j1.ID
   group by i1.id, j1.state_id
   order by i1.id, j1.state_id
)
group by id
nata
Участник


Вступление в Клуб: 07.09.2009
СообщениеЧт Авг 01, 2013 16:56    Ответить с цитатой
Полезность: Нет оценки
Не получается вывести в продукте статус документа финансового распоряжения.
Т.е. статус платежного документа мы хотели вывести в продукте.
Финансовое распоряжение выбираем с определенной бизнес операцией, другие не интересуют.
По данной бизнес операции формируется один документ.
Вот статус обратки данного документа необходимо вывести.
Совсем запуталась....
Ghost
Профи


Вступление в Клуб: 24.11.2007
СообщениеЧт Авг 01, 2013 17:39    Ответить с цитатой
Полезность: Нет оценки
Наташа, привет! А что за продукт? Может есть проще вариант чем вычислять статус документа.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
На страницу 1, 2  След.
Страница 1 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru