ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

SQLserverの定義取得で

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 | 投稿日時 2017-6-6 21:52
pu_mahalo  長老 居住地: 大阪  投稿数: 775
皆さんこんにちは

Microsoft Dynamic AXとの連携で
Dynamic AX側のSQLserverの定義をMagicに定義取得したのですが
Dynamic AX側の定義で Bigintや
Decimal(36.16)など 数値項の桁が大きい場合
取り込んだ後,F8チェックを掛けるとエラー(table)が出ます

Bigint等の項目定義されたTBLの定義取得など
皆さんどうされているのでしょうか

現在しょうがないので 埋め込みSQLで対応しております。
どなたか定義取得された経験ある方
情報お願いいたします。
投票数:0 平均点:0.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-6 22:17
Tanda  長老   投稿数: 2151
Magicの英語版フォーラムを検索してみましたら、MAGIC.INIに
次のように記述すればいけるようなことが書いてありましたよ。

[MAGIC_SPECIALS]
XXLNumericSize = Y

※ただし、38桁までの対応だそうです。あと、パフォーマンスが
かなり落ちるそうです。

投票数:1 平均点:10.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-6 23:20
Tanda  長老   投稿数: 2151
他アプリとの連携がなければ、定義取得のあと通常のIntに変換して
しまえばいいと思うのですが、連携があるとなるとそのまま使うしか
なさそうですね。

18桁でさえ99京まで数えられるのに、そんなに大きな桁数を扱う
アプリって、いったい何を処理するんでしょうね。

ところで大阪リージョンに関するビッグニュースがありますよ。

Puさんはたぶんあまり興味がないかと思いますが、Amazon AWSが
いよいよ大阪リージョンを開設するらしいです。

日本市場の急激な需要拡大で、東京リージョンだけでは賄いきれなく
なってきたみたいですね。

名古屋リージョンもはやく作ってもらいたいです。
投票数:0 平均点:0.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-6 22:56 | 最終変更
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
ヘルプにありました。
Magic xpaは、18桁までの数値をサポートします。しかし、MSSQLテーブルでbigint型のフィールドが含まれている場合、さらに長い桁数を持たせることができます。この場合、Magic xpaは数値型の代わりに文字型でマッピングされます。

対応

bigint型のデータを利用するには2つのオプションがあります:

文字列で動作させる …… この場合の問題は、計算処理です。これらの計算で18桁以上を必要としない場合は、文字型を数字型に返還したり、その逆の処理を行う必要があります。計算結果が18桁以上になる場合は、さらに問題が発生します。

Magic.iniファイルの[MAGIC_SPECIALS]セクションでXXLNumericSize=Yを定義する …… この特殊パラメータによって38桁までの数値が利用可能になります。この場合、Magic xpaのパフォーマンスが低下する可能性があります。しかし、計算処理の対応は簡単になります。

あとは定義(Decimal(36.16))はそのままにして書式のみ18桁ないに収まる書式(N10.8等)にしてコンバートはしないで使用している事がありました。

照会系でしたら問題ないかと・・(保証はできませんが・・)

投票数:0 平均点:0.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2017-6-7 9:11
pu_mahalo  長老 居住地: 大阪  投稿数: 775
丹田さん,ISHIJIMAさん

早々のご回答ありがとうございます。感謝します。
確かに、そんな大きな桁を使ってどうするねんって思ってましたが
一度XXLNumericSize=Yを試してみます。
その前にHELPもきちんと読まないとダメですね>反省

AWSも興味持ってテストしないといけませんね
azureは使用してみないとコスト計算が出来ないので
そこだけがネックです。
機能はGoodなんですが

でわ〜でわ〜
投票数:0 平均点:0.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-7 10:40
Tanda  長老   投稿数: 2151
事務所に来て日本語版のヘルプを開いてみましたら、たしかにそこ
にも書いてありますね。
投票数:0 平均点:0.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-7 13:51
Tanda  長老   投稿数: 2151
同じ市内にAWSのリージョンができるなんて、想像してみただけ
でもゾクッとします。近頃の高速インターネットのインフラを鑑み
れば、まるで隣りの部屋で超高速・お手軽サーバが動いてるような
ものですものね。

名古屋にもはやくリージョンを作ってもらいたいものです。

※各リージョンの具体的な所在地はマル秘になっていると思いま
すので、市内とは限りませんが。
投票数:0 平均点:0.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-12 12:24
pu_mahalo  長老 居住地: 大阪  投稿数: 775
こんにちは Puです

本日現地でiniを変更し定義取得しました
F8のエラーは出なくなりましたが
あるTABLEを APGで開こうとすると 以下のエラーで開く事ができませんでした。
「要求された変換はサポートされていません」
他の開く事が出来たTABLEと比較すると 
どうもBLOB形式の列が存在してました
blob項目を指定せず(それ以外の項目のみにし)
表形式で表示させればうまく表示されました。

ご教授下さいました皆さま ありがとうございました。
無事参照する事ができました。
でわ〜でわ〜
投票数:0 平均点:0.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-12 18:10
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
ヘルプを「MS-SQL Serverのデータタイプ」で検索していただければXPAで保存するタイプがあります。
その内容で設定すればできませんか?
投票数:0 平均点:0.00
depth:
3
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-13 19:28
pu_mahalo  長老 居住地: 大阪  投稿数: 775
ISHIJIMAさん アドバイスありがとうございます。

一度試してみます。
現状でBLOB項目を参照する必要がないので大丈夫なんですが
せっかくなんで、試してみます。

ありがとうございました。
でわ〜でわ〜
投票数:0 平均点:0.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-14 9:26
pu_mahalo  長老 居住地: 大阪  投稿数: 775
こんにちは Puです

ISHIJIMA様のアドバイスでBLOBをUnicodeに定義しなおすと
参照する事に成功しましたが
NUMERIC(32,16)は Floatに再定義してもダメでした。
以上ご報告と情報共有の為ご報告いたします。
でわ〜でわ〜
投票数:0 平均点:0.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-6-14 9:30
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
>NUMERIC(32,16)は Floatに再定義してもダメでした。

定義はそのままでxpaの書式を18桁以内に収まる形にします。
N10.8とか
投票数:0 平均点:0.00
depth:
3
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-6-14 12:14
pu_mahalo  長老 居住地: 大阪  投稿数: 775
こんにちは Puです

ISHIJIMA様のアドバイスありがとうございます。
NUMERIC(32,16)のまま MAGIC側の書式をN10.8に変えれば
表示できました。
今回は使用しなくて済みましたが、使用出来る事が確認出来た事は
大変有益な情報でした。
ありがとうございました。

でわ〜でわ〜
投票数:1 平均点:10.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約