AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankfelder addieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankfelder addieren

Ein Thema von svko · begonnen am 4. Dez 2009 · letzter Beitrag vom 9. Jan 2010
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.297 Beiträge
 
Delphi 12 Athens
 
#11

Re: Datenbankfelder addieren

  Alt 5. Dez 2009, 22:49
Zitat:
Wie aber zeige ich 14 Datensätze in meinen Formular an, das für einen Tag nur einen Datensatz nutzt.
nicht für jeden Tag einen Datensatz, für jede Leistung einen Datensatz. Das würde bedeuten, daß du für jeden Tag 14 Datensätze ablegst. Beim lesen würdest du pro Datum in der Ergebnismenge 14 Datensätze erhalten welche du dann in deinen Formularfelder anzeigen kannst.
Ergänzung: Oder nur die ausgefüllten Reihen speichern und entsprechend von oben nach unten wieder eintragen.

Zum Thema Summe: Wenn du die Leistungen einzeln speicherst ist es ein leichtes über SQL auch die entsprechenden Summen zu berechnen.

PS: mir würden zu dem Projekt spontan 5 Tabellen einfallen. Welche hast du ?
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#12

Re: Datenbankfelder addieren

  Alt 7. Dez 2009, 14:38
Hallo,

1. Arbeits-Tabelle (wie bisher)

Arbeits-Id AutoInc
Arbeits-Datum

2. Tabelle für mögliche Leistungen, nur Namen, keine Dopplungen
- Schachtarbeiten
- Maurerarbeiten

Leistungs-Id AutoInc
Leistungs-Name

3. Zuordnung der Leistungen zu einem Eintrag in Tabelle 1

Id AutoInc
Arbeits-Id Integer
Leistungs-Id Integer
Menge Float
OrderNo Integer // zur Sortierung oder Numerierung


Ausserdem würde ich schleunigst weg von Paradox.

Noch eine Entscheidungs-Hilfe.
Was für einen Aufwand bedeutet es,
das Programm von 14 auf 15 Leistungen umzubauen ?

Bei meiner Struktur gar keinen.


Heiko
Heiko
  Mit Zitat antworten Zitat
verkouter

Registriert seit: 29. Dez 2004
64 Beiträge
 
Delphi 2010 Architect
 
#13

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 12:17
So, dass hat jetzt eine ganze Weile gedauert, aber ich habe jetzt die große Datenbank in 3 kleine
zerpflückt.Eine dient als Mastersource und das Datum als Masterfield. Die Geschichte funktioniert
mit DBGrid auch sehr gut, nur habe ich keine Ahnung wie ich 14 DBcomboboxen die Werte aus der
Leistungsdatenbank zuweise.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#14

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 12:27
Hallo,

du schreibst immer Datenbanken, meinst aber Tabellen.
So dass musste ich mal loswerden

Durch das "Auseinanderpflücken" geht das gar nicht mehr so "einfach".

Ich würde dafür ein eigenes Form nehmen

links - alle möglichen Bauleistungen (in einem ListView, was du selber füllst per Query)
rechts - ausgewählte
Mitte - Button(s) zum Hin- und Rüberklicken

Mit OK schreibst du die ausgewählten Leistungen in die hoff.
jetzt existierende "Leistung - Arbeit" - Tabelle.
Vorher wird noch geprüft, ob der Eintrag nicht schon existiert.
Einfacher ist es, einfach auf Verdacht alle Leistungen der aktuellen Arbeit zu löschen
Das Feld OrderNo stellt die Reihenfolge sicher.


Heiko
Heiko
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 12:28
Zitat von verkouter:
...ich habe jetzt die große Datenbank in 3 kleine zerpflückt...
Es gibt einen Unterschied zwischen Datenbank und Tabelle. Vermutlich meinst du hier Tabelle und nicht Datenbank.
  Mit Zitat antworten Zitat
verkouter

Registriert seit: 29. Dez 2004
64 Beiträge
 
Delphi 2010 Architect
 
#16

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 12:39
Das Formular, siehe Screenshot sollte schon so erhalten bleiben.
Die Leistungen kann ich nicht vorgeben. Für jeden Baustelle gib es vom Auftraggeber ein
Angebotsschreiben in dem Leistungen stehen. Es gäbe alse viele hundert verschiedene Bauleistungen.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#17

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 12:56
Hallo,

Dann zeige uns doch erst mal deine jetzige Datenbank-Struktur.

Zitat:
Die Leistungen kann ich nicht vorgeben. Für jeden Baustelle gib es vom Auftraggeber ein
Dann ist das freier Text ? -> TDBEdit


Ich hoffe, du legst jetzt nicht für jede Baustelle
ein Verzeichnis (=Datenbank) an ...


Heiko
Heiko
  Mit Zitat antworten Zitat
verkouter

Registriert seit: 29. Dez 2004
64 Beiträge
 
Delphi 2010 Architect
 
#18

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 13:15
Doch es wird für jede Baustelle ein Ordner angelegt, da die Bautagebücher auf der Baustelle
geschrieben werden und wenn die Baustelle fertig ist ins Büro sollen.In der Mastertabelle werden
Datum,Kalenderwoche(es soll KW weise gefiltert werden und Wochenleistung errechnet werden),die
Arbeitsstunden pro Tag,die Geräte die in Einsatz kommen.In der Leistungstabelle wird Datum,
Leistungsbezeichnung,Einheit und Menge gespeichert.Und in der Baustofftabelle das Datum,
Baustoffeingang,Einheit und Menge. Ziel des ganzen ist ein zweites Formular auf dem (je nach
KW-Filter )der Baustoffeingang gesammt und die einzelnen Leistungen addiert ausgeben werden.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#19

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 13:51
Hallo,

habe ich immer noch nicht richtig verstanden

- geg: pro Baustelle eine DB (=Verzeichnis in Pdx)
- ges: Summe X über alle Baustellen ?

- Lösung: geht nicht

Andere Frage:
Warum ComboBoxen bei den Bauleistungen ?

Oder anders:
Woher weisst du, welche Bauleistungen pro Baustelle möglich sind ?


Zeig doch mal deine jetzige DB-Struktur und zwar bitte so wie z.B. bei #12
(also nicht so viel Text)


Heiko
Heiko
  Mit Zitat antworten Zitat
verkouter

Registriert seit: 29. Dez 2004
64 Beiträge
 
Delphi 2010 Architect
 
#20

Re: Datenbankfelder addieren

  Alt 28. Dez 2009, 14:18
Nein, Summe Baustoffe und Summe leistung1, Summe Leistung2 usw pro Baustelle.

Datenstrucktur


Mastertabelle

Nummer(autoinc)
Datum
Kalenderwoche
6mal für mögliche Geräte
Arbeitsdtunden

Leistungstabelle

Nummer(autoinc)
Datum
Lv-Nummer
Bezeichnung
Einheit
Mennge

Baustofftabelle

Nummer(autoinc)
Datum
Bezeichnung
Einheit
Menge


Die Leistungsbezeichnung kenne ich garnicht, die trägt erst der Polier vor Ort ein.

Combobox deshalb, wenn der Polier das erste mal schreibt wird der Eintrag in einer
Stringlist gespeicher und steht beim nächtsten mal zur Auswahl.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz