Задача 102.102357

Задача :102.102357

Краткое описание :
Убрать ограничение на длину сегмента NoDoc в индексах FpOborot
Описание :
Книга финансовых операций в целом
Что измененно :
Убрать ограничение на длину сегмента NoDoc в индексах FpOborot:
, fpOborot11 = cPlansSch + DatOb + NoDoc(Length=10)
, fpOborot12 = cPlansSch + cHozOper + DatOb + NoDoc(Length=10)
, fpOborot13 = cPlansSch + cStBud + DatOb + NoDoc(Length=10)
, fpOborot14 = cPlansSch + cCO + DatOb + NoDoc(Length=10)
, fpOborot15 = cPlansSch + cPeriod + DatOb + NoDoc(Length=10)
, fpOborot16 = cPlansSch + cCOKor + DatOb + NoDoc(Length=10)
, fpOborot17 = cPlansSch + Descr + DatOb + NoDoc(Length=10)
, fpOborot18 = cPlansSch + DesGr + DatOb + NoDoc(Length=10)
, fpOborot19 = cPlansSch + cStBud + Summa + DatOb + NoDoc(Length=10)
Из-за такого ограничения, возникает проблема:
1. делаем запрос на VIP-е
select
fpOborot.NoDoc
, fpOborot.Summa
From fpOborot
where ((
comp(14) == fpOborot.cPlansSch
and '123456789012345' == fpOborot.NoDoc (NoIndex)
));
2. В Oracle он транслируется в:
SELECT /*+ ALL_ROWS INDEX_ASC (t0 fpoborot3) */ t0.ROWID, t0.sys#ul, t0.fnodoc,
t0.fsumma, t0.fcplanssch, t0.fdatob
FROM gal_2.fpoborot t0
WHERE t0.fcplanssch = :p1
AND t0.fnodoc$1$10$up = upper(:p2)
ORDER BY t0.fcplanssch, t0.fdatob, t0.fnodoc$1$10$up

Из-за этого нельзя полноценно использовать фильтрацию по полю NoDoc длиной > 10.
Как измененно :
В словаре "Галактики 91", убрано ограничение на длину
сегмента NoDoc в индексах таблицы FpOborot.

Название продукта Название компонента Тип Последняя версия Дата выхода
F_FPOBOROTF_FPOBOROTRES9.1.4.0