procedure TFrm_Portfolio.CreatePckReport(); var i_row,i_rows,i_col,i_cols,i_ppl,i,j:integer; d,d_cost,d_balance,d_ppl,d_lessons,d_received,d_discount:double; begin d_ppl:=strtofloat(e_pck_ppl.Text); d_lessons:=strtofloat(sg_lessons.Cells[6,sg_lessons.RowCount-1]); d_received:=strtofloat(sg_lessons.Cells[9,sg_lessons.RowCount-1]); d_discount:=strtofloat(sg_lessons.Cells[8,sg_lessons.RowCount-1]); d_cost:=((d_lessons*d_ppl)-d_discount); d_balance:=d_received-d_cost; sg_pck_report.Clear; sg_pck_report.RowCount:=1; i_rows:=1; sg_pck_report.ColumnCount:=11; sg_pck_report.MergeCells(0,i_row,2,1); i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; sg_pck_report.MergeCells(0,i_row,6,1); sg_pck_report.Cells[0,i_row]:='Packege Id: ' + e_pck_package_id.Text; sg_pck_report.FontStyles[0,i_row]:=label5.Font.Style; sg_pck_report.MergeCells(6,i_row,5,1); sg_pck_report.Cells[6,i_row]:='Lessons taken: ' + floattostr(d_lessons); sg_pck_report.FontStyles[6,i_row]:=label5.Font.Style; i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; sg_pck_report.MergeCells(0,i_row,6,1); sg_pck_report.Cells[0,i_row]:='Primary holder: ' + eb_pck_student_id.Text; sg_pck_report.FontStyles[0,i_row]:=label5.Font.Style; sg_pck_report.MergeCells(6,i_row,5,1); sg_pck_report.Cells[6,i_row]:='Received $ ' + floattostr(d_received); sg_pck_report.FontStyles[6,i_row]:=label5.Font.Style; i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; sg_pck_report.MergeCells(0,i_row,6,1); sg_pck_report.Cells[0,i_row]:='Price per lesson: $ ' + e_pck_ppl.Text; sg_pck_report.FontStyles[0,i_row]:=label5.Font.Style; sg_pck_report.MergeCells(6,i_row,5,1); if d_balance>0 then begin sg_pck_report.Cells[6,i_row]:='Balance: ' + floattostr(d_balance); sg_pck_report.FontStyles[6,i_row]:=label5.Font.Style; sg_pck_report.FontColors[6,i_row]:=TAlphaColorRec.Green; end else begin sg_pck_report.Cells[6,i_row]:='Owe: ' + floattostr(d_balance); sg_pck_report.FontStyles[6,i_row]:=label5.Font.Style; sg_pck_report.FontColors[6,i_row]:=TAlphaColorRec.Red; end; i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; sg_pck_report.Cells[0,i_row]:='Date'; sg_pck_report.FontStyles[0,i_row]:=label5.Font.Style; sg_pck_report.Cells[1,i_row]:='Time'; sg_pck_report.FontStyles[1,i_row]:=label5.Font.Style; sg_pck_report.Cells[2,i_row]:='Notes'; sg_pck_report.FontStyles[2,i_row]:=label5.Font.Style; sg_pck_report.Cells[3,i_row]:='Amount'; sg_pck_report.FontStyles[3,i_row]:=label5.Font.Style; sg_pck_report.Cells[4,i_row]:='Instructor'; sg_pck_report.FontStyles[4,i_row]:=label5.Font.Style; sg_pck_report.Cells[5,i_row]:='Discount'; sg_pck_report.FontStyles[5,i_row]:=label5.Font.Style; sg_pck_report.Cells[6,i_row]:='Received'; sg_pck_report.FontStyles[6,i_row]:=label5.Font.Style; sg_pck_report.Cells[7,i_row]:='Pmt Type'; sg_pck_report.FontStyles[7,i_row]:=label5.Font.Style; sg_pck_report.Cells[8,i_row]:='Ch/CC #'; sg_pck_report.FontStyles[8,i_row]:=label5.Font.Style; sg_pck_report.Cells[9,i_row]:='Reference'; sg_pck_report.FontStyles[9,i_row]:=label5.Font.Style; for I := 1 to sg_lessons.RowCount-1 do begin i_rows:=i_rows+1; i_row:=i_rows-1; sg_pck_report.RowCount:=i_rows; sg_pck_report.Cells[0,i_row]:=sg_lessons.Cells[3,i]; sg_pck_report.Cells[1,i_row]:=sg_lessons.Cells[4,i]; sg_pck_report.Cells[2,i_row]:=sg_lessons.Cells[5,i]; sg_pck_report.Cells[3,i_row]:=sg_lessons.Cells[6,i]; sg_pck_report.Cells[4,i_row]:=sg_lessons.Cells[7,i]; sg_pck_report.Cells[5,i_row]:=sg_lessons.Cells[8,i]; sg_pck_report.Cells[6,i_row]:=sg_lessons.Cells[9,i]; sg_pck_report.Cells[7,i_row]:=sg_lessons.Cells[12,i]; sg_pck_report.Cells[8,i_row]:=sg_lessons.Cells[13,i]; sg_pck_report.Cells[9,i_row]:=sg_lessons.Cells[15,i]; if i=sg_lessons.RowCount-1 then for j := 0 to sg_pck_report.ColumnCount-1 do sg_pck_report.FontStyles[j,i_row]:=label5.Font.Style; end; end;