Samstag, 12. Dezember 2015

AvERP2016 -Übersicht über wesentliche Änderungen



 AvERP2016 -Übersicht über wesentliche ÄnderungenQuelle:SYN01 2015-09-09 Neuerungen AvERP2016.01

Datenhistorie pro Maske 
In jeder Maske werden automatisch die letzten 10 bearbeiteten Datensätze des entsprechenden Users ausgewiesen und können aus der Historie heraus geöffnet werden.

Suche individuell speichern 
Jeder Benutzer hat die Möglichkeit, sich beliebig viele Suchabfragen zu speichern. Diese werden als separater Menüpunkt in AvERP dargestellt.

Sachkonten mit Buchungsschlüsseln  
Die bestehenden Kontenfelder wurden durch eine eigene Tabelle ersetzt. Zudem wird der SKR03 Kontenrahmen von DATEV bereits in der leeren Datenbank standardmäßig mit ausgeliefert.
Weiterhin können in AvERP nun Konten als Automatikkonto aktiviert/deaktiviert werden, wodurch zu den nicht Automatikkonten Buchungsschlüssel hinterlegt werden können, die an die in die Buchungstexte übernommen und an die Schnittstelle übermittelt werden.
Des Weiteren können pro Sachkonto Texte hinterlegt werden, die auf der Kundenrechnung mit ausgewiesen werden.

Warengruppenabhängige Artikelnummernkreise 
 In der Warengruppe Verkauf kann nun ein Nummernkreis definiert werden. Somit können warengruppenabhängig unterschiedliche Artikelnummernkreise definiert werden.

Bezugskosten auf Rechnungen verteilen  
Im Einkaufsprozess wurde die Möglichkeit geschaffen, Bezugskosten anderer Lieferanten (z.B. der Spedition) auf die Originalrechnung zu verteilen. Hierdurch erhöht sich der kalkulatorische Buchungswert der Originalrechnung und somit die Lagerbewertung.
Hierbei stehen mehrere Möglichkeiten der Verteilung (Gewicht, Warenwert, manuelle Verteilung) zur Verfügung.

Lagerbewertung zum gleitenden Durchschnittspreis, inkl. Lagerpool  
Die Bewertung zum gleitenden Durchschnittspreis wurde vollständig in AvERP integriert.
Hier wurde nun auch die Möglichkeit einer Nachbewertung (z.B. abweichender Wert im Rechnungseingang, Bezugskosten, etc.) implementiert.
Zudem kann ein Lagerpool erstellt und mehreren Lagern zugewiesen werden.
Innerhalb eines Lagerpools erfolgt die Bewertung zum gleitenden Durchschnittspreis lagerübergreifend über alle Lager des Pools.

Ausbau der Sachmerkmale 
 Die Auswahllisten können nun als eigene Datensätze in einem Unterprogramm zum Einzelmerkmal hinterlegt werden.

Lieferschein- und Rechnungsschnellerfassung  
Für die vereinfachte und übersichtliche Erfassung von Lieferscheinen und Rechnungen wurden zwei neue Masken erstellt. Diese beziehen sich auf die jeweiligen Rückstände und bieten diverse Suchfilter für das einfache Erstellen von Lieferscheinen und Rechnungen.

Neugestaltung diverser Masken  
Im Rahmen des neuen Release wurden viele Masken überarbeitet, um die Benutzerführung zu optimieren.
Dies betrifft u.a. die Angebots- und Auftragsverwaltung, Kundenlieferschein, Kundenrechnung, Bestellung, Wareneingang, Rechnungseingang, Stückliste und Fertigungsaufträge.

Umbau der Währungskurse 
 Die Währungskurse in AvERP wurden neu geschaffen.
Es besteht nun die Möglichkeit, in einem neuen Unterprogramm zur entsprechenden Währung die Währungskurse der anderen Währungen zu hinterlegten. Beispielsweise können somit unter der Währung „Euro“ die Kurse zu anderen Währungen hinterlegt und die Berechnung der Richtung nach vorgebeben werden (um Rundungsdifferenzen zu vermeiden).

E-Mail-Versand und PDF-Erstellung aus AvERP heraus  
Aus der AvERP-Druckvorschau heraus wurde nun die PDF-Generierung angepasst und auf eigene Komponenten umgestellt, so dass die erzeugten PDFs in einer guten Qualität erstellt werden.
Weiterhin besteht nun die Möglichkeit, E-Mails direkt aus der Druckvorschau an den entsprechenden Empfänger zu versenden. Hierbei werden die bestehenden Funktionen für den E-Mail-Versand verwendet, um die Empfänger vorbelegen zu können und Texteingaben durchzuführen.
Die E-Mail kann daraufhin direkt an das Standard-E-Mail-Programm übergeben werden.

Ausbau des AvERP Projekt- und Fertigungsplaners  
Die beiden Masken für die Projektplanung und Fertigungsplanung wurden ebenso wie die automatische Terminierung der Projektpositionen und Arbeitsgänge weiter ausgebaut.

Besitzverhältnisse im Lager  
Das Besitz- oder Sperrverhältnis kann innerhalb eines Lagerplatzes pro Artikel gesteuert werden.
Hier wird nun das Besitz- und Sperrverhältnis bei Umbuchungen auf andere Lagerplätze vererbt.
Weiterhin kann gesteuert werden, ab wann die Menge in den eigenen Besitz übergeht. Erst dann wird die Lagerbuchung mit Kosten versehen und erhöht den Lagerwert.
Auch werden alle Übergänge in den eigenen Besitz dokumentiert und können dem Lieferanten zur Abrechnung zur Verfügung gestellt werden. Hierfür wurde eine eigene Maske erstellt. Diese Maske dient der Ermittlung der Besitzübergänge und dem Druck.

Mahnungsübersicht 
 Innerhalb einer neuen Maske können mehrere Mahnungen derselben Mahnstufe an einen Kunden gefiltert und auf einem Druck zusammen ausgewiesen werden.

Mandantenwechsel zum AvERP-User ausgelagert  
Die Möglichkeit des Mandantenwechsels wurde in ein neues Unterprogramm zum AvERP- User verlagert und wird nicht mehr über den Mitarbeiterstamm gesteuert.

AvERP-exe für Gabelstapler-Terminal  
Über eine neue AvERP-exe können die Anforderungen eines Gabelstaplers abgebildet werden. Hierzu gehören u.a. die Abarbeitung von Umlagerungsaufträgen, individuelle Umlagerungen, Bearbeitung von Kommissionlisten und die permanente Lagerplatzinventur.

Kommissionsschnellerfassung Verkauf  
Für die Kommissionierung der Lieferrückstände im Verkauf wurde eine vereinfachte, neue Maske erstellt.

Produktionslinien/Produktionsstandorte  
Verschiedene Produktionslinien oder Produktionsstätten (an verschiedenen Standorten) können im neuen Release 2016 mit AvERP abgebildet werden. Diese Logik wurde vollständig in AvERP integriert.

Lieferterminermittlung  
Zur vereinfachten Ermittlung des Liefertermins zu einer Auftragsposition wurde ein neues Unterprogramm erstellt, über das die gewünschte Stückliste oder der gewünschte Arbeitsstammplan, innerhalb der gewünschten Produktionslinie gewählt werden kann. Daraufhin werden die benötigten Materialien und Kapazitäten anhand des Kundenwunschtermins geprüft und ein möglicher Terminvorschlag erstellt.

Automatische Lagerumbuchungen 
Im Falle eines abweichenden Lagers zwischen Fertigungsauftrag und Kundenauftragsposition; Fertigungsauftrag und Dispovorschlag sowie Fertigungsmaterial und Unterfertigungsauftrag können automatisch Lagerumbuchungen erzeugt werden, die sich mengenmäßig an den Bedarfsverursacher anpassen.
Hierbei kann eine Transportzeit zwischen den Lagern definiert werden, die als Ausbuchungsdatum und separates Einbuchungsdatum in die Lagerumbuchung übergeben wird und in der Lagerplanung Berücksichtigung findet.

Lagerplanung für Beistellteile im Lieferantenlager 
 Für das Lieferantenlager werden durch eine Bestellung mit Beistellteilen ein Bedarf und ein geplanter Lagereingang geplant, wobei Beistellteile auch in Dispovorschlägen für das Lieferantenlager erzeugt werden.

Monatsabschluss für die Mitarbeiterzeitauswertung  
Im Personalwesen können Monate für alle oder einzelne Mitarbeiter abgeschlossen werden, wodurch keinerlei Änderungen in den abgeschlossenen Monaten mehr möglich sind.

Export von Statistiken  
In den AvERP-Statistiken kann ein Intervall für einen automatischen Export hinterlegt werden.
Durch den AvERP-Jobserver können nunmehr Statistiken automatisch auf einem vorgegeben Pfad erzeugt und abgelegt werden.

Prüfpflichtige Artikel 
Der gesamte Prozess des WE-Workflows wurde überarbeitet, wodurch Wareneingänge mit gemischten Artikeln (prüfpflichtige Artikel und nicht prüfpflichtige Artikel) nun verbucht werden können.
Für prüfpflichtige Artikel wird automatisch eine Umbuchung auf den Umschlagplatz durchgeführt und ein Workflow für die Prüfung erzeugt.
Zudem wurde die Logik auch um Lagerumbuchungen zwischen Lagern verschiedener Standorte erweitert.

Warengruppenabhängige Preislisten 
Es besteht die Möglichkeit, einem Kunden pro Warengruppe eine unterschiedliche Preisliste zuzuordnen, die bei der Verkaufspreisberechnung berücksichtigt wird.

Ausbau des Angebotskonfigurators 
Im Angebotskonfigurator können nun die Verkaufspreise, Einstandspreise und Mindestpreise für den zu konfigurierenden Artikel anhand der verwendeten Komponenten ermittelt werden.

Fertigungsstruktur 
Das grafische Auflösen von Stücklisten und Arbeitsstammplänen wurde um die Fertigungsstruktur erweitert.
Diese bezieht sich auf die tatsächliche Materialverwendung im Falle eines Fertigungsauftrags, mit der Berücksichtigung der entsprechenden Arbeitspläne oder Stücklisten und der Berücksichtigung der Kennzeichen Vormontage und BG auflösen.

Rechnungs-E-Mail-Adresse 
In der Rechnungsadresse des Kunden kann nun eine E-Mail Adresse für den automatischen E-Mail-Versand hinterlegt werden. Diese E-Mail-Adresse wird bis zur Rechnung weitergegeben.
Über eine neue Maske „Rechnungsstapel" können die für den E-Mail-Versand vorgesehenen Rechnungen freigegeben werden, wodurch diese durch den AvERP-Druckserver als E-Mail verschickt werden.

Lagerumbuchung - Lieferscheinkommissionierung 
Für den Versand von Waren zwischen verschiedenen Standorten wurde eine neue Maske erstellt, mit der die Ausgänge einem Lieferschein zugeordnet werden können und mit der die Eingänge im entsprechenden Standort gebucht werden können.

Werkzeugverwaltung 
Die bestehende Werkzeugverwaltung in AvERP wurde ausgebaut und u.a. um Wartungsaufträge für Werkzeuge erweitert.

Buchungsartabhängige Stammlagerplätze 
Innerhalb eines Lagers können buchungsartabhänge Stammlagerplätze definiert werden.

IC Schnittstelle über mehrere AvERP-Datenbanken 
Der IC-Prozess kann nun auch über verschiedenen Datenbanken, an verschiedenen Standorten genutzt werden.
Per Schnittstelle werden die Stammdaten abgeglichen und die Bestellungen, Aufträge, Lieferscheine und Rechnungen in die entsprechenden Datenbanken übertragen.
Weiterhin werden Artikelkonfigurationen und Angebotsstücklisten über diese Schnittstelle weitergereicht.

Steuerung von Lackieranlagen 
Für die Ansteuerung von Lackieranlagen wurden eigene Terminalmasken erstellt, um einen Warenträger mit Materialien verschiedener Fertigungsaufträge zu bestücken und durch die Bereiche der frei definierbaren Lackieranlage zu steuern.
Jeder Bereich der Lackieranlage entspricht einem Arbeitsgang und einer Maschine.
Die Zeiten werden proportional auf die Fertigungsaufträge zurückgemeldet.

Anzahlungsrechnungen für Rahmenaufträge 
Bereits für Rahmenaufträge können nun verkaufsseitig Anzahlungsrechnungen erstellt werden.
Diese können daraufhin den Rechnungen der eigentlichen Abrufe gegengerechnet werden.

Ausbau der „generellen Information“ 
Zu den generellen Informationen können nun die Masken hinterlegt werden, in denen die generelle Information erscheinen soll.
Somit kann man eine Meldung auf bestimmte Masken einschränken. Hierfür können Templates erstellt und der entsprechenden generellen Information zugewiesen werden.

Automatische Arbeitsplanerstellung 
Für die automatische Erstellung vorn Arbeitsplänen können in den Fertigungswarengruppen zu den Artikeln (Stücklistenpositionen) Arbeitsgänge hinterlegt werden.
Nach Erstellen der Stückliste kann daraufhin der Arbeitsplan erzeugt werden, wodurch aus den Fertigungswarengruppen des Kopfartikels und der Stücklistenpositionen die Arbeitsgänge in den Arbeitsplan übernommen werden.

Lieferschwellen in den EU-Mitgliedsstaaten 
Bei Überschreiten der Lieferschwelle unterliegt die Lieferung an Privatpersonen nicht im Ursprungsland der Umsatzsteuer sondern im Bestimmungsland.

Onlineprüfung der USTID 
Im Kundenstamm und in der Auftragsverwaltung kann die USTID des Kunden nun Online abgefragt und auf Gültigkeit überprüft werden.

Schnittstellen
      EDI Line
      IVEAS
      DELISprint
      Afterbuy
      SolidWorks RC












Donnerstag, 8. Oktober 2015

Firebird 2.5.7 verwenden !!!

Wenn man schon länger mit AvERP arbeitet hat man vermutlich anfangs per Komplettpaket den damals aktuellen Firebird-Server aufgesetzt und sich möglicherweise nicht regelmäßig über neue Releases von firebird auf dem Laufenden gehalten.

Das wird bestraft!

Mein AvERP-Update-Rechner habe ich nach dem Prinzip "never change an running system" behandelt. Mit dem Ergebnis, das das Hochziehen einer relativ kleinen Datenbank (<300 MB) auf den Stand AvERP2015 länger als 4 Stunden dauerte - gleicher Rechner - gleiches Verfahren auf eine Datenbank mit 3.5 GB ist vorher in erträglichen 2 Stunden durchgelaufe.

Im Problemfall auf Firebird 2.5.2 lief alles flott bis zum ALTER PROCEDURE. Dann wurde jede Procdure quasi einzeln über 2 Sekunden bis zu gefühlten 2  Minuten bitweise vermutlich mehrfach in die Datenbank mit Hammer und Meißel eingeschlagen. Beobachtung im Task/Ressourcenmanager zeigte einen bis auf 1.4 GB steigenden Speicherkonsum des Firebird-Servers - für eine Datenbank, die sich mittlerweile auf ca 500 MB vergrößert hatte.

Welche Änderung nach Deinstallation Firebird 2.5.2 und Neu-Installation Firebird 2.5.4.
Verwende die 64-Bit-Win-Version (Firebird-2.5.4.26856_0_x64)

Änderung am 26.04.2017:
Mittlerweile ist Firebird 2.5.7 Release Stand 14.02.2017 aktuell
Firebird Bugs Fixed

Das Verfahren Script mit ca.einem DataBaseCompare Script von  40 GB Größe war nach 14 Minuten durchgelaufen.
14 Minuten anstatt mehr als 4 Stunden!
Speicherbedarf für Firebird-Server max. 200 MB.

Das erklären die Firebird 2.4 Release Notes:



Betrachte ich diversen AvERP-Projekte scheint auch die AvERP.exe wesentlich zügiger zu arbeiten - nicht nur die neue 6.2-Version auch die alten Schätze der 4.2.5 er Generation.

Programmstart 4.2.5 auf Datenbank 2012.02  weniger als  2 Sekunden nach Login.
1. Öffnen Auftragsverwaltung 2,154 Sekunden   2.Öffnen 0,034 Sekunden
1. Öffnen Positionen 1,694 Sekunden                  2.Öffnen 0,073 Sekunden

Programmstart 6.1.69 auf Datenbank 2015.04 weniger als 1 Sekunde zum Login
1.Öffnen Auftragsverwaltung 0,567 Sekunden  2.Öffnen 0,535 Sekunden
1.Öffnen Positionen 0,811 Sekunden                 2.Öffnen 0,789 Sekunden

Getestet mit lokaler Installation ( Firebird 2.5.4 als localhost)
Win 7
Core i5-4960   3.5 GHZ
16 GB RAM  ( 8GB ungenutzt)
Datenbank auf Samsung SSD 850 an SATA 6 GB/s Anschluß














Montag, 17. August 2015

AvERP Version2015.04 mit Patch

Mit Datum 20.07.2015 auf der SYNERPY Download-Seite veröffentlicht:

AvERP-Komplettpaket Version 2015.04
Datenbank-leer und
Datenbank Demo aktualisiert

(AvERP-exe-Paket ohne Änderungen)

Patch 2015.04 v.2015.04
Download

Version: 2015.04 Dateigröße: 6.31 MB

Kurzer Blick in Patch-Komplett-Script zeigt:
Geänderte Ressourcen




FRMV_BLLCP Maske WE-Positionen

FRMV_BAUF Maske Auftrag

FRMV_BAUFPO Maske Auftragspositionen

FRUBAUFPO_BFA_NEU Utility FA erzeugen

FRMV_BFAAB Maske Zukauf Arbeitsgang

FRMV_BRLS Maske Lieferschein

FRMV_BSAST Maske Arbeitsgangdefinition

FRMV_BZAHL Maske Zahlungsbuch

FRMV_BLINV Maske Laufende Inventur

FRMV_BKBTLLC Maske Kunden Beistellteil WE

FRUBAUFPO_STORNO Utility Auftpos Stornieren

FRUBSAS_BFA_ANLEGEN Utility FA über Stückliste anlegen

FRUBBES_STORNO Utility Bestellung Storno

FRUBLLCR_BLRCR_STORNO Utility Rüclstände Einkauf Storno

FRMV_BEINLAG Maske Lagereinbuchung

FRMV_BZAHLZA Maske Zahlungsausgang

FRMV_BVERLEIH Maske Verleih-Schnellerfassung

FRUBFIBUKTO_IMPORT Utility Sachkonten Import

FRDBRLS Druck Lieferschein





Geänderte Tabellen (7)




BARTTX ADD CONSTRAINT Artikelstamm – Bestelltext

BDFOXJOBS DROP LISTE DataFox – Aufgaben

BLIZ DROP CONSTRAINT Resourcen – Lizenzen

BMAND DROP CONSTRAINT


BMSGSQLPO ADD CONSTRAINT UNQ1


BREKL ADD CONSTRAINT


BWALPO ADD CONSTRAINT Warenausgang – Lieferant





Geänderte Views (9)




V_BMAND ADD CONSTRAINT


V_BBES



V_BDFOXJOBS



V_BINVRK



V_BKASSCDPO



V_BLIZ



V_BLLCP



V_BLLCPT



V_BREKLPO



Außerdem 173 Procedures und 75 Trigger

Da kostet es zuviel Zeit die Details zu Erkennen.
Da der Patch über einer Datenbank Stand 2015.03 völlig problemlos durchläuft, sehe ich keinen Grund, der gegen das Einspielen des Patches spricht, aber mehr als 150 Argumente, die für das Patchen einer nicht angepassten AvERP-Standard-Datenbank aus 2015 sprechen.


Donnerstag, 6. August 2015

Restore bricht ab: duplicate value in unique index "RDB$INDEX_39"

Nachdem ich mal wieder viel Zeit in die Fehlersuche gestellt habe, weil ein Restore einer Datenbank über gbak mit Fehler abbricht hier noch mal die Lösung veröffentlicht. Vielleicht hilft es einem Firebird-Admin diese Zeit zu sparen...

gbak: ERROR: attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_39"

RDB$INDEX_39 ist der Index auf den Rollen.
gbak versucht die Rolle RDB$ADMIN anzulegen,
die es leider in der Instanz schon gibt.

Lösung: Drop Rolle RDB$ADMIN und RESTORE erneut versuchen.

Blöd ist es, wenn man eine aktive Datenbank mit dem Restore überschreibt und keine Möglichkeit hat die Rolle zu Droppen, weil es in der Firebird-Instanz keine weitere Datenbank gibt.

Zur Rolle RDB%ADMIN:
Gibt es seit Firebird 2.1 und ermöglicht es Anwendern über System-Authentizierung ohne konkrete Anmeldung als User SYSDBA mit allenSYSDBA- Rechten die Datenbank zu administrieren.





Dienstag, 19. Mai 2015

Neuerungen AvERP 2015

Kurz vor dem 2016er Release möchte ich noch meine Fleissarbeit zur Bewertung der Änderungliste AvERP 2015 veröffentlichen.

Mehr als 550 Einträge in der AvERP 2015 Release Notes.
Da fällt der Überblick schwer.
Ich habe mir die Mühe gemacht, die einzelnen Änderungen nach Möglichkeit
nach Bereich1 Menü Bereich2 Maskenname zu ordnen.

Die wichtigsten Gruppen:
   Anzahl Änderungen
BDE                        15   BDE-Touch, CE-Scanner, Stapler-Terminals, Datafox
DISPO                     13  Beschleunigung!
REPORTS               24  zahlreiche Umstellungen auf FR4
EINKAUF               58  generelle Umstrukturierung bzgl. Rückstände und Nebenkosten
FERTIGUNG          43
FIBU                       10 Buchungschlüssel für DATEV-Export aus Kassenbuch, Zahlungseingang
STATISTIKEN        19
INTERCOMPANY   6  Kundenauftrag mit anderem Mandanten löst Intercompany Prozess aus
INVENTUR              8
LAGER                   18  Summierte Lagerrückschau, Warenträger
PLANTAFEL           5
PROJEKT               26   Schwerpunkt Ticket-Verwaltung
PZE                         14
REKLAMATION   12
SCHNITTSTELE    9    u.A. DataWarehouse Full Export, Import OpenOffice, XML-Lieferant
ARTIKELSTAMM  32  diverse F4 Funktionen erweitert
MANDANT              5   u.A. Mandant kopieren
STORE                    26  Kasse / Storemanabger
SYSTEM                 24  Universeller Datenaustausch mit FremdDB
VERKAUF              60  Detailpflege in allen Bereichen von der Anfrage bis zu Kommissionierung und Fracht


Änderungliste Averp2015 nach Kategorien sortiert
Link Öffnet die Tabelle auf Google-Drive



Freitag, 17. April 2015

AvERP Designer: FR2 Reports mit AvERP.exe 6.1

Die aktuelle AvERP.exe unterstützt nicht mehr alle Features aus "alten" FR2-Reports.
Das ist gut so!
Nie wieder Zeit mit dieser vorsindflutlichen Designer-Umgebung verbrennen!!

Aber, wenn man doch schon so wichtige Reports damit erstellt hat, gibt es nicht doch einen Weg, auch mit der aktuellen AvER.exe (bin zur Zeit bei 6.1.0.69) die alten Reports zu nutzen?

Sollen Reports als Beleg zu einem Master-Datensatz gedruckt werden, wie z.B. beim Lieferschein, könnte es unter gewissen Umständen machbar sein. Geht es um das Thema mehre Datensätze markiert im Mehfachauswahl-Tabellen-Fenster gemeinsam in einem Report drucken, verweigert die neue Exe grundsätzlich den Dienst für FR2-Reports.
Dazu mein Beitrag aus dem Februar 2014 sepa-lauf-druck-kontrollzettel-von-fr2.

Was zu ersetzen ist:

1. OnFormShow q_v_bmand q_v_bfirma

Zugriff auf

  • frmData.q_v_bmand
  • frmData.q_v_bfirma

2. OnFormShow Aktuelle Daten zur aufrufenden Maske ermitteln

Das Konstrukt

            b := lbFormname.caption;
            z := Application.FindComponent(b);  // Zugriff auf Maske hier BFA
                                          // damit auch überflüssig
            // Zugriff auf z.q_1.FieldByName mit AvERP.exe 6.1.0.69
            //             in FR2-Report OnFormShow NICHT MEHR möglich
            //lbBFA_ID.caption := AsString(z.q_1.FieldByName('ID')); 

WorkAround zu 1. frmData-q_v_bmand q_v_bfirma 

Daten aus den Tabellen BMAND, BFIRMA direkt einlesen, wenn nötig.


 Quick&Dirty - Konstanten setzen


OnFormShow:
sNein := copy(frmdata.sJaNein,2,1);
sJa := copy(frmdata.sJaNein,1,1);

MitAGB := sNein;//AsString(frmData.q_v_bmand.FieldByName('AGB_JN'));
Logo_jn:= sJa;  //AsString(frmData.q_v_bfirma.FieldByName('FORMULAR_LOGODRUCK'));
MASKEDIT_1.Text := sNein; // kein testausdruck
MASKEDIT_2.Text := sNein;
MASKEDIT_3.Text := sNein;
MASKEDIT_4.Text := Logo_jn;
Maskedit_5.Text := sNein;
MASKEDIT_6.text := sNein;
MASKEDIT_7.text := sNein;
MASKEDIT_8.Text := sNein;
Maskedit_9.Text := MitAGB;


WorkAround zu 2. AsString(z.q_1.FieldByName('ID')); 


Es gibt 2 Wege die Daten-Queries im Report zu versorgen.

1. Der Klassische Weg Sql-Text zu q_rep1...nn

q_rep1 als Master-Querie mit dem aktuellen Datensatz belegen
Alle weiteren Daten über Master-Links falls es sich um Tabellen oder Views handelt oder über MasterParamLinks für Procedures oder sonst zu bindendende Parameter mit übergeordneten Queries verknüpfen.

2. Der dynamische Weg Q_Rep mit Eingaben binden

Vor Druck im Script BtnOKOnKlick die Daten-Queries schließen, Eingabe-Parameter binden und über Open aktualisieren.

Beispiel aus meiner so geretteten Sägeliste FRDBFA_SAEGELISTE_GLOBAL
 
Leider habe ich nicht mehr die BFA.ID im Label lbBFA_ID.caption im OnFormShow aus der Q_1
der aufrufenden Maske - dem Fertigungsauftrag BFA zur Verfügung.
Ist aber gar nicht so schlimm, denn auch die Query q_rep1 steht auf der View V_BFA und kann damit
die Datensatz ID an den Report liefern.

Das dynamische Binden über q_rep3.ParamByName('BFA_ID', lbBFA_ID.caption) kann man einfach auskommentieren und durch die Initalisierung der Queries 
hier q_rep3:
über 
MasterSource = d_rep1  und
MasterParamLinks.Strings  = 'BFA_ID=V_BFA.ID'  setzen.

Auszug aus dem lesbaren Teil der Resource, wie 
inherited q_rep1: TIB_Query
SQL.Strings = (
'SELECT * FROM V_BFA')
end
inherited q_rep2: TIB_Query
SQL.Strings = (
'SELECT * FROM V_BSAST'
'WHERE ID = :BSAST_ID')
end
inherited q_rep3: TIB_Query
SQL.Strings = (
'SELECT * FROM P_BFA_SAEGELISTE_TEMP(:BFA_ID, :BSAST_ID, ' +
':ART)')
MasterSource = d_rep1
MasterParamLinks.Strings = (
'BFA_ID=V_BFA.ID')
ParamValues = (




Nachtrag zum Thema Datenbank-Upgrade und FR2-Reports


Kommt es durch Datenbank-Upgrade zur Struktur-Änderungen in der Datenbank die die benutzten Queries betreffen, es ist hilfreich mit einer 4.2.5er exe zu testen. Die neue 6.1er exe zeigt dann im FR2 freundlich eine leere Seite 1 und bleibt ohne weitere Meldung hängen. Vermutlich wird der DebugModus wie unter F1 Hilfe angezeigt abgefragt und der Anwender wird von aussagekräftigen Fehlermeldungen verschont.
Glücklich zeigt die ältere 4.2.5er exe eher, wo der Hase im Pfeffer liegt...



Nicht das das finden der Struktur-Änderungen nach Datenbank-Upgrade dann ein Vergnügen wäre.

Beim Versuch FRDCMLISMB den klassischen alten Lieferschein zum Laufen zu bringen
bin ich wie folgt gestolpert:

"
Macht das Umstellen des Lieferscheins als Reports FDRCMLISMB Sinn?

Eher nicht:
Datenbankstruktur-Änderungen erfordern zunächst Änderungen in Queries:
Q_REP4
q_rep5
Q_REP28
Q_rep33 statt BRRCP_ID_LINKKEY BRLSP_ID_LINKKEY
betrifft Texte BRLSPA / BRLSPT /V_BRLSPVERPA / V_BRLSPFR
Q_rep26: V_BRLS.BAUFPO_BPROJPO_BPROJ_MASKEBKEY verliert den Präfix BAUFPO
und kann anschließend auch nicht mehr gedruckt werden

Allein BAUFPO_BROJ... kommt an 8 verschiedenen Stellen im FR2-Report vor
(zuletzt in bdDetailDaten wo die Sichtbarkeit gesteuert wird
aber auch bei der Frage Label Projekt und nochmal dabei ob der Doppelpunkt dahinter gedruckt werden soll."