Alter на интерфейс акта на пересортицу
Добавлено: 04 июн 2012, 14:35
После установки патчей при компиляции стал ругаться на события cmAlt5 и cmMAKEORDER ("Ошибка: Oops. Такой команды нет: MAKEORDER")... Может эти события переименовали???
Новая версия компонента L_SKLAD, на которой не компилится - 8.10.111.0. Старая версия L_SKLAD - 8.10.84.0
Новая версия компонента L_SKLAD, на которой не компилится - 8.10.111.0. Старая версия L_SKLAD - 8.10.84.0
Код: Выделить всё
#Component "L_SKLAD"
alter interface PERESORT;
create view;
Window EDITDOC;
HandleEvent
cmAlt5:
{
Message ('Выполняется обработчик');
var nrecPl,nrec_Doc : comp;
var NAZ, M_S, NOM_DD :string;
var koef, sum_katsopr : double;
nrec_Doc := katsopr.nrec;
koef := 0.51221876;
sum_katsopr := 0;
_loop PATDEFS where (KEY = '&Const_GP')
{
koef := Double(PATDEFS.FORMULA);
}
If KATSOPR.Vidsopr = Word(600) //#1
{
_loop SPSOPR where ((nrec_Doc == SPSOPR.CSOPR))
{
spsopr.rprice := Round(spsopr.rprice*koef,0);
spsopr.price := Round(spsopr.price*koef,0);
sum_katsopr := sum_katsopr + Round(spsopr.rprice*spsopr.kolfact);
Update current spsopr;
ReReadRecord (#spsopr);
}
katsopr.Summa := sum_katsopr;
Update current Katsopr;
ReReadRecord (#katsopr);
}
Message ('Цены пересчитаны с коэф. = ' + DoubleToStr(koef,'66.999999'));
}
cmMAKEORDER:
{
if katsopr.cpodrto<>katsopr.cpodrfrom
{
var stmt : LongInt;
var stmt_str : LongInt;
var messageErr : longint;
var nresult : word;
var nresult2 : word;
var nresult3 : word;
var KatsoprNrec : comp;
var tempRes : longint;
KatsoprNrec := comp(katsopr.nrec);
stmt := sqlAllocStmt;
sqlBindCol(stmt, 1, nresult);
sqlBindParam( stmt, 1, KatsoprNrec );
sqlPrepare(stmt, stmt_str);
sqlFreeStr(stmt_str);
messageErr := sqlExecute(stmt);
if(messageErr = 0)
{
tempRes := 0;
while( sqlFetch( stmt ) = tsOk )
do
{
if(nresult = 1)
{
message('Будет создана новая партия');
tempRes := 1;
}
else if nresult = 2
{
message('Присвоится существующая партия');
tempRes := 2;
}
else if nresult = 3
{
message('Партия уже выбрана');
tempRes := 3;
}
else if nresult = 4
{
message('МЦ не относится ни к одной из групп в таблице Nadolskiian.Group_mc');
tempRes := 4;
}
else if nresult = 5
{
message('Функция S$F_GET_PARTY_SECOND неправильно отработала');
tempRes := 5;
}
}
if(tempRes = 0) message('Оприходование отработало неверно. Звоните в техподдержку по телефону 91');
}
else message('Опять этот Еррор(');
ReReadRecord(#sporder);
ReReadRecord(#spsopr);
ReReadRecord(#katsopr);
}
inherited::handleEvent(cmMAKEORDER);
}
end;
end;
end.