Вызов окна при вставке строки в брауз
Добавлено: 09 сен 2010, 12:22
Как правильно вызвать окно при вставке строки в брауз?
Если делать так, то лочится вставка в брауз вызванного окна. Начинает работает вставка в браузе вызванного окна только, если закрыть и окрыть окно, и выбрав уже вставленную запись в браузе.
Код: Выделить всё
tableevent table pptitle
cmSetDefault: { //clearbuffer(#pptitle);
set pptitle.pdate:=Cur_Date();//StrToDate('25/05/95','DD/MM/YY');//
set pptitle.npp:='';
set pptitle.cppstatus:=281474976710657;
set pptitle.cpodr:=0;
SetModified(true);
UpdateTable();
RunWindowModal(PlanCorrect);
//rereadrecord(#pptitle);
//message('setdefault');
}
cmUpdateRecord :{ if grant_s=true
{
update current pptitle;
}
}
cmInsertRecord :{ insert current pptitle;
// clearbuffer(#ppspecif);
ppspecif.cpptitle:=pptitle.atl_nrec;
insert current ppspecif;
//updateTable();
// RunWindowModal(PlanCorrect);
}
cmDeleteRecord :
{
If Delete ppSpecif Where ((ppTitle.atl_nrec == ppSpecif.cPPTitle )) = tsOk
Delete Current ppTitle;
}
cmCheckRecord:
{
MakeValid(#pptitle);
if isvalid(#pptitle)
{
update current pptitle;
}
if isnew
{
Putcommand(cmInsertRecord);
//RunWindowModal(PlanCorrect);
}
}
cmCheckField:
{
if grant_s=true
{
updatetable;
SetModified(true);
case CurField of
#pptitle.pbdate:
{
update current pptitle;
RescanPanel(#pptitle);
RescanPanel(#ppspecif)
}
#pptitle.pedate:
{
update current pptitle;
RescanPanel(#pptitle);
RescanPanel(#ppspecif)
}
#pptitle.pdate:
{
update current pptitle;
RescanPanel(#pptitle);
RescanPanel(#ppspecif)
}
#pptitle.npp:
{
update current pptitle;
RescanPanel(#pptitle);
RescanPanel(#ppspecif)
}
end;
}
else
stop;
}
cmPositionChanged:
{
//message(sGetTune('user.descr'));
//message(sGetTune('USER.descr'));
if( iSecurity::fSecurityPolicy(sGetTune('USER.descr'),pptitle.atl_nrec,pptitle.cppstatus) = FALSE )
//bPPlan(,,Sci178EnEsc)
{
cfsSetProp('bPPlan','StatusCtx', Sci17EnEsc);//Sci17EnEsc//SciAQAEnEsc1
// cfsSetProp('bCorPPlan','StatusCtx',sciAQACancel1);
SetFormat(sCorPPlan_nogrant);
cfsSetProp('bCorPPlan','StatusCtx',sciAQACancel1);
cfsSetProp('sCorPPlan','StatusCtx',sciAQACancel1);
grant_s:=false;
// message('false');
}
else if( iSecurity::fSecurityPolicy(sGetTune('USER.descr'),pptitle.atl_nrec,pptitle.cppstatus) = true )
{
cfsSetProp('bPPlan','StatusCtx',Sci178EnEsc);
// cfsSetProp('bCorPPlan','StatusCtx',Sci13478Esc);
SetFormat(sCorPPlan);
cfsSetProp('bCorPPlan','StatusCtx',Sci13478Esc);
cfsSetProp('sCorPPlan','StatusCtx',SciAqaSwitchItemName);
grant_s:=true;
// message('true');
}
rescanpanel(#pptitle);
}
end;
Если делать так, то лочится вставка в брауз вызванного окна. Начинает работает вставка в браузе вызванного окна только, если закрыть и окрыть окно, и выбрав уже вставленную запись в браузе.