Anlage Table mit Spalten (Spaltensorter wird hier bereits zugewiesen!)
|
|
- Hildegard Hertz
- vor 8 Jahren
- Abrufe
Transkript
1 Dokumentiertes Beispiel für die Implementierung eines Viewers als Ergänzung um Folienvortrag SWT / JFace Thomas Bauer, Peli Service Gmbh, tbberg@t-online.de // Class EdbGuiE0100 // Erfassung Tagesprotokoll (Lebensmittelkonsum) // First Created on tbauer // TB Abschluss Ersterstellung public class EdbGuiE0100 extends Window { Anlage Table mit Spalten (Spaltensorter wird hier bereits zugewiesen!) table = new Table(parent, style); // Spalte 0 - MAHLZEIT_COLUMN: Mahlzeit TableColumn column = new TableColumn(table, SWT.LEFT, 0); column.settext("mahlzeit"); column.setwidth(115); // wenn Spalte angeklickt wird: nach Mahlzeiten sortieren column.addselectionlistener(new SelectionAdapter() { public void widgetselected(selectionevent e) { tableviewer.setsorter( new EdbGuiE0100ViewerSorter(EdbGuiE0100ViewerSorter.MAHLZEIT)); ); Anlage TableViewer // *** Anlage des TableViewer auf der zuvor angelegten Table tableviewer = new TableViewer(table); // Übergib ein Array mit Spaltennamen an den TableViewer tableviewer.setcolumnproperties(this.columnnames); Anmerkung: Die Klassenvariable columnnames ist folgendermaßen deklariert // Set the tableger column property names (property name=spaltename) private final String MAHLZEIT_COLUMN = "Mahlzeit"; private final String MENGE_COLUMN = "Verbrauchsmenge"; private final String LMBEZ_COLUMN = "Lebensmittel"; private final String GERICHT_COLUMN = "Gericht"; private final String NMENGE_COLUMN = "Normalverbrauchsmenge"; private final String FETT_COLUMN = "Fettanteil"; private final String WASSER_COLUMN = "Wasserantzeil"; // Set column names private String[] columnnames = new String[] { MAHLZEIT_COLUMN, MENGE_COLUMN, LMBEZ_COLUMN, GERICHT_COLUMN, NMENGE_COLUMN, FETT_COLUMN, WASSER_COLUMN ; Anlage Array mit CellEditor's inkl. Eingabevalidierung // // Lege Array mit cell editoren an (so viele Elemente wie Spalten) // CellEditor[] editors = new CellEditor[this.columnNames.length]; // Column 0 - MAHLZEIT_COLUMN: Mahlzeit Text ComboBoxCellEditor comboeditor = new ComboBoxCellEditor(table, this.arrmahlzeittext, SWT.READ_ONLY SWT.DROP_DOWN); editors[0] = comboeditor; // Column 1 - MENGE_COLUMN: Menge (Text with digits only). Listener für Prüfung // Eingabe (Ziffern, Komma und Tausenderpunkte erlaubt) TextCellEditor texteditor = new TextCellEditor(table);
2 ((Text) texteditor.getcontrol()).addverifylistener(new VerifyListener() { public void verifytext(verifyevent e) { // Zahl wird im Format 1000,99 oder (Beispiel) eingegeben boolean isok = true; if (!e.text.equals("")) { char[] arrtext = e.text.tochararray(); for (int i = 0; i < arrtext.length; i++) { if (" ,.".indexOf(arrText[i]) < 0) { isok = false; e.doit = isok; ); editors[1] = texteditor; CellEditor's dem Viewer zuordnen // Assign the cell editors to the viewer tableviewer.setcelleditors(editors); CellModifier dem Viewer zuordnen // Set the cell modifier for the viewer tableviewer.setcellmodifier(new EdbGuiE0100CellModifier(this)); DefaultSorter dem Viewer zuordnen // Set the default sorter for the viewer tableviewer.setsorter(new dbguie0100viewersorter(edbguie0100viewersorter.mahlzeit)); Getter für ColumnNames // getcolumnnames (Aufruf durch EdbGuiE0100CellModifier) Array mit Spaltennamen als List */ public List getcolumnnames() { return Arrays.asList(this.columnNames); Getter, der dem CellModifier Zugriff gewährt auf die Texte (Werte- Repräsentation) in Multiple-Choice-Zellen (Auswahllisten) // getchoices (wird von EdbGuiE0100CellModifier aufgerufen) property Spaltenname array of choices for a multiple choice cell */ public String[] getchoices(string property) { if (this.mahlzeit_column.equals(property)) return this.arrmahlzeittext; else return new String[] {; Getter, der dem CellModifier Zugriff gewährt auf das Datenmodell // getdbcursor (wird von EdbGuiE0100CellModifier aufgerufen) Array mit Spaltennamen als List */ public EdbModTagProtokollCur getedbmodtagprotokollcur() { return edbmodtagprotokollcur; Nach Änderung im CellModifier: Aufruf satzchanged() aus EdbModTagProtokollCur, der wiederum ruft updatesatz() aus dem Content-Provider und der wiederum ruft update() aus dem TableViewer ContentProvider-Implementierung
3 Der ContentProvider ist der Bestandteil der Verbindung zur Model-Ebene, der dem Viewer "am nahesten" ist //###################################################################### // Klasse EdbGuiE0100ContentProvider // Die Klasse fungiert als Proxy für die EdbModTagProtokollCur // aus der Model-Ebene. Sie stellt den Inhalt für die Tabelle zur // Verfügung. Sie implementiert das Interface IEdbModTagProtokollViewer, // um changelisteners bei der EdbModTagProtokollCur anmelden zu können // Diese Interface definiert die Methoden addsatz(), removesatz() und // updatesatz(), die hier in der Klasse implementiert werden //###################################################################### class EdbGuiE0100ContentProvider implements IStructuredContentProvider, IEdbModTagProtokollViewer { public void inputchanged(viewer inviewer, Object inoldinput, Object innewinput) { // Wird aus der JFace-Ebene vom ContentViewer aufgerufen. // Handling von inputchanged()-calls indem sich die ContentProvider- // Instanz beim model (model ist hier der TagProtokoll-edbModTagProtokollCur) // in der Liste der beim model angemeldeten Viewer einträgt bzw. // austrägt. Jede eingetragene ContentProvider-Instanz repräsentiert // dann einen beim model angemeldeten Viewer. // Diese Vorgehensweise entspricht dem Listener-Pattern, daher // "addchangelistener" und "removechangelistener". Listener-Pattern: The pattern is based on these simple concepts: events, event producer, and event listener. Events are messages that are sent from one object to another. The component that sends the event is said to "fire" the event, while the component that receives the event is said to "handle" the event. An event producer is a class that fires events. It also has the ability to add and delete event listeners (components that receive events). Event listeners, also known as event consumers, "listen" for an event. In programmatic terms, a method on the event listener object is called when an event that it is listening for is fired. ( if (innewinput!= null) ((EdbModTagProtokollCur) innewinput).addchangelistener(this); if (inoldinput!= null) ((EdbModTagProtokollCur) inoldinput).removechangelistener(this); public void dispose() { // Wird aus der JFace-Ebene aufgerufen. // Handling von dispose()-calls // Durch removechangelistener wird die ContentProvider-Instanz // aus der Liste der beim model angemeldeten Viewer entfernt // (model ist hier der TagProtokoll-edbModTagProtokollCur) edbmodtagprotokollcur.removechangelistener(this); // Return the Sätze as an array of Objects public Object[] getelements(object parent) { // Wird aus der JFace-Ebene aufgerufen (vom StructuredViewer). // Weiterleitung des getelements()-request an das model (also an // ein TagProtokoll-edbModTagProtokollCur) return edbmodtagprotokollcur.getcursor().toarray(); // holt zuerst die DB-Cursor-Instanz und dann daraus den edbmodtagprotokollcur // (List-Instanz) um diese List-Instanz dann in ein Array umzuwandeln // *** Implementierung der Methoden aus IEdbModTagProtokollViewer Ermöglichung des Zugriffes auf den TabelViewer von der Model-Ebene aus public void addsatz(edbmodtagprotokollsatz satz) { // wird aus EdbModTagProtokollCur aufgerufen // ergänze Satz auf Ebene des TableViewer tableviewer.add(satz); public void removesatz(edbmodtagprotokollsatz satz) { // wird aus EdbModTagProtokollCur aufgerufen // entferne Satz auf Ebene des TableViewer tableviewer.remove(satz);
4 public void updatesatz(edbmodtagprotokollsatz satz) { // wird aus EdbModTagProtokollCur aufgerufen // update Satz auf Ebene des TableViewer tableviewer.update(satz, null); lastmahlzeitnr = satz.getmahlzeitnr(); LabelProvider-Implementierung Liefert die in der Table darzustellenden Werte in der darzustellenden Form (formatiert). Die beiden Getter werden vom TableViewer aufgerufen. // Class EdbGuiE0100LabelProvider // LabelProvider für die Tabelle (TableViewer) in EdbGuiE0100 // Die Klasse implementiert die Schnittstelle ITableLabelProvider und // muß daher folgende Methoden implementieren: // -- getcolumntext() // -- getcolumnimage() // First Created on tbauer // TB Abschluss Ersterstellung org.eclipse.jface.viewers.labelprovider */ public class EdbGuiE0100LabelProvider extends LabelProvider implements ITableLabelProvider { private EdbGuiE0100 e0100; // Constructor ine0100 Instanz der Maske, welche TableViewer enthält*/ public EdbGuiE0100LabelProvider(EdbGuiE0100 ine0100) { super(); this.e0100 = ine0100; // getcolumntext // wird durch TableViewer aufgerufen // Gibt den darzustellenden Wert zurück org.eclipse.jface.viewers.itablelabelprovider#getcolumntext(java.lang.object,int) */ public String getcolumntext(object element, int columnindex) { String result = ""; float wertfloat; float teiler; // übergebenes Element ist vom Typ EdbModTagProtokollSatz Es wird letztendlich ein Satz im Rohdatenformat übergeben und für die gewünscht Spalte wird der formatierte darzustellende Wert zurückgeliefert EdbModTagProtokollSatz satz = (EdbModTagProtokollSatz) element; switch (columnindex) { case 0: // MAHLZEIT_COLUMN break; case 1: // MENGE_COLUMN // formatiert mit Tausenderpunkten und 2 Stellen nach Komma result = DbTools.formatDezimal(satz.getMenge_gr(), 2, true, false); break; case 2: // SBLS_COLUMN default: break; return result;
5 // getcolumnimage // wird durch TableViewer aufgerufen // Gibt das darzustellenden Image zurück org.eclipse.jface.viewers.itablelabelprovider#getcolumnimage(java.lang.object, int) */ public Image getcolumnimage(object element, int columnindex) { return null; CellModifier-Implementierung Der CellModifier wird gerufen, wenn der User eine Zelle im TableViewer ändert. Der Aufruf der Methoden erfolgt aus einer internen JFace-Klasse heraus (TableViewerImpl) // Class EdbGuiE0100CellModifier // CellModifier für die Tabelle (TableViewer) in EdbGuiE0100 // Der CellModifier wird gerufen, wenn der User eine Zelle im TableViewer ändert. // Die Klasse implementiert die Schnittstelle ICellModifier und // muß daher folgende Methoden implementieren: // -- canmodify() // -- modify() // -- getvalue() // First Created on tbauer // TB Abschluss Ersterstellung public class EdbGuiE0100CellModifier implements ICellModifier { private EdbGuiE0100 e0100; // Constructor ine0100 Instanz der Maske, welche TabelViewer enthält*/ public EdbGuiE0100CellModifier(EdbGuiE0100 ine0100) { super(); this.e0100 = ine0100; // canmodify // Erhält ein Element (TableRow) und eine SpaltenName (property) und // gibt die Info zurück, ob die Zelle geändert werden darf. org.eclipse.jface.viewers.icellmodifier#canmodify(java.lang.object, java.lang.string) */ public boolean canmodify(object element, String property) { // Find the index of the column int columnindex = e0100.getcolumnnames().indexof(property); switch (columnindex) { case 2: // LMBEZ_COLUMN return false; case 3: // GERICHT_COLUMN return false; // Rest darf geändert werden default: // Rest darf geändert werden return true; // getvalue // Erhält ein Element (TableRow) und eine SpaltenName (property) und // gibt den aktuellen Wert der Zelle zurück (unformatiert, aber als Text).
6 org.eclipse.jface.viewers.icellmodifier#getvalue(java.lang.object, java.lang.string) */ public Object getvalue(object element, String property) { // Find the index of the column int columnindex = e0100.getcolumnnames().indexof(property); Object result = null; // Cast das Input-Element in eine Instanz der Model-seitigen Klasse // (hier EdbModTagProtokollSatz), um dessen Interface // (IEdbModTagProtokollViewer) zugreifen zu können. Es wird letztendlich ein Satz im Rohdatenformat übergeben und für die gewünscht Spalte wird der Wert zurückgeliefert EdbModTagProtokollSatz satz = (EdbModTagProtokollSatz) element; switch (columnindex) { case 0: // MAHLZEIT_COLUMN break; case 1: // MENGE_COLUMN // mit + "" Konvertierung zu String :-) result = satz.getmenge_gr() + ""; break; default: result = ""; return result; // modify // Erhält ein Element (Tabellenzeile) und eine SpaltenName (property) und // zusätzlich einen Wert. Dieser Wert wird auf die "Model-Ebene" // (also hier EdbModTagProtokollSatz) durchgeschrieben. org.eclipse.jface.viewers.icellmodifier#modify(java.lang.object, java.lang.string, java.lang.object) */ public void modify(object element, String property, Object value) { // Find the index of the column int columnindex = e0100.getcolumnnames().indexof(property); // Das übergebene Element ist ein TableItem (Tabellenzeile) TableItem item = (TableItem) element; // Cast das Input-Element in eine Instanz der Model-seitigen Klasse // (hier EdbModTagProtokollSatz), um dessen Interface // (IEdbModTagProtokollViewer) zugreifen zu können. EdbModTagProtokollSatz satz = (EdbModTagProtokollSatz) item.getdata(); // // Update jetzt auf model-ebene den geänderte Wert durch // die entsprechende set-methode // String valuestring; switch (columnindex) { case 0: // MAHLZEIT_COLUMN case 1: // MENGE_COLUMN // der übergebne value ist ein String-Objekt, welcher in eine // Floatzahl umgewandelt werden muß valuestring = ((String) value).trim(); float zahl; if (valuestring.length() == 0) { zahl = 0.0F;
7 else { if (valuestring.indexof(",") > -1) { // Zahl kommt im Format 1470,22 (d.h. mit Dezimalkomma) zahl = (float) DbTools.strDezimalToDouble(valueString); else { // Zahl kommt im Format (d.h. mit Dezimalpunkt) zahl = Float.parseFloat(valueString); satz.setmenge_gr(zahl); break; default: // restliche Felder können nicht geändert werden // // Aufruf der auf model-ebene definierten Methode satzchanged() // Dort wird die im ContendProvider implementierte Methode // updatesatz() aufgerufen, die wiederum die update()-methode // des TableViewer aufruft wodurch der Viewer dann aktualisiert wird // e0100.getedbmodtagprotokollcur().satzchanged(satz); ViewerSorter-Implementierung // Class EdbGuiE0100ViewerSorter // Sorter zum TableViewer in Maske E0100 // First Created on tbauer // TB Abschluss Ersterstellung public class EdbGuiE0100ViewerSorter extends ViewerSorter { public final static int MAHLZEIT = 0; // Criteria that the instance uses private int criteria; // Constructor // Erzeugt einen resource sorter, der das gegebene Sortierkriterium // verwendet. // criteria ist die Nummer der Sortierspalte für die speziell diese // Sorter-Instanz angelegt wurde (wird angegeben, wenn der Sorter // für eine Spalte im SelectionListener oder als Standard-Sorter des // Viewer angelegt wird) criteria Nummer der Standard-Sortierspalte */ public EdbGuiE0100ViewerSorter(int criteria) { super(); this.criteria = criteria; // compare // wird im TableViewer verwendet org.eclipse.jface.viewers.viewersorter#compare(org.eclipse.jface.viewers.viewer, java.lang.object, java.lang.object) */ public int compare(viewer viewer, Object o1, Object o2) { EdbModTagProtokollSatz satz1 = (EdbModTagProtokollSatz) o1; EdbModTagProtokollSatz satz2 = (EdbModTagProtokollSatz) o2; switch (criteria) { case MAHLZEIT:
8 return comparemahlzeitnr(satz1, satz2); default: return 0; // comparemahlzeitnr // Returns a number reflecting the collation order of the given sätze // based on the MahlzeitNr. a negative number if the first element is less than the // second element; the value <code>0</code> if the first element is // equal to the second element; and a positive number if the first // element is greater than the second element private int comparemahlzeitnr(edbmodtagprotokollsatz satz1, EdbModTagProtokollSatz satz2) { int mahlzeitnr1 = satz1.getmahlzeitnr(); int mahlzeitnr2 = satz2.getmahlzeitnr(); if (mahlzeitnr1 < 1) { // ohne Zuordnung => ganz hinten einreihen mahlzeitnr1 = 99999; if (mahlzeitnr2 < 1) { // ohne Zuordnung => ganz hinten einreihen mahlzeitnr2 = 99999; int result = mahlzeitnr1 - mahlzeitnr2; result = result < 0? -1 : (result > 0)? 1 : 0; return result; // getcriteria the sort criterion */ public int getcriteria() { return criteria; Model: Interface /// // Interface IEdbModTagProtokollViewer // Model-Ebene für Viewer zur Bearbeitung von DB-Tabelle TagProtokoll // notwendiges Interface für die Bearbeitung der Tabelle TagProtokoll in // einem Viewer // First Created on tbauer // TB Abschluss Ersterstellung public interface IEdbModTagProtokollViewer { // addsatz // Update des View, um die Tatsache zu reflektieren, daß ein Datensatz // ergänzt wurde. satz */ public void addsatz(edbmodtagprotokollsatz satz); // removesatz // Update des View, um die Tatsache zu reflektieren, daß ein Datensatz // gelöscht wurde. satz */
9 public void removesatz(edbmodtagprotokollsatz satz); // updatesatz // Update des View, um die Tatsache zu reflektieren, daß ein Datensatz // geändert wurde. satz */ public void updatesatz(edbmodtagprotokollsatz satz); Model: Implementierung der Zugriffe auf den Datenbestand // Class EdbModTagProtokollCur // Model-Ebene für Viewer zur Bearbeitung von DB-Tabelle TagProtokoll // Klasse repräsentiert eine Cursor mit Datensätzen aus TagProtokoll // Die Klasse ist von DbCursor abgeleitet. Die Datensätze werden // in der Klassenvariable von DbCursor, welche den Cursor repräsentiert, // gehalten. Allerdings werden in den Cursor keine DbSatz-Instanzen, // sondern Instanzen der von DbSatz abgeleiteten Klasse EdbModTagProtokollSatz // eingetragen. Damit können alle Sätze aus dem Cursor an den relevanten // Stellen auf EdbModTagProtokollSatz gecastet werden. // First Created on tbauer // TB Abschluss Ersterstellung public class EdbModTagProtokollCur extends DbCursor { // Tabellename (wird auch in EdbModTagProtokollSatz verwendet!!) static final String TABNAME = "TagProtokoll"; // Liste von Referenzen auf ContendProvider-Instanzen (jw. gecasted // auf IEdbModTagProtokollViewer), wobei jede dieser Instanz einen // angemeldeten Viewer repräsentiert private Set changelisteners = new HashSet(); private int userid; private String datum; // Konstruktor // Erzeuge einen Cursor, welcher die Daten zu User/Datum enthält // (Instanz von DbCursor) inuserid indatum */ public EdbModTagProtokollCur(int inuserid, String indatum) { super(tabname, "TABELLE"); // Lese zu UserId und Datum, order by UserId,Datum,MahlzeitNr,ID // keine Exception, wenn keine Daten vorhanden this.userid = inuserid; this.datum = indatum; DbCursor dbcursor = new DbZugTagProtokoll(10, 11, "", 0, inuserid, indatum, indatum, ""); // DbZugTagProtokoll liefert Cursor mit DbSatz-Instanzen // in den Cursor dieses Objektes sollen jedoch EdbModTagProtokollSatz-Instanzen // eintragen werden ListIterator it = dbcursor.getit(); while (it.hasnext()) { DbSatz dbsatz = (DbSatz) it.next(); // Konstruktor baut EdbModTagProtokoll-Instanz auf mit den // Daten aus der DbSatz-Instanz
10 super.satzeintragen(new EdbModTagProtokollSatz(dbSatz)); // addsatz // Wird aus dem Add-Button (widgetselected-listener) aufgerufen // ergänze neuen Satz im edbmodtagprotokollcur // Zudem wird der Satz in jedem Viewer eingetragen, der angemeldet ist public void addsatz(string insbls, float inmenge, int ingerichtnr, int inmahlzeitnr) { EdbModTagProtokollSatz satz = null; satz = new EdbModTagProtokollSatz(0, // ID this.userid, // User-ID this.datum, // Datum inmahlzeitnr, // Mahlzeiten-Nr insbls, // SBLS inmenge, // Menge ingerichtnr); // GerichtNr super.satzeintragen(satz); Iterator iterator = changelisteners.iterator(); while (iterator.hasnext()) { IEdbModTagProtokollViewer viewer; viewer = (IEdbModTagProtokollViewer) iterator.next(); // Eintrag Satz auf Viewer-Ebene (Methode aus ContendProvider) viewer.addsatz(satz); // ruft tableviewerger.add(satz) // removesatz // Wird aus dem Delete-Button (widgetselected-listener) aufgerufen // Der übergebene Satz wird aus Cursor und Db gelöscht // Zudem wird der Satz aus jedem Viewer gelöscht, der angemeldet ist satz */ public void removesatz(edbmodtagprotokollsatz satz) { super.satzloeschendb(satz); // löscht Satz in Db und aus Cursor Iterator iterator = changelisteners.iterator(); while (iterator.hasnext()) { IEdbModTagProtokollViewer viewer; viewer = (IEdbModTagProtokollViewer) iterator.next(); // Löschung Satz auf Viewer-Ebene (Methode aus ContendProvider) viewer.removesatz(satz); // ruft tableviewerger.remove(satz) // satzchanged // Wird durch den CellModifier aufgerufen // Die übergebene Instanz des Satzes ist bereits geändert // Löst den Update des Satzes in jedem Viewer aus, der angemeldet ist satz */ public void satzchanged(edbmodtagprotokollsatz satz) { Iterator iterator = changelisteners.iterator(); while (iterator.hasnext()) { IEdbModTagProtokollViewer viewer; viewer = (IEdbModTagProtokollViewer) iterator.next(); // Update Satz auf Viewer-Ebene (Methode aus ContendProvider) viewer.updatesatz(satz); // ruft tableviewerger.update(satz,null)
11 // removechangelistener // Aufruf durch dispose() sowie inputchangend() der ContentProvider- // Implementierung // Übergeben wird die (auf IEdbModTagProtokollViewer gecastete) Instanz des // ContentProvider. In changelisteners ist eine Referenz auf diese Instanz // gespeichert. Diese Referenz wird entfernt. viewer */ public void removechangelistener(iedbmodtagprotokollviewer viewer) { changelisteners.remove(viewer); // addchangelistener // Aufruf durch inputchangend() der ContentProvider-Implementierung // Übergeben wird die (auf IEdbModTagProtokollViewer gecastete) Instanz des // ContentProvider. In changelisteners wird eine Referenz auf diese Instanz // gespeichert. Diese Referenz steht stellvertretend für einen angemeldeten Viewer. viewer */ public void addchangelistener(iedbmodtagprotokollviewer viewer) { changelisteners.add(viewer); // Class EdbModTagProtokollSatz // Model-Ebene für Viewer zur Bearbeitung von DB-Tabelle TagProtokoll // Klasse repräsentiert eine Datensatz aus TagProtokoll // Die Klasse ist eine Erweiterung zur allgemeinen DB-Zugriffsklasse DbSatz // First Created on tbauer // TB Abschluss Ersterstellung public class EdbModTagProtokollSatz extends DbSatz { // ergänzend dazu gelesene Daten private String skt; // Lebenmittelbezeichnung private float gp; // Standard-Portionsgröße private float zf; // Fettanteil private float zw; // Wasseranteil // Konstruktor // Erzeugt einen neuen Datensatz (Daten für die Felder werden übergeben) inid inuserid indatum inmahlzeitnr insbls inmenge_gr ingerichtnr */ public EdbModTagProtokollSatz(int inid, int inuserid, String indatum, int inmahlzeitnr, String insbls, float inmenge_gr, int ingerichtnr) { // DbSatz-Instanz anlegen super(edbmodtagprotokollcur.tabname, "TABELLE"); // Zusatzwerten ermitteln und Klassenvariablen damit füllen this.leszusatzwerte(insbls, ingerichtnr);
12 // Feld ID eintragen int id = inid; if (inid == 0) { id = DbZugTagProtokoll.maxID() + 1; DbFeld feldid = new DbFeld("ID", EdbModTagProtokollCur.TABNAME, id, false, java.sql.types.integer); super.feldeintragen(feldid); // Feld UserID eintragen // Satz in Datenbank eintragen super.insertsatzindb(null); // Konstruktor // Erzeugt aus einer DbSatz-Instanz einen neue EdbModTagProtokoll-Instanz public EdbModTagProtokollSatz(DbSatz indbsatz) { // DbSatz-Instanz anlegen super(edbmodtagprotokollcur.tabname, "TABELLE"); // Feldliste aus übergebenen Satz übernehmen super.feldlisteeintragen(indbsatz.getfeldliste(), "", ""); // Zusatzwerten ermitteln und Klassenvariablen damit füllen String sbls = indbsatz.getfeld("sbls", "", "").getstringwert(); this.leszusatzwerte(sbls, 0); // leszusatzwerte // lese Zusatzwerte und speichere in Klassenvariablen private void leszusatzwerte(string insbls, int ingerichtnr) { // ergänzende Werte if (insbls!= null && (!insbls.equals(""))) { // Lese Lebenmittel ein // Lese nur Felder SBLS,SKT,ZF,ZE,ZK,ZW,GPUSER,GCAL // Lese zu Key(SBLS) ohne order by / Exception, wenn keine Daten String[] arrfelder = { "SBLS", "SKT", "ZF", "ZE", "ZK", "ZW", "GPUSER", "GCAL" ; DbCursor cur = new DbZugBLS_DATEN(2, 0, "NODAT_EXCEP", arrfelder, insbls, "", ""); DbSatz satz = cur.getfirstsatz(); // SKT: Lebensmittelbezeichnung this.skt = satz.getfeld("skt", "", "").getstringwert(); // ZF: Fettanteil this.zf = satz.getfeld("zf", "", "").getfloat(); // ZW: Wasseranteil this.zw = satz.getfeld("zw", "", "").getfloat(); if (ingerichtnr > 0) { // wenn gerichtnr > 0, dann verwende für durchschnittl. Portionsgröße // den Wert aus GerichtPositionen // Lesen zu Primary Key (GerichtNr, SBLS) ohne order by // Exception, wenn keine Daten cur = new DbZugGericht_Positionen(2, 0, "", ingerichtnr, insbls); satz = cur.getfirstsatz(); this.gp = satz.getfeld("menge", "", "").getfloat(); else { // GP: durchschnittliche Portionsgröße
13 this.gp = satz.getfeld("gpuser", "", "").getfloat(); else { this.skt = ""; this.gp = 0; this.zf = 0; this.zw = 0; // Getter auf die Feldwerte TagProtokoll.ID */ public int getid() { return super.getfeld("id", "", "").getint(); TagProtokoll.UserID */ public int getuserid() { return super.getfeld("userid", "", "").getint(); // Setter für die Feldwerte inid */ public void setid(int inid) { super.getfeld("id", "", "").setwert(inid); inuserid */ public void setuserid(int inuserid) { super.getfeld("userid", "", "").setwert(inuserid);
Studentische Lösung zum Übungsblatt Nr. 7
Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
MehrJava Einführung Collections
Java Einführung Collections Inhalt dieser Einheit Behälterklassen, die in der Java API bereitgestellt werden Wiederholung Array Collections (Vector, List, Set) Map 2 Wiederholung Array a[0] a[1] a[2] a[3]...
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrObjektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Zusatzaufgaben Lösungsvorschlag Objektorientierte Programmierung Lösung 22 (Java und UML-Klassendiagramm)
Mehr188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
MehrJava Einführung Abstrakte Klassen und Interfaces
Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer
MehrObjektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Übungsblatt 5 Lösungsvorschlag Objektorientierte Programmierung 22. 05. 2006 Lösung 9 (SMS-Eingabe am
MehrProgrammieren in Java
Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrKostenstellen verwalten. Tipps & Tricks
Tipps & Tricks INHALT SEITE 1.1 Kostenstellen erstellen 3 13 1.3 Zugriffsberechtigungen überprüfen 30 2 1.1 Kostenstellen erstellen Mein Profil 3 1.1 Kostenstellen erstellen Kostenstelle(n) verwalten 4
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrIBIS Professional. z Dokumentation zur Dublettenprüfung
z Dokumentation zur Dublettenprüfung Die Dublettenprüfung ist ein Zusatzpaket zur IBIS-Shopverwaltung für die Classic Line 3.4 und höher. Dubletten entstehen dadurch, dass viele Kunden beim Bestellvorgang
MehrProgrammieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler
Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Informationen aus der Datenbank lesen Klasse SQLiteDatabase enthält die Methode query(..) 1. Parameter: Tabellenname
MehrAnleitung für das Content Management System
Homepage der Pfarre Maria Treu Anleitung für das Content Management System Teil 4 Kalendereinträge Erstellen eines Kalender-Eintrages 1. Anmeldung Die Anmeldung zum Backend der Homepage erfolgt wie gewohnt
MehrApplet Firewall und Freigabe der Objekte
Hauptseminar Applet Firewall und Freigabe der Objekte Nachweis von Sicherheitseigenschaften für JavaCard Jin Zhou Ein Überblick über diesen Vortrag Applet Firewall Kontext JCRE Entry Point Objekt Shareable
MehrDrei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI
Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer
MehrBedienungsanleitung für den Online-Shop
Hier sind die Produktgruppen zu finden. Zur Produktgruppe gibt es eine Besonderheit: - Seite 1 von 18 - Zuerst wählen Sie einen Drucker-Hersteller aus. Dann wählen Sie das entsprechende Drucker- Modell
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrGroße Übung Praktische Informatik 1
Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,
MehrAnwendungsbeispiele Buchhaltung
Rechnungen erstellen mit Webling Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Rechnungen erstellen mit Webling 1.1 Rechnung erstellen und ausdrucken 1.2 Rechnung mit Einzahlungsschein erstellen
MehrWPF Steuerelemente Listbox, ComboBox, ListView,
WPF Steuerelemente Listbox, ComboBox, ListView, Dr. Beatrice Amrhein Überblick Einführung Listen ComboBox Tabellen 2 Einführung 3 Listen- und Tabellen-Elemente Listen und Tabellen-Elemente sind Steuerelemente,
MehrHandbuch zum Excel Formular Editor
Handbuch zum Excel Formular Editor Mit diesem Programm können Sie die Zellen von ihrer Excel Datei automatisch befüllen lassen. Die Daten können aus der Coffee Datenbank, oder einer weiteren Excel Datendatei
MehrAufklappelemente anlegen
Aufklappelemente anlegen Dieses Dokument beschreibt die grundsätzliche Erstellung der Aufklappelemente in der mittleren und rechten Spalte. Login Melden Sie sich an der jeweiligen Website an, in dem Sie
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrJavadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck
Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle
MehrStellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
MehrHilfedatei der Oden$-Börse Stand Juni 2014
Hilfedatei der Oden$-Börse Stand Juni 2014 Inhalt 1. Einleitung... 2 2. Die Anmeldung... 2 2.1 Die Erstregistrierung... 3 2.2 Die Mitgliedsnummer anfordern... 4 3. Die Funktionen für Nutzer... 5 3.1 Arbeiten
MehrWerbemittelverwaltung
Werbemittelverwaltung 1 Inhaltsverzeichnis Werbemittelverwaltung...1 Ihr Nutzen...3 Notwendige Stammdateneinstellungen...4 Das Anlegen einer Gruppe:... 4 Das Anlegen der Gruppeneinträge (Auswahl):... 4
MehrAndroid Java Specifics / Basic IO
Dalvik virtual machine Registermaschine anstelle einer Stackmaschine Optimiert für geringen Speicherverbrauch Umwandlung von.class Dateien in.dex-format mit Hilfe von dx Jedes Programm läuft als eigener
MehrAnbindung an easybill.de
Anbindung an easybill.de Stand: 14. Dezember 2011 2011 Virthos Systems GmbH www.pixtacy.de Einleitung Pixtacy verfügt ab Version 2.3 über eine Schnittstelle zu dem Online-Fakturierungsprogramm easybill.de.
MehrIAWWeb PDFManager. - Kurzanleitung -
IAWWeb PDFManager - Kurzanleitung - 1. Einleitung Dieses Dokument beschreibt kurz die grundlegenden Funktionen des PDFManager. Der PDF Manager dient zur Pflege des Dokumentenbestandes. Er kann über die
MehrJavakurs 2013 Objektorientierung
Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
MehrMit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
MehrAZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"
AZK 1- Freistil Nur bei Bedarf werden dafür gekennzeichnete Lohnbestandteile (Stundenzahl und Stundensatz) zwischen dem aktuellen Bruttolohnjournal und dem AZK ausgetauscht. Das Ansparen und das Auszahlen
MehrWhitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt
MehrHANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG
it4sport GmbH HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG Stand 10.07.2014 Version 2.0 1. INHALTSVERZEICHNIS 2. Abbildungsverzeichnis... 3 3. Dokumentenumfang... 4 4. Dokumente anzeigen... 5 4.1 Dokumente
MehrDrei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2
Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung
MehrJava Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1
Java Database Connectivity (JDBC) 14.07.2009 Walther Rathenau Gewerbeschule 1 Was ist JDBC? Hauptsächlich eine Sammlung von Java Klassen und Schnittstellen für eine einfache Verbindung von Java Programmen
MehrInstitut für Programmierung und Reaktive Systeme 26. April 2013. Programmieren II. 10. Übungsblatt
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 26. April 2013 Programmieren II 10. Übungsblatt Hinweis: Insgesamt werden in diesem Semester fünf
MehrUpgrade-Leitfaden. Apparo Fast Edit 1 / 7
Upgrade-Leitfaden Apparo Fast Edit 1 / 7 Inhaltsverzeichnis 1 Download der neuen Version... 4 2 Sicherung des Apparo Datenbank-Repository... 4 3 De-Installation der installierten Apparo Fast Edit Version...
MehrArtikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
MehrSJ OFFICE - Update 3.0
SJ OFFICE - Update 3.0 Das Update auf die vorherige Version 2.0 kostet netto Euro 75,00 für die erste Lizenz. Das Update für weitere Lizenzen kostet jeweils netto Euro 18,75 (25%). inkl. Programmsupport
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
MehrMdtTax Programm. Programm Dokumentation. Datenbank Schnittstelle. Das Hauptmenü. Die Bedienung des Programms geht über das Hauptmenü.
Programm Die Bedienung des Programms geht über das Hauptmenü. Datenbank Schnittstelle Die Datenbank wir über die Datenbank- Schnittstelle von Office angesprochen. Von Office 2000-2003 gab es die Datenbank
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin
Mehr5.2 Neue Projekte erstellen
5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort
MehrErweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:
VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt
MehrBedienungsanleitung CAD-KAS Reklamationserfassung. Einen neuen Datensatz anlegen. Klicken Sie auf das + Symbol, um einen neuen Datensatz anzulegen.
Bedienungsanleitung CAD-KAS Reklamationserfassung Einen neuen Datensatz anlegen Klicken Sie auf das + Symbol, um einen neuen Datensatz anzulegen. Datensatz löschen Daten hier erfassen. Automatische Reklamationsnummer
MehrE-MAIL VERWALTUNG. Postfächer, Autoresponder, Weiterleitungen, Aliases. http://www.athost.at. Bachstraße 47, 3580 Mödring office@athost.
E-MAIL VERWALTUNG Postfächer, Autoresponder, Weiterleitungen, Aliases http://www.athost.at Bachstraße 47, 3580 Mödring office@athost.at Loggen Sie sich zunächst unter http://www.athost.at/kundencenter
MehrHow-to: Webserver NAT. Securepoint Security System Version 2007nx
Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver
MehrUNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme
UNIVERSITÄT ULM Fakultät für Ingenieurswissenschaften und Informatik Institut für Datenbanken und Informationssysteme 8. Übung zur Vorlesung Datenbanksysteme WS 08/09 Musterlösung Aufgabe 8-1: SQLJ //
MehrDatenbanken für Online Untersuchungen
Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrFaktura. IT.S FAIR Faktura. Handbuch. Dauner Str.12, D-41236 Mönchengladbach, Hotline: 0900/1 296 607 (1,30 /Min)
IT.S FAIR Faktura Handbuch Dauner Str.12, D-41236 Mönchengladbach, Hotline: 0900/1 296 607 (1,30 /Min) 1. Inhalt 1. Inhalt... 2 2. Wie lege ich einen Kontakt an?... 3 3. Wie erstelle ich eine Aktion für
MehrSRM - Supplier Self Service (Lieferant) Author: Dennis Vater; Version: 01, January 1th, 2013
Inhalt 0. Systemlandschaft 2 1. Benachrichtigung über neue oder geänderte Belege 2 2. Anmeldung am Lieferantenportal 2 2.1 Erläuterungen der Bereiche 3 2.2 Erläuterungen des Status 4 3. Bestätigung pflegen
MehrVorgehensweise für die Umstellung von Quicken-Konten bei Bargeldbuchungen auf ein Wertpapierkonto
Vorgehensweise für die Umstellung von Quicken-Konten bei Bargeldbuchungen auf ein Wertpapierkonto Bevor Sie Ihre Datei nach Quicken 2010, bzw. 2011 konvertieren, können Sie in Ihrer jetzt benutzten Version
Mehrtentoinfinity Apps 1.0 EINFÜHRUNG
tentoinfinity Apps Una Hilfe Inhalt Copyright 2013-2015 von tentoinfinity Apps. Alle Rechte vorbehalten. Inhalt der online-hilfe wurde zuletzt aktualisiert am August 6, 2015. Zusätzlicher Support Ressourcen
Mehrecaros2 - Accountmanager
ecaros2 - Accountmanager procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Aufruf des ecaros2-accountmanager...3 2 Bedienung Accountmanager...4 procar informatik AG 2 Stand: FS 09/2012 1 Aufruf
MehrProgrammieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek
Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es
MehrSCHNELLEINSTIEG ZUM TOOL NODEBUILDER
Fakultät Informatik, Institut für Angewandte Informatik, Professur Technische Informationssysteme SCHNELLEINSTIEG ZUM TOOL NODEBUILDER Betreuer: Dipl.-Ing. A. Cemal Özlük Dipl.-Inf. Uwe Ryssel ALLGEMEINE
MehrTypumwandlungen bei Referenztypen
Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei
MehrCAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung
Ablauf für die Erfassung der Fehler in der Fertigung Voraussetzung ist die Zuordnung der Erzeugnisse zu Produktgruppen. Wie das funktioniert ist der Anleitung Neue Produktgruppe anlegen und mit Erzeugnissen
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrHandbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)
Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...
MehrUm ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.
Briefe Schreiben - Arbeiten mit Word-Steuerformaten Ab der Version 5.1 stellt die BüroWARE über die Word-Steuerformate eine einfache Methode dar, Briefe sowie Serienbriefe mit Hilfe der Korrespondenzverwaltung
MehrFachhochschule Deggendorf Platzziffer:...
Sommersemester 2008 Zahl der Blätter: 9 Fachbereich: Betriebswirtschaft WI Bachelor Hilfsmittel: alles ohne Computer Zeit: 90 Minuten 1 Betrachten Sie die drei markierten Zeilen. 1. Angenommen Sie hätten
MehrAccess 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA
Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung
Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:
Mehr1. Einführung. 2. Weitere Konten anlegen
1. Einführung In orgamax stehen Ihnen die gängigsten Konten des Kontenrahmens SKR03 und SKR04 zur Verfügung. Damit sind im Normalfall alle Konten abgedeckt, die Sie zur Verbuchung benötigen. Eine ausführliche
MehrStand: 28.11.2012. Adressnummern ändern Modulbeschreibung
Seite 1 Inhalt Allgemein...3 Installation...3 manuelle Eingabe von alten und neuen Adressnummern...4 Vorbereiten von Adressnummern-Änderungen in Tabellen...5 Seite 2 Allgemein Das INKS-Modul ermöglicht
MehrBeschaffung mit. Auszug aus dem Schulungshandbuch: Erste Schritte im UniKat-System
Beschaffung mit Auszug aus dem Schulungshandbuch: Erste Schritte im UniKat-System Stand: 31. Oktober 2014 Inhaltsverzeichnis 1 Erste Schritte im UniKat-System... 2 1.1 Aufruf des Systems... 2 1.2 Personalisierung...
MehrBenutzerhandbuch - Elterliche Kontrolle
Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
Mehr1 Lieferantenbewertung
1 Lieferantenbewertung Mit Hilfe der Lieferantenbewertung können alle aktiven Lieferanten nach ISO Kriterien bewertet werden. Die zur Bewertung hinterlegten Faktoren können individuell vorgegeben werden.
MehrÜbungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen
Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe
MehrInformatik 2 Labor 2 Programmieren in MATLAB Georg Richter
Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Aufgabe 3: Konto Um Geldbeträge korrekt zu verwalten, sind zwecks Vermeidung von Rundungsfehlern entweder alle Beträge in Cents umzuwandeln und
Mehrdesk.modul : WaWi- Export
desk.modul : WaWi- Export Die Schnittstelle besteht aus einem Programm, welches die Daten aus der OfficeLine ausliest und in eine XML-Datei exportiert. Die Schnittstelle ist als ein eigenständiges Programm
MehrEigene Seiten erstellen
PhPepperShop Anleitung Datum: 3. Oktober 2013 Version: 2.1 Eigene Seiten erstellen Eigene Inhalte / CMS Glarotech GmbH Inhaltsverzeichnis Anleitung zur Erstellung von eigenen Inhalten/Links...3 1. Anmeldung
Mehrinviu routes Installation und Erstellung einer ENAiKOON id
inviu routes Installation und Erstellung einer ENAiKOON id Inhaltsverzeichnis inviu routes... 1 Installation und Erstellung einer ENAiKOON id... 1 1 Installation... 1 2 Start der App... 1 3 inviu routes
MehrProzedurale Datenbank- Anwendungsprogrammierung
Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.
MehrU08 Entwurfsmuster (II)
U08 Entwurfsmuster (II) Inhalt der Übung Diskussion und Implementierung von Entwurfsmustern Übungsaufgaben Aufgabe 1 (Queue) Gegeben ist das folgende Analysemodell einer Warteschlange (Queue): Eine Warteschlange
MehrAnleitung OpenCms 8 Webformular Auswertung
Anleitung OpenCms 8 Webformular Auswertung 1 Erzbistum Köln Webformular Auswertung 15. August 2014 Inhalt 1. Allgemeines zum Webformular Auswertung... 3 2. Verwendung des Webformulars... 4 2.1. Reiter
MehrEine Anwendung mit InstantRails 1.7
Eine Anwung mit InstantRails 1.7 Beschrieben wird das Anlegen einer einfachen Rails-Anwung, die ohne Datenbank auskommt. Schwerpunktmäßig wird auf den Zusammenhang von Controllern, Views und der zugehörigen
MehrFlowFact Alle Versionen
Training FlowFact Alle Versionen Stand: 29.09.2005 Rechnung schreiben Einführung Wie Sie inzwischen wissen, können die unterschiedlichsten Daten über verknüpfte Fenster miteinander verbunden werden. Für
MehrHandbuch zur Anlage von Turnieren auf der NÖEV-Homepage
Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei
MehrAnleitung zur Anmeldung beim EPA zur Nutzung von OPS 3.1
Anleitung zur Anmeldung beim EPA zur Nutzung von OPS 3.1 Mit der Version 3.1 des OPS hat das EPO eine Begrenzung des Download-Volumens bei der kostenlosen Nutzung eingeführt. Um die Datenmengen zuordnen
MehrKurzanleitung OOVS. Reseller Interface. Allgemein
Kurzanleitung OOVS Reseller Interface Allgemein Durch die Einführung des neuen Interfaces hat sich für Reseller von Syswebcom etwas geändert. Die Struktur der Kundenverwaltung ist einprägsamer, wenn man
MehrFolge 18 - Vererbung
Workshop Folge 18 - Vererbung 18.1 Ein einfacher Fall der Vererbung Schritt 1 - Vorbereitungen Besorgen Sie sich - vielleicht aus einer der Übungen der Folge 17 - ein fertiges und lauffähiges Listenprojekt,
MehrGrundsätzliche Informationen zu SpAz
Grundsätzliche Informationen zu SpAz SpAz steht Ihnen zur Eingabe der Personen- und Leistungsdaten Ihrer Absolventen zur Verfügung. Die erforderlichen Daten zur Eingabe entsprechen dabei den Angaben von
MehrDer lokale und verteilte Fall
Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf
MehrZur drittletzten Zeile scrollen
1 Fragen und Antworten zur Computerbedienung Thema : Zur drittletzten Zeile scrollen Thema Stichwort Programm Letzte Anpassung Zur drittletzten Zeile scrollen Scrollen VBA Excel 1.02.2014 Kurzbeschreibung:
MehrInstallation des edu- sharing Plug- Ins für Moodle
Installation des edu- sharing Plug- Ins für Moodle [edu-sharing Team] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu- sharing / metaventis
MehrKurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich
Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich Mitgliederbereich (Version 1.0) Bitte loggen Sie sich in den Mitgliederbereich mit den Ihnen bekannten Zugangsdaten
MehrStand: 26.09.2012. Dokumentenverwaltung Modulbeschreibung
Seite 1 Inhalt Allgemein...3 Installation...3 So nutzen Sie die...4 Dokumente an andere INKS-Benutzer melden...7 Dokumentenliste ausdrucken...9 Konfiguration der... 10 Seite 2 Allgemein Die bietet Ihnen
MehrÜbungsblatt 3: Algorithmen in Java & Grammatiken
Humboldt-Universität zu Berlin Grundlagen der Programmierung (Vorlesung von Prof. Bothe) Institut für Informatik WS 15/16 Übungsblatt 3: Algorithmen in Java & Grammatiken Abgabe: bis 9:00 Uhr am 30.11.2015
MehrErstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
MehrKulturobjekte der Donau Das ContentManagementSystem (CMS)
Kulturobjekte der Donau Das ContentManagementSystem (CMS) Kurzanleitung Inhalt: LogIn 1 Objektverwaltung - Übersicht 2 - Neue Objekte 3 - Eigenschaften ändern 4 - Objekte löschen 5 Benutzerverwaltung -
Mehr