есть 2 варианта: первый и второй
первый:
1. перед печатью подменяем принтер в 78-й таблице
2. печатаем
3. восстанавливаем настройку
выглядит так
1.
IF _PrinterSelection.GET(USERID,0) THEN BEGIN
_OldPrinter := _PrinterSelection."Printer Name";
_PrinterSelection."Printer Name" := Васья;
_PrinterSelection.MODIFY();
END ELSE BEGIN
_PrinterSelection.INIT();
_PrinterSelection."User ID" := USERID;
_PrinterSelection."Report ID" := 0;
_PrinterSelection."Printer Name" := Васья;
_PrinterSelection.INSERT();
END;
2. Report.print!!!
3.
_PrinterSelection.GET(USERID,0);
IF _OldPrinter <> '' THEN BEGIN
_PrinterSelection."Printer Name" := _OldPrinter;
_PrinterSelection.MODIFY();
END ELSE
_PrinterSelection.DELETE();
_____________________________________________________________
второй:
создаем юнит NewCU со свойством SingleInstanse Трю:
там пишем:
SetPrinter(_PrinterName : Text[250])
PrinterName := _PrinterName;
и
GetPrinter() : Text[250]
EXIT(PrinterName);
дорабатываем 1 кю FindPrinter
IF NewCU.GetPrinter <> '' THEN
EXIT(NewCU.GetPrinter);
при запуске отчета из любой ф-ции делаем так:
1. NewCU.SetPrinter(Васья)
2. Report.print!!!
3. NewCU.SetPrinter('')