[OSGeoJapan-discuss] QGISのテーブル間リレーションシップで、親レコードへの参照が勝手に書き換えられるバグ

林博文 hayashi @ apptec.co.jp
2020年 6月 16日 (火) 00:36:29 PDT


大塚さん
喜多さん

喜多さんの補足です。

fileをcsvで作成し、fileの属性をfid,poiid,name の3つ作成して、大塚さんのとおりにリレーション参照をセットしました。
fileの属性フォームのウィジットタイプがリレーション参照のとき、Display Expressionがnameにセットされました。
Display Expression
をfidに変更し、ウィジットタイプを「コンボボックスの代わりに読み取り専用ラインエディットを使用する」にするとよいです。

なお、コンボボックスの場合ですが、コンボボックスのメンバーに代入されるのが初期100要素までになっているようです。
当然初期リストに「191」がないので、リストの要素1番目が代入されるというクラスの動作になっているのでしょう。
191にリレーション参照になっているfilesの1を選択して、1に変わったあと、191を手動でタイプすると、リストのメンバーに191が入るので、
次にfilesの2,3,4を選択した時には、191は1には変わりませんでした。
バグというよりそういう仕様・・・・?かな




-- 
--------------------------------------------------
OSGeo.JP
 http://www.osgeo.jp
--------------------------------------------------
APPLIED TECHNOLOGY CO.,LTD.

MANAGER
Engineering headquarters
Geospatial Information Section
GIS Expert

HIROFUMI HAYASHI
hayashi at apptec.co.jp

Umeda Center Bldg. 2-4-12 Nakazakinishi
Kitaku, Osaka 530-0015 JAPAN

  Tel: 06-6373-6121
  Fax: 06-6373-6126
--------------------------------------------------


2020年6月16日(火) 12:03 喜多耕一 <kou35tochas at gmail.com>:

> 大塚さま
> みなさま
>
> 北海道の喜多です。
> 私もリレーションはよく使うので、テストデータを作って3.10で試してみました。
> 確かにリレーションを設定してあると、3桁の数字が勝手に編集され、1に置き換わってしまいました。
> バグだと思います。
>
>
> 回避方法としては、子レイヤのレイヤプロパティ→属性フォームで、リレーションしている属性のウィジェットタイプを「テキスト編集」に戻すことで、勝手に編集されるのは回避できるようです。
>
> あとは、編集されないように非表示にするかですね。
>
> どなたか、バグ報告していただければ嬉しいです。
>
> 北海道 喜多
>
> 2020年6月16日(火) 5:47 Kohei Otsuka <kochizufan at gmail.com>:
>
>> 大塚です。
>> お世話になっております。
>>
>> QGISのテーブル間リレーションシップで、親レコードへの参照が勝手に
>> 書き換えられるバグが発生して困っております。
>> 何か対処法、ワークアラウンドなどないでしょうか。
>>
>> 現象としては以下のような感じです。
>> https://t.tilemap.jp/maplat/ol6bug/qgis_bug.mov
>>
>> poisというポイントテーブルのfidとfilesという位置情報なしテーブルのpoiidが
>> リレーションシップが張られており、当初poisのfid191番「いくつかの尊像」が
>> filesの1,2,3,4番、poisのfid90番「まんなおし地蔵」がfilesの246,247,248番と
>> リレーションシップが張られています。
>> ところが、編集モードでfilesの1,2,3,4を開いただけで、勝手にリレーション
>> シップがpoisのfid90番に書き換えられてしまい、poisのfid90番がfilesの1,2,3,4,
>> 246,247,248番とリレーションのある状態になってしまいます。
>> どうも、編集UI上でリレーション先の選択肢として取れる値がfid90で頭打ちに
>> なっているような感じです。
>>
>> 回避策などご存知の方おられましたら、教えていただければ幸いです。
>> よろしくお願いいたします。
>>
>> _______________________________________________
>> OSGeoJapan-discuss mailing list
>> OSGeoJapan-discuss at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>
> _______________________________________________
> OSGeoJapan-discuss mailing list
> OSGeoJapan-discuss at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss

-- 
【秘密保持のお願い】このメールには機密情報や個人情報が含まれている可能性がございます。誤ってこのメールを受信された場合は、お手数ですがシステム上から削除いただき、送信者または管理者(privacy at apptec.co.jp 
<mailto:privacy at apptec.co.jp>)に御連絡頂ますようお願い申し上げます。
Confidentiality Note: 
This email may contain confidential and/or private information. If you 
received this email in error please  delete and notify to sender or 
adminstrator(privacy at apptec.co.jp <mailto:privacy at apptec.co.jp>).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/osgeojapan-discuss/attachments/20200616/73a84627/attachment-0001.html>


OSGeoJapan-discuss メーリングリストの案内