diff --git a/Elwig/Helpers/AppDbUpdater.cs b/Elwig/Helpers/AppDbUpdater.cs
index ca5179d..8ffc35f 100644
--- a/Elwig/Helpers/AppDbUpdater.cs
+++ b/Elwig/Helpers/AppDbUpdater.cs
@@ -154,6 +154,8 @@ namespace Elwig.Helpers {
             ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_8_name");
             ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_9_name");
 
+            ExecuteNonQuery(cnx, "ALTER TABLE delivery_part ADD COLUMN gebunden INTEGER CHECK (gebunden IN (TRUE, FALSE)) DEFAULT NULL");
+
             ExecuteNonQuery(cnx, "DROP VIEW v_delivery");
             ExecuteNonQuery(cnx, """
                 CREATE VIEW v_delivery AS
@@ -162,6 +164,7 @@ namespace Elwig.Helpers {
                              d.date, d.time, d.zwstid, d.lnr, d.lsnr,
                              m.mgnr, m.family_name, m.given_name,
                              p.sortid, p.weight, p.kmw, ROUND(p.kmw * (4.54 + 0.022 * p.kmw), 0) AS oe, p.qualid, p.hkid, p.kgnr, p.rdnr,
+                             p.gerebelt, p.gebunden,
                              p.qualid IN (SELECT l.qualid FROM wine_quality_level l WHERE NOT l.predicate AND (p.kmw >= l.min_kmw OR l.min_kmw IS NULL) ORDER BY l.min_kmw DESC LIMIT 1,100) AS abgewertet,
                              p.qualid NOT IN ('WEI', 'RSW', 'LDW') AS min_quw,
                              GROUP_CONCAT(a.attrid) AS attributes,
@@ -174,8 +177,8 @@ namespace Elwig.Helpers {
                         LEFT JOIN wine_attribute a ON a.attrid = pa.attrid
                     GROUP BY p.year, p.did, p.dpnr) s
                 LEFT JOIN delivery_part_modifier o ON (o.year, o.did, o.dpnr) = (s.year, s.did, s.dpnr)
-                GROUP BY s.year, s.did, s.dpnr
-                ORDER BY s.year, s.did, s.dpnr;
+                GROUP BY s.year, s.lsnr, s.dpnr
+                ORDER BY s.year, s.lsnr, s.dpnr;
                 """);
 
             ExecuteNonQuery(cnx, "DROP VIEW v_bucket");
diff --git a/Elwig/Models/DeliveryPart.cs b/Elwig/Models/DeliveryPart.cs
index eb4d112..f285429 100644
--- a/Elwig/Models/DeliveryPart.cs
+++ b/Elwig/Models/DeliveryPart.cs
@@ -75,6 +75,9 @@ namespace Elwig.Models {
         [Column("lesewagen")]
         public bool? IsLesewagen { get; set; }
 
+        [Column("gebunden")]
+        public bool? IsGebunden { get; set; }
+
         [Column("temperature")]
         public double? Temperature { get; set; }
 
diff --git a/Elwig/Windows/DeliveryAdminWindow.xaml b/Elwig/Windows/DeliveryAdminWindow.xaml
index 98ef229..d10bc79 100644
--- a/Elwig/Windows/DeliveryAdminWindow.xaml
+++ b/Elwig/Windows/DeliveryAdminWindow.xaml
@@ -438,6 +438,10 @@
                     <Label Content="Ried:" Margin="10,70,0,10" Grid.Column="0"/>
                     <ComboBox x:Name="WineRdInput" Margin="0,70,10,10" Grid.Column="1"
                               DisplayMemberPath="Name"/>
+
+                    <CheckBox x:Name="GebundenInput" Content="Gebunden" Margin="10,105,0,0" Grid.Column="0" Grid.ColumnSpan="2" IsThreeState="True"
+                              VerticalAlignment="Top" HorizontalAlignment="Left"
+                              Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
                 </Grid>
             </GroupBox>
         </Grid>
diff --git a/Elwig/Windows/DeliveryAdminWindow.xaml.cs b/Elwig/Windows/DeliveryAdminWindow.xaml.cs
index 49f925c..cb1031b 100644
--- a/Elwig/Windows/DeliveryAdminWindow.xaml.cs
+++ b/Elwig/Windows/DeliveryAdminWindow.xaml.cs
@@ -227,6 +227,15 @@ namespace Elwig.Windows {
                 GerebeltGewogenInput.IsEnabled = true;
                 UnsetDefaultValue(GerebeltGewogenInput);
             }
+            if (App.Client.IsMatzen || App.Client.IsWinzerkeller) {
+                GebundenInput.IsChecked = null;
+                GebundenInput.IsEnabled = false;
+                SetDefaultValue(GebundenInput);
+            } else {
+                GebundenInput.IsChecked = null;
+                GebundenInput.IsEnabled = true;
+                UnsetDefaultValue(GebundenInput);
+            }
 
             WineQualityLevelInput.IsEnabled = false;
 
@@ -702,6 +711,7 @@ namespace Elwig.Windows {
             AcidInput.Text = (p != null && p.Acid != null) ? $"{p.Acid:N1}" : "";
             LesewagenInput.IsChecked = p?.IsLesewagen ?? false;
             HandPickedInput.IsChecked = p?.IsHandPicked;
+            GebundenInput.IsChecked = p?.IsGebunden;
 
             ScaleId = p?.ScaleId;
             WeighingId = p?.WeighingId;
@@ -759,6 +769,7 @@ namespace Elwig.Windows {
             p.IsGerebelt = GerebeltGewogenInput.IsChecked ?? false;
             p.IsHandPicked = HandPickedInput.IsChecked;
             p.IsLesewagen = LesewagenInput.IsChecked;
+            p.IsGebunden = GebundenInput.IsChecked;
             p.Temperature = (TemperatureInput.Text == "") ? null : double.Parse(TemperatureInput.Text);
             p.Acid = (AcidInput.Text == "") ? null : double.Parse(AcidInput.Text);
             p.Comment = (PartCommentInput.Text == "") ? null : PartCommentInput.Text;