Ver Mensaje Individual
  #4  
Antiguo 26-09-2005
Avatar de Spynosa
Spynosa Spynosa is offline
Miembro
 
Registrado: nov 2004
Ubicación: Ecija - Sevilla
Posts: 99
Reputación: 20
Spynosa Va por buen camino
el trabajo es un poco pesado pero yo me curre uno asi:
Código Delphi [-]
 procedure TForm1.BitBtn1Click(Sender: TObject);
 var g:file of byte;
     l,cd:byte;
     nombrefichero:string;
     yy,mm,dd:word;
     mvar:string;
 procedure escribe (dato,nombrecampo:string);
 var c:byte;
 begin
     l:=32;write(g,l);
     l:=60;write(g,l);
     l:=60;write(g,l);
     l:=32;write(g,l);
     l:=47;write(g,l);
     l:=86;write(g,l);
     l:=32;write(g,l);
     l:=40;write(g,l);
     for c:=1 to length(dato) do
     begin
         l:=ord(dato[c]);write(g,l);
     end;
     l:=41;write(g,l);
     l:=47;write(g,l);
     l:=84;write(g,l);
     l:=32;write(g,l);
     l:=40;write(g,l);
     for c:=1 to length(nombrecampo) do
     begin
         l:=ord(nombrecampo[c]);write(g,l);
     end;
     l:=41;write(g,l);
     l:=62;write(g,l);
     l:=62;write(g,l);
 end;
 begin
 nombrefichero:='estadisticas.pdf';
 assignfile(g,'.\estadis.fdf');
    rewrite(g);
 l:=37;write(g,l);
 l:=70;write(g,l);
 l:=68;write(g,l);
 l:=70;write(g,l);
 l:=45;write(g,l);
 l:=49;write(g,l);
 l:=46;write(g,l);
 l:=50;write(g,l);
 l:=13;write(g,l);
 l:=37;write(g,l);
 l:=226;write(g,l);
 l:=227;write(g,l);
 l:=207;write(g,l);
 l:=211;write(g,l);
 l:=13;write(g,l);
 l:=10;write(g,l);
 l:=49;write(g,l);
 l:=32;write(g,l);
 l:=48;write(g,l);
 l:=32;write(g,l);
 l:=111;write(g,l);
 l:=98;write(g,l);
 l:=106;write(g,l);
 l:=13;write(g,l);
 l:=60;write(g,l);
 l:=60;write(g,l);
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=47;write(g,l);
 l:=70;write(g,l);
 l:=68;write(g,l);
 l:=70;write(g,l);
 l:=32;write(g,l);
 l:=60;write(g,l);
 l:=60;write(g,l);
 l:=32;write(g,l);
 l:=47;write(g,l);
 l:=70;write(g,l);
 l:=105;write(g,l);
 l:=101;write(g,l);
 l:=108;write(g,l);
 l:=100;write(g,l);
 l:=115;write(g,l);
 l:=32;write(g,l);
 l:=91;write(g,l);
 
 //escribe('Si','a2');
 escribe(edit1.text,'b1');
 decodedate(actual.date,yy,mm,dd);
 mvar:=inttostr(dd);
 if length(mvar) = 1 then
    begin
      escribe('0','b2d');escribe(mvar,'b2m');
    end
      else begin escribe(mvar[1],'b2d');escribe(mvar[2],'b2m');
    end;
 //**********
 mvar:=inttostr(mm);
 if length(mvar) = 1 then
    begin
      escribe('0','b2m1');escribe(mvar,'b2m2');
    end
      else begin escribe(mvar[1],'b2m1');escribe(mvar[2],'b2m2');
    end;
 //*******
 mvar:=inttostr(yy);
      escribe(mvar[1],'b2a1');escribe(mvar[2],'b2a2');
      escribe(mvar[3],'b2a3');escribe(mvar[4],'b2a4');
 //*******
 decodedate(f1.date,yy,mm,dd);
 mvar:=inttostr(dd);
 if length(mvar) = 1 then
    begin
      escribe('0','b21');escribe(mvar,'b22');
    end
      else begin escribe(mvar[1],'b21');escribe(mvar[2],'b22');
    end;
 //**********
 mvar:=inttostr(mm);
 if length(mvar) = 1 then
    begin
      escribe('0','b23');escribe(mvar,'b24');
    end
      else begin escribe(mvar[1],'b23');escribe(mvar[2],'b24');
    end;
 //*******
 mvar:=inttostr(yy);
      escribe(mvar[1],'b25');escribe(mvar[2],'b26');
      escribe(mvar[3],'b27');escribe(mvar[4],'b28');
 //segundafecha
   if chf.Checked then
   begin
    decodedate(f2.date,yy,mm,dd);
    mvar:=inttostr(dd);
    if length(mvar) = 1 then
    begin
      escribe('0','b29');escribe(mvar,'b210');
    end
      else begin escribe(mvar[1],'b29');escribe(mvar[2],'b210');
    end;
 //**********
    mvar:=inttostr(mm);
    if length(mvar) = 1 then
     begin
       escribe('0','b211');escribe(mvar,'b212');
     end
      else begin escribe(mvar[1],'b211');escribe(mvar[2],'b212');
     end;
 //*******
      mvar:=inttostr(yy);
      escribe(mvar[1],'b213');escribe(mvar[2],'b214');
      escribe(mvar[3],'b215');escribe(mvar[4],'b216');
 
   end;
 //fin segundafecha
 try
      mvar:=edit2.Text;
      escribe(mvar[1],'b217');escribe(mvar[2],'b218');
      escribe(mvar[4],'b219');escribe(mvar[5],'b220');
 except
 //    MessageDlg('Error en la fecha', mtWarning, [], 0);
 end;
    if che.Checked then
    begin
    try
        mvar:=edit3.Text;
        escribe(mvar[1],'b221');escribe(mvar[2],'b222');
        escribe(mvar[4],'b223');escribe(mvar[5],'b224');
    except
    end;
    end;
    escribe(edit4.text,'e3');
    if t1.Checked then escribe('Si','1310');
    if t2.Checked then escribe('Si','1322');
    if t3.Checked then escribe('Si','1324');
    if t4.Checked then escribe('Si','1380');
    if c1.Checked then escribe('Si','g2');
    if c2.Checked then escribe('Si','g1');
    escribe('Si','h1');
    escribe(edit5.text,'dni');
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=93;write(g,l);
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=47;write(g,l);
 l:=70;write(g,l);
 l:=32;write(g,l);
 l:=40;write(g,l);
 //********
     for cd:=1 to length(nombrefichero) do
     begin
         l:=ord(nombrefichero[cd]);write(g,l);
     end;
 //********
 l:=41;write(g,l);
 l:=62;write(g,l);
 l:=62;write(g,l);
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=62;write(g,l);
 l:=62;write(g,l);
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=101;write(g,l);
 l:=110;write(g,l);
 l:=100;write(g,l);
 l:=111;write(g,l);
 l:=98;write(g,l);
 l:=106;write(g,l);
 l:=13;write(g,l);
 l:=116;write(g,l);
 l:=114;write(g,l);
 l:=97;write(g,l);
 l:=105;write(g,l);
 l:=108;write(g,l);
 l:=101;write(g,l);
 l:=114;write(g,l);
 l:=13;write(g,l);
 l:=60;write(g,l);
 l:=60;write(g,l);
 l:=13;write(g,l);
 l:=47;write(g,l);
 l:=82;write(g,l);
 l:=111;write(g,l);
 l:=111;write(g,l);
 l:=116;write(g,l);
 l:=32;write(g,l);
 l:=49;write(g,l);
 l:=32;write(g,l);
 l:=48;write(g,l);
 l:=32;write(g,l);
 l:=82;write(g,l);
 l:=32;write(g,l);
 l:=13;write(g,l);
 l:=13;write(g,l);
 l:=62;write(g,l);
 l:=62;write(g,l);
 l:=13;write(g,l);
 l:=37;write(g,l);
 l:=37;write(g,l);
 l:=69;write(g,l);
 l:=79;write(g,l);
 l:=70;write(g,l);
 l:=13;write(g,l);
 
 closefile(g);
 ShellExecute(Form1.Handle,nil,PChar('.\estadis.fdf'),'','',SW_SHOWNORMAL);
 
 end;

espero que te sirva.
Responder Con Cita