Показать сообщение отдельно
Старый 30.03.2005, 20:23   #1  
Mihon is offline
Mihon
Участник
 
39 / 10 (1) +
Регистрация: 25.03.2005
Thumbs up
Итак, сперва прелюдия...
Есть датапорт, основной его элемент - Item. Чего хочется - чтобы в выгрузке были наличия по складам (поля Inventory,"Reserved Qty. on Inventory", "Qty. on Purch. Order" являются FlowFields). Читаю мануал... Говорят, используйте "CALCFIELDS". Радостно подсовываю эту функцию в OnBeforeExportRecord.... Тишина... Вернее нули. А в базе остатки ненулевые. Спрашиваю знакомых Навизаторов, те советуют завести переменную, взять в ней запись, равную текущей, и рассчитать там. Получаю такой код:
<div class='CALtop'>C/AL</div><div class='CAL'>rItem.COPYFILTERS(Item);
rItem.GET("No.");

rItem.CALCFIELDS(Inventory,"Reserved Qty. on Inventory", "Qty. on Purch. Order");
SkladFree  := rItem.Inventory - rItem."Reserved Qty. on Inventory";</div>
Ради проверки делаю
<div class='CALtop'>C/AL</div><div class='CAL'>IF rItem.Inventory <> 0 THEN
 MESSAGE('#1', rItem.Inventory);</div>
Нули... Пробовал распечатывать фильтры через MESSAGE, всё верно, так же как в форме 50006 "Sales Find Items", где всё прекрасно рассчитывается. Какие еще будут варианты?