Упражнение 3.8: Добавление фильтров PurchaseOrder и POLine
Задание 5 – Добавления фильтров PurchaseOrder и POLine
| Шаг | Действие |
| 1 | Очистите набор данных выполнив метод EMPTY-DATASET(). Следующий оператор следует добавить сразу после оператора закрытия файла OUTPUT CLOSE из предыдущего примера.
DATASET dsPO:EMPTY-DATASET (). |
| 2 | Добавьте оператор вызова процедуры get_dsPO со строкой фильтра «PONum < 10000» в качестве первого входящего параметра и строкой «Price < 1000» в качестве второго входящего параметра.
RUN get_dsPO IN hProc ("PONum < 10000","Price < 1000",OUTPUT DATASET dsPO).
|
| 3 | Добавьте описание дополнительного буфера bPOLine для временной таблицы ttPOLine. Мы используем этот буфер для фильтрации записей в таблице ttPurchaseOrder.
DEFINE BUFFER bPOLine FOR ttPOLine. |
| 4 | Добавьте оператор вывода в файл.
OUTPUT TO "C:\OpenEdge\WRK\ProDataSets\log\dsPO_TwoFilters.txt". |
| 5 | Скопируйте и вставьте код с вложенными блоками FOR EACH из предыдущего задания:
FOR EACH ttPurchaseOrder, FIRST bPOLine OF ttPurchaseOrder:
DISPLAY
ttPurchaseOrder.PONum
ttPurchaseOrder.DateEntered
ttPurchaseOrder.SupplierIDNum
ttPurchaseOrder.ReceiveDate
WITH 1 COLUMN STREAM-IO.
FOR EACH ttPOLine OF ttPurchaseOrder:
DISPLAY
ttPOLine.PONum
ttPOLine.LineNum
ttPOLine.ItemNum
ttPOLine.Price
ttPOLine.Qty
ttPOLine.Discount
ttPOLine.ExtendedPrice WITH WIDTH 150 STREAM-IO.
END.
END.
|
| 6 | Закройте вывод в файл.
OUTPUT CLOSE. |

