Показать сообщение отдельно
Старый 06.07.2005, 15:01   #8  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
2 db
2 mazzy: Запускали на живой. Пользователи живы
чтоб запускать пересчет на живой писали жоп а-ля:
PHP код:
static void InventSumRecalc(Args _args)
{
    
InventTable                 inventTable;
    
InventSumReCalcItem         inventSumReCalcItem;
    
SysOperationProgress        progress = new SysOperationProgress();
    
ALK_InventSumRecalcLogTbl   logTable;
    
int                         i;
    ;

//    select count(recId) from inventTable;
//
//    info(strfmt("Начало %1", time2str(timeNow(), 0, 0)));
//
//    progress.setTotal(inventTable.RecId);
//
//    try
//    {
//        while select ItemId from inventTable
//            order by ItemId
//        notexists join logTable
//            where logTable.Itemid == inventTable.ItemId
//        {
//            /*
//            if (i == 500)
//            {
//                i = 0;
//                info(strfmt("Завершение %1", time2str(timeNow(), 0, 0)));
//                pause;
//                info(strfmt("Начало %1", time2str(timeNow(), 0, 0)));
//            }*/
            
ttsbegin;
            
inventSumReCalcItem = new InventSumReCalcItem("SPH118448"falseCheckFix::Fix);
            
inventSumReCalcItem.updateNow();
            
ttscommit;

//            logTable.Itemid = inventTable.ItemId;
//            logTable.insert();
//
//            i++;
//            progress.incCount();
//        }
//    }
//    catch(Exception::Deadlock)
//    {
//        retry;
    
}
//} 
ЗЫ: скрипты смайлы вместо дедлоков вставить норовят Внизу конечно написано ексептион- дедлок
За это сообщение автора поблагодарили: Roman777 (2), Sergey Petrov (1), Shmel_83 (1), Deepoint (1).