【ニフクラ】mobile backendから出力したCSVファイルのフィールド順について

nifcloud

はじめに

今回は「ニフクラmobile backend」(以下ニフクラ)に関する雑記です。

データ転送システムの謎使用で手間がかかるのを何とかできないかと、解決策を調べていたのですが行き詰まってしまいました。
とりあえず今の時点で分かっていることをまとめておこうと思います。

ニフクラmobile backendとは

国内最大級のmBaaS(mobile backend as a Service)です。
mBaaSとはサーバーの開発、管理をクラウド上で行えるサービスです。
本来であればアプリ開発をするにあたって、サーバーの設計、開発、運用を自前で行うのですが、それにはコストも知識も必要になってきます。
mBaaSを利用することによってサーバー関連の開発が必要なくなるためその分コストを抑えられるようになります。

事象

ニフクラから出力したCSVファイルのフィールド順が何らかの影響により変更されてしまう。

ニフクラからデータを取得し、データ転送サービスを使ってデータの転送作業を自動化しているのですが、データ型の不一致でエラーが出ることがあります。
これは、ニフクラから出力したCSVファイルのフィールド順がデータ転送サービスに記録しているデータ型と一致しないために起こっています。
エラーを解消するにはデータ転送サービスの設定を修正する必要があります。

フィールド順の変更は頻繁に起こるものではないため、ニフクラ側で何らかの作業を行ったなど、何かしらの原因があるのではないかと考えています。
ですが何がトリガーとなってフィールド順が変わっているのか予測は出来ても特定ができていません。

エラーを出さないためにはフィールド順が変更されないようにすればよいのですが、ニフクラのAPIはオブジェクトで返しているだけのようなので、どの並び順で出力されるか決まっていないようなのです。
解決策としてはCSVファイルとして出力する際にフィールドの並び順を指定するのが現実的ではありそう。

しかしながら、CSVファイルを出力しているプログラムの改修が難しく、現状では発生次第転送サービスの修正対応を行うことになっています。
ずっと対応し続けることも難しいため、プログラムの改修以外でフィールド順が固定できればいいのですが、今のところ対応策は見つかっていません。

致命的な問題ではないのですが、不便さは感じてしまうんですよね・・・

さいごに

自分の知識量では対応できないことも多々あり、なかなか難しいところです。
日々勉強していくしかないですね。
いい対応方法が見つかったら、また記事にしたいと思います。

タイトルとURLをコピーしました