メインコンテンツへスキップ

actian Zenの日付型と時刻型の表示

コメント

8件のコメント

  • vg

    DDLメーカーはそこまで高機能ではないので変更は難しいのではないでしょうか。。

    おかしくなるというのがどんな風かにもよりますが
    試してみたところDDLメーカーでできたCreateTableのSQLは
    Magic Dateならbinary、StringDateだとCHAR(8)、IntgerDateだとintegerになっていて
    IntgerDateの中身は基準日からの日数なので、
    CONVERT('0001-01-01',SQL_DATE )+ 日付項目 -1 とかにした
    ビューを作ってしまえば見る分には使えるのではないでしょうか。
    編集もするとなると正直Magic経由の方が楽だと思います

    DDFbuilderでテーブル定義の編集はできたりプレビューできたりするので
    見ながら試されるのがよいかと

  • AIS川島

    AIS@川島です。

     ご連絡ありがとうございます。

     例えば

     XPAからだと「2006/06/30」 ⇒ZEN「731153」となります。

    やはり元の物理ファイルを変更しないようにするにはDDFBuilder等で行う必要がありそうですね。

     先方がSQLの扱いが慣れていますのでこちらのSQLがつかえないかなとの質問を受けましたので連絡させていただきました。

     上記SQLの件は試してみます。

     

     

     

  • tanda

    AIS川島さん、

    > XPAからだと「2006/06/30」 ⇒ZEN「731153」となります。

    「731153」でしたらデータの値としては正しいと思いますので、画面表示だけの問題のようですね。

  • AIS川島

    AIS@川島です。

    ご連絡ありがとうございます。

    CONVERT('0001-01-01',SQL_DATE )+ 日付項目 -1 

    やってみました。上手く表示されました。ありがとうございます。

    ちまみに時刻の場合は

    CONVERT('0:0:0',SQL_TIME )+ 時刻項目 -1

    で良いのでしょうか? ご教授お願い致します。

     

  • vg

    試していませんが、0時0分0秒からの秒数なので、-1要らないのと
    CONVERT関数だとDatatime型なのでちょっとめんどくさいと思うので、
    時間項目/3600が時 あまりの/60が分のあまりが秒とかにした方がわかりやすいかと
     
    Pervasive PSQL スカラー関数のリファレンス とかで検索すると
    エージーテックのHPがでてくるのでそちらの方が詳しく書いてあります

  • tanda

    AIS川島さん、

    データの値が正しいのであれば、あえて関数を使って変換する必要はないと思いますよ。

    テーブルの型や書式、およびフォームの書式等が「日付型」で「YYYY/MM/DD」の書式で統一されていれば、それだけで正常に表示されるはずですよ。

  • AIS川島

    AIS@川島です。

    ご連絡遅れてすみません。

    おっしゃる通りXPA側は「日付型」で「YYYY/MM/DD」で定義されており問題なく

    表示されております。この場合DDL出力を行ったActianZen上のSQLでテーブルを表示したときに発生します。

    やり方に問題があるのでしょうか?

    XPA上からDDLメーカーで定義を出力してActianZENで出力されたSQLをCreateを行っております。

    因みにZctian13 を使用しております。 問題箇所が存在ある場合はご指摘お願いいたします。

     

     

  • tanda


    AIS川島さん、

    Magicでは日付型データを内部的には数値型で保持していますので、それをそのまま外部ツール等で表示したりすると、そのままの値で表示されるでしょうね。

    外部ツールでも日付の形式で表示させたいとなると、その都度、データの変換が必要になるでしょうね。

サインインしてコメントを残してください。