LASTPRODSHIFT — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м (→Полный текст функции) |
Hisava (обсуждение | вклад) м (→Полный текст функции) |
||
| Строка 17: | Строка 17: | ||
local sql, aa | local sql, aa | ||
| − | result := | + | result := "" |
// --- ТЕКУЩИЙ МЕСЯЦ --- | // --- ТЕКУЩИЙ МЕСЯЦ --- | ||
Версия 12:02, 17 мая 2016
LastProdShift - это функция из справочника R266
LASTPRODSHIFT( prod, shift )
Поиск предыдущей смены производства
( возвращает дату предыдущей смены в виде ггггддммс )
prod - код аналитики производства
shift - текущая смена
Полный текст функции
Parameters prod, shift
local sql, aa
result := ""
// --- ТЕКУЩИЙ МЕСЯЦ ---
sql := [ Select MAX( DSHIFT ) last_shift ;
From ] + RetDbName( 'PAC', StoD( shift ) ) + Ret_f_ext( StoD( shift ) ) + [ ;
Where KINDDOC = 'PAC' and LVLNUM = '1' and DANAL1 = ] + prod + [ and ;
DSHIFT < '] + shift + [' ]
aa := SelectSqlToArr( sql, { 'last_shift' }, OpdataPath, false )
if !Empty( aa )
if !Empty( aa[1,1] )
result := aa[1,1]
return
endif
endif
// *** ТЕКУЩИЙ МЕСЯЦ ***
// --- ПРОШЛЫЙ МЕСЯЦ ---
if Empty( result )
sql := [ Select MAX( DSHIFT ) last_shift ;
From ] + RetDbName( 'PAC', TimeBack( StoD( shift ), -1 ) ) + ;
Ret_f_ext( TimeBack( StoD( shift ), -1 ) ) + [ ;
Where KINDDOC = 'PAC' and LVLNUM = '1' and DANAL1 = ] + prod
aa := SelectSqlToArr( sql, { 'last_shift' }, OpdataPath, false )
if !Empty( aa )
if !Empty( aa[1,1] )
result := aa[1,1]
return
endif
endif
endif
// *** ПРОШЛЫЙ МЕСЯЦ ***