28.07.2011, 11:50 | #1 |
Участник
|
Работа с транзакциями
Здраствуйте! Помогите разобраться в чем дело!
X++: real sumEur, sumUsd,Coef; date dt = systemdateget();// <-ïîëó÷àåì ñåãîäíÿøíóþ äàòó str Eur, Usd, stVal; while select cur // Âûáèðàåì âàëþòû êîò. ÿâë óñëîâíûìè åäèíèöàìè where cur.UE == NoYes::Yes { stVal = cur.CurrencyCode; // Çàïîìèíàåì íàèìåíîâàíèå âàëþòû Coef = cur.rate; // Çàïîìèíàåì êîýôôèöèåíò select excR where excR.CurrencyCode == cur.CurrencyCodeParent && excR.FromDate == dt; { if (excR.CurrencyCode == enum2str(CurrencyUECod::EURcod)) { sumEur = excR.ExchRate * Coef; ttsbegin; excR.FromDate = dt; excR.ExchRate = sumEur; excR.CurrencyCode = stVal; excR.insert(); ttscommit; } else if (excR.CurrencyCode == enum2str(CurrencyUECod::USDcod)) { sumUsd = excR.ExchRate * Coef; ttsbegin; excR.FromDate = dt; excR.ExchRate = sumUsd; excR.CurrencyCode = stVal; excR.insert(); ttscommit; } |
|