본문 바로가기

SmartClient

콤보박스의 기본 operationId 지정 및 필터 사용시 필터에서 사용할 기본 operation 지정

샘플

--------------------------------------------------------------------------------------

 

     ,{name:"proj_id",title:XX["FLD_PROJECT"],type:"SelectItem",width:180
            ,allowEmptyValue:false, multiple:true, validateOnChange:true, required:true
            ,optionDataSource:prd_proj_hdr, valueField:"proj_id", displayField:"proj_desc"
            ,pickListWidth:380, optionCriteria:global_var.defaultCriteriaInactive,optionOperationId:"SelectItemCust"
            ,optionFilterContext:{fetchOperationId:"SelectItemCust",optionOperationId:"SelectItemCust",operationId:"SelectItemCust"}
            ,pickListFields:[
                 {name: "proj_id", title:XX["FLD_PROJ_ID"],width:60}
                ,{name: "proj_desc",title:XX["FLD_PROJ_DESC"],width:240}
                ,{name: "closed_flag",title:XX["FLD_CLOSED_FLAG"]}
            ]
            
            ,editorProperties:{
                pickListProperties: {
                 fetchOperation:"SelectItemCust"
                    ,showFilterEditor:true
                    ,getCellStyle:function(record, rowNum, colNum){
                     var cssClass = '';
                    
                     if(record && record.closed_flag){
                     if(record.closed_flag == '1'){
                     cssClass += 'bg_lightgray';
                     }
                     }
                    
                     return this.Super("getCellStyle",arguments) + " " + cssClass;
                    }
                },
                getPickListFilterCriteria : function(){
                    var company = [];
                    if(R020_SEARCH_FORM.getItem("plant").getSelectedRecord() != undefined){
                        for(var c = 0; c < R020_SEARCH_FORM.getItem("plant").pickList.getSelection().length; c++){
                            company.add(R020_SEARCH_FORM.getItem("plant").pickList.getSelection()[c].company)
                        }
                    }
                    var paramCriteria = {
                        _constructor:"AdvancedCriteria",operator: "and"
                        ,criteria: [{fieldName:"prod_company",operator:"inSet", value:company}]
                        }
                        return isc.DataSource.combineCriteria(global_var.defaultCriteriaUserAndInactive,paramCriteria);
                }
            }
         }