Упражнение 3.6: Получение набора данных без фильтров
Задание 3 – Получения набора данных без фильтров
Теперь в процедуру access_dsPO_procs.p добавим код для вызова внутренний процедуры get_dsPO без фильтров. Эта процедура должна вернуть все данные из таблиц PurchaseOrder и POLine из базы данных Sports2000. Извлечённые данные запишем в файл.
| Шаг | Действие |
| 1 | Перед секцией отключения от сервера и очистки добавьте оператор вызова процедуры get_dsPO с пустыми строками в качестве входящих параметров и возвратом набора данных dsPO в качестве возвращаемого параметра.
RUN get_dsPO IN hProc ("","",OUTPUT DATASET dsPO).
|
| 2 | Добавьте оператор вывода в файл.
OUTPUT TO "C:\OpenEdge\WRK\ProDataSets\log\dsPO_noFilters.txt". |
| 3 | Добавьте вложенные блоки FOR EACH для чтения каждой записи из PurchaseOrder и POLine с записью данных в файл. Обратите внимание, что вы можете использовать оператор DISPLAY для записи в файл.
FOR EACH 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.
|
| 4 | Закройте вывод в файл.
OUTPUT CLOSE. |

