|
|
(не показана одна промежуточная версия этого же участника) |
Строка 1: |
Строка 1: |
| [[KLS_171208]] - это свод из справочника [[R238]] | | [[KLS_171208]] - это свод из справочника [[R238]] |
| Среднее количество продаж в рознице | | Среднее количество продаж в рознице |
− | = Условие =
| |
− | local sql, fld, _, i, _2, r20_kods
| |
− |
| |
− | r20_kods := CHOICEREFR( 'R20', "GRPRECORD( 'KOD' )", { 'KOD', 'PNAME' }, ;
| |
− | 'KODORG = ' + FACTORYkod, ~Title := 'Пожалуйста, выберите магазин ( один или несколько )' )
| |
− | if EMPTY( r20_kods )
| |
− | return
| |
− | endif
| |
− | if ValType( r20_kods ) = 'N'
| |
− | r20_kods := { r20_kods }
| |
− | endif
| |
− |
| |
− | fld := ' _1,N,5; _2,N,5; _3,C,4; _4,C,40; _5,N,14,4; _6,N,14,4; _7,N,14,4; _8,N,14,4; _9,N,5; _0,D,4; '
| |
− | _ := CreateTmpFile( fld, '_', ~IsFreeDel := true, ~Own := Self )
| |
− | _2 := CreateTmpFile( fld, '_2', ~IsFreeDel := true, ~Own := Self )
| |
− | local ip, my, end_data
| |
− | 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
| |
− | i := 0
| |
− | while my <> end_data
| |
− | i := i + 1
| |
− | sql := [ Select DATDOC, KANAL1, KANAL2, KREFL2, SUM( AMNT ), SUM( "SUM" ) From DOCP] + RET_F_EXT( my ) + [ ;
| |
− | Where KINDDOC = 'FRO' and LVLNUM = '2' and DATDOC = '] + SQLDATE( my ) + [' and KREFL1 = 'R20 ' and KANAL2 > 0 and ;
| |
− | KANAL1 in ( ] + ARRASSTRING( r20_kods ) + [ ) ;
| |
− | Group by DATDOC, KANAL1, KANAL2, KREFL2 ]
| |
− | SimpleSql( [ Insert into ] + TmpFilePath( _2 ) + [( _0, _1, _2, _3, _5, _6 ) ] + sql, OpdataPath )
| |
− | my := my + 1
| |
− | end
| |
− | sql := [ Update ] + TmpFilePath( _2 ) + [ Set _9 = 1 ]
| |
− | SIMPLESQL( sql, TempPath )
| |
− | sql := [ Update _2 Set _4 = LEFT( PNAME ,40 ) From ] + TmpFilePath( _2 ) + [ _2 left outer join R08 on _2 = KOD ;
| |
− | Where _3 = 'R08 ' ]
| |
− | SIMPLESQL( sql, ReflisPath )
| |
− | sql := [ Update _2 Set _4 = LEFT( PNAME ,40 ) From ] + TmpFilePath( _2 ) + [ _2 left outer join R11 on _2 = KOD ;
| |
− | Where _3 = 'R11 ' ]
| |
− | SIMPLESQL( sql, ReflisPath )
| |
− | ( _2 )->( DBGOTOP() )
| |
− | result := _2
| |
− | // _1 магазин, код
| |
− | // _2 товар, код
| |
− | // _3 товар, справочник
| |
− | // _4 товар, имя
| |
− | // _5 количество
| |
− | // _6 сумма
| |
− | // _7 среднее количество
| |
− | // _8 средняя сумма
| |
− | // _9 количество дней
| |
− | // _0 дата
| |
| = Смотрите также = | | = Смотрите также = |
| [[R238]] | | [[R238]] |