我运行以下声明。但是,结果不会显示在一行中。它会自动将结果放入多行。这太难读了。
如何将结果放在一行?将结果导出到.csv文件时,我遇到同样的问题。
FOR EACH r4_wms.wShipmentDet NO-LOCK,
FIRST r4_wms.wShipment OF r4_wms.wShipmentDet NO-LOCK where wShipment.shipmentNO>5000,
FIRST r4_wms.wOrder OF r4_wms.wShipmentDet NO-LOCK,
FIRST r4_wms.wOrderline OF r4_wms.wShipmentDet NO-LOCK
BY wShipment.ShipmentNo DESC:
Display
wOrder.OrderNo
wOrder.OrderDate
wShipment.ShippedDate
wOrder.CustID
wOrder.sourceDoc
wOrder.srcPO
wShipmentDet.ShipStatus
wShipment.appointmentdate
wShipment.Appointmentno
wOrder.shiptoName
wShipment.carrierID
wShipmentDet.ItemID
worderline.qtyorder
worderline.QtyShipped
wShipment.Volume
wShipment.Weight SKIP
wOrder.Remarks.
END.
答案 0 :(得分:3)
您真的想在一行中显示所有这些字段吗?这将是一个广泛的界限....
使用https://github.com/google/google-api-php-client
语句Progress将假设一个80字符宽的老式终端。您可以使用DISPLAY
或显示格式覆盖它。
例如:
FRAME
但也许最大宽度(320最大)不会帮助你。您可以尝试将其显示在一列中:
DISPLAY ... WITH FRAME frameName WIDTH 320.
等等......在这里阅读框架短语:https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/dvref%2Fframe-phrase.html%23wwID0E2USW
导出到文件时,根本不应使用DISPLAY ... WITH FRAME frameName 1 COLUMN.
。然后你应该使用DISPLAY
。这样你就不会得到文件中的显示格式而只得到数据:
EXPORT
如果您想使用自定义分隔符,您也可以这样做:
OUTPUT TO c:\temp\file.csv.
EXPORT tablename.
OUTPUT CLOSE.
您还可以导出特定字段:
EXPORT DELIMITER "|" tablename.
等