zoaoo

博客园 首页 新随笔 联系 订阅 管理
static void KTL_DBSynchronize(Args _args) 
{ 
    Dictionary dict; 
    int idx, lastIdx, totalTables; 
    TableId tableId; 
    Application application; 
    SysOperationProgress progress; 
    StackBase errorStack; 
    ErrorTxt errorTxt; 
    ; 
    application new Application(); 
    dict new Dictionary(); 
    totalTables = dict.tableCnt(); 
    progress new SysOperationProgress(); 
    progress.setTotal(totalTables); 
    progress.setCaption("@SYS90206"); 
    errorStack new StackBase(Types::String); 
    lastIdx 0; 
    try 
    { 
        for (idx = lastIdx+1; idx <= totalTables; idx++) 
        { 
            tableId = dict.tableCnt2Id(idx); 
            progress.setText(dict.tableName(tableId)); 
            lastIdx = idx; 
            application.dbSynchronize(tableId, falsetruefalse); 
            progress.incCount(); 
        } 
    } 
    catch (Exception::Error) 
    { 
        errorTxt = strFmt("Error in table '%1' (%2)", tableId, dict.tableName(tableId)); 
        errorStack.push(errorTxt); 
        retry; 
    } 
    setPrefix("@SYS86407"); 
    errorTxt = errorStack.pop(); 
    while (errorTxt) 
    { 
        error(errorTxt); 
        errorTxt = errorStack.pop(); 
    } 
}

 

posted on 2017-04-25 14:13  zoaoo  阅读(166)  评论(0编辑  收藏  举报