Das Problem hatten wir auch gehabt.
Ich habe einfach aus der Leerdatenbank, die ich mir für solche Zwecke zur Seite gelegt habe, das Formular abgespeichert und die RES in die Hauptdatenbank geladen.
Die Ausdruckskonfiguration habe ich separat gespeichert als .frf-Datei und musste sie so nur wieder laden und siehe da es funktioniert.
Geht aber auch nur, wenn im Objektinspektor nichts geändert wurde.
@Geri12: Ist die abweichende Einstellung des Abspeicherns im Designer implementiert?
Auftrag und Auftragsbestätigung
Moderator: SYNERPY
-
- Beiträge: 589
- Registriert: Mi Apr 16, 2008 7:51 am
Leider nicht: alle RES-Dateien (Masken, Reporte und Utilities) werden immer unter dem entspr. eigenen Namen (Bsp. oben: Adressmaske -> FRMV_BADR.RES) im Verzeichnis 'AvERP' ins Unterverzeichnis 'MASKEN' gespeichert. Eine schon vorhandene Datei gleichen Namens wird ohne Nachfrage überschrieben.NPLADMIN hat geschrieben:@Geri12: Ist die abweichende Einstellung des Abspeicherns im Designer implementiert?
Da ich mir immer eine funktionierende Maske erhalten möchte, speichere ich aus Sicherheitsgründen VOR der ersten Arbeit die Maske erst mal ab. Zudem ARBEITE ich IMMER nur in einer Arbeits-Datenbank ! Wer z.B. mit dem IBExpert-Tool 'IBExpert Backup Restore' eine regelmäßige nächtliche Datenbanksicherung durchlaufen läßt mit den Schritten Backup und Restore, kann am nächsten Tag mit der Restore-Datenbank zum einen die ordnungsgemäße Funktion seines Backups prüfen, zum anderen hat er aber auch immer eine topaktuelle Datenbank zum Austesten neuer Module an der Hand. So hat man im Fall der Fälle immer noch die lauffähige Original-DB.
Bsp.: Adressmaske erweitern -> Ich gehe (in der Arbeits-DB) wie folgt vor ...
1. Ich öffne im Designer die Maske FRMV_BADR zum Bearbeiten und speichere sie gleich wieder
2. Im Verzeichnis MASKEN benenne ich FRMV_BADR.RES um nach FRMV_BADR__VJJMMTT_HHMM_Original.RES
3. Ich öffne im Designer die Maske FRMV_BADR zum Bearbeiten und nehme meine Änderungen / Erweiterungen vor
4. Ich speichere immer mal zwischendrin (zum Austesten von Teilabschnitten)
5. Im Verzeichnis MASKEN benenne ich FRMV_BADR.RES um nach FRMV_BADR__VJJMMTT_HHMM.RES
Ist eine sog. "Zwischenversion" an sich schon in Ordnung, hänge ich an den Namen noch ein '_OK' vor das '.RES' an. Geht im nächsten Schritt was schief, dann KOPIERE ich mir die letzte OK-Version, benenne sie nach der Original-Version FRMV_BADR.RES zurück und lese die im Designer mit [aus RES einlesen] wieder in die Datenbank ein ...
-> Die Schritte 3 bis 5 wiederholen sich beliebig oft.
Gruß
Geri12
Software-Version: V4.2.5.2
FDB-Version: AvERP2008-A.14
Geri12
Software-Version: V4.2.5.2
FDB-Version: AvERP2008-A.14
-
- Beiträge: 589
- Registriert: Mi Apr 16, 2008 7:51 am
P.S. Das Umbenennen kann man halbwegs automatisieren, indem man den folgenden Quellcode in eine Batchdatei speichert und dort in der 1.Zeile jeweils den Namen der entspr. aktuell bearbeiteten Maske einträgt ...
Vorgehen:
1. Den folgenden Quellcode kopieren ...... und in eine Textdatei speichern, welche im Verzeichnis MASKEN neu erstellt wurde.
2. Die Textdatei umbenennen (einmalige Aktion) zur BAT-Datei. Der Name der Datei bei mir lautet '_RENAME_RES_.BAT'. Die Extension BAT ist notwendig, damit das WIN-System weiß, dass dies eine Batchdatei ist, welche ausgeführt werden soll.
3. In der 1.Zeile der BAT-Datei jeweils den Namen ändern (entspr. Maske/Report/Utility, an der/dem im Designer gearbeitet wird)
4. Im Designer nach einer Änderung die Arbeit speichern. Falls es die in der Batchdatei benannte RES ist -> obige BAT-Datei ausführen (Doppelklick im Explorer auf die BAT-Datei oder auf einem verknüpften Icon auf dem Desktop) und die Datei wird (halb-)automatisch umbenannt ...
Vorgehen:
1. Den folgenden Quellcode kopieren ...
Code: Alles auswählen
@SET MASKENNAME=FRMV_BADR
:START
@cls
@SET TAG=%date:~0,2%
@SET MONAT=%date:~3,2%
@SET JAHR=%date:~-2%
@SET MYDATE=%JAHR%%MONAT%%TAG%
@SET STUNDEN=%time:~0,2%
@SET MINUTEN=%time:~3,2%
@SET MYTIME=%STUNDEN%%MINUTEN%
@SET ZEHNERSTD=%STUNDEN:~0,1%
@IF "%ZEHNERSTD%" EQU "1" GOTO :WEITER
@IF "%ZEHNERSTD%" EQU "2" GOTO :WEITER
@SET MYTIME=0%STUNDEN:~1,1%%MINUTEN%
:WEITER
@SET ERWEITERUNG=__V%MYDATE%_%MYTIME%.RES
:PRUEFEN
@IF EXIST %MASKENNAME%%ERWEITERUNG% GOTO :ERR1
@IF NOT EXIST %MASKENNAME%.RES GOTO :ENDE
:UMBENENNEN
@MOVE %MASKENNAME%.RES %MASKENNAME%%ERWEITERUNG%
@IF NOT EXIST %MASKENNAME%%ERWEITERUNG% GOTO :ERR2
GOTO :ENDE
:ERR1
@ECHO ACHTUNG, eine Datei mit diesem Namen existiert schon ...
GOTO :ENDE
:ERR2
@ECHO ACHTUNG, die Datei konnte nicht umbenannt werden ...
GOTO :ENDE
:ENDE
2. Die Textdatei umbenennen (einmalige Aktion) zur BAT-Datei. Der Name der Datei bei mir lautet '_RENAME_RES_.BAT'. Die Extension BAT ist notwendig, damit das WIN-System weiß, dass dies eine Batchdatei ist, welche ausgeführt werden soll.
3. In der 1.Zeile der BAT-Datei jeweils den Namen ändern (entspr. Maske/Report/Utility, an der/dem im Designer gearbeitet wird)
4. Im Designer nach einer Änderung die Arbeit speichern. Falls es die in der Batchdatei benannte RES ist -> obige BAT-Datei ausführen (Doppelklick im Explorer auf die BAT-Datei oder auf einem verknüpften Icon auf dem Desktop) und die Datei wird (halb-)automatisch umbenannt ...
Gruß
Geri12
Software-Version: V4.2.5.2
FDB-Version: AvERP2008-A.14
Geri12
Software-Version: V4.2.5.2
FDB-Version: AvERP2008-A.14
-
- Site Admin
- Beiträge: 2673
- Registriert: Di Feb 10, 2004 5:48 am
- Wohnort: Bayreuth
Wie Geri schon schreibt: Eigentlich arbeitet man in einer Demodatenbank und spielt die Änderungen in das Live-System nur noch ein.
Wer auf der Echtdatenbank ändert und vorher vergisst eine Sicherheitskopie der Maske zu erstellen bzw. umzubenennen, der muss eben den Umweg in Kauf nehmen, ein älteres Backup zu restoren und damit die Sicherheitskopie zu bekommen.
Eine Abfrage bei jedem Speichern einer Maske, ob die Datei (die es meist schon gibt) wirklich überschrieben werden soll, kommt nicht infrage.
Wer auf der Echtdatenbank ändert und vorher vergisst eine Sicherheitskopie der Maske zu erstellen bzw. umzubenennen, der muss eben den Umweg in Kauf nehmen, ein älteres Backup zu restoren und damit die Sicherheitskopie zu bekommen.
Eine Abfrage bei jedem Speichern einer Maske, ob die Datei (die es meist schon gibt) wirklich überschrieben werden soll, kommt nicht infrage.
-
- Beiträge: 1
- Registriert: Do Jul 14, 2016 3:13 pm
Re: Auftrag und Auftragsbestätigung
Falls es kaum 6.5 Jahre später noch jemanden außer mir interessiert:
bzgl. der Fehlermeldung, es fehle ein :=, war das Problem, dass zwei Zeilen zu lang waren und beim Speichern aufgeteilt werden.
Und zwar diese hier:
LB_SprachID.Caption := AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
// Sprachkennzeichen jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf d_rep1
wurden zu:
LB_SprachID.Caption :=
AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
// Sprachkennzeichen jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf
d_rep1
Ich habe daraus Folgendes gemacht, dann gehts:
tmp := AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
LB_SprachID.Caption := tmp;
// Sprachkz. jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf d_rep1
bzgl. der Fehlermeldung, es fehle ein :=, war das Problem, dass zwei Zeilen zu lang waren und beim Speichern aufgeteilt werden.
Und zwar diese hier:
LB_SprachID.Caption := AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
// Sprachkennzeichen jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf d_rep1
wurden zu:
LB_SprachID.Caption :=
AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
// Sprachkennzeichen jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf
d_rep1
Ich habe daraus Folgendes gemacht, dann gehts:
tmp := AsString(frmdata.q_v_bfirma.FieldByName('BADR_BSPRA_ID_DRUSPRA'));
LB_SprachID.Caption := tmp;
// Sprachkz. jetzt auch Firmenstamm d_rep11 statt aus Rechnungskopf d_rep1