4D-JUG
Would you like to react to this message? Create an account in a few clicks or log in to continue.

都道府県の並び替え

2 posters

Go down

都道府県の並び替え Empty 都道府県の並び替え

投稿 by mitsu 2022-09-28, 9:58 pm

都道府県のコレクションを北から南の順に並べ替えるのに良い方法はないでしょうか?

mitsu

投稿数 : 15
登録日 : 2021/07/21

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by miyako 2022-09-29, 8:51 am

コレクションの内容はどのようなものでしょうか。

* 47項目・重複なし
* 無数の項目・重複あり
*テキスト項目・値が都道府県
* オブジェクト項目・うちプロパティのひとつが都道府県

etc.

はじめから並んでいない理由があるのでしょうか

miyako

投稿数 : 487
登録日 : 2016/07/05

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by mitsu 2022-09-29, 9:37 am

お返事ありがとうございます。

データの内容は
国税庁の法人番号公表サイトのWeb-APIを利用して取得したデータをオブジェクト項目・うちプロパティのひとつが都道府県に入れたものになります。

コレクションの内容は
* 無数の項目・重複あり
* オブジェクト項目・うちプロパティのひとつが都道府県

絞り込み検索のポップアップメニュー用として
distinct()で索引化したものも並び替えたいので
* 無数の項目・重複ありからdistinct()で取り出した重複なし
(無数の項目・重複ありを並び替えしたものをdistinct()すれば並んでいるならこれは必要ないかもしれません。)

はじめから並んでいない理由は国税庁の法人番号公表サイトから得たデータが並んでいない為です。

よろしくお願いします。

mitsu

投稿数 : 15
登録日 : 2021/07/21

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by miyako 2022-09-29, 10:09 am

当該データにはaddressPrefectureCodeというプロパティがあるようですので

$asc:=$data.orderBy("addressPrefectureCode asc")

とするのはいかがでしょうか。

例題を作成しました

https://github.com/miyako/4d-tips-sort-collection/releases/tag/0.0.1

もしREST APIで取得した値はダウンロードしたJSONと形式が違うということであれば,

orderByMethod()

sort()

が使えるかもしれません。

たとえば,あらかじめ並び替えられた47都道府県名のコレクションとindexOf()で順位を判定することができます。

miyako

投稿数 : 487
登録日 : 2016/07/05

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by miyako 2022-09-29, 10:37 am

逆の発想で,あらかじめ全県の並んだコレクションを用意し,
対象データがない項目はcollection.filter()で除外する(コレクションを絞り込む)ことも考えられます。

miyako

投稿数 : 487
登録日 : 2016/07/05

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by mitsu 2022-09-29, 11:11 am

addressPrefectureCodeがあるのはインボイス制度適格請求書発行事業者公表サイトだと思われます
https://www.invoice-kohyo.nta.go.jp

法人番号公表サイトはこちらになりまして
https://www.houjin-bangou.nta.go.jp

こっちはjsonはないのでxmlで取得して4Dでコレクションに入れています。
https://www.houjin-bangou.nta.go.jp/documents/k-web-api-kinou-gaiyo.pdf
これの「法人名を指定して情報を取得する機能」を利用しています。
データを見たら
   <prefectureCode>27</prefectureCode>
ってのがありましたので、これで出来るかもしれません。

例題やcollection.filter()で除外、indexOf()など試行錯誤してみます。

ありがとうございました。

mitsu

投稿数 : 15
登録日 : 2021/07/21

トップに戻る Go down

都道府県の並び替え Empty Re: 都道府県の並び替え

投稿 by Sponsored content


Sponsored content


トップに戻る Go down

トップに戻る


 
Permissions in this forum:
返信投稿: 不可