Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 23-03-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Yo guardo en un fichero INI las impresoras que se van a utilizar en la aplicación, configurable por el usuario, a continuación los fragmentos de código que utilizo.
Código Delphi [-]
  Case nModelo of
  1:begin
    Application.CreateForm(TfrLptFactura, frLptFactura);
    frLptFactura.LptFactura.PrinterSettings.PrinterIndex:=GetImpresora(Impresora1);
      if n = 1 then
      frLptFactura.LptFactura.PreviewModal
      else
      frLptFactura.LptFactura.Print;

    frLptFactura.Close;
    end;



Function GetImpresora(Impre:String):Integer;
Var
nCont:Integer;
lSearch:Boolean;
cNewLIne:String;
begin
lSearch:=False;
cNewLine:=Chr(10)+Chr(13);

  For nCont:=0 to Printer.Printers.Count - 1 do
  //buscamos la impresora en la lista del sistema
  begin

      if Pos(impre, Printer.Printers[nCont]) <> 0 then
      begin
      lSearch:=True;
      Result:=nCont;
      Break;
      end;

  end;

  if lSearch = False then
  begin
  ShowMessage('Impresora no encontrada.'+impre+cNewLine+'Se utilizará la predeterminda.');
  Result:=-1
  end;

end;



Procedure Obtener_Impresoras();
begin
MiCarpeta:=ExtractFilePath(Application.ExeName);
IniPrinters:=MiCarpeta+'MZprn.ini';
  Try
  //Abrir el INI
  Fichero := TIniFile.Create(IniPrinters);
  Impresora1:=Fichero.ReadString ('Facturas', 'String','Error');
  Impresora2:=Fichero.ReadString ('Albaranes', 'String','Error');
  Impresora3:=Fichero.ReadString ('Ruta', 'String','Error');
  Impresora4:=Fichero.ReadString ('Listados', 'String','Error');
  Except
  ShowMessage('No se pudo acceder al fichero '+Fichero.FileName  );
  end;
//
end;

//Ejemplo de INI

[Facturas]
String=\\FACTURACION\EPSON LQ-590 ESC/P 2 Ver 2.0
[Albaranes]
String=\\FACTURACION\EPSON LQ-590 ESC/P 2 Ver 2.0
[Ruta]
String=KONICA MINOLTA C360SeriesPCL
[Listados]
String=KONICA MINOLTA C360SeriesPCL


//Creación del INI


procedure TfrImpresoras.SpeedButton5Click(Sender: TObject);
var
lCrear:Boolean;
begin
lCrear:=True;
   if FileExists(IniPrinters) then
   begin
      if Application.MessageBox('El fichero ya existe.¿Seguro que desea sobreescribirlo?','Atención',mb_OkCancel +
      mb_IconQuestion)= idOk then
      begin
      DeleteFile(IniPrinters);
      lCrear:=True;
      end
      else
      begin
      ShowMessage('Opción cancelada por el usurio. El fichero no se creo.');
      lCrear:=False;
      end;
  end
  else
  lCrear:=True;
  if lCrear = True then
  begin
    Try
    Fichero := TIniFile.Create (IniPrinters); // Accedemos al Fichero
    //Facturas
    Etiqueta:='Facturas';
    Fichero.WriteString(Etiqueta,'String',EdFacturas.Text);
    //Albaranes
    Etiqueta:='Albaranes';
    Fichero.WriteString(Etiqueta,'String',EdAlbaranes.Text);
    //Albaranes Ruta
    Etiqueta:='Ruta';
    Fichero.WriteString(Etiqueta,'String',EdRuta.Text);
    //Listados
    Etiqueta:='Listados';
    Fichero.WriteString(Etiqueta,'String',EdListados.Text);

    Fichero.Free; // Cerramos el Fichero
    Obtener_Impresoras();
    Except
    ShowMessage('Atención:Se produjo un error, el fichero INI no se grabó.');
    end;
  end;

end;
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 23-03-2012 a las 21:33:29.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
seleccion de impresora y letra de la impresora emeceuy Impresión 6 13-08-2017 14:11:05
Crear Reporte versus impresora por defecto Manuel Impresión 0 14-11-2008 21:44:09
¿Determinar el papel por defecto de la impresora? burasu Impresión 0 18-07-2006 11:37:43
Cambiar impresora por defecto mediante código jdiazan Impresión 2 15-12-2004 18:16:23
Poder cambiar la impresora por defecto ciscu Impresión 3 21-05-2004 17:03:35


La franja horaria es GMT +2. Ahora son las 21:52:21.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi