WebAPI、JSONを返してあげる
よろしけば教えてください。
WebAPIのサーバーとしてMagic xpa 4Plus Enterprise Serverを稼働させようと思っています。
JSONファイルを作るバッチ処理でM=マージ、フォーム出力=ファイル の場合は、File2Req関数を使いますか?
M=マージ、フォーム出力=リクエスタ の場合は、File2Req関数は不要でしょうか?
アクション 式=RqHTTPHeader('Content-type: application/json') を発行するとすれば発行タイミングはいつ行いますか?
そのJSONをMagic xpaが受け取る場合は、
項目更新 Blob変数 式=HTTPCALL(’GET'でしょうか?
どうぞよろしくお願いいたします。
-
xpa4以降であれば、DataViewToJSONをつかってblob化してやればいいと思います。
あまり環境のイメージがつかないので、細かいことはわかってませんが。
xpaからxpaenterpriseであれば、HTTPPostでGetでBlob変数おくってやるとできたと思います。
-
水野様 アドバイスありがとうございます。
DataViewToJSON関数も試した事がないので年末年始試してみたいと思います。 -
JSON書き出しがxpaで、その後別のxpaのEnterpriseに渡すのであれば
コールリモートでパラメータBlobいけますね。
細かいこと考えなくても勝手にMagicがやってくれます。
-
水野様 ありがとうございます。
DataViewToJSON関数を使った事がないので試してみました。
項目更新 V_BLOB 式=DataViewToJSON(0, '担当者コード,担当者名' , '担当者コード,担当者名' )
アクション 式=Blb2File(BLOB変数, 'C:¥WRK¥BLOBfile.txt') で
[
{
"担当者コード": 1,
"担当者名": "井上"
},
{
"担当者コード": 2,
"担当者名": "上田"
},
{
"担当者コード": 3,
"担当者名": "江藤"
}
]
といったテキストファイルを作る実験が出来ました。
マージ要らずでJSON出力が出来るという事は理解出来ました。
ありがとうございました。
まださっぱりわかりませんが当方販売管理システム側で
Magic xpa Enterprise Serverを起動させて
Magicをお使いではない他社様のシステムからWebAPIを受けるつもりです。
価格問合せにJSONで返したり
お客様からの注文を受け取ったりを考えています。 -
水野様、そして以前別スレッドで教えてくださった皆様 ありがとうございました。
やっと少し実験が進展しましたので報告致します。
忘れないようドキュメントにしました。

少し進んで良かったです。ゆくゆくは客先での稼働が目標です。 -
先程の投稿では記述がありませんがDataViewToJSON関数も試してみました。
API呼び出し実験のCurlも試せていないのでやってみたいです。
今までは全てMagicで弊社が開発、使うのはそのお客様の社員さんのみ
という提供ばかりでしたが、今後はお客様のお客様側のシステムから
商品○○の価格を教えて! とか、商品コード○×を10個、xxを20個見積もって!
というリクエストに応えていければいいなと思っています。
(ここにおいでの方々は十数年前から実現されておられると思いますけど。) -
ブラウザーで実験したら以下となりました。これで合っているのかわかりませんけど。

-
JSON受け取り変数をBLOB型にしていますが、誤りかもしれません。
サインインしてコメントを残してください。
コメント
8件のコメント