| Autor |
Beitrag |
Xearox
      
Beiträge: 260
Erhaltene Danke: 3
|
Verfasst: Do 19.05.11 23:10
Sorry, hab keine Ahnung wie ich den Titel anders nennen hätte können...
... folgendes Problem, mein Chef möchte gerne, das ich Ihm ein Programm schreibe, mit dem er Rechnungen schneller Bearbeiten kann, bisher macht er dies über eine einfache Excel Tabelle.
Das ist aber recht unübersichtlich, daher bat er mich halt darum, ihm was zu Programmieren, im Anhang ist das Aktuelle Programm, wie es zur Zeit aussieht.
Nun hab ich ein paar fragen dazu, klar kann ich jetzt für jede Frage einen Thread aufmachen, aber dann liege ich bei bestimmt 10 Threads und das sieht nicht gerade schön aus, aber wenn ihr Mods sagt, ich soll es so machen, kein Problem, sind nur paar Klicks.
Nun zur Problematik.
Unten im Screenshot sehr ihr das Programm.
Kunden, Artikel und Ausgewählte Artikel, sind jeweils ListBoxen...
In der List Box "Ausgewählte Artikel" soll eine Liste erscheinen, mit den Artikeln, welche er für die Rechnung braucht.
Frage 1) Ich habe einen Artikel, wie z.B. eine Festplatte, diese Festplatte wurde aber zwei mal verkauft. Diese Soll aber nicht in der Liste, 2 Mal aufgeführt sein, sondern man soll mit Rechtsklick die Anzahl einstellen können, wie kann ich dies am einfachsten erledigen? (bitte letzten Punkt beachten, dieser ist ganz wichtig)
Frage 2) Ich möchte nun auf einer Anderen Form, alles Artikel plus den Ausgewählten Artikel als Vorschau in ein Memo übertragen, wo folgendes drin steht:
-Kunde
-Lieferdatum
-Artikel, mit Preis und Anzahl
-Gesamtsumme Netto
-zzgl. Mwst also der Betrag welcher durch die Mwst. hinzu kommt
-Den Gesamten Rechnungsbetrag inkl. Mwst.
Frage 3) Nun soll alles was hier Aufgeführt ist, zurück in die Excel Liste kopiert werden, hier ist schon ein Tabellen Blatt vorbereitet. Wo nur jeweils der Kunden Name, der Artikel und das Lieferdatum eingefügt werden soll, der Rest wird automatisch ausgefüllt.
Frage 4) Nun soll ein Makro in Excel ausgeführt werden, jedoch gesteuert von Delphi, also das Programm soll Excel den Befehl dazu geben, das Makro "Übertragen" auszuführen. In Excel wird nun mehrer Tabellen mit den Daten gefüttert und auch ein Index mit allen erstellten Rechnungen. Wie bekomme ich nun in der Tabelle, "Rechnungsausgabe" alle Daten, welche dort enthalten sind, am einfachsten in Delphi importiert, so das ich in Delphi sehen kann, wie die Rechnung nach der Übertragung in Excel, aussieht?(Hier ist auf diesem Blatt eine Zelle mit einer "ID", diese holte dich aus dem Index Blatt die Rechnung mit den ganzen Daten raus.
Das Problem an der ganzen Sache, ich hab nun Ahnung, ich bin ein Newbie in diesem Gebiet, vor allem was Ole angeht.
Viele Befehle hab ich durch google gefunden, aber um so tiefer ich in die Materie rein gehe, um so weniger komme ich weiter und nun bin ich auch mit meinem Wissen, welches ich in den 3 Jahren erlernt habe, wo ich mit Delphi arbeite, ausgeschöpft. Und das Wissen habe ich mir selber beigebracht, habe keine Ausbildung in dieser Hinsicht gemacht, oder sonst was, sondern einfach nur Hobby mäßig.
Wäre echt lieb, wenn sich da mal jemand Zeit nehmen würde, und mir paar sachen erklären kann, es reicht auch, wo nach ich suchen muss, um die oben genannten Aufgaben, zu realisieren, weil dann kann ich immer noch, wenn ich was nicht verstanden hab, mich an euch wenden, aber ohne Anhaltspunkt ist das extrem schwierig, weiter zu machen...
Danke und noch einen Schönen Morgen/Tag/Abend, wann auch immer ihr das lest.
Gruß Christopher
Einloggen, um Attachments anzusehen!
|
|
MaPsTaR
      
Beiträge: 90
Erhaltene Danke: 4
Win XP
Delphi 7 Enterprise
|
Verfasst: Do 19.05.11 23:27
Hi,
da ich davon ausgehe, dass die Moderatoren einen neuen Thread für jede Frage verlangen werden (und ich mich mit dem Rest auch noch nicht beschäftigt habe ;D):
1)
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus;
type TArticle = packed record Name: String; Count: integer; end; TForm1 = class(TForm) ListBox1: TListBox; PopupMenu1: TPopupMenu; Anzahleingeben1: TMenuItem; procedure ListBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FormCreate(Sender: TObject); procedure Anzahleingeben1Click(Sender: TObject); private public Articles: Array of TArticle; end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var index: integer; begin if Button = mbRight then begin index := ListBox1.ItemAtPos(Point(X,Y), true); ListBox1.ItemIndex := index; if index > -1 then Popupmenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y); end; end;
procedure TForm1.Anzahleingeben1Click(Sender: TObject); begin Articles[ListBox1.ItemIndex].Count := StrToInt(InputBox('Anzahl', 'Anzahl:', IntToStr(Articles[ListBox1.ItemIndex].Count))); end;
end. |
Du müsstest dann halt jedes mal, wenn ein Artikel hinzugefügt wird, das Array "Articles" verlängern und den Namen und eine Anzahl voreintragen...
Gruß Mapstar
_________________ Liebe Kinder, es stimmt ... solnage auch nur der ertse und lezte Bchutsabe rihctig ist und alle andreen Bcuhsatben irgendwie vorahnden sind,
dann knan man es dennonch lesen, also macht nur weiter so, wir verstehen euch schon
|
|
Tranx
      
Beiträge: 648
Erhaltene Danke: 85
WIN 2000, WIN XP
D5 Prof
|
Verfasst: Fr 20.05.11 02:41
Vielleicht schieße ich ja über das Ziel hinaus, aber eine Auftragsverwaltung schreit geradezu nach Datenbankanwendungen. Du solltest Dich damit mal beschäftigen.
Eine mögliche Struktur wäre da:
Kundentabelle: mit Kundenummer, Name, Adresse, Telefon, E-Mail ...
Auftragstabelle: (über Kundennummer verknüpft mit Kundentabelle): Auftragsnummer, Artikelnummer, Anzahl, Auftragsdatumsangaben, Rechnungsdatum, Rechnungsnummer, Rechnungseingang....
Artikeltabelle: Artikelnummer, Bezeichnung, Preis....
Du bräuchtest dann ein Programm mit TDBGrids und Komponenten der Anbindung an die Datenbank. Falls Du wenig Ahnung mit SQL hast, empfehle ich ACCESS als Datenbanksystem. Das kannst Du dann selber pflegen. Allerdings müsstest Du dann die vorhandenen Excel-Daten in Access überführen, denn die Daten gleichzeitig in Excel und Access zu führen macht keinen Sinn. Aber das sollte kein Problem machen.
Ich würde Dir empfehlen, erst einfache Strukturen zu wählen, d.h. wenige Datensatzfelder. Sprech das doch mal mit Deinem Chef durch. Es ist sicher wesentlich sinnvoller, als die Auftragsverwaltung in Excel zu erledigen. In Delphi gibt es bei den Beispielen ein paar Beispiele für Datenbankanwendungen, an denen Du üben kannst.
_________________ Toleranz ist eine Grundvoraussetzung für das Leben.
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 20.05.11 09:27
Moin!
Xearox hat folgendes geschrieben : | | Sorry, hab keine Ahnung wie ich den Titel anders nennen hätte können... |
Nun, wie wäre es mit "Auftragsverwaltung programmieren" gewesen?
Xearox hat folgendes geschrieben : | | Nun hab ich ein paar fragen dazu, klar kann ich jetzt für jede Frage einen Thread aufmachen, aber dann liege ich bei bestimmt 10 Threads und das sieht nicht gerade schön aus, aber wenn ihr Mods sagt, ich soll es so machen, kein Problem, |
MaPsTaR hat folgendes geschrieben : | | da ich davon ausgehe, dass die Moderatoren einen neuen Thread für jede Frage verlangen werden |
So ist es.
Ich sperre den Thread mal nicht, damit du deinen ersten Beitrag noch bearbeiten kannst.
Xearox hat folgendes geschrieben : | mein Chef möchte gerne, das ich Ihm ein Programm schreibe, mit dem er Rechnungen schneller Bearbeiten kann, bisher macht er dies über eine einfache Excel Tabelle.
Das ist aber recht unübersichtlich, daher bat er mich halt darum, ihm was zu Programmieren, im Anhang ist das Aktuelle Programm, wie es zur Zeit aussieht. |
 Sag mal, hat dein Chef grob keinen Plan, was er da tut oder soll das Beschäftigungstherapie sein?  Dafür gibt es doch schon Software wie Sand am Meer, und auch durchaus nix kostenintensives. Warum sollte man das Rad noch mal erfinden wollen?
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
|