Продолжаю борьбу с EIP в АВС. Хочу сделать следующее: при активации EIP в
поле появляется кнопочка, вызывается Lookup, значение переносится в
EntryField и редактирование продолжается.
Пишу:
Код: Выделить всё
EIPManager.TakeAction:
LOC:EDITCONTROL=SELECTED()
CREATE( 2000,CREATE:Button)
2000{PROP:XPOS}=LOC:EDITCONTROL{PROP:XPOS}+LOC:EDITCONTROL{PROP:WIDTH}+6
2000{PROP:YPOS}=LOC:EDITCONTROL{PROP:YPOS}+?List{PROP:YPOS}+1
2000{PROP:WIDTH}=LOC:EDITCONTROL{PROP:HEIGHT}
2000{PROP:HEIGHT}=LOC:EDITCONTROL{PROP:HEIGHT}
2000{PROP:ICON}=?LIST{PROP:ICONLIST,1}
UNHIDE( 2000)
Код: Выделить всё
EIPManager.TakeEvent
IF ?List{PROP:Column}=2 THEN
?List{PROP:Column}=1
REQ#=SELF.Request
GlobalRequest = SelectRecord ! Set Action for Lookup
P_I_Select ! Call the Lookup Procedure
SELF.Request=REQ#
LOC:EDITCONTROL{PROP:USE}=ISP:FAM
LOC:EDITCONTROL{PROP:TEXT}=P_I:NAME
ISP:FAM=P_I:NAME
.
Код: Выделить всё
HIDE( 2000)
DESTROY( 2000)
попытке нажать Enter или Tab, т.е. закончить редактирование, получаю полный
GPF (Unable to create control. (System is modal)).
Что делаю не так и чем лечить?
Спасибо,
К.Р.
Написал: ClaList(2)