OPENCHILDDOC
Материал из Фабиус wiki
Функция открывает этаж документа
OpenChildDoc( 1.kinddoc, 2.lvlnum, 3.parent, 4.SaveStatus, 5.ParentForm, 6.mModFilter, 7.IsCondition, 8.Month, 9.Year, 10.Day, 11.TableToReplace, 12.DisFormEvent, 13.OpenPrevLvl, 14.IsNewForm, 15.OpPath, 16.RefPath, 17.closefrm, 18.CurLevel, 19.FormClass, 20.Access )
Примеры
// документ YTM, уровень 1 ytm1 := OpenChildDoc( 'YTM', '1', ~ParentForm := "", ~IsCondition := false, ~Month := Month( data ), ~Year := Year( data ) ) flt := [ KINDDOC = 'YTM' and LVLNUM = '1' ] ( ytm1 )->( SetFilter( flt ) ) ( ytm1 )->( Refresh() )
// открыть уровень PAZ2 ( работает, если курсор установлен на уровне PAZ1 ) paz2 := OpenChildDoc( 'PAZ', '2', RGNUM )
OpenChildDoc( 'U_N', '1', ~ParentForm := "", ~IsCondition := false, ~Month := Month( data ), ~Year := Year( data ) )
Ошибки
Если файл на диске был поврежден, то эта функция вам может вернуть ошибку
В этом случае смотрите статью Как восстановить разрушенные данные
Предположим, adtfix не нашел ошибок
Читаем лог
Advantage Table Repair Utility ver 1.6 Started on 25.12.2015 at 17:57:22
*** Begin ADT Check on: f:\FABIUS\Temp\1\DOCP1115.ADT *** Memo file check on: f:\FABIUS\Temp\1\DOCP1115.ADM
Memo blocks exist without a corresponding record. This is not corruption, i.e. not an error. You can use Advantage Data Architect or AdsPackTable to pack the table and release these blocks. These blocks account for 27.69% of the total file size.
DOCP1115.ADM passed ADM check. DOCP1115.ADT passed ADT check.