>({
);
}
+ const columnFilterValues = getUniqueValuesForColumn(column.key);
+ const hasEmptyOption = columnFilterValues.some(v => v === null);
+
return (
<>
>({
>
({t('Alle')})
- handleFilter(column.key, _EMPTY_FILTER_SENTINEL)}
- >
- ({t('Leer')})
-
+ {hasEmptyOption && (
+ handleFilter(column.key, _EMPTY_FILTER_SENTINEL)}
+ >
+ ({t('Leer')})
+
+ )}
{filterValuesLoading[column.key] ? (
{t('Lade Filterwerte...')}
@@ -2159,7 +2164,7 @@ export function FormGeneratorTable>({
) : (
handleFilter(column.key, value)}
resolveLabel={column.filterLabelResolver}
diff --git a/src/pages/views/realestate/RealEstateParcelsView.tsx b/src/pages/views/realestate/RealEstateParcelsView.tsx
index 174c50e..80fc0dd 100644
--- a/src/pages/views/realestate/RealEstateParcelsView.tsx
+++ b/src/pages/views/realestate/RealEstateParcelsView.tsx
@@ -64,6 +64,7 @@ export const RealEstateParcelsView: React.FC = () => {
width: attr.width || 150,
minWidth: attr.minWidth || 100,
maxWidth: attr.maxWidth || 400,
+ displayField: (attr as any).displayField,
}));
}, [attributes]);
diff --git a/src/pages/views/realestate/RealEstateProjectsView.tsx b/src/pages/views/realestate/RealEstateProjectsView.tsx
index 07f425f..4d25a4b 100644
--- a/src/pages/views/realestate/RealEstateProjectsView.tsx
+++ b/src/pages/views/realestate/RealEstateProjectsView.tsx
@@ -62,6 +62,7 @@ export const RealEstateProjectsView: React.FC = () => {
width: attr.width || 150,
minWidth: attr.minWidth || 100,
maxWidth: attr.maxWidth || 400,
+ displayField: (attr as any).displayField,
}));
}, [attributes]);
diff --git a/src/pages/views/trustee/TrusteeDocumentsView.tsx b/src/pages/views/trustee/TrusteeDocumentsView.tsx
index 90ca654..4bbdd3b 100644
--- a/src/pages/views/trustee/TrusteeDocumentsView.tsx
+++ b/src/pages/views/trustee/TrusteeDocumentsView.tsx
@@ -77,6 +77,7 @@ export const TrusteeDocumentsView: React.FC = () => {
width: attr.width || 150,
minWidth: attr.minWidth || 100,
maxWidth: attr.maxWidth || 400,
+ displayField: attr.displayField,
}));
const byKey = new Map(allCols.map(c => [c.key, c]));
const ordered: typeof allCols = [];
diff --git a/src/pages/views/trustee/TrusteePositionsView.tsx b/src/pages/views/trustee/TrusteePositionsView.tsx
index 3fedbf7..66122c2 100644
--- a/src/pages/views/trustee/TrusteePositionsView.tsx
+++ b/src/pages/views/trustee/TrusteePositionsView.tsx
@@ -292,6 +292,7 @@ export const TrusteePositionsView: React.FC = () => {
width: attr.width || 150,
minWidth: attr.minWidth || 100,
maxWidth: attr.maxWidth || 400,
+ displayField: attr.displayField,
};
if (amountFields.has(attr.name)) {
col.formatter = (v: unknown) => formatAmount(v);