編集変換:数値の切り捨て、切り上げ

金額などの数値項目を四捨五入するときは、Excel表を生成」手順のひな形シートにROUND 関数(Excel の関数)を入れて計算する方法がよく使われます。同様に、切り捨ての場合は ROUNDDOWN 関数、切り上げの場合は ROUNDUP 関数が使えます。

もし業務要件として、入力大量データの数値項目に切り捨てや切り上げを行い、CSV形式で出力したいときなどは、「Excel表を生成」手順を使わなくても処理できるといいですね。

そのような場合は、「抽出データの編集」手順を使用します。以下の解説では、「変換(CSV→抽出データ)」、「Excel表から抽出」、「変換(DB→抽出データ)」などの手順で、事前にデータがxoBlos形式抽出データ(XML)になっている例としています。

「抽出データの編集」手順の設定画面

f:id:xoblos:20210801145945p:plain

[この手順の設定] の [処理の動作設定] バーの右端の [?] をクリックすると、オンラインヘルプの 「抽出データの編集」手順についてのトピックが表示されます。

「入力ファイル名」で指定したファイルの例

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Root>
  <ROWS>
    <数値A>123.456</数値A>
    <数値B>123.456</数値B>
  </ROWS>
  <ROWS>
    <数値A>123.432</数値A>
    <数値B>123.432</数値B>
  </ROWS>
</Root>

「変換設定ファイル名」で指定したファイルと、その変換結果例

変換設定ファイル(XML形式)のファイル名(パス名)を指定します。XMLファイルはメモ帳やテキストエディタで編集し、文字コードUTF-8で保存してください。

「編集_切り捨て・切り上げ.xml」の内容

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Root>
  <Convert>
    <Stages>
      <Stage>
        <NewTags>

          <NewTag>
            <TagName>数値A</TagName>
            <Operations>
              <切り捨て>0.001</切り捨て>
            </Operations>
          </NewTag>
          
          <NewTag>
            <TagName>数値B</TagName>
            <Operations>
              <切り上げ>0.01</切り上げ>
            </Operations>
          </NewTag>

        </NewTags>
      </Stage>
    </Stages>
  </Convert>
</Root>

変換結果(出力ファイル)の内容

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Root>
  <ROWS>
    <数値A>123.45</数値A>
    <数値B>123.5</数値B>
  </ROWS>
  <ROWS>
    <数値A>123.43</数値A>
    <数値B>123.5</数値B>
  </ROWS>
</Root>

XML形式で出力されていますので、後続手順(「変換(抽出データ→CSV)」手順)でCSV形式に変換します。