-
-
Notifications
You must be signed in to change notification settings - Fork 258
Open
Description
Firebird 3.0.13 released.
RPT_TMP_100002161_20250.GL_HASZNMOD__KOD is a VARCHAR(2)
FAFAJ.HMKOD -> GL_HASZNMOD.KOD is VARCHAR(4)
INSERT-SELECT want insert 3 length into RPT_TMP_100002161_20250.GL_HASZNMOD__KOD.
The error message is wrong, it should be "string right truncation; expected length 2, actual 3"
The database is 15.4G. I'll send it if you need it.
INSERT INTO RPT_TMP_100002161_20250 (
KTRK_T__KOD,KTRK_T__NEV,GL_HASZNMOD__KOD,GL_HASZNMOD__NEV,KTFJ_FAFAJ__KOD,KTFJ_FAFAJ__NEV,KTFJ__KOD,
KTFJ__NEV,KTBT__ID,KTBT__DB,KTBT___DB_SZAZALEK)
SELECT x.*
FROM (
with LISTA
as (select FAFAJ.RKKOD,
FAFAJ.RKNEV,
FAFAJ.HMKOD,
FAFAJ.HMNEV,
FAFAJ.FFKOD,
FAFAJ.FFNEV,
FAFAJ.FJKOD,
FAFAJ.FJNEV,
FAFAJ.KT_DB,
FAFAJ.BTID,
sum(FAFAJ.KT_DB) KT_DB_SUMM
from (select RK.KOD RKKOD,
RK.NEV RKNEV,
HM.KOD HMKOD,
HM.NEV HMNEV,
FF.KOD FFKOD,
FF.NEV FFNEV,
FJ.KOD FJKOD,
FJ.NEV FJNEV,
BT.ID BTID,
round(KT.DB, 3) - coalesce((select sum(round(BT_VISSZARU.DB, 3))
from KTBT BT_VISSZARU
join KTBF BF_VISSZARU on BF_VISSZARU.ID =
BT_VISSZARU.KTBF_ID
where BF_VISSZARU.ST_ID is null and
BF_VISSZARU.ERV = 'I' and
BT_VISSZARU.BEV_KTKT_ID = KT.ID), 0)
KT_DB
from KTBF BF
join KTMN MN on MN.MTIP = BF.MTIP and MN.KOD = BF.KTMN_KOD
join KTRK RK on RK.KOD = BF.KTRK_KOD
join KTBT BT on BF.ID = BT.KTBF_ID
join GL_HASZNMOD HM on HM.ID = BT.GL_HASZNMOD_ID
join KTFJ_FAFAJ FF on FF.ID = BT.KTFJ_FAFAJ_ID
join KTFJ FJ on FJ.ID = BT.KTFJ_ID
join KTKT KT on KT.KTBT_ID = BT.ID
where BF.MTIP = '1' and
MN.SAJAT_TERMELES = 'I' and
BF.ERV = 'I' and
BF.ST_ID is null ) FAFAJ
where round(FAFAJ.KT_DB, 3) > 0
group by FAFAJ.RKKOD, FAFAJ.RKNEV, FAFAJ.HMKOD, FAFAJ.HMNEV,
FAFAJ.FFKOD, FAFAJ.FFNEV, FAFAJ.FJKOD, FAFAJ.FJNEV, FAFAJ.BTID, FAFAJ.KT_DB),
SUMMA
as (select FAFAJ.RKKOD,
FAFAJ.HMKOD,
FAFAJ.FFKOD,
FAFAJ.FJKOD,
FAFAJ.KT_DB KT_DB_SUMM
from (select RK.KOD RKKOD,
HM.KOD HMKOD,
FF.KOD FFKOD,
FJ.KOD FJKOD,
round(sum(KT.DB - coalesce((select sum(round(BT_VISSZARU.DB, 3))
from KTBT BT_VISSZARU
join KTBF BF_VISSZARU on BF_VISSZARU.ID =
BT_VISSZARU.KTBF_ID
where BF_VISSZARU.ST_ID is null and
BF_VISSZARU.ERV = 'I' and
BT_VISSZARU.BEV_KTKT_ID = KT.ID), 0)),
3) KT_DB
from KTBF BF
join KTMN MN on MN.MTIP = BF.MTIP and MN.KOD = BF.KTMN_KOD
join KTRK RK on RK.KOD = BF.KTRK_KOD
join KTBT BT on BF.ID = BT.KTBF_ID
join GL_HASZNMOD HM on HM.ID = BT.GL_HASZNMOD_ID
join KTFJ_FAFAJ FF on FF.ID = BT.KTFJ_FAFAJ_ID
join KTFJ FJ on FJ.ID = BT.KTFJ_ID
join KTKT KT on KT.KTBT_ID = BT.ID
where BF.MTIP = '1' and
MN.SAJAT_TERMELES = 'I' and
BF.ERV = 'I' and
BF.ST_ID is null
group by RK.KOD, HM.KOD, FF.KOD, FJ.KOD) FAFAJ
where FAFAJ.KT_DB > 0
)
select LISTA.RKKOD KTRK_T__KOD,
LISTA.RKNEV KTRK_T__NEV,
LISTA.HMKOD GL_HASZNMOD__KOD,
LISTA.HMNEV GL_HASZNMOD__NEV,
LISTA.FFKOD KTFJ_FAFAJ__KOD,
LISTA.FFNEV KTFJ_FAFAJ__NEV,
LISTA.FJKOD KTFJ__KOD,
LISTA.FJNEV KTFJ__NEV,
LISTA.BTID KTBT__ID,
LISTA.KT_DB KTBT__DB,
round(LISTA.KT_DB * 100 * cast(1 / cast(SUMMA.KT_DB_SUMM as
double precision) as double precision), 0) KTBT___DB_SZAZALEK
from LISTA
left outer join SUMMA on SUMMA.RKKOD = LISTA.RKKOD and SUMMA.HMKOD =
LISTA.HMKOD and SUMMA.FFKOD = LISTA.FFKOD and SUMMA.FJKOD = LISTA.FJKOD
/*ORDER BY*/)x
Thank You!
Metadata
Metadata
Assignees
Labels
No labels