OBS/Adminhilfe/Pax Listenrework: Unterschied zwischen den Versionen
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 4: | Zeile 4: | ||
==Funktionen== | ==Funktionen== | ||
===Gruppen/Spalten hinzufügen=== | ===Gruppen/Spalten hinzufügen=== | ||
{{Hinweis|Bei Mehrfachdrucken können Probleme auftreten, wenn im Druck die Spalten auf jeder Seite neu definiert werden. Diese Probleme können entweder mit '''qRep_SReset(EZ);''' | {{Hinweis|Bei Mehrfachdrucken können Probleme auftreten, wenn im Druck die Spalten auf jeder Seite neu definiert werden. Diese Probleme können entweder mit '''qRep_SReset(EZ);''' am Anfang des Drucks oder '''qRep_SDeleteGruppe(EZ, 'gruppenname');''' vor dem Anlegen der Gruppe verhindert werden.}} | ||
{| | {| | ||
|- | |- | ||
| Zeile 65: | Zeile 65: | ||
==Anwendungsbeispiele== | ==Anwendungsbeispiele== | ||
Die neuen Funktionen werden auch in einer Beispieldatei zusammengefasst. Diese Datei kann als Auftrags-Userdruck in ein Test-OBS kopiert und durch das Öffnen der Vorschau des normalen Drucks eines beliebigen Auftrags ausgeführt werden. [http://wiki.bergau.de/images/6/6e/Auftrag.pax '''>> Download Beispieldatei <<'''] | |||
Anstatt für kleine Änderungen die PublicVarInit kopieren zu müssen, kann jetzt nach dem Aufruf der PublicVarInit eine eigene Funktion aufgerufen werden, die die Spalten modifiziert. | Anstatt für kleine Änderungen die PublicVarInit kopieren zu müssen, kann jetzt nach dem Aufruf der PublicVarInit eine eigene Funktion aufgerufen werden, die die Spalten modifiziert. | ||
| Zeile 98: | Zeile 100: | ||
Regex: | Regex: | ||
([a-zA-Z0-9]*?)\.AddField\('','([a-zA-Z0-9]*?)'[\s]*,[\s]*([a-zA-Z0-9\s\-\+\_]*?)[\s]*,(tajLeftJustify|tajRightJustify)[\s]*,'(C|N)'\); | ([a-zA-Z0-9]*?)\.AddField\('','([a-zA-Z0-9]*?)'[\s]*,[\s]*([a-zA-Z0-9\s\-\+\_]*?)[\s]*,(tajLeftJustify|tajRightJustify)[\s]*,'(C|N)'\); | ||
Ersetzen durch: | Ersetzen durch: | ||
qRep_SAddGruppe(EZ, '\1', '\2', \3, \4, '\5'); //Ersetzt | qRep_SAddGruppe(EZ, '\1', '\2', \3, \4, '\5'); //Ersetzt | ||
oder | |||
(\s*\/{0,2}\s*)(.*?)\.AddField\((?:\s*'.*'\s*),(\s*'.*?'\s*),(\s*.*?\s*),\s*(tajLeftJustify|tajRightJustify|tajCenter)\s*,\s*('[CDN]')\s*\); | |||
Ersetzen durch: | |||
$1qRep_SAddGruppe(EZ, '$2', $3, $4, $5, $6); | |||
{{Hinweis|Manuelles ersetzen von SetRowLength mit SCalc nötig!}} | {{Hinweis|Manuelles ersetzen von SetRowLength mit SCalc nötig!}} | ||
Aktuelle Version vom 15. Juli 2016, 09:09 Uhr
Dies ist eine zugriffsgeschützte Seite.
- System Überwachung
- DEP deaktivieren
- Darstellung unter Windows 7
- Einwahl auf Windows 2000 Server
- Preislisten
- Datenbank Sicherung
- Customize
- Zentrale
- Support Macro
- Service Debug
- Historienprotokoll (Datenänderung OBS)
- Fernwartungsprobleme
- Startparameter
- Fehler beim Kassenabschluss
- Diverse Informationen
- A ras.pbk
- B Command Line Interpreter
- C File Zilla Benutzer XML erzeugen
- D1 OBS_UPDATE.EXE zum OBS Update Server hochladen
- D2 SUPPORT_MACRO zum OBS Update Server hochladen
- H1 Remote Service Protokoll-Übersicht (Alles)
- H Remote ServiceProtokoll-Übersicht
- I Remote Service Commands
- I1 (Admin) Globaler Hinweis für Updates
- J Liste der OBS Updates
- K Angemeldete Service Firmen
- L Systeminformationen einlesen
- M Kundendaten anzeigen
- M1 Kundendatenbankinformationen anzeigen
- N Kundendaten einlesen
- O Kunden-Update Informationen anzeigen
- P Modul Registrierung OBS
- Q App Verwaltung
- S1 Firmen Statistik Protokolle OBS
- S2 Statistik Notfallkassen
Mit Version 001601 wurden das Spaltenlistenobjekt der Drucke überarbeitet. Es beinhaltet jetzt nicht nur die absoluten Größen und den Namen, sondern auch die vorgesehene relative Größe und einen Gruppennamen, anhand dessen nachträgliche Änderungen einfacher möglich sind.
Funktionen
Gruppen/Spalten hinzufügen
var alt : TStandardListe;
begin
xPosition := iLinkerRand;
nGesBreite := 0;
alt := TStandardListe.Create();
alt.AddField(,'alt1',20,tajLeftJustify,'C');
alt.AddField(,'alt2',30,tajLeftJustify,'C');
alt.AddField(,'alt3',10,tajLeftJustify,'C');
alt.AddField(,'alt4',15,tajLeftJustify,'C');
SetRowLength(alt);
alt.free;
end;
|
begin
qRep_SAddGruppe(EZ, 'neu','neu1',20,tajLeftJustify,'C');
qRep_SAddGruppe(EZ, 'neu','neu2',30,tajLeftJustify,'C');
qRep_SAddGruppe(EZ, 'neu','neu3',10,tajLeftJustify,'C');
qRep_SAddGruppe(EZ, 'neu','neu4',15,tajLeftJustify,'C');
qRep_SCalc(EZ, 'neu', iLinkerRand, iSeitenbreite);
end;
|
Die Nutzung der Standardliste entfällt, Spalten werden direkt über qRep_SAddGruppe(EZ, cGruppenname, cSpaltenname, nRel.Größe, Ausrichtung, Datentyp); definiert.
Anschließend muss die absolute Größe der Spalten der erstellten Gruppe mit qRep_SCalc(EZ, cGruppenname, nAnfang, nEnde); neu berechnet werden.
Berechnen der Spaltenbreiten
qRep_SCalc(EZ, cGruppenname, nAnfang, nEnde);
Gruppen/Spalten löschen
Zum Löschen gibt es zwei Befehle:
qRep_SDelete(EZ, cSpaltenname); qRep_SDeleteGruppe(EZ, cGruppenname);
Spalten nach einer anderen einfügen
Es können jetzt Spalten an einer bekannten Position eingefügt werden:
qRep_SAddGruppeNach(EZ, cGruppenname, cSpaltenname, nRel.Größe, Ausrichtung, Datentyp, cVorgruppe);
Relative Größe von Spalten anpassen
Die relative Größe von Spalten kann jetzt einfach über eine Funktion geändert werden.
qRep_SSetRelSize(EZ, cSpaltenname, nNeueGröße);
Eigenschaften abrufen
Anzahl der Gruppen
qRep_SCount(EZ);
Relative Gesamtbreite einer Gruppe
qRep_SGruppeRelSize(EZ, cGruppenname);
Anwendungsbeispiele
Die neuen Funktionen werden auch in einer Beispieldatei zusammengefasst. Diese Datei kann als Auftrags-Userdruck in ein Test-OBS kopiert und durch das Öffnen der Vorschau des normalen Drucks eines beliebigen Auftrags ausgeführt werden. >> Download Beispieldatei <<
Anstatt für kleine Änderungen die PublicVarInit kopieren zu müssen, kann jetzt nach dem Aufruf der PublicVarInit eine eigene Funktion aufgerufen werden, die die Spalten modifiziert. Diese Funktion löscht die Positionsspalte und fügt eine Spalte Bemerkung hinter die Spalte Einheit ein.
procedure CustomVarInit();
begin
qRep_SDelete(EZ, 'Posnr');
qRep_SAddGruppeNach(EZ, 'aBody', 'Bemerkung',20 ,tajLeftJustify ,'C', 'Einheit');
qRep_SCalc(EZ, 'abody', iLinkerRand, iSeitenbreite);
end;
Diese Funktion kann beispielsweise bedingt Spalten entfernen:
procedure CustomVarInit();
begin
if (not Ja('Preis anzeigen?')) then begin
qRep_SDelete(EZ, 'epreis');
qRep_SDelete(EZ, 'gpreis');
qRep_SCalc(EZ, 'abody', iLinkerRand, iSeitenbreite);
end;
end;
Übersicht
qRep_SAddGruppe(EZ, cGruppenname, cSpaltenname, nRel.Größe, Ausrichtung, Datentyp); qRep_SAddGruppeNach(EZ, cGruppenname, cSpaltenname, nRel.Größe, Ausrichtung, Datentyp, cVorgruppe); qRep_SCalc(EZ, cGruppenname, nAnfang, nEnde); qRep_SDelete(EZ, cSpaltenname); qRep_SDeleteGruppe(EZ, cGruppenname); qRep_SSetRelSize(EZ, cSpaltenname, nNeueGröße); qRep_SCount(EZ); qRep_SGruppeRelSize(EZ, cGruppenname);
Ersetzen RegEx
Regex:
([a-zA-Z0-9]*?)\.AddField\(,'([a-zA-Z0-9]*?)'[\s]*,[\s]*([a-zA-Z0-9\s\-\+\_]*?)[\s]*,(tajLeftJustify|tajRightJustify)[\s]*,'(C|N)'\);
Ersetzen durch:
qRep_SAddGruppe(EZ, '\1', '\2', \3, \4, '\5'); //Ersetzt
oder
(\s*\/{0,2}\s*)(.*?)\.AddField\((?:\s*'.*'\s*),(\s*'.*?'\s*),(\s*.*?\s*),\s*(tajLeftJustify|tajRightJustify|tajCenter)\s*,\s*('[CDN]')\s*\);
Ersetzen durch:
$1qRep_SAddGruppe(EZ, '$2', $3, $4, $5, $6);