Mira este ejemplo, es parecido a lo que tu quieres, a mi me funciona de maravilla.
Código Delphi
[-] Application.CreateForm(TfrLptAlbaran, frlptAlbaran);
frlptAlbaran.lptAlbaran.PrinterSettings.PrinterIndex:=GetImpresora(DmAni2.ConfLptFacturas.value);
frlptAlbaran.lptAlbaran.PreviewModal;
frlptAlbaran.Close;
El nombre de la impresora que se utiliza lo ha seleccionado el usuario en configuración y queda guardado en una tabla y hasta nueva orden los albaranes siempre irán por esa impresora.
Un Saludo.