diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.vue b/src/components/CMyPopupEdit/CMyPopupEdit.vue index c58c0899..1c04367b 100755 --- a/src/components/CMyPopupEdit/CMyPopupEdit.vue +++ b/src/components/CMyPopupEdit/CMyPopupEdit.vue @@ -91,6 +91,7 @@ optval="_id" optlab="label" :useinput="false" :col="col" + :row="row" :options="tools.SelectHours"> @@ -159,6 +160,7 @@
{ + return {} + }, + }, col: { type: Object as PropType, required: false, @@ -265,6 +272,28 @@ export default defineComponent({ } } + // Check if exist other array: + if (props.col) { + if (props.col.remote_table && props.col.remote_key && props.col.remote_field) { + + try { + const myarrremote = props.row[props.col.remote_table] + + for (const myrec of myarrremote) { + let myidkey = myrec[props.col.remote_key] + if (!arrtempOpt.value.includes(myidkey)){ + let myobj: any = {} + myobj[props.col.remote_key] = myidkey + myobj[props.col.remote_field] = myrec[props.col.remote_field] + arrtempOpt.value.push(myobj) + } + } + + }catch (e){} + + } + } + myarrvalue.value = [] for (const val of props.arrvalue) { rec = arrtempOpt.value.find((myrec: any) => val === (myrec[`${props.optval}`])) diff --git a/src/model/GlobalStore.ts b/src/model/GlobalStore.ts index 811670d6..188e2099 100755 --- a/src/model/GlobalStore.ts +++ b/src/model/GlobalStore.ts @@ -508,6 +508,9 @@ export interface IColGridTable { maxlength?: number filter_table?: string filter_field?: string + remote_table?: string + remote_key?: string + remote_field?: string field_extra1?: string subfield_extra1?: string allowNewValue?: boolean diff --git a/src/store/Modules/fieldsTable.ts b/src/store/Modules/fieldsTable.ts index 41831f2b..df5bd9e3 100755 --- a/src/store/Modules/fieldsTable.ts +++ b/src/store/Modules/fieldsTable.ts @@ -73,6 +73,9 @@ function AddCol(params: IColGridTable) { noshowlabel: (params.noshowlabel === undefined) ? false : params.noshowlabel, notsave: (params.notsave === undefined) ? false : params.notsave, filter_table: (params.filter_table === undefined) ? '' : params.filter_table, + remote_table: (params.remote_table === undefined) ? '' : params.remote_table, + remote_key: (params.remote_key === undefined) ? '' : params.remote_key, + remote_field: (params.remote_field === undefined) ? '' : params.remote_field, maxlength: (params.maxlength === undefined) ? 0 : params.maxlength, filter_field: (params.filter_field === undefined) ? '' : params.filter_field, } @@ -463,6 +466,9 @@ export const colmyUserGroup = [ noshowlabel: true, icon: 'fas fa-map-marker-alt', showWhen: costanti.showWhen.NewRec + costanti.showWhen.InPage + costanti.showWhen.InEdit + costanti.showWhen.InView, + remote_table: 'comune', + remote_key: '_id', + remote_field: 'comune', }), AddCol({ name: 'date_created', label_trans: 'reg.date_created', fieldtype: costanti.FieldType.onlydate, showWhen: costanti.showWhen.InPage + costanti.showWhen.InView_OnlyifExist }),