ludc
2025-01-16 986aa62ed00bee39363bab41b4eeb8259d446efd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package com.vci.client.portal.custom;
 
import java.util.Iterator;
import java.util.List;
import java.util.Map;
 
import com.vci.client.bof.ClientBusinessObjectOperation;
import com.vci.client.portal.utility.PRMItem;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.data.AttributeValue;
 
public class CustomDesignerSqlCol implements ICustomDefine {
 
    @Override
    public void getCustomValue(String columnName, Map<String, PRMItem> prmMap, List<Map<String, String>> cols) throws VCIError {
        Iterator<Map<String, String>> itor = cols.iterator();
        PRMItem prm = prmMap.get(columnName);
        String sql = prm.getItemAddFilter();
        ClientBusinessObjectOperation bofactory = new ClientBusinessObjectOperation();
        while (itor.hasNext()) {
            Map<String, String> map = itor.next();
            String oid = map.get("oid");
            oid = "'" + oid + "'";
            String csql = sql.replace(":oid", oid);
            String[] sqlVals = bofactory.getClassficationValue(csql, new AttributeValue[0]);
            String sqlVal = "";
            if (sqlVals.length > 0) {
                sqlVal = sqlVals[0];
            }
            map.put(columnName, sqlVal);
        }
    }
 
}