进度数据库4GL-计算导出文件的数学计算



下面的语句将执行。但是,我想要Wshipment.volume除以1728,并导致该结果。

例如,如果wshipment.volume为3456,则应将结果2导出到报告中。

OUTPUT TO \tsclientUAll_Orders_item.csv.
FOR EACH r4_wms.wShipmentDet NO-LOCK,
FIRST r4_wms.wShipment OF r4_wms.wShipmentDet NO-LOCK where wShipment.shipmentNO>6500 and wShipmentDet.Owner="MIDEAUS",
FIRST r4_wms.wOrder OF r4_wms.wShipmentDet NO-LOCK,
FIRST r4_wms.wOrderline OF r4_wms.wShipmentDet NO-LOCK
 BY wShipment.ShipmentNo DESC:
EXPORT DELIMITER ","
           wOrder.OrderNo
           wShipment.Volume
           wShipment.Weight SKIP.   
 END.
 OUTPUT CLOSE. 

如果您只想除以1728,则可以在导出语句中做到这一点:

wShipment.Volume / 1728

但是" 1728"听起来好像您正在寻找立方英尺(12 x 12 x 12)。如果您需要最低数量的立方英尺,则可以计算出这样的计算:

DEFINE VARIABLE RoundedVol AS INTEGER NO-UNDO.
RoundedVol = TRUNCATE(wShipment.Volume / 1728, 0).
IF wShipment.Volume MOD 1728 > 0 THEN 
    RoundedVol = RoundedVol + 1.

然后将RoundedVol添加到EXPORT语句中。它将为您提供任何分数的立方英尺。因此,对于1729年的音量,您将获得2。

最新更新