finish the data part (not include edit part)