Показать сообщение отдельно
Старый 31.07.2008, 10:16   #7  
RedFox is offline
RedFox
Участник
 
1,441 / 10 (0) +
Регистрация: 28.12.2004
Адрес: Киев
Цитата:
Сообщение от nikolay100x Посмотреть сообщение
Ув. господа, я в своей первой теме описывал проблему с Validate, после того как я сделал нужные мне изменения и народ начал работать, то вылезла еще одна проблема. Когда выполняется код
Код:
lrSalesShipmentLine.SETCURRENTKEY("Item Shpt. Entry No.");
lrSalesShipmentLine.SETRANGE("Item Shpt. Entry No.","Appl.-from Item Entry");
IF lrSalesShipmentLine.FIND('-') THEN BEGIN
  VALIDATE("Unit Price",lrSalesShipmentLine."Unit Price");
  VALIDATE("Line Discount %",lrSalesShipmentLine."Line Discount %");
END;
то цена берется из того документа какой мы выбрали,
В коде вообще обрабатывается только 1 строка. Не хотите так, на всякий случай REPEAT..UNTIL поставить?
Цитата:
но нужно что бы еще и выполнялась проверка валют и подхватывался бы курс валют который указан в исходном документе из которого мы делаем возврат.
Смотрите, для перевода сумм есть специальные процедуры в таблице 330, например:
- ExchangeRate(Date : Date;CurrencyCode : Code[10]) : Decimal
- ExchangeAmtLCYToFCY(Date : Date;CurrencyCode : Code[10];Amount : Decimal;Factor : Decimal) : Decimal
- ExchangeAmtFCYToLCY(Date : Date;CurrencyCode : Code[10];Amount : Decimal;Factor : Decimal) : Decimal
- ExchangeAmtFCYToFCY(Date : Date;FromCurrencyCode : Code[10];ToCurrencyCode : Code[10];Amount : Decimal) : Decimal

Используя их Вам не надо будет ничего докручивать и мудрить с курсами и округлением.