PHC 170602 — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м |
Hisava (обсуждение | вклад) м |
||
Строка 2: | Строка 2: | ||
[[Розничная торговля]] - Сведения - П Р О Д А Ж И | [[Розничная торговля]] - Сведения - П Р О Д А Ж И | ||
+ | = Условие отбора = | ||
+ | local ip, my, end_data, fld, _, sql, _2 | ||
+ | fld := ' _1,N,5; _2,C,60; _3,N,14,4; _4,N,14,4; _0,C,4; _5,N,5; _6,C,9; ' | ||
+ | _ := CreateTmpFile( fld, '_', ~IsFreeDel := true, ~Own := Self ) | ||
+ | _2 := CreateTmpFile( fld, '_2', ~IsFreeDel := true, ~Own := Self ) | ||
+ | ip := InputPeriod( true ) | ||
+ | if Empty( ip ) | ||
+ | return | ||
+ | endif | ||
+ | M->QwrTitle := ' ( ' + StoD( ip[1] ) + ' - ' + StoD( ip[2] ) + ' )' | ||
+ | my := StoD( ip[1] ) | ||
+ | end_data := StoD( ip[2] ) + 1 | ||
+ | while my <> end_data | ||
+ | sql := [ Select KSHIFT, KANAL1, KREFL2, KANAL2, AMNT, "SUM" From DOCP] + Ret_f_ext( my ) + [ Where KINDDOC = 'FRO' and LVLNUM = '2' and DATDOC = '] + SqlDate( my ) + [' ] | ||
+ | SimpleSql( [ Insert into ] + TmpFilePath( _2 ) + [( _6, _5, _0, _1, _3, _4 ) ] + sql, OpdataPath ) | ||
+ | my := my + 1 | ||
+ | end | ||
+ | // _2 -> _ | ||
+ | sql := [ Select _6, _5, _0, _1, Sum( _3 ), Sum( _4 ) From ] + TmpFilePath( _2 ) + [ Group by _6, _5, _0, _1 ] | ||
+ | SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _6, _5, _0, _1, _3, _4 ) ] + sql, OpdataPath ) | ||
+ | ( _ )->( DbGoTop() ) | ||
+ | while !( _ )->( eof() ) | ||
+ | ( _ )->_2 := Left( RealName( ( _ )->_0, ( _ )->_1 ), 60 ) | ||
+ | ( _ )->( DbSkip() ) | ||
+ | end | ||
+ | ( _ )->( DbGoTop() ) | ||
+ | result := _ | ||
+ | // _1 код | ||
+ | // _2 имя | ||
+ | // _3 количество | ||
+ | // _4 сумма | ||
+ | // _5 магазин | ||
+ | // _6 KSHIFT | ||
+ | // _7 | ||
+ | // _8 | ||
+ | // _9 | ||
+ | // _0 справочник | ||
= Смотрите также = | = Смотрите также = | ||
[[Справочник сводов]] | [[Справочник сводов]] |
Текущая версия на 15:06, 16 ноября 2017
PHC_170602 - это свод из справочника R238
Розничная торговля - Сведения - П Р О Д А Ж И
Условие отбора
local ip, my, end_data, fld, _, sql, _2 fld := ' _1,N,5; _2,C,60; _3,N,14,4; _4,N,14,4; _0,C,4; _5,N,5; _6,C,9; ' _ := CreateTmpFile( fld, '_', ~IsFreeDel := true, ~Own := Self ) _2 := CreateTmpFile( fld, '_2', ~IsFreeDel := true, ~Own := Self ) ip := InputPeriod( true ) if Empty( ip ) return endif M->QwrTitle := ' ( ' + StoD( ip[1] ) + ' - ' + StoD( ip[2] ) + ' )' my := StoD( ip[1] ) end_data := StoD( ip[2] ) + 1 while my <> end_data sql := [ Select KSHIFT, KANAL1, KREFL2, KANAL2, AMNT, "SUM" From DOCP] + Ret_f_ext( my ) + [ Where KINDDOC = 'FRO' and LVLNUM = '2' and DATDOC = '] + SqlDate( my ) + [' ] SimpleSql( [ Insert into ] + TmpFilePath( _2 ) + [( _6, _5, _0, _1, _3, _4 ) ] + sql, OpdataPath ) my := my + 1 end // _2 -> _ sql := [ Select _6, _5, _0, _1, Sum( _3 ), Sum( _4 ) From ] + TmpFilePath( _2 ) + [ Group by _6, _5, _0, _1 ] SimpleSql( [ Insert into ] + TmpFilePath( _ ) + [( _6, _5, _0, _1, _3, _4 ) ] + sql, OpdataPath ) ( _ )->( DbGoTop() ) while !( _ )->( eof() ) ( _ )->_2 := Left( RealName( ( _ )->_0, ( _ )->_1 ), 60 ) ( _ )->( DbSkip() ) end ( _ )->( DbGoTop() ) result := _ // _1 код // _2 имя // _3 количество // _4 сумма // _5 магазин // _6 KSHIFT // _7 // _8 // _9 // _0 справочник