AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Gleiche Procedure mit unterschiedlichen ParameterTypen
Thema durchsuchen
Ansicht
Themen-Optionen

Gleiche Procedure mit unterschiedlichen ParameterTypen

Ein Thema von Christopher · begonnen am 28. Aug 2004 · letzter Beitrag vom 1. Sep 2004
 
Christopher

Registriert seit: 29. Aug 2003
9 Beiträge
 
#1

Gleiche Procedure mit unterschiedlichen ParameterTypen

  Alt 28. Aug 2004, 23:08
Hallo! Ich brauche mal Hilfe:

Ich habe in einer kleinen Verwaltungssoftware ein Problem. Ich habe zwei File of Records (File of TCustomer & File of TJob) und diese sollen zu Beginn des Programms in verschiedene Arrays (Array of TCustomer & Array of TJob) eingelesen werden. Dabei enthält eine Datei die Kunden und die andere die Termine.
Ich würde gerne eine Procedure haben die diese beiden Dateien in die beiden Arrays liest OHNE diese blöde Wiederholung des Quelltextes, wie unten zu sehen. Es ist ja alles genau zweimal vorhanden. Das finde ich äußerst unvorteilhaft. Am liebsten hätte ich eine Procedure, der ich den Dateinamen und das Array übergebe, in das die Datei geschreiben werden soll. Aber da die jeweiligen Datei und Arraytypen unterschiedlich sind (TJob / TCustomer) bekomme ich das nicht hin! Eine überladene Procedure würde ja zwar vom Aufruf her genau das bewirken, aber dann hab ich den Code trotzdem zweimal!

Hätte da jemand ne Lösung? Ich komm einfach nicht drauf.... DANKE!!!

Delphi-Quellcode:
procedure TFrmMain.ReadFileToArray();
var
  i : LongInt;
begin
  assignfile(CustomerFile, 'Customer.dat');
  if fileExists('Customer.dat')
  then
    begin
    Reset(CustomerFile);
    i := 0;
      while not EOF(CustomerFile) do
      begin
        setlength(Customer, i + 1);
        Seek(CustomerFile, i);
        read(CustomerFile, Customer[i]);
        inc(i);
      end;
    CloseFile(CustomerFile);
    end
  else
    begin
    setlength(Customer, 0);
    end;

//Und jetzt genau das gleiche mit TJob

  assignfile(JobFile, 'Job.dat');
  if fileExists('Job.dat')
  then
    begin
    Reset(JobFile);
    i := 0;
      while not EOF(JobFile) do
      begin
        setlength(Job, i + 1);
        Seek(JobFile, i);
        read(JobFile, Jobr[i]);
        inc(i);
      end;
    CloseFile(JobFile);
    end
  else
    begin
    setlength(Job, 0);
    end;
end;
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz