two different senariaos
1). contained with in loop
2). accessed outside loop
1) contained with in loop //no errors
var
pDoc:Integer;
procedure TForm1.SomeButtonClick(sender:TObject);
procedure DoMonthReport(aDoc:TPrinter);
begin
//print document on aDoc.Canvas
end;
Procedure DoYearReport(aDoc:TPrinter);
begin
//Print document on zDoc.Canvas
end;
begin
pDOC:=1;
if PrintDialog1.Execute then
begin
case pDoc of
1:DocMonthReport(Printer);
2:DocYearReport(Printer);
end;
end;
end;
2). accessed outside loop //errors so big it will not even compile
var
pDoc:Integer;
Procedure TForm1.DocMonthReport(aDoc:TPrinter);
begin
//print aDoc.Canvas
end;
Procedure TForm1.DocYearReport(aDoc:TPrinter);
begin
//print zDoc.Canvas
end;
Procedure TForm1.Someuttonlick(Sender:TObject);
begin
var
pDoc:=1;
GoPrint;
end;
Procedure TForm1.GoPrint;
begin
if PrintDialog1.execute then
begin
case pDoc of
1:DocMonthReport(Printer);
2:DocYearReport(Printer);
end;
end;
end;
Is there a way to make this work?