diff --git a/core/core-frontend/src/custom-component/v-query/QueryCascade.vue b/core/core-frontend/src/custom-component/v-query/QueryCascade.vue
index f0e9ec50f5..9ac5b8d3a7 100644
--- a/core/core-frontend/src/custom-component/v-query/QueryCascade.vue
+++ b/core/core-frontend/src/custom-component/v-query/QueryCascade.vue
@@ -209,7 +209,7 @@ defineExpose({
- 基于当前查询组件的查询条件,如果需要进行级联联配置,需要满足以下条件:
+ 基于当前查询组件的查询条件,如果需要进行级联配置,需要满足以下条件:
1. 展示类型:文本下拉组件和数字下拉组件;2. 选项值来源:选择数据集
diff --git a/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue b/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
index 72948e8c92..d7c4865081 100644
--- a/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
+++ b/core/core-frontend/src/custom-component/v-query/QueryConditionConfiguration.vue
@@ -540,14 +540,20 @@ const CascadeDialog = defineAsyncComponent(() => import('./QueryCascade.vue'))
const cascadeDialog = ref()
const openCascadeDialog = () => {
const cascadeMap = conditions.value
- .filter(ele => [0, 2, 5].includes(+ele.displayType) && ele.optionValueSource === 1)
+ .filter(
+ ele =>
+ [0, 2, 5].includes(+ele.displayType) &&
+ ele.optionValueSource === 1 &&
+ !!ele.checkedFields?.length &&
+ !!Object.values(ele.checkedFieldsMap).filter(item => !!item).length
+ )
.reduce((pre, next) => {
pre[next.id] = {
datasetId: next.dataset.id,
name: next.name,
queryId: next.id,
fieldId: next.field.id,
- deType: datasetMap[next.dataset.id].fields?.dimensionList.find(
+ deType: (datasetMap[next.dataset.id]?.fields?.dimensionList || next.dataset.fields).find(
ele => ele.id === next.field.id
)?.deType
}
@@ -1417,6 +1423,7 @@ defineExpose({
+