Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
ab_transfer:dev:widgets [2011/09/06 08:35]
Patrick Wacker angelegt
ab_transfer:dev:widgets [2012/04/08 11:20] (aktuell)
Patrick Wacker [Folgende Widgets stehen jetzt zur Verfügung] ein paar korrekturen
Zeile 9: Zeile 9:
 Alle Widgets sollten von QWidget abgeleitet werden, damit sie auch komplett disabled werden können. Alle Widgets sollten von QWidget abgeleitet werden, damit sie auch komplett disabled werden können.
  
-==== Absender/​Empfänger ====+----
  
-=== Felder ​===+==== Folgende Widgets stehen zur Verfügung ==== 
 + 
 +^ Widget Name              ^ Beschreibung ^ 
 +| widgetAccountComboBox ​   | Eine ComboBox über die der lokale Account gewählt werden kann |  
 +| widgetAccountData ​       | Für Absender bzw. Empfänger. Je nachdem ob für lokal oder remote erstellt | 
 +| widgetDate ​              | Zur Datumsauswahl. | 
 +| widgetLineEditWithLabel ​ | Ein LineEdit mit einem Label (links/​rechts/​oben/​unten kann angegeben werden | 
 +| widgetPurpose ​           | Verwendungszweck-Eingabe | 
 +| widgetRecurrence ​        | Wiederholungs-Einstellungen für einen Dauerauftrag | 
 +| widgetTextKey ​           | Auswahl des Textschlüssels | 
 +| widgetValue ​             | Eingabe des Betrags | 
 + 
 +Alle widgets besitzen '​public Slots' zum setzen der entsprechenden Limits (von der Bank vorgegeben) und prüfen die Eingabe auf die Einhaltung der Limits. Genauere Beschreibung der vorhandenen Methoden und Eigenschaften siehe [[http://​schmufu.dyndns.org/​doxy/​abTransfers/​|doxygen Dokumentation]]. 
 + 
 +Über widgetTransfer werden diese widgets dann verwendet:​ 
 + 
 +<​graphviz dot center>​ 
 +digraph widgetTransferStruktur { 
 + ​ graph [ rankdir="​LR"​ ]; 
 +  node [ shape=record,​ fontname=Helvetica,​ fontsize=10 ]; 
 +        edge [ fontname=Helvetica,​ fontsize=10 ]; 
 +  
 +        widgetAccountComboBox [ label="​widgetAccountComboBox"​ ]; 
 +        widgetAccountData [ label="​widgetAccountData"​ ]; 
 +        widgetDate [ label="​widgetDate"​ ]; 
 +        widgetLineEditWithLabel [ label="​widgetLineEditWithLabel"​ ]; 
 +        widgetPurpose [ label="​widgetPurpose"​ ]; 
 +        widgetRecurrence [ label="​widgetRecurrence"​ ]; 
 +        widgetTextKey [ label="​widgetTextKey"​ ]; 
 +        widgetValue [ label="​widgetValue"​ ]; 
 +        widgetTransfer [ label="​widgetTransfer",​ style=filled,​ fillcolor=yellow ]; 
 +         
 +        widgetAccountData -> widgetAccountComboBox [ label="​local Account Selection",​ color="​blue"​ ]; 
 +        widgetAccountData -> widgetLineEditWithLabel [ label="​remote Name", color="​green"​ ]; 
 +        widgetAccountData -> widgetLineEditWithLabel [ label="​remote BLZ", color="​green"​ ]; 
 +        widgetAccountData -> widgetLineEditWithLabel [ label="​remote KtoNr.",​ color="​green"​ ]; 
 +        widgetAccountData -> widgetLineEditWithLabel [ label="​remote Bankname",​ color="​green"​ ]; 
 +         
 +        widgetRecurrence -> widgetDate [ label="​first Execution",​ color="​purple"​ ]; 
 +        widgetRecurrence -> widgetDate [ label="​last Execution",​ color="​purple"​ ]; 
 +        widgetRecurrence -> widgetDate [ label="​next Execution",​ color="​purple"​ ]; 
 + 
 + 
 + 
 +        widgetTransfer -> widgetAccountData [ label="​local Account",​ color="​blue"​ ]; 
 +        widgetTransfer -> widgetAccountData [ label="​remote Account",​ color="​green"​ ]; 
 +        widgetTransfer -> widgetDate [ label="​execution Date (DatedTransfer)",​ color="​red"​ ]; 
 +        widgetTransfer -> widgetRecurrence [ label="​recurrence",​ color="​purple"​ ]; 
 +        widgetTransfer -> widgetPurpose [ label="​purpose"​ ]; 
 +        widgetTransfer -> widgetTextKey [ label="​textkey"​ ]; 
 +        widgetTransfer -> widgetValue [ label="​value"​ ]; 
 + 
 + 
 +  }  
 +</​graphviz>​ 
 + 
 + 
 + 
 +Je nachdem für welchen AB_JOB_TYPE das widgetTransfer erstellt wird werden die entsprechenden widgets erstellt und angezeigt. In den meisten Fällen können nur zugelassene Daten eingegeben werden. Zusätzlich existiert in widgetTransfer noch die Funktion isGeneralInputOk(),​ diese prüft alle Eingaben und gibt zurück ob alles OK ist oder nicht.\\  
 +Erst wenn isGeneralInputOk() true zurückgibt dürfen die Daten des widgetTransfer genutzt werden um eine transaction damit aus zu füllen! 
 + 
 + 
 +==== Absender/​Empfänger ====  
 +(erstellt: widgetAccountData) ​ --- //​[[sod@schmufu.dyndns.org|Patrick Wacker]] 2011/09/07 12:08// 
 + 
 +{{svg>​form_absender.svg}} 
 + 
 +=== Eingabe Edits ===
   * Name   * Name
   * Kontonummer   * Kontonummer
Zeile 18: Zeile 85:
  
 === Funktionen === === Funktionen ===
-  * setName() / getName(QString+^ Funktion ​          ^ Beschreibung ^ 
-  * setAccountNumber() / getAccountNumber() +setName() ​         | Setzen und auslesen des eingegeben Namens | 
-  * setBankCode() / getBankCode() +| setAccountNumber() | Setzen und auslesen der Kontonummer | 
-  * setBankName() / getBankName()+| setBankCode() ​     | Setzen und auslesen der Bankleitzahl | 
 +| setBankName() ​     | Setzen und auslesen des Institutnamen | 
 + 
 +Das das Widget sowohl als Absender als auch Empfänger eingesetzt werden können soll muss es einige Funktionen zum Einstellen der Möglichkeiten besitzen: 
 +^ Funktion ​          ^ Beschreibung ^ 
 +| allowEdit(bool) ​   | Editieren durch den Benutzer zulassen oder verbieten | 
 +| allowDropKnownRecipient(bool) | Bekannter Empfänger per Drag'​n'​Drop einfügen zulassen/verbieten | 
 +| allowDropLocalBankAccount(bool| LocalAccount per Drag'​n'​Drop einfügen zulassen/​verbieten | 
 +| setLimit..() ​      | Setzen der Limits wie vom Kreditinstitut vorgegeben | 
 + 
 + 
 + 
 +---- 
 +==== Betrag ==== 
 +(erstellt: widgetValue) ​ --- //​[[sod@schmufu.dyndns.org|Patrick Wacker]] 2011/09/07 12:08// 
 +Die Währung sollte per default auf der Kontowährung stehen und nur bei Internationel Überweisungen änderbar sein. (Umrechnungshilfe anbieten?​) 
 + 
 +=== Eingabe Edits === 
 +  * Währung 
 +  * Betrag 
 + 
 +=== Funktionen === 
 +^ Funktion ​     ^ Beschreibung ^ 
 +| setCurrency() | Setzen und auslesen der Währung | 
 +| setValue()    | Setzen und auslesen des Betrages | 
 +| setLimit...() | Setzen der Limits wie vom Kreditinstitut vorgegeben | 
 + 
 + 
 +---- 
 +==== Verwendungszweck ==== 
 +(erstellt: widgetPurpose) ​ --- //​[[sod@schmufu.dyndns.org|Patrick Wacker]] 2011/09/07 12:08// 
 +  * Es sollte ein QPlainTextEdit verwendet werden welches automatisch nach der Anzahl der maximalen Zeichen pro Zeile einen Umbruch einfügt.  
 +  * Die noch verbleibende Anzahl an möglichen Zeichen sollte angezeigt werden. 
 +  * Nur Zeichen zulassen die dem ZKA-Standart entsprechen. 
 + 
 +=== Eingabe Edits === 
 +  * Verwendungszweck 
 + 
 +=== Funktionen === 
 +^ Funktion ​     ^ Beschreibung ^ 
 +| setPurpose()  | Setzen und auslesen des Verwendungszwecks | 
 +| setLimitMaxLen() | Setzen der Maximalen Zeilen Länge | 
 +| setLimitMaxLines() | Setzen der maximal möglichen Zeilen | 
 + 
 + 
 + 
 + 
 +---- 
 +==== IBAN ==== 
 +für spätere Internationale Überweisungen 
 + 
 +=== Eingabe Edits === 
 + 
 +=== Funktionen === 
 + 
 + 
 + 
 + 
 +---- 
 +==== BIC ==== 
 +für spätere Internationale Überweisungen 
 + 
 +=== Eingabe Edits === 
 + 
 +=== Funktionen === 
 + 
 + 
 + 
 +---- 
 +==== Dauerauftrag ==== 
 +Einstellungen die für einen Dauerauftrag relevant sind. 
 + 
 +=== Eingabe Edits === 
 +  * cycle (Weekly/Monthly) 
 +  * period ​(1/​2/​3/​4/​5/​6/​7/​8 x cycle
 +  * executionDay 
 +  * firstExecution 
 +  * lastExecution 
 + 
 + 
 +=== Funktionen === 
 +  * Alle Funktionen zum setzen und lesen der Daten 
 +  * sowie zum Setzen der vom Institut vorgegebenen Limits 
 + 
 + 
 + 
 +---- 
 +==== Textschlüssel ==== 
 +(erstellt: widgetTextKey ​--- ​//​[[sod@schmufu.dyndns.org|Patrick Wacker]] 2011/09/07 12:08// 
 +Alle von der Bank für die jeweilige Transaction gültigen Textschlüssen auswählbar anzeigen. 
 + 
 +=== Eingabe Edits === 
 +  * ComboBox zur Auswahl des zu verwendenden Textschlüssels 
 + 
 +=== Funktionen === 
 +  * Alle Funktionen zum setzen und lesen der Daten 
 +  * sowie zum Setzen der vom Institut vorgegebenen Textschlüssel 
 + 
 + 
 + 
 + 
 +---- 
 +==== Datum ==== 
 +evt. dies als Unterwidget in Dauerauftrag verwenden 
 + 
 +=== Eingabe Edits === 
 +  * Label (zur Beschriftung) 
 +  * QDateEdit mit QDatePicker 
 + 
 +=== Funktionen === 
 +  * Alle Funktionen zum setzen und lesen der Daten 
 +  * sowie zum Setzen der vom Institut vorgegebenen Limits 
  
-  * allowEdit(bool) 
-    * Editieren durch den Benutzer zulassen oder verbieten 
-  * allowDropKnownRecipent(bool) 
-    * Bekannter Empfänger per Drag'​n'​Drop einfügen zulassen/​verbieten 
-  * allowDropLocalBankAccount(bool) 
-    * LocalAccount per Drag'​n'​Drop einfügen zulassen/​verbieten 
-  * setLimitName() 
-  * setLimitAccountNumber() 
-  * setLimitBankCode() 
-  * setLimitBankName() 
  
Projektwerkzeuge