私が持っているもの
2つのテーブルを持つsqliteデータベースがあります。1つ目は、typeID、typeName、description、maxPrice、groupIDなどのフィールドを持つ42のアイテムで、そのうち4つの異なるgroupIDがあります。次に、後で他の計算に必要であるが、ツリービューには必要のない6つほどのフィールドがあります。2つ目も同様の構造で、各アイテムにはtypeID、groupID、typeName、description、price、さらに8つの追加フィールドがあります。重要な点は、両方のテーブルにアイテムがグループにまとめられていることです。
私が欲しいもの
これらの各テーブルからkivyツリービューを作成したいと思います。groupIDフィールドは親として機能する必要があり、そのgroupIDを持つすべてのtypeIDは子である必要があります。これをハードコーディングすることもできますが、データが変更される可能性があるため(すべて入力するのは面倒です)、テーブルが更新された場合に自動的に再作成できるように、これを動的に維持したいと思います。ツリービュー。
大局
私の目標は、ユーザーが最初のテーブルから作成されたツリービューから1つのアイテムを選択し、次に2番目のテーブルから作成されたツリービューから多くのアイテム(特定のアイテムの複製を含む)を選択できるようにすることです。私が現在これを行うことを考えている方法は、ユーザーが最初のツリービューからアイテムを選択すると、他のウィジェットの上部に表示され、ユーザーが2番目のツリービューからアイテムを選択すると、下に表示されるというものです。ユーザーが変更できる数量カウンターとともに、最初からそのアイテム。ツリービュー2のすべてのアイテムの合計価格は、ツリービュー1から選択したアイテムのmaxPriceを超えてはならないという制限があります。
大まかな例は次のようになります。
Item 3 from Tree View 1 maxPrice 10000
Item 1 from Tree View 2 price 1000 Qty 2
Item 3 from Tree View 2 price 3000 Qty 1
Item 4 from Tree View 2 price 500 Qty 4
Item 9 from Tree View 2 price 1000 Qty 2
price remaining 1000
この例では、価格は(2 * 1000)+(1 * 3000)+(4 * 500)+(2 * 1000)= 9000であり、ツリービュー1のアイテム3のmaxPriceである10000を下回っているため、これで問題ありません。 。たとえば、ユーザーがアイテム3の数量をツリービュー2から2に変更しようとした場合、残りの価格は-2000と表示されます(おそらく、これを赤などに変更して目立つようにします)。
2つのツリービューを起動して実行すると、残りを機能させる方法を理解できると思います(または別の質問を投稿します!)この「全体像」を最終目標に向けて提供したかっただけです私の質問の背景を説明するのに役立ちます。