ZK - Open Source Ajax Java FrameworkZK - Open Source Ajax Java Framework

ZK Dynamic Grid,having different ZK control in each row

Lalitdhuwe
17 Aug 2010 08:29:18 GMT
17 Aug 2010 08:29:18 GMT

I face problem for firing event (onBlur) in grid child control
i want .the user will add a no of days in textbox so on blur event the Date show in next column Datebox
pls help me out

pls find the code below

public void onClick$btnShow() throws SQLException {
        lblError.setValue("");
        CommonFunctions comm = new CommonFunctions();
        String frDate = comm.convertDate("MM/dd/yyyy", dbFromDate.getValue());
        String toDate = comm.convertDate("MM/dd/yyyy", dbToDate.getValue());
        if (!dbFromDate.getValue().after(dbToDate.getValue())) {
            EmployeeConversionDAO employeeconversion = new EmployeeConversionDAO();
            List listEmployee = new ArrayList();
            if (rbtConfirmation.isChecked()) {
                listEmployee = employeeconversion.getEmployee(frDate, toDate, frDate, toDate);
                List lookupValue = new ArrayList();
                lookupValue = employeeconversion.getLookupValue();
                Iterator it = lookupValue.iterator();
                if (it.hasNext()) {
                    EmployeeConversion conversion = (EmployeeConversion) it.next();
                    confirmedLookupid = conversion.getLookupID();
                    confirmedLookupName = conversion.getLookupName();
                    confirmedLookupField = conversion.getLookupField();
                    probationLookupID = conversion.getLookupIDProb();
                }
                if (listEmployee.size() > 0) {
                    ListModel model = new ListModelList(listEmployee);
                    RowRenderer rowRenderer = new MyRowRenderer();
                    grdEmployee.setModel(model);
                    grdEmployee.setRowRenderer(rowRenderer);
                } else {
                    lblError.setValue("No Data Found");
                }
            }
        } else {
            lblError.setValue("From Date must be Less than To Date");
        }


    }

    private class MyRowRenderer implements RowRenderer {

        public void render(Row row, Object data) {
            CommonFunctions comm = new CommonFunctions();
            EmpMaster emp = (EmpMaster) data;
            new Checkbox().setParent(row);
            new Checkbox().setParent(row);
            Textbox txtComment = new Textbox();
            txtComment.setMultiline(true);
            txtComment.setRows(2);
            txtComment.setParent(row);
            new Label(emp.getEmpFullName() + "").setParent(row);
            new Label(emp.getEmpCode() + "").setParent(row);
            new Label(emp.getEmpDOJ() + "").setParent(row);
            Date EmpProb = comm.convertDate("yyyy-MM-dd", emp.getEmpProbationDueDate());
            Datebox dbProb = new Datebox();
            dbProb.setValue(EmpProb);
            dbProb.setFormat("dd/MM/yyyy");
            dbProb.setParent(row);
            Textbox txtDay = new Textbox();
           txtDay.addEventListener("onBlur", new addDate());
            txtDay.setWi<hr />dth("30px");
            txtDay.setParent(row);
            Date EmpExt = comm.convertDate("yyyy-MM-dd", emp.getEmpExtensionDate());
            Datebox dbExt = new Datebox();
            dbExt.setValue(EmpExt);
            dbExt.setFormat("dd/MM/yyyy");
            dbExt.setParent(row);
            new Label(emp.getEmpDepartmentName() + "").setParent(row);
            new Label(emp.getEmpSubDepartmentName() + "").setParent(row);
            new Label(emp.getEmpDesignationName() + "").setParent(row);
            row.setAttribute("EmployeeID", emp.getEmployeeId());
            row.setAttribute("DepartmentID", emp.getEmpDepartmentId());
            row.setAttribute("SubDepartmentID", emp.getEmpSubDepartmentId());
            row.setAttribute("ProbationDate", emp.getEmpProbationDueDate());
            row.setAttribute("ExtensionDate", emp.getEmpExtensionDate());
        }
    }

     class addDate implements org.zkoss.zk.ui.event.EventListener {

        public void onEvent(Event event) throws Exception {
          alert(event.getTarget().getId());


        }

     }