Старые приемы

Была проведена серьезная реорганизация базы данных,
менялись размерности полей и прочее.
Пришлось влезать в чужие проекты , написанные ушедшими коллегами
с использованием copy to, total, relation
Текстов немеряно, меню самописное, документации ноль.
Постоянные установки set step on , необходимость
проверять, что лежит в открываемых грязных таблицах после
этих самых copy to, total. Всех тах мест десятки , если не сотни.
Форм море ( и модальных), хотя они отличаются мизером,
те никакого ООП, зато полно параметризации за счет &
Замучился отлаживаться и править, и вспомнил то, чему учился на заре работы с фоксом
А именно, возможности делать brow на открытые алиасы. При работе модальной формы особо
в командное окно не пойдешь, да и алиасов открытых несколько, нужно выбрать нужный, посмотреть и вернуться назад.
Узнать имя файла формы на экране, поставить где попало set step on на лету,
меню то задачи, а не фоксовое, узнать источник алиаса итд
Тривильщина, но в описываемом случае весьма полезная, когда толком не знаешь,
что ищешь в чужой программе.
В головной программе написал.
Разборка авгиевых конюшен ускорилась в разы.
ON KEY LABEL ALT+F12 do showformname
ON KEY LABEL ALT+F11 do makebrow
ON KEY LABEL ALT+F10 do showdbf
ON KEY LABEL ALT+F9 DEBUG
_____________________
function makebrow
lcoldalias = Alias()
jklj = Aused(_www)
_capt = ''
For jjjj = 1 To jklj
_capt = _capt + _www[jjjj,1] + ' '
Endfor
_capt = Alltrim(_capt)
lctabl = Inputbox('Выбери алиас',_capt, IIF(not EMPTY(lcoldalias),lcoldalias,''))
If Not Empty(lctabl) And Used(lctabl)
Else
lctabl = Alias()
Endif
If Not Empty(lctabl)
Select (lctabl)
Browse
Endif
If Not Empty(lcoldalias)
Select (lcoldalias)
Endif
************************************
function showdbf
IF NOT EMPTY(ALIAS())
MESSAGEBOX(ALIAS()+'-'+dbf(alias()),'')
endif
*********************************************************
function showformname
IF TYPE('_screen.activeform') = 'O'
= MESSAGEBOX('Ôîðìà '+SYS(1271, _screen.activeform))
endif

0

Автор публикации

Пользователи не найдены
Оставить комментарий
Авторизация
*
*
Генерация пароля