private class SubcontractedTasksRenderer implements RowRenderer {
@Override
public void render(Row row, Object data) {
SubcontractedTaskData subcontractedTaskData = (SubcontractedTaskData) data;
row.setValue(subcontractedTaskData);
Order order = getOrder(subcontractedTaskData);
appendLabel(row, Util.formatDateTime(subcontractedTaskData
.getSubcontratationDate()));
appendLabel(row, Util.formatDateTime(subcontractedTaskData
.getSubcontractCommunicationDate()));
appendLabel(row, getExternalCompany(subcontractedTaskData));
appendLabel(row, getOrderCode(order));
appendLabel(row, getOrderName(order));
appendLabel(row, subcontractedTaskData.getSubcontractedCode());
appendLabel(row, getTaskName(subcontractedTaskData));
row.setTooltiptext(subcontractedTaskData.getWorkDescription());
appendLabel(row, Util.addCurrencySymbol(subcontractedTaskData.getSubcontractPrice()));
appendLabel(row, Util.formatDate(subcontractedTaskData
.getLastRequiredDeliverDate()));
appendLabel(row, _(toString(subcontractedTaskData.getState())));
appendOperations(row, subcontractedTaskData);
}