Aktuelles Datum per Schaltfläche einlesen: Entweder oder

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

6RaumTaxi
Beiträge: 2
Registriert: Mi, 21.12.2011 14:57

Aktuelles Datum per Schaltfläche einlesen: Entweder oder

Beitrag von 6RaumTaxi »

Hallo,

Zunächst möchte ich klarstellen, dass ich noch ziemlicher Laie auf dem Gebiet Datenbanken bzw. VBA-Programmierung bin.

Nun aber zu meinem Problem.

Ich bin dabei im OpenBase eine kleine Datenbank zur Betriebsdatenerfassung zu erstellen. Konkret sollen 3 Prozesse an einem Arbeitsplatz analysiert werden:

Rüsten, Bearbeitung, Leerlauf.

Meine Tabelle, die ich aufbauen möchte, hat nun folgende Spalten:

- ID
- Auftrags-Nr. (11stellig im Format: nnnn.nnnnnn)
- Auftragsstatus (0 = Rüsten; 1 = Bearbeitung; 2 = Leerlauf)
- Start Datum (TT.MM.JJJJ)
- Start Uhrzeit (HH:MM)
- Ende Datum
- Ende Uhrzeit
- Stückzahl

ich möchte nun, dass der Mitarbeiter die Auftragsnummer eintippt und anschließend seinen Auftragsstatus per Dropdown auswählt. Bis hierhin klappt alles problemlos.

Nun soll er aber per Button das aktuelle Datum und die aktuelle Uhrzeit entweder in die beiden Start-Felder oder in die beiden Ende-Felder einlesen können! Hier ist es egal ob es am Schluss 2 Buttons oder 4 sind.

Das bekomm ich leider überhaupt nicht hin :(


Ich will damit erreichen, dass ich im nächsten Schritt in einer Abfrage alle identischen Auftragsnummern rausfiltern kann, und dann die Dauer der einzelnen Arbeitsschritte (z.B. Start Bearbeitung bis Ende Bearbeitung) errechnen und analysieren kann.

Wäre um jede Hilfe dankbar, mein "Datumsproblem" zu lösen :)
F3K Total
********
Beiträge: 3720
Registriert: Mo, 28.02.2011 17:49

Re: Aktuelles Datum per Schaltfläche einlesen: Entweder oder

Beitrag von F3K Total »

Hallo,
ich würde empfehlen, Deine vier Zeit/Datumsspalten in nur zwei vom Format TIMESTAMP zu ändern.
Dann sieht die Tabelle so aus:

ID [INTEGER]
Auftrags-Nr. [VARCHAR]
Auftragsstatus [INTEGER]
Start [TIMESTAMP]
Ende [TIMESTAMP]
Stückzahl [INTEGER]

In Dein Formular fügst Du nun zwei Schaltflächen (Buttons) ein.
- einen Button "Start". Trage im Entwurfsmodus des Formulares den Text Start in die Zusatzinformation der Eigenschaften des Buttons/Reiter "Allgemein" ein.
- einen Button "Ende". Trage im Entwurfsmodus des Formulares den Text Ende in die Zusatzinformation der Eigenschaften des Buttons/Reiter "Allgemein" ein.

Wenn Du dann folgendes Makro an das Ereignis "Aktion ausführen" der Buttons knüpfst, dann werden die gewünschten Zeiten bei Knopfdruck in die entsprechenden Spalten Start oder Ende eingetragen.

Code: Alles auswählen

Sub S_insert_Date_Time (event)

dim otimestamp as new com.sun.star.util.DateTime

obutton = event.source.model'Knopf Start oder Ende
oform = obutton.parent' Formular auf dem die Knöpfte sind
scolumn = obutton.tag 'Zusatzinformation des Knopfes auslesen->Spaltenname
'aktuelle Datum/Zeit einlesen
otimestamp.Day = day(now())
otimestamp.Month = month(now())
otimestamp.Year = year(now())
otimestamp.hours =  hour(now())
otimestamp.minutes =  minute(now())
otimestamp.seconds =  second(now())

ncolumn = oform.findcolumn(scolumn)'Spaltennummer ermitteln
oform.updatetimestamp(ncolumn,otimestamp)'Zeit in Spalte eintragen
if oform.isnew = true then 'sichern
  oform.insertrow()
else
  oform.updaterow()
endif

End Sub
Viel Erfolg
Gruß R
6RaumTaxi hat geschrieben:... VBA-Programmierung bin
Zur Info, wir reden hier von Starbasic, nicht von VBA, das wird bei Microsoft verwendet.
6RaumTaxi
Beiträge: 2
Registriert: Mi, 21.12.2011 14:57

Re: Aktuelles Datum per Schaltfläche einlesen: Entweder oder

Beitrag von 6RaumTaxi »

Nach ein paar Modifikationen funktioniert es nun wie geschmiert :)

Vielen, vielen Dank F3K!!!
Antworten