При запуске интерфейса в таблицу в памяти складываю остатки по разрезам.
Задумывалось, что пользователь будет вводить количество в последнюю колонку.
Но при переходе на другую строку значение не сохраняется.
Подскажите пожалуйста, что не так делаю
Код интерфейса следующий:
Код: Выделить всё
Interface i041Konvertor_Int1 'Выбор из партий заданной МЦ';
Show at(10,10,80,26);
Var
cur_mc
,cur_mc_bk
: String;
mc_nrec : comp;
InterfaceVersion // версия интрефейса
: String[3];
CREATE VIEW AS
SELECT * FROM
TEKMC, party041
where ((mc_nrec == katmc.nrec and
katmc.nrec == party041.ckatmc))
;
Parameters mc_nrec;
Procedure FillTable(nr_mc:comp);
{
delete all tmpsaldo1;
var podr_ost, mol_ost, nrecmc, nrecGr:comp;
var nameMC, grMCKod, kod_podr, edIzm1, barkodmc1, sch:string;
var kol1, sum1, ves1 :double;
Store_Init;
Store_ReInit;
Store_TypeOstatki(false); // Исходящие остатки
Store_DiagnosticOff;
Store_Run(
cur_date
, nr_mc // nrec матценность
, 0 // nrec katpodr подразделения
, 0 // nrec ??< мол
, 0 // nrec Ї авЁЁ партия
, true
, true
, true
);
Store_done;
_loop tmpsaldo1 where ((tmpsaldo1.cparty==katparty.nrec and katparty.corgpar==katorg.nrec)) {
insert Party041 set
cKatmc := nr_mc,
party := katparty.name,
dParty := tmpsaldo1.DATEPARTY,
Kontr := katorg.name,
Ost := tmpsaldo1.kol,
OstKub := tmpsaldo1.kol;
}
}
//--------------------------------------------------------------------------------------------------------
Screen S1 ('', , sci178Esc)
Show at (,,,5);
fields
katmc.barkod:protect;
katmc.name: PROTECT;
Buttons
cmCancel;
<<
Баркод .@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Матценность .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
<. Отмена .>
>>
End;
Panel Part
table party041;
Browse Partys
show at (,6,,)
fields
party041.party 'Партия':[10];
party041.dparty 'Дата партии':[10];
party041.Kontr 'Контрагент':[20];
party041.ost 'Ост.':[10] ;
party041.ostKub 'Ост.куб/м':[10.3];
party041.kol 'Распр. кол-во':[10.3], NoProtect,{ font = {
bold = (party041.kol > 0);
backcolor = 17;
}
}
;
end;
handleevent
cmUpdateRecord:{
message('1');
update current party041;
}
end;
end;
HandleEvent
cmInit:{
var V1, V2, V3, V4 : WORD;
VersionGet(false, 'i041Konvertor_Int1', V1, V2, V3, V4);
InterfaceVersion := V1+'.'+V2;
SetTitle('Выбор из партий заданной МЦ '+InterfaceVersion);
FillTable(mc_nrec);
};// cmInit
cmPick:{
case CurField of
end;
ReReadRecord;
};// cmPick
cmCheckField:{
case CurField of
end;
ReReadRecord;
}
cmOK:{
};//cmOK
cmCancel:{
CloseInterface(cmCancel);
}//cmCancel
End; //HandleEvent
End.// iKonvertor