AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firemonkey abspeichern (iOS)
Thema durchsuchen
Ansicht
Themen-Optionen

Firemonkey abspeichern (iOS)

Ein Thema von ZeroX1337 · begonnen am 28. Jul 2014 · letzter Beitrag vom 7. Aug 2014
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#21

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 10:52
[Glaskugelmodus on]
Projekt wird neu erzeugt und aufs Gerät geschoben. Alle zur Laufzeit angelegten Dateien sind wieder futsch und die zu ladende Datei wird nicht über die Bereitstellung mitgeliefert.
[Glaskugelmodus off]

Aber lassen wir uns überraschen
[Lesebrille auf]
Per Button kann ich die laden...
[Lesebrille ab]


Wenn doch die Datei fehlt, brauche ich deine PayPal-Daten
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#22

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 11:36
Warum soll ich einen Quellcode posten, wenn der hier bereits gepostet wurde und ich diesen verwendet habe?

Unter iOS kannst Du alles was Du willst unter TPath.GetDocumentsPath speichern. Unter diesem Ordner kannst Du auch beliebige Unterordner anlegen.
Wenn Du nur paar Edits speichern willst und auf eine Datenbank verzichten kannst, dann speicher und lade alles z.B. über eine Stringlist.

Speichern:
Delphi-Quellcode:
var
  sl: TStringlist;
begin
  sl := TStringList.Create;

  sl.add(edit1.text);
  sl.add(edit2.text);
  sl.add(edit3.text);
  sl.add(edit4.text);

  sl.SaveToFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'einstellungen.txt');
end;
Laden:
Delphi-Quellcode:
var
  sl: TStringlist;
begin
  sl := TStringList.Create;
  sl.LoadFromFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'einstellungen.txt');

  edit1.text := sl[0];
  edit2.text := sl[1];
  edit3.text := sl[2];
  edit4.text := sl[3];
end;
Den Quellcode von "Laden" habe ich halt in "FormCreate" gepackt, damit er immer die Einstellungen lädt, die zuletzt gespeichert wurden. Aber wie gesagt, die App stürzt dann sofort ab.

Aber hier mal mein Code zu Laden/Speichern.

Speichern:
Delphi-Quellcode:
procedure THeaderFooterwithNavigation.B_speichernClick(Sender: TObject);
var
    Daten: TStringList;
begin
if MessageDlg('Möchten Sie die Datei wirklich speichern? Die zuletzt gespeicherte Datei wird dabei überschrieben.',
    TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0, TMsgDlgBtn.mbYes) = mrYes then
  begin
    Daten := TStringList.Create;

    //Kopf
    Daten.Add(E_auftragnr.text);
    Daten.Add(E_montagefirma.text);
    Daten.Add(E_maschinentyp.text);
    Daten.Add(E_artderarbeit.text);
    Daten.Add(E_servicetechniker.text);
    Daten.Add(IntToStr(E_land.itemindex));
    Daten.Add(E_komnr.text);
    Daten.Add(DateToStr(D_montagezeitvon.date));
    Daten.Add(DateToStr(D_montagezeitbis.date));

    //Mitte
    Daten.Add(DateToStr(D_datummo.date));
    Daten.Add(DateToStr(D_datumdi.date));
    Daten.Add(DateToStr(D_datummi.date));
    Daten.Add(DateToStr(D_datumdo.date));
    Daten.Add(DateToStr(D_datumfr.date));
    Daten.Add(DateToStr(D_datumsa.date));
    Daten.Add(DateToStr(D_datumso.date));

    //Anreise
    Daten.Add(E_reisebeginnmo.text);
    Daten.Add(E_reisebeginndi.text);
    Daten.Add(E_reisebeginnmi.text);
    Daten.Add(E_reisebeginndo.text);
    Daten.Add(E_reisebeginnfr.text);
    Daten.Add(E_reisebeginnsa.text);
    Daten.Add(E_reisebeginnso.text);

    Daten.Add(E_reiseendemo.text);
    Daten.Add(E_reiseendedi.text);
    Daten.Add(E_reiseendemi.text);
    Daten.Add(E_reiseendedo.text);
    Daten.Add(E_reiseendefr.text);
    Daten.Add(E_reiseendesa.text);
    Daten.Add(E_reiseendeso.text);

    Daten.Add(IntToStr(C_zeitverschiebungmo.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungdi.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungmi.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungdo.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungfr.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungsa.itemindex));
    Daten.Add(IntToStr(C_zeitverschiebungso.itemindex));



    Daten.Add(E_rückreisereisebeginnmo.text);
    Daten.Add(E_rückreisereisebeginndi.text);
    Daten.Add(E_rückreisereisebeginnmi.text);
    Daten.Add(E_rückreisereisebeginndo.text);
    Daten.Add(E_rückreisereisebeginnfr.text);
    Daten.Add(E_rückreisereisebeginnsa.text);
    Daten.Add(E_rückreisereisebeginnso.text);

    Daten.Add(E_arbeitsbeginnmo.text);
    Daten.Add(E_arbeitsbeginndi.text);
    Daten.Add(E_arbeitsbeginnmi.text);
    Daten.Add(E_arbeitsbeginndo.text);
    Daten.Add(E_arbeitsbeginnfr.text);
    Daten.Add(E_arbeitsbeginnsa.text);
    Daten.Add(E_arbeitsbeginnso.text);

    //Memo Felder
    {Daten.Add(Memo_Arbeiten.Text);
    Daten.Add(Memo_Ersatzteile.Text); }


    //Variablen speichern
    //Anreise
    Daten.Add(FloatToStr(GesamtStundenMo));
    Daten.Add(FloatToStr(GesamtStundenDi));
    Daten.Add(FloatToStr(GesamtStundenMi));
    Daten.Add(FloatToStr(GesamtStundenDo));
    Daten.Add(FloatToStr(GesamtStundenFr));
    Daten.Add(FloatToStr(GesamtStundenSa));
    Daten.Add(FloatToStr(GesamtStundenSo));

    //Rückreise
    Daten.Add(FloatToStr(RückreiseGesamtStundenMo));
    Daten.Add(FloatToStr(RückreiseGesamtStundenDi));
    Daten.Add(FloatToStr(RückreiseGesamtStundenMi));
    Daten.Add(FloatToStr(RückreiseGesamtStundenDo));
    Daten.Add(FloatToStr(RückreiseGesamtStundenFr));
    Daten.Add(FloatToStr(RückreiseGesamtStundenSa));
    Daten.Add(FloatToStr(RückreiseGesamtStundenso));

    //Arbeit
    Daten.Add(FloatToStr(GesamtArbeitsStundenMo));
    Daten.Add(FloatToStr(GesamtArbeitsStundenDi));
    Daten.Add(FloatToStr(GesamtArbeitsStundenMi));
    Daten.Add(FloatToStr(GesamtArbeitsStundenDo));
    Daten.Add(FloatToStr(GesamtArbeitsStundenFr));
    Daten.Add(FloatToStr(GesamtArbeitsStundenSa));
    Daten.Add(FloatToStr(GesamtArbeitsStundenSo));

    //Gesamt
    Daten.Add(FloatToStr(GesamtStundenErgebnisMo));
    Daten.Add(FloatToStr(GesamtStundenErgebnisDo));
    Daten.Add(FloatToStr(GesamtStundenErgebnisMi));
    Daten.Add(FloatToStr(GesamtStundenErgebnisDo));
    Daten.Add(FloatToStr(GesamtStundenErgebnisFr));
    Daten.Add(FloatToStr(GesamtStundenErgebnisSa));
    Daten.Add(FloatToStr(GesamtStundenErgebnisSo));



    Daten.SaveToFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'einstellungen.txt');

    showmessage('Ihre Eingaben wurden' +#13+ 'am '+ DateToStr(D_montagezeitvon.Date) +#13+ ' um '+ TimeToStr(Now) +#13+ ' erfolgreich gespeichert!');
end;
end;
Laden:
Delphi-Quellcode:
procedure THeaderFooterwithNavigation.B_ladenClick(Sender: TObject);
var
    Daten: TStringList;
begin
if MessageDlg('Möchten Sie die zuletzt gespeicherte Datei wirklich laden?',
    TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0, TMsgDlgBtn.mbYes) = mrYes then
  begin
    Daten := TStringList.Create;
    Daten.LoadFromFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'einstellungen.txt');

    //Kopf
    E_auftragnr.text := Daten[0];
    E_montagefirma.text := Daten[1];
    E_maschinentyp.text := Daten[2];
    E_artderarbeit.text := Daten[3];
    E_servicetechniker.text := Daten[4];
    E_land.itemindex := StrToint(Daten[5]);
    E_komnr.text := Daten[6];
    D_montagezeitvon.date := StrToDate(Daten[7]);
    D_montagezeitbis.date := StrToDate(Daten[8]);

    //Mitte
    D_datummo.date := StrToDate(Daten[9]);
    D_datumdi.date := StrToDate(Daten[10]);
    D_datummi.date := StrToDate(Daten[11]);
    D_datumdo.date := StrToDate(Daten[12]);
    D_datumfr.date := StrToDate(Daten[13]);
    D_datumsa.date := StrToDate(Daten[14]);
    D_datumso.date := StrToDate(Daten[15]);

    //Anreise
    E_reisebeginnmo.text := Daten[16];
    E_reisebeginndi.text := Daten[17];
    E_reisebeginnmi.text := Daten[18];
    E_reisebeginndo.text := Daten[19];
    E_reisebeginnfr.text := Daten[20];
    E_reisebeginnsa.text := Daten[21];
    E_reisebeginnso.text := Daten[22];

    E_reiseendemo.text := Daten[23];
    E_reiseendedi.text := Daten[24];
    E_reiseendemi.text := Daten[25];
    E_reiseendedo.text := Daten[26];
    E_reiseendefr.text := Daten[27];
    E_reiseendesa.text := Daten[28];
    E_reiseendeso.text := Daten[29];

    C_zeitverschiebungmo.itemindex := StrToInt(Daten[30]);
    C_zeitverschiebungdi.itemindex := StrToInt(Daten[31]);
    C_zeitverschiebungmi.itemindex := StrToInt(Daten[32]);
    C_zeitverschiebungdo.itemindex := StrToInt(Daten[33]);
    C_zeitverschiebungfr.itemindex := StrToInt(Daten[34]);
    C_zeitverschiebungsa.itemindex := StrToInt(Daten[35]);
    C_zeitverschiebungso.itemindex := StrToInt(Daten[36]);


    //Rückreise
    E_rückreisereisebeginnmo.text := Daten[37];
    E_rückreisereisebeginndi.text := Daten[38];
    E_rückreisereisebeginnmi.text := Daten[39];
    E_rückreisereisebeginndo.text := Daten[40];
    E_rückreisereisebeginnfr.text := Daten[41];
    E_rückreisereisebeginnsa.text := Daten[42];
    E_rückreisereisebeginnso.text := Daten[43];

    //Arbeit
    E_arbeitsbeginnmo.text := Daten[44];
    E_arbeitsbeginndi.text := Daten[45];
    E_arbeitsbeginnmi.text := Daten[46];
    E_arbeitsbeginndo.text := Daten[47];
    E_arbeitsbeginnfr.text := Daten[48];
    E_arbeitsbeginnsa.text := Daten[49];
    E_arbeitsbeginnso.text := Daten[50];


    //Variablen
    //Anreise
    GesamtStundenMo := StrToFloat(Daten[51]);
    GesamtStundenDi := StrToFloat(Daten[52]);
    GesamtStundenMi := StrToFloat(Daten[53]);
    GesamtStundenDo := StrToFloat(Daten[54]);
    GesamtStundenFr := StrToFloat(Daten[55]);
    GesamtStundenSa := StrToFloat(Daten[56]);
    GesamtStundenSo := StrToFloat(Daten[57]);

    //Rückreise
    RückreiseGesamtStundenMo := StrToFloat(Daten[58]);
    RückreiseGesamtStundenDi := StrToFloat(Daten[59]);
    RückreiseGesamtStundenMi := StrToFloat(Daten[60]);
    RückreiseGesamtStundenDo := StrToFloat(Daten[61]);
    RückreiseGesamtStundenFr := StrToFloat(Daten[62]);
    RückreiseGesamtStundenSa := StrToFloat(Daten[63]);
    RückreiseGesamtStundenso := StrToFloat(Daten[64]);

    //Arbeit
    GesamtArbeitsStundenMo := StrToFloat(Daten[65]);
    GesamtArbeitsStundenDi := StrToFloat(Daten[66]);
    GesamtArbeitsStundenMi := StrToFloat(Daten[67]);
    GesamtArbeitsStundenDo := StrToFloat(Daten[68]);
    GesamtArbeitsStundenFr := StrToFloat(Daten[69]);
    GesamtArbeitsStundenSa := StrToFloat(Daten[70]);
    GesamtArbeitsStundenSo := StrToFloat(Daten[71]);

    //Gesamt
    GesamtStundenErgebnisMo := StrToFloat(Daten[72]);
    GesamtStundenErgebnisDo := StrToFloat(Daten[73]);
    GesamtStundenErgebnisMi := StrToFloat(Daten[74]);
    GesamtStundenErgebnisDo := StrToFloat(Daten[75]);
    GesamtStundenErgebnisFr := StrToFloat(Daten[76]);
    GesamtStundenErgebnisSa := StrToFloat(Daten[77]);
    GesamtStundenErgebnisSo := StrToFloat(Daten[78]);

    //Anzeige
    //Anreise
    E_ReiseStundenMo.Text := FloatToStrF(GesamtStundenMo,ffNumber,5,2);
    E_ReiseStundenDi.Text := FloatToStrF(GesamtStundenDi,ffNumber,5,2);
    E_ReiseStundenMi.Text := FloatToStrF(GesamtStundenMi,ffNumber,5,2);
    E_ReiseStundenDo.Text := FloatToStrF(GesamtStundenDo,ffNumber,5,2);
    E_ReiseStundenFr.Text := FloatToStrF(GesamtStundenFr,ffNumber,5,2);
    E_ReiseStundenSa.Text := FloatToStrF(GesamtStundenSa,ffNumber,5,2);
    E_ReiseStundenSo.Text := FloatToStrF(GesamtStundenSo,ffNumber,5,2);

    //Arbeit
    E_ArbeitsStdMo.Text := FloatToStrF(GesamtArbeitsStundenMo,ffNumber,5,2);
    E_ArbeitsStdDi.Text := FloatToStrF(GesamtArbeitsStundenDi,ffNumber,5,2);
    E_ArbeitsStdMi.Text := FloatToStrF(GesamtArbeitsStundenMi,ffNumber,5,2);
    E_ArbeitsStdDo.Text := FloatToStrF(GesamtArbeitsStundenDo,ffNumber,5,2);
    E_ArbeitsStdFr.Text := FloatToStrF(GesamtArbeitsStundenFr,ffNumber,5,2);
    E_ArbeitsStdSa.Text := FloatToStrF(GesamtArbeitsStundenSa,ffNumber,5,2);
    E_ArbeitsStdSo.Text := FloatToStrF(GesamtArbeitsStundenSo,ffNumber,5,2);

    //Rückreise
    E_RückreiseReiseStundenMo.Text := FloatToStrF(RückreiseGesamtStundenMo,ffNumber,5,2);
    E_RückreiseReiseStundenDi.Text := FloatToStrF(RückreiseGesamtStundenDi,ffNumber,5,2);
    E_RückreiseReiseStundenMi.Text := FloatToStrF(RückreiseGesamtStundenMi,ffNumber,5,2);
    E_RückreiseReiseStundenDo.Text := FloatToStrF(RückreiseGesamtStundenDo,ffNumber,5,2);
    E_RückreiseReiseStundenFr.Text := FloatToStrF(RückreiseGesamtStundenFr,ffNumber,5,2);
    E_RückreiseReiseStundenSa.Text := FloatToStrF(RückreiseGesamtStundenSa,ffNumber,5,2);
    E_RückreiseReiseStundenSo.Text := FloatToStrF(RückreiseGesamtStundenSo,ffNumber,5,2);

    //Gesamt
    E_GesamtStdMo.text := FloatToStrF(GesamtStundenErgebnisMo,ffNumber,5,2);
    E_GesamtStdDi.text := FloatToStrF(GesamtStundenErgebnisDi,ffNumber,5,2);
    E_GesamtStdMi.text := FloatToStrF(GesamtStundenErgebnisMi,ffNumber,5,2);
    E_GesamtStdDo.text := FloatToStrF(GesamtStundenErgebnisDo,ffNumber,5,2);
    E_GesamtStdFr.text := FloatToStrF(GesamtStundenErgebnisFr,ffNumber,5,2);
    E_GesamtStdSa.text := FloatToStrF(GesamtStundenErgebnisSa,ffNumber,5,2);
    E_GesamtStdSo.text := FloatToStrF(GesamtStundenErgebnisSo,ffNumber,5,2);


  end;

end;
Ich weiß, schwer schwer umständlich das ganze, zumal ich auch Probleme habe ein Memo Feld mit mehreren Zeilen abzuspeichern. Dafür müsste ich ja jeder Zeile eine andere [Zahl] zuweisen.

Geht das alles nicht sowieso viel einfacher? Schwer viel arbeit, haha.

Aber das funktioniert ja alles. Ich habe wie gesagt nur Probleme, wenn ich eine Datei speichere und sie dann bei "FormCreate" sofort laden möchte.
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -

Geändert von ZeroX1337 ( 7. Aug 2014 um 11:42 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#23

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 11:43
Zu diesem Zeitpunkt gibt es ja die Unterkomponenten noch nicht. Nimm besser Loaded
Markus Kinzler

Geändert von mkinzler ( 7. Aug 2014 um 11:55 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#24

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 11:47
Es ist anscheinend schwerer als ich gedacht habe

Zeige uns per CopyPaste den Quelltext der Methode FormCreate .
Meinst du das wäre machbar?

Warum soll ich einen Quellcode posten, wenn der hier bereits gepostet wurde und ich diesen verwendet habe?
Weil es einfach nicht exakt der gleiche Quellcode ist?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo ( 7. Aug 2014 um 11:51 Uhr)
  Mit Zitat antworten Zitat
matthiaskary

Registriert seit: 28. Okt 2013
Ort: Hamburg
24 Beiträge
 
Delphi 10 Seattle Enterprise
 
#25

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 11:49
Hallo,
was du auch mal probieren kannst, das ganze im FormShow anstelle
vom FormCreate zu laden.
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#26

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 12:01
Zeige uns per CopyPaste den Quelltext der Methode FormCreate .
Meinst du das wäre machbar?
Bitte kein Sarkasmus.

Kleinen Moment bitte. Muss das erst noch mal schreiben. Das ist ja eine andere Textdatei.

Hallo,
was du auch mal probieren kannst, das ganze im FormShow anstelle
vom FormCreate zu laden.
Werde ich gleich auch mal versuchen, danke.
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#27

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 12:07
Speichern Profil: Nur die ersten Zeilen sind interessant, das andere sind die verschiedenen Sprachen.
Delphi-Quellcode:
procedure THeaderFooterwithNavigation.B_speichernoptionenClick(Sender: TObject);
var
    Profil: TStringList;
begin
   Profil := TStringList.Create;

   Profil.Add(E_vorname.text);
   Profil.Add(E_nachname.text);

   Profil.SaveToFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'profil.txt');
  //Hintergrund Bild
    if C_hintergrundbild.ItemIndex = 0 then
          HintergrundBlur.Visible := True;

    if C_hintergrundbild.ItemIndex = 1 then
          begin
          HintergrundBlur.Visible := False;
          HintergrundWeiß.Visible := True;
          end;

    if C_hintergrundbild.ItemIndex = 2 then
          begin
          HintergrundBlur.Visible := False;
          HintergrundWeiß.Visible := False;
          end;

  // Techniker Name Übertragen
  HeaderFooterwithNavigation.E_Servicetechniker.text := ( E_vorname.Text + ' ' + E_nachname.Text );

  // Sprache Englisch
if C_Sprache.ItemIndex = 1 then
  begin
  HeaderFooterwithNavigation.Tab_anreise.Text := 'Arrival';
  HeaderFooterwithNavigation.Tab_arbeit.Text := 'Work';
  HeaderFooterwithNavigation.Tab_rückreise.Text := 'Way back';
  HeaderFooterwithNavigation.L_datum.Text := 'Date';
  HeaderFooterwithNavigation.L_arbeitsbeginn.Text := 'Start of work';
  HeaderFooterwithNavigation.L_arbeitsende.Text := 'Work finished';
  HeaderFooterwithNavigation.L_arbeitsstd.Text := 'Work total';
  HeaderFooterwithNavigation.L_gesamtstd.Text := 'Total hours';
  HeaderFooterwithNavigation.L_warte.Text := 'Wait';
  HeaderFooterwithNavigation.L_mo.Text := 'Mon';
  HeaderFooterwithNavigation.L_di.Text := 'Tue';
  HeaderFooterwithNavigation.L_mi.Text := 'Wed';
  HeaderFooterwithNavigation.L_do.Text := 'Thr';
  HeaderFooterwithNavigation.L_fr.Text := 'Fri';
  HeaderFooterwithNavigation.L_sa.Text := 'Sat';
  HeaderFooterwithNavigation.L_so.Text := 'Sun';
  HeaderFooterwithNavigation.L_montagesundennachweis.Text := 'TIME-SHEET';
  HeaderFooterwithNavigation.L_auftragnr.Text := 'Order no.:';
  HeaderFooterwithNavigation.L_montagebeifirma.Text := 'Company name:';
  HeaderFooterwithNavigation.L_maschinentyp.Text := 'Machine type:';
  HeaderFooterwithNavigation.L_artderarbeit.Text := 'Kind of work:';
  HeaderFooterwithNavigation.L_Servicetechniker.Text := 'Technician:';
  HeaderFooterwithNavigation.L_Land.Text := 'Country:';
  HeaderFooterwithNavigation.L_Komnr.Text := 'Com. No.:';
  HeaderFooterwithNavigation.L_Montagezeiten.Text := 'Assembly';
  HeaderFooterwithNavigation.L_vonbis.Text := 'carried out:';
  HeaderFooterwithNavigation.L_bestätigung.Text := 'The customer herewith confirms the legally acceptance of the machine and/or the installation of same above time listing.';
  HeaderFooterwithNavigation.L_auftraggeber.Text := 'Customer';
  HeaderFooterwithNavigation.L_Monteur.Text := 'Technician';
  HeaderFooterwithNavigation.btnBack.Text := 'Back';
  HeaderFooterwithNavigation.B_zurücksetzen.Text := 'Clear fields';
  HeaderFooterwithNavigation.B_verschicken.Text := 'Send';
  HeaderFooterwithNavigation.B_laden.Text := 'Load';
  HeaderFooterwithNavigation.B_speichern.Text := 'Save';
  HeaderFooterwithNavigation.L_datumanreise.Text := 'Date';
  HeaderFooterwithNavigation.L_Reisebeginnanreise.Text := 'Begin';
  HeaderFooterwithNavigation.L_Reiseendeanreise.Text := 'End';
  HeaderFooterwithNavigation.L_zvanreise.Text := 'TS';
  HeaderFooterwithNavigation.L_reisestdanreise.Text := 'Hours';
  HeaderFooterwithNavigation.L_datumrückreise.Text := 'Date';
  HeaderFooterwithNavigation.L_Reisebeginnrückreise.Text := 'Begin';
  HeaderFooterwithNavigation.L_Reiseenderückreise.Text := 'End';
  HeaderFooterwithNavigation.L_zvrückreise.Text := 'TS';
  HeaderFooterwithNavigation.L_reisestdrückreise.Text := 'Hours';
  HeaderFooterwithNavigation.L_durchgeführtearbeiten.Text := 'Action taken, Remarks';
  HeaderFooterwithNavigation.L_benötigteersatzteile.Text := 'Parts required';
  HeaderFooterwithNavigation.L_Optionenoptionen.Text := 'Options';
  HeaderFooterwithNavigation.L_technikeroptionen.Text := 'Technician:';
  HeaderFooterwithNavigation.L_spracheoptionen.Text := 'Language:';
  HeaderFooterwithNavigation.L_hintergrundbildoptionen.Text := 'Background:';
  HeaderFooterwithNavigation.L_nachnameoptionen.Text := 'Last name';
  HeaderFooterwithNavigation.L_vornameoptionen.Text := 'First name';
  HeaderFooterwithNavigation.B_speichernoptionen.Text := 'Save';
  HeaderFooterwithNavigation.B_abbrechenoptionen.Text := 'Cancel';
  L_unterschriftinfo.Text := 'Enter your signature here!';
  L_unterschrift.Text := 'Signature';
  B_speichernunterschriftauftraggeber.text := 'Save';
  B_abbrechenunterschrift.text := 'Cancel';
  L_neu.text := 'New';
  B_speichernunterschriftmonteur.text := 'Save';
  B_abbrechenunterschriftmonteur.text := 'Cancel';
  B_neumonteur.text := 'New';
  B_optionen.Text := 'Options'
  end;

  // Sprache Deutsch
if C_Sprache.ItemIndex = 0 then
begin
  HeaderFooterwithNavigation.Tab_anreise.Text := 'Anreise';
  HeaderFooterwithNavigation.Tab_arbeit.Text := 'Arbeit';
  HeaderFooterwithNavigation.Tab_rückreise.Text := 'Rückreise';
  HeaderFooterwithNavigation.L_datum.Text := 'Datum';
  HeaderFooterwithNavigation.L_arbeitsbeginn.Text := 'Arbeitsbeginn';
  HeaderFooterwithNavigation.L_arbeitsende.Text := 'Arbeitsende';
  HeaderFooterwithNavigation.L_arbeitsstd.Text := 'Arbeitsstd.';
  HeaderFooterwithNavigation.L_gesamtstd.Text := 'Gesamtstd.';
  HeaderFooterwithNavigation.L_warte.Text := 'Warte';
  HeaderFooterwithNavigation.L_mo.Text := 'Mo';
  HeaderFooterwithNavigation.L_di.Text := 'Di';
  HeaderFooterwithNavigation.L_mi.Text := 'Mi';
  HeaderFooterwithNavigation.L_do.Text := 'Do';
  HeaderFooterwithNavigation.L_fr.Text := 'Fr';
  HeaderFooterwithNavigation.L_sa.Text := 'Sa';
  HeaderFooterwithNavigation.L_so.Text := 'So';
  HeaderFooterwithNavigation.L_montagesundennachweis.Text := 'Montage-Stunden-Nachweis';
  HeaderFooterwithNavigation.L_auftragnr.Text := 'Auftrag Nr.:';
  HeaderFooterwithNavigation.L_montagebeifirma.Text := 'Montage bei Firma:';
  HeaderFooterwithNavigation.L_maschinentyp.Text := 'Maschinentyp:';
  HeaderFooterwithNavigation.L_artderarbeit.Text := 'Art der Arbeit:';
  HeaderFooterwithNavigation.L_Servicetechniker.Text := 'Servicetechniker:';
  HeaderFooterwithNavigation.L_Land.Text := 'Land:';
  HeaderFooterwithNavigation.L_Komnr.Text := 'Kom. Nr.:';
  HeaderFooterwithNavigation.L_Montagezeiten.Text := 'Montagezeiten:';
  HeaderFooterwithNavigation.L_vonbis.Text := '(von/bis)';
  HeaderFooterwithNavigation.L_bestätigung.Text := 'Hiermit bestätigt der Auftraggeber die rechtsverbindliche Abnahme der Maschine und/oder der ausgeführten Montagearbeiten sowie die Richtigkeit der vorstehenden Aufstellung.';
  HeaderFooterwithNavigation.L_auftraggeber.Text := 'Auftraggeber';
  HeaderFooterwithNavigation.L_Monteur.Text := 'Monteur';
  HeaderFooterwithNavigation.btnBack.Text := 'Zurück';
  HeaderFooterwithNavigation.B_zurücksetzen.Text := 'Felder zurücksetzen';
  HeaderFooterwithNavigation.B_verschicken.Text := 'Verschicken';
  HeaderFooterwithNavigation.B_laden.Text := 'Laden';
  HeaderFooterwithNavigation.B_speichern.Text := 'Speichern';
  HeaderFooterwithNavigation.L_datumanreise.Text := 'Datum';
  HeaderFooterwithNavigation.L_Reisebeginnanreise.Text := 'Reisebeginn';
  HeaderFooterwithNavigation.L_Reiseendeanreise.Text := 'Reiseende';
  HeaderFooterwithNavigation.L_zvanreise.Text := 'ZV';
  HeaderFooterwithNavigation.L_reisestdanreise.Text := 'Reisestunden';
  HeaderFooterwithNavigation.L_datumrückreise.Text := 'Datum';
  HeaderFooterwithNavigation.L_Reisebeginnrückreise.Text := 'Reisebeginn';
  HeaderFooterwithNavigation.L_Reiseenderückreise.Text := 'Reiseende';
  HeaderFooterwithNavigation.L_zvrückreise.Text := 'ZV';
  HeaderFooterwithNavigation.L_reisestdrückreise.Text := 'Reisestunden';
  HeaderFooterwithNavigation.L_durchgeführtearbeiten.Text := 'Durchgeführte Arbeiten, Bemerkungen';
  HeaderFooterwithNavigation.L_benötigteersatzteile.Text := 'Benötigte Ersatzteile';
  HeaderFooterwithNavigation.L_Optionenoptionen.Text := 'Optionen';
  HeaderFooterwithNavigation.L_technikeroptionen.Text := 'Techniker:';
  HeaderFooterwithNavigation.L_spracheoptionen.Text := 'Sprache:';
  HeaderFooterwithNavigation.L_hintergrundbildoptionen.Text := 'Hintergrundbild:';
  HeaderFooterwithNavigation.L_nachnameoptionen.Text := 'Nachname';
  HeaderFooterwithNavigation.L_vornameoptionen.Text := 'Vorname';
  HeaderFooterwithNavigation.B_speichernoptionen.Text := 'Speichern';
  HeaderFooterwithNavigation.B_abbrechenoptionen.Text := 'Abbrechen';
  L_unterschriftinfo.Text := 'Setzen Sie hier Ihre Unterschrift!';
  L_unterschrift.Text := 'Unterschrift';
  B_speichernunterschriftauftraggeber.text := 'Speichern';
  B_abbrechenunterschrift.text := 'Abbrechen';
  L_neu.text := 'Neu';
  B_speichernunterschriftmonteur.text := 'Speichern';
  B_abbrechenunterschriftmonteur.text := 'Abbrechen';
  B_neumonteur.text := 'Neu';
  B_optionen.Text := 'Optionen'
end;

  P_optionen.Visible := false;
  HintergrundSchwarz.Visible := false;

HintergrundSchwarzTop.Visible := false;
HintergrundSchwarzBot.Visible := false;
end;
Laden Profil:
Delphi-Quellcode:
procedure THeaderFooterwithNavigation.FormCreate(Sender: TObject);
var
    ende, start: TDateTime;
    Daten: TStringList;
    Profil: TStringList;
begin
  { This defines the default active tab at runtime }
  TabControl1.First(TTabTransition.ttNone);
  Tab_Formular.TabIndex := 1;

  //Montagezeit initialisierung
  D_montagezeitvon.Date := Date();
  D_datummo.date := StartOfTheWeek(D_montagezeitvon.date);
  D_montagezeitbis.Date := D_datummo.Date + 6;
  D_datumdi.Date := D_datummo.Date +1;
  D_datummi.Date := D_datummo.Date +2;
  D_datumdo.Date := D_datummo.Date +3;
  D_datumfr.Date := D_datummo.Date +4;
  D_datumsa.Date := D_datummo.Date +5;
  D_datumso.Date := D_datummo.Date +6;

  //Optionen Feld wird ausgeblendet bei Start
  P_optionen.Visible := false;

  //HintergrundSchwarz wird bei Start ausgeblendet
  HintergrundSchwarz.Visible := false;
  HintergrundSchwarzTop.Visible := false;
  HintergrundSchwarzBot.Visible := false;

  // Für Unterschrift
  Signature:= TList<TSigCapRec>.Create;
  P_unterschrift.Visible := false;
  // Für Unterschrift Auftraggeber
  Image_UnterschriftAuftraggeber.Bitmap.Assign(R_UnterschriftAuftraggeber.MakeScreenshot);
  // Für Unterschrift Monteur
  Image_UnterschriftMonteur.Bitmap.Assign(R_UnterschriftAuftraggeber.MakeScreenshot);

  //Profil laden
  Profil := TStringList.Create;
  Profil.LoadFromFile(TPath.GetDocumentsPath+TPath.DirectorySeparatorChar+'profil.txt');

  E_servicetechniker.Text := Profil[0] + Profil[1];

end;
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#28

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 12:15
Bin ich jetzt der Einzige, der sich denkt, was hat #27 mit #22 zu tun

Was sagt der Debugger, in welcher Zeile verabschiedet sich das Programm?
(zieh jedes Haar einzeln aus der Nase)

PS Wenn du keinen Sarkasmus magst, dann poste doch selbständig alle relevanten Informationen zur Frage
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#29

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 12:22
Bin ich jetzt der Einzige, der sich denkt, was hat #27 mit #22 zu tun

Was sagt der Debugger, in welcher Zeile verabschiedet sich das Programm?
(zieh jedes Haar einzeln aus der Nase)
Bei #22 ging es darum, Einstellungen zu laden. Bei #27 geht es darum, Profileinstellungen zu laden WÄHREND dem Start, so dass das Formular immer dementsprechend aussieht wie es zuvor abgespeichert wurde. Als Beispiel halt mit dem Namen des Servicetechnikers. So muss er ihn nur einmalig eintragen.

Tut mir leid, ich programmiere erst seit dem ich im Praktikum bin und habe auf Hilfe hier im Forum gehofft, ohne dämliche Zwischenbemerkungen. Habe die App bisher immer ohne Debugger gestartet, da er das Programm dann viel schneller ausführt. Vielleicht etwas dämlich von mir.

Jetzt funktioniert das ganze jedoch. Habe den Fehler gefunden. Hatte, als ich das das erste mal ausprobiert habe, vergessen das Feld vom Servicetechniker als Ausgabe anzugeben. Dementsprechend hat er zwar die Sachen geladen, aber nicht ausgeben können.

Zitat:
PS Wenn du keinen Sarkasmus magst, dann poste doch selbständig alle relevanten Informationen zur Frage
Werde mir beim nächsten mal mehr Mühe geben.

Nachtrag: Wie mache ich das mit der Abfrage, ob die Datei besteht? Auf dem Simulator funktioniert es nämlich, auf dem Gerät nicht.
Miniaturansicht angehängter Grafiken
unbenannt.png  
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -

Geändert von ZeroX1337 ( 7. Aug 2014 um 12:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#30

AW: Firemonkey abspeichern (iOS)

  Alt 7. Aug 2014, 12:33
Deine Ausgangsfrage war doch .... (nochmal nachschauen)
Ich habe ein Problem. Wenn ich die gespeicherte .txt Datei bei "FormCreate" laden will (im Sinne von Profileinstellung), dann stürzt die App sofort ab. Was mache ich falsch? Per Button kann ich die laden...
Egal ob Anfänger oder nicht, aber das der QuellCode aus #22 absolut gar nichts mit FormCreate (laden der 'profil.txt') und somit dem Starten der Anwendung zu tun hat, sollte schon klar sein.

Und da stellt sich doch die berechtigte Frage, warum du uns diesen Teil zeigst mit dem Hinweis
Warum soll ich einen Quellcode posten, wenn der hier bereits gepostet wurde und ich diesen verwendet habe?
Und wie du jetzt selber gesehen hast, konnte man diesen Fehler nur dann erkennen, wenn man den QuellCode für das Speichern und Laden der 'profil.txt' sehen kann.

Darum den echten QuellCode zeigen und kein Verweis auf irgendeinen ähnlich gearteten
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 07:36 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