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, false, true, false); 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(); } }