Zum Inhalt springen

Natriumarm

Mitglieder
  • Gesamte Inhalte

    44
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Natriumarm

  1. Hallo, ich hab folgendes Problem. Ich lese aus einer Datenbank (Access^^) tägliche Arbeitszeiten aus. Es wird momentan berechnet Ende - Anfang, somit erhalte ich schon korrekter Weise meine täglichen Arbeitsstunden. Nun möchte ich ALLE Arbeitsstunden aufaddieren. Die Ausgabe soll natürlich in Stunden sein, sodass am Ende bspw 38 Stunden rauskommen. Anbei, ein wenig Code, so wie es momentan ausschaut - habe für die Zeitberechnung bisher Calendar- Objekte verwendet: while (rs.next()) { Beginn = rs.getString("Beginn").substring(11,16); System.out.println("Arbeitsbeginn: "+Beginn); Ende = rs.getString("Ende").substring(11,16); System.out.println("Arbeitsende: "+Ende); Arbeitsbeginn = Beginn.split(":"); Arbeitsende = Ende.split(":"); c1.set(Calendar.HOUR, Integer.parseInt(Arbeitsbeginn[0])); c2.set(Calendar.HOUR, Integer.parseInt(Arbeitsende[0])); if ( c1.getTimeInMillis() < c2.getTimeInMillis()) { c3.set(Calendar.HOUR, Integer.parseInt(Arbeitsende[0]) - Integer.parseInt(Arbeitsbeginn[0])); c3.set(Calendar.MINUTE, Integer.parseInt(Arbeitsende[1])-Integer.parseInt(Arbeitsbeginn[1])); System.out.println("gearbeitet: " +DateFormat.getTimeInstance(DateFormat.SHORT).format(c3.getTimeInMillis())); System.out.println(""); c4.set(Calendar.HOUR, c4.HOUR + c3.HOUR); c4.set(Calendar.MINUTE, c4.MINUTE + c3.MINUTE); System.out.println("Gesamtarbeit: " +DateFormat.getTimeInstance(DateFormat.SHORT).format(c3.getTimeInMillis())); System.out.println(""); System.out.println(""); } if (c1.getTimeInMillis() > c2.getTimeInMillis()) { c3.set(Calendar.HOUR, Integer.parseInt(Arbeitsende[0]) - Integer.parseInt(Arbeitsbeginn[0])-12); c3.set(Calendar.MINUTE, Integer.parseInt(Arbeitsende[1])-Integer.parseInt(Arbeitsbeginn[1])); System.out.println("gearbeitet: " +DateFormat.getTimeInstance(DateFormat.SHORT).format(c3.getTimeInMillis())); System.out.println(""); c4.set(Calendar.HOUR, c4.HOUR + c3.HOUR); c4.set(Calendar.MINUTE, c4.MINUTE + c3.MINUTE); System.out.println(""); System.out.println(""); System.out.println("Gesamtarbeit: " +DateFormat.getTimeInstance(DateFormat.SHORT).format(c3.getTimeInMillis())); } Durchs Quelltext kopieren, könnte das einrücken nicht mehr richtig sein :bimei Vielen Dank im Vorraus schonmal
  2. Hallo, ich bins mal wieder. Ich hab ein Frame, das ausgedruckt wird (sämtliche Buttons werden ausgeblendet). Allerdings sind die Seitenränder zu breit. Ich würde gern wissen, ob man diese einstellen kann, bevor der PrintDialog geöffnet wird. PrinterJob pj = PrinterJob.getPrinterJob(); if ( pj != null ) { HashPrintRequestAttributeSet atr = new HashPrintRequestAttributeSet(); if(pj.printDialog(atr)) { boolean oldVisibleKommen = btn_kommen.isVisible(); boolean oldVisibleGehen = btn_gehen.isVisible(); boolean oldVisibleSpeichern = btn_speichern.isVisible(); boolean oldVisibleDrucken = btn_drucken.isVisible(); boolean oldVisibleBeenden = btn_beenden.isVisible(); btn_kommen.setVisible(false); btn_gehen.setVisible(false); btn_speichern.setVisible(false); btn_drucken.setVisible(false); btn_beenden.setVisible(false); try { pj.setPrintable(new Printable(){ public int print(Graphics g, PageFormat pf, int page) throws PrinterException { if(page == 0) { Graphics2D g2 = (Graphics2D)g; g2.translate(pf.getImageableX(), pf.getImageableY()); g2.transform(AffineTransform.getScaleInstance(0.75, 0.75)); Hauptfenster.this.printComponents(g2); return Printable.PAGE_EXISTS; } return Printable.NO_SUCH_PAGE; } }); pj.print(atr); } catch (PrinterException e1) { e1.printStackTrace(); } btn_kommen.setVisible(oldVisibleKommen); btn_gehen.setVisible(oldVisibleGehen); btn_speichern.setVisible(oldVisibleSpeichern); btn_drucken.setVisible(oldVisibleDrucken); btn_beenden.setVisible(oldVisibleBeenden); } } Hoffe ihr könnt mir weiterhelfen, mal wieder MFG Natriumarm PS: Sry für den etwas zerstörten aufbau des Quelltextes...der ist beim kopieren in den Post etwas durcheinander geraten.
  3. Habs probiert und läuft jetzt alles wie erwünscht. Nochmals vielen Dank für die sehr guten Hilfen und Tipps!!! MFG Ein Java-Anfänger
  4. Moin Start = calendar.getTimeInMillis() - (calendar.MONDAY - calendar.DAY_OF_WEEK) * 24 * 3600 * 1000; Start ist ne Long Variable calendar ist vom Typ GregorianCalendar hab ich jetzt probiert, das bringt mir den 16.03.2008 habs mit "-Tag*6" ergänzt /geschummelt um auf den Montag zu kommen, stimmt das dann so? Bekomm jetzt auf jeden Fall den aktuellen Montag und die davor halt. Das mit dem Calendar.roll() aber bin auch nicht draus schlau geworden
  5. Also das ich der Combobox Werte gebe klappt schon. Ich hab jetzt aber nur das aktuelle Datum drin was ich mir aus calendar.getTimeInMillis(); hole. Zufällig ist ja heut Montag und das passt ja auch. Was mir jetzt fehlt, wo es hakt, ist, das ich jetzt noch gern den vergangenen Montag (sprich den 3.3.2008) und noch mindestens die 2 davor drin haben möchte. Ab nächste Woche dann den 17.03, den 10.03, den 03.03 und den 25.02. Darauf die Woche dann den 24., den 17, den 10 und den 03.03 und das halt immer so weiter. Knabbern tu ich halt dran die Montag raus zu filtern, ich brauch nämlich nur genau die.
  6. Hallo, nach mehreren Versuche ohne Erfolg, bin ich am verzweifeln. Gibs irgendwo Beispiele wo ich nachlesen könnte, wie ich die Combobox fülle mit den entsprechenden Daten? Bitte um Hilfe!!
  7. Moin moin, ich hab da eine Frage. Ich möchte in einer Combobox alle Montag ab einem bestimmten Datum anzeigen lassen (zum Beispiel die letzten 8 Montage). Da ich diese Informationen nicht aus einer DB oder ähnlichem beziehen kann, bräuchte ich sicherlich eine Formel oder so, die mir zum Beispiel die Millisekunden seit dem 1.1.1970 zählt und daraufhin die Montage ausgeben kann? Ziel des Ganzen ist es, sich einen Montag anhand des Datums auszusuchen. Daraufhin werden dann sämtliche Informationen zu diesem Tag und den Rest der Woche (Termine, Besprechungen, Zeiten) angezeigt, jeweils in eigenen Bereichen. Vielen Dank im vorraus und mfg
  8. Haben die Bibliothek wie bei den anderen Projekten im Build Path über Add External JARs hinzugefügt und sie wird mir ja auch angezeigt.
  9. moin moin, hier mal die komplette Consolenausgabe. WAV0052E Invocation Target Exception creating Gui.Hauptfenster java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.ve.internal.java.vce.launcher.remotevm.SWTLauncher.runShell(SWTLauncher.java:467) at org.eclipse.ve.internal.java.vce.launcher.remotevm.SWTLauncher.launch(SWTLauncher.java:181) at org.eclipse.ve.internal.java.vce.launcher.remotevm.JavaBeansLauncher.main(JavaBeansLauncher.java:70) Caused by: java.lang.UnsatisfiedLinkError: no ocijdbc10 in java.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3139) at java.security.AccessController.doPrivileged(Native Method) at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3135) at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:420) at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:132) at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801) at oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:297) at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:221) at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:165) at Logik.DB_Verbindung.OpenConnection(DB_Verbindung.java:133) at Logik.DB_Verbindung.<init>(DB_Verbindung.java:29) at Logik.DB_Verbindung.getInstance(DB_Verbindung.java:104) at Gui.Hauptfenster.createSShell(Hauptfenster.java:176) Der rotmarkierte Treiber kann eigentlich nicht der Fehler sein, da wir die Treiber / Bibliotheken im Build Path drin haben. Da ich in Java noch nicht so fit bin, hab ich auch noch nix weiter geschrieben, das Felder auf der Gui gefüllt werden sollen, sondern rein weg die Datenbankanbindung erstmal klappen soll. Hier noch die Klasse für die Datenbankverbindung (die wie geagt in anderen nicht-swt projekten funktioniert): package Logik; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Calendar; import oracle.jdbc.pool.OracleDataSource; public class DB_Verbindung { private Connection conn = null; private static DB_Verbindung Instance = null; private int Queries = 0; private Statement SQLStatement = null; private DB_Verbindung() { OpenConnection(); } /** * <H3>getInstance</H3> * * <PRE></PRE> * * <DL> * <DD> Gibt eine Inszanz dieser Klasse zurueck * <P> * * @return - Die Inszanz dieser Klasse </DD> * </DL> * <HR> * * @uml.property name="instance" */ public static DB_Verbindung getInstance() { if (Instance == null) Instance = new DB_Verbindung(); return Instance; } private void OpenConnection() { try { if (conn == null || conn.isClosed()) { try { System.out.println("Stelle neue DB Verbindung her..."); // Oracle Treiber registrieren DriverManager.registerDriver(new oracle.jdbc.OracleDriver()); // Neue DataSource anlegen OracleDataSource ods = new OracleDataSource(); // User angeben ods.setUser("user"); // Pass angeben ods.setPassword("passwort"); // URL angeben ods.setURL("jdbc:oracle:oci:@DB"); // Neue Connection aufbauen conn = ods.getConnection(); SQLStatement = conn.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY, ResultSet.CLOSE_CURSORS_AT_COMMIT); System.out.println("Verbindung hergestellt!"); } catch (Exception ex) { ex.printStackTrace(); } } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
  10. Also ich hab erstmal eine Klasse, in der steht nur der Code für die Gui. In einer zweiten Klasse habe ich die Datenbank Anbindung geschrieben. Diese Klasse funktioniert in anderen Projekten - also erstmal rein weg das verbinden zur Datenbank. Aber bei meinem aktuellen Programm nicht, wir haben das vorhin eine Stunde lang mit den anderen Projekten verglichen was anders sein könnte (imports, Libs, Methodenaufrufe) und der einzigste Unterschied, der uns aufgefallen ist - ist das die Oberfläche mit swt gestaltet wurde. Daher unsere Vermutung, das swt ein etwas anderes Handling mit einer Datenbankanbindung (Oracle) benötigt. Sry wenn die Beschreibung nicht so rüber kommt, weiß nicht wie ich das anders schreiben soll :old
  11. Hallo, hier gleich noch ein Problem hinterher. Mein Projekt soll an eine Oracle Datenbank angebunden werden. Die Klasse für die Anbindung wurde schon bei anderen Projekten getestet und funktioniert, nur bei meinem Projekt, bei dem die GUI mit swt erstellt wurde seltsamerweise nicht. Brauch dringend Hilfe, weil ich die ganzen Oberflächen nicht wieder umstricken möchte. MFG and so long
  12. Hallo, ich hab folgendes Problem. Ich hab eine Oberfläche mit swt designed für eine Arbeitszeitabrechnung. Nun soll das ganze ausdruckbar gemacht werden. Ich möchte die komplette GUI, so wie sie ist, nur ohne die Buttons ausdrucken. Kann mir jemand sagen wie ich das mache oder wo ich sowas nachlesen kann? Hab bisher nur was über awt Prints gefunden und das nutzt mir ja soviel nicht. Hoffe ihr könnt mir da weiter helfen. MFG
  13. Natriumarm

    erste GUI

    Hallo, ich hab angefangen mich mit GUIs zu beschäftigen und folgenden Quelltext geschrieben. import java.awt.Color; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class Hauptmenue extends JFrame { private static final long serialVersionUID = 1L; private JPanel panel; private JLabel lbl_head; private JButton btn_50, btn_100, btn_Birilli, btn_Goretiana; public Hauptmenue() { super("Scoreboard"); setLayout(null); setSize(640, 480); setResizable(false); setLocation(250, 250); setDefaultCloseOperation(DISPOSE_ON_CLOSE); panel = new JPanel(); panel.setBackground(Color.blue); lbl_head = new JLabel(); lbl_head.setText("Willkommen"); lbl_head.setLocation(10, 10); btn_50 = new JButton(); btn_50.setText("50 Stoß"); btn_50.setBounds(300, 80, 40, 20); btn_100 = new JButton(); btn_100.setText("50 Stoß"); btn_100.setBounds(300, 120, 40, 20); btn_Birilli = new JButton(); btn_Birilli.setText("Birilli"); btn_Birilli.setBounds(300, 160, 40, 20); btn_Goretiana = new JButton(); btn_Goretiana.setText("Goretiana"); btn_Goretiana.setBounds(300, 200, 40, 20); panel.add(lbl_head); panel.add(btn_50); panel.add(btn_100); panel.add(btn_Birilli); panel.add(btn_Goretiana); getContentPane().add(panel); setVisible(true); } Wenn ich das starte, bekomm ich das Fenster mit der richtigen Größe und der Position, aber das Panel liegt wohl nicht drauf... Hoffe das mir jemand sagen kann, wo der Fehler liegt. Danke im Vorraus
  14. Natriumarm

    IReport vs BIRT

    Nach weiterer Rücksprache kamen weitere Anforderungen hinzu, Die Daten kommen aus einer Oracle Datenbank. Jeder Datensatz wird als in einem Objekt gespeichert. Aus diesen Objekten soll dann der Bericht generiert werden. Folgende Anforderungen sind neu: - Kopf- und Fußzeile relativ eindeutig (Name, Anschrift darf sich ändern, nicht die Formatierung) - im Hauptteil sollen die Daten aus den Objekten erscheinen und formatierbar sein vom User (Hauptsächlich aber nur Position) Da das ganze auch noch in RCP eingebaut werden soll und wir als Azubi´s da absolut neu sind, brauchen wir Hilfe bzw Tips wo wir Anleitungen herbekommen könnten um diese Aufgabe zu realisieren.
  15. Natriumarm

    IReport vs BIRT

    Danke für den Tip mit Pentaho, aber uns wurde die Auflage erteilt, nur die auf den Dienstrechnern vorinstallierte Software zu benutzen. Damit beschränkt sich die Benutzung auf BIRT und / oder IText. Bevorzugt wird vom Auftraggeber Birt. Birt selbst, soll nur eine Druckansicht darstellen und nichts weiter leisten. Der Anwender soll nicht merken, das im Hintergrund Birt den Report erzeugt und die Druckvorschau dann angezeigt wird. Wichtig auch, es muss in eine RCP integrierbar sein. Wir bräuchten jetzt also konkrete Informationen, ob das überhaupt realisierbar ist und wenn ja, wo wir Beispiele oder Dokumentationen finden können, da wir auch nach längerer Suche nie wirklich eine gute Seite gefunden haben.
  16. Natriumarm

    IReport vs BIRT

    Hallo, unser Team hat den Auftrag erhalten, Einzelberichte und Kummulativberichte von Patienten zu erstellen. Als Reportdesigner haben wir einmal die Jasperreports und zum anderen BIRT ausgesucht. Wichtig für uns ist, das die Tools in eine RCP Anwendung integrierbar sind. Da dieses Gebiet Neuland für uns ist, hoffen wir, ein paar Tips zu erhalten, welches der beiden Tools wir benutzen sollten. Als Anforderungen stehen folgende Punkte: - Auslesen der Daten aus einer Oracle DB - Integrierung in eine RCP - Ausgabe des Berichts als Druckvorschau, nur Druck danach möglich Software: - Eclipse 3.2 - Birt 2.1 - IReport ??
  17. Natriumarm

    BIRT Viewer

    Hallo, wir haben folgendes Problem. Wir haben die Aufgabe bekommen, das Eclipse Plug-in BIRT in der Version 2.2 zu untersuchen. Der BIRT Report Viewer liefert standardmäßig eine Toolbar mit (im Screen rot umrandet). Wir wollen diese Toolbar entfernen und durch eine eigene ersetzen. Kennt sich jemand aus damit und kann uns sagen wo wir den Viewer dahingehend konfigurieren können??? MFG Natriumarm

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...