RECALC PRVS — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) (Новая страница: «RECALC_PRVS - это программа из справочника R266 Переформировать все проводки за выбранный…») |
Hisava (обсуждение | вклад) м |
||
Строка 8: | Строка 8: | ||
filter - дополнительный фильтр | filter - дополнительный фильтр | ||
+ | = Текст = | ||
+ | parameters my, kinddoc, filter | ||
+ | |||
+ | local doc, filt | ||
+ | |||
+ | if Empty( filter ) | ||
+ | filt := [ KINDDOC = '] + kinddoc + [' and LVLNUM = '1' ] | ||
+ | else | ||
+ | filt := [ KINDDOC = '] + kinddoc + [' and LVLNUM = '1' and ( ] + filter + [ )] | ||
+ | endif | ||
+ | |||
+ | if Empty( my ) or Empty( kinddoc ) | ||
+ | return | ||
+ | endif | ||
+ | |||
+ | if !IsLockDb( 'PRVS' + Ret_f_ext( my ) ) and !IsLockDb( 'DOCP' + Ret_f_ext( my ) ) | ||
+ | try | ||
+ | doc := OpenChildDoc( kinddoc, '1', ~ParentForm := "", ; | ||
+ | ~Month := Month( my ), ~Year := Year( my ) ) | ||
+ | ( doc )-> ( SetFilter( filt ) ) | ||
+ | MakePrvs( ( doc )->( GetArea() ),, 2 ) | ||
+ | finally | ||
+ | CloseTable( doc ) | ||
+ | end | ||
+ | endif | ||
= Смотрите также = | = Смотрите также = | ||
[[Полезные функции]] | [[Полезные функции]] | ||
[[Функции Delphi]] | [[Функции Delphi]] |
Версия 14:49, 31 августа 2017
RECALC_PRVS - это программа из справочника R266
Переформировать все проводки за выбранный месяц по указанному документу
RECALC_PRVS( my, kinddoc [, filter ] )
my - дата, например, DATE()
kinddoc - тип документа
filter - дополнительный фильтр
Текст
parameters my, kinddoc, filter local doc, filt if Empty( filter ) filt := [ KINDDOC = '] + kinddoc + [' and LVLNUM = '1' ] else filt := [ KINDDOC = '] + kinddoc + [' and LVLNUM = '1' and ( ] + filter + [ )] endif if Empty( my ) or Empty( kinddoc ) return endif if !IsLockDb( 'PRVS' + Ret_f_ext( my ) ) and !IsLockDb( 'DOCP' + Ret_f_ext( my ) ) try doc := OpenChildDoc( kinddoc, '1', ~ParentForm := "", ; ~Month := Month( my ), ~Year := Year( my ) ) ( doc )-> ( SetFilter( filt ) ) MakePrvs( ( doc )->( GetArea() ),, 2 ) finally CloseTable( doc ) end endif