| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen   | 
	
	
	
		| Autor | 
		Nachricht | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 18:09    Titel: Eine Read Data in Sub | 
				     | 
			 
			
				
  | 
			 
			
				Abend!
 
Ich muss bis heute Abend 21:00 mein Projekt in Qbasic fertig bekommen.
 
Jetzt habe ich alles geschrieben und will eine Tabelle mit Read Data in eine SUB schreiben nur das geht leider nicht!
 
 
Hoffe ihr könnt mir helfen ich bleibe im Forum grüße daniel | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 18:19    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Was bitteschön meinst du mit "Tabelle in eine SUB schreiben" ??
 
Was genau willst du bezwecken ? _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 18:20    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Es geht um eine Auflistung von Artikel(Einkaufswahren).
 
Daneben steht dann die Artikelnr. Preis Namen ....
 
Dim´s sind alle Richtig
 
 
 
EDIT:
 
So soll es aussehen!
 
Die Name Adresse Namen etc. wird dann alles auf ArtikelNr.Lagernd .... geändert.
 
CLS
 
Dim namen as String
 
Dim adresse as String
 
DIM Alter as Integer
 
DIM Telefonkosten as Single
 
DIM Summe as Single
 
Color ,1
 
CLS
 
COLOR 7
 
DO
 
Read namen,adresse,Alter,Telefonkosten
 
Print namen, adresse,alter,USING "#####.##";Telefonkosten
 
Summe=Summe+ Telefonkosten
 
LOOP While namen <> ""
 
DATA "Max Mustermann","Wien",23,22.55
 
DATA "Roland Mustermann","Wien",82,22.66
 
DATA "","",0,0
 
END SUB
  Zuletzt bearbeitet von praternoster am 22.11.2004, 18:31, insgesamt 4-mal bearbeitet | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 18:20    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Ja aber jetzt weiß ich immer noch nicht was du mit "In die SUB schreiben" meinst !
 
 
Nachtrag: Wenn du den Array lesen willst, musst du im Hauptprogramm deine DIMs in DIM SHARED ändern damit auch SUBs drauf zugreifen können. _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 18:30    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Oben stehts jetzt als EDIT aber was meinst du mit Shared?
 
 
grüße daniel | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 18:38    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				So sieht mein "Stamm" aus 
 
das Haupt Programm also die Weiterleitung.
 
 
DECLARE SUB Artikel ()
 
DECLARE SUB Kunden ()
 
DECLARE SUB Auswahl ()
 
CLS
 
DIM eingabe AS STRING
 
INPUT "Firmen Namen eingabe"; eingabe
 
CLS
 
PRINT "Listen der Firma "; eingabe
 
INPUT "(A)rtikel oder (K)undenliste "; eingabe
 
SELECT CASE uselect$
 
CASE "a"
 
CALL Artikel
 
CASE "k"
 
CALL Kunden
 
END SELECT
 
CLS
 
PRINT eingabe | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 18:42    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Du kannst in SUBs keine DATA - Befehle benutzen. Lager die DATA-Zeilen ins Hauptprogramm aus, und füge bei alles DIMs ein SHARED hinzu- Beispiel:
 
DIM SHARED namen as String _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 18:44    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Ich würde gerne wissen was macht das Shared ?
 
Und ich kann die Data ins Hauptprogramm geben?
 
Und die Read im SUB lassen ?
 
 
grüße praternoster | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 19:06    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				DATA ins Hauptprogramm
 
READ in der SUB
 
 
Das SHARED bewirkt, wie gesagt, dass die Variablen/Datenfelder auch außerhalb des Hauptprogramms (also in SUBs oder FUNCTIONs) genutzt werden können. _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 19:12    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Das geht leider nicht!
 
Dann komm ich auf eine leere Seite!
 
 
 
So sieht meine SUB jetzt aus
 
CLS 
 
Dim artikelnr as Single 
 
Dim adresse as String 
 
DIM lagernd as Integer 
 
DIM preis as Single 
 
CLS 
 
DO 
 
Read namen,adresse,Alter,Telefonkosten 
 
Print namen, adresse,alter,USING "#####.##";Telefonkosten 
 
LOOP While artikelnr <> 0 | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 20:07    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Wie ich bereits sagte: alle DIM Befehl ins Hauptprogramm (also in KEINE SUB) und dann hinter jedes DIM ein SHARED schreiben !! _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		dreael Administrator
  
  Anmeldungsdatum: 10.09.2004 Beiträge: 2531 Wohnort: Hofen SH (Schweiz)
  | 
		 | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 20:46    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Ich danke euch!!
 
Ihr seit die besten!
 
Wenn ich in 3Jahren Programmierer bin helfe ich euch weiter !
 
 
grüße daniel
  Zuletzt bearbeitet von praternoster am 22.11.2004, 20:50, insgesamt einmal bearbeitet | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Paul aka ICC, HV-Freak
 
  Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
  | 
		
			
				 Verfasst am: 22.11.2004, 20:48    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Wo ist denn der Syntaxfehler ?
 
 
Nachtrag: der Fehler ist offensichtlich. Nimm bei den DIMs das AS STRING weg. Normal muss man bei AS STRING deklarationen noch die Anzahl der Bytes angeben, aber das wird zu kompliziert. Lass es einfach ganz weg. _________________
   | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		praternoster
 
 
  Anmeldungsdatum: 22.11.2004 Beiträge: 8
 
  | 
		
			
				 Verfasst am: 22.11.2004, 21:35    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Das ist jetzt nicht mehr das Problem das geht schon!
 
Aber ich will ja 2 "Listen"(Eine für Kunden eine für Artikel)
 
Das Problem ist wie halte ich jetzt das eine DATA vom anderen fern?
 
Denn jetzt geht natürlich die Kundenliste nicht!
 
Denn das erste was er liest ist ein Integer!
 
grüße daniel
 
 
 
DECLARE SUB Artikel ()
 
DECLARE SUB Kunden ()
 
DECLARE SUB Auswahl ()
 
CLS
 
DIM SHARED eingabe AS STRING
 
DIM SHARED eingabe1 AS STRING
 
DIM SHARED namen AS STRING
 
DIM SHARED Wohnort AS STRING
 
DIM SHARED Umsatz AS SINGLE
 
DIM SHARED artikelnr AS SINGLE
 
DIM SHARED bezeichnung AS STRING
 
DIM SHARED lagernd AS INTEGER
 
DIM preis AS SINGLE
 
INPUT "Firmen Namen eingabe"; eingabe
 
CLS
 
PRINT "Listen der Firma "; eingabe
 
INPUT "(A)rtikel oder (K)undenliste "; eingabe1
 
SELECT CASE (eingabe1)
 
CASE "a"
 
CALL Artikel
 
CASE "k"
 
CALL Kunden
 
END SELECT
 
DATA 1, "Milch", 14, .74
 
DATA 2,"Wasser",250,1.18
 
DATA 0,"",0,0
 
DATA "Hanz Meiser","Wien",16.33
 
DATA "","",0
 
 
SUB Artikel
 
PRINT "Artikeliste der Firma "; eingabe
 
DO
 
READ artikelnr, bezeichnung, lagernd, preis
 
PRINT artikelnr, bezeichnung, lagernd, USING "##.##"; preis
 
LOOP WHILE artikelnr <> 0
 
END SUB
 
 
SUB Kunden
 
DO
 
READ namen, Wohnort, Umsatz
 
PRINT "Kunden Liste der Firma"; eingabe
 
PRINT namen, Wohnort, USING "#####.##"; Umsatz
 
LOOP WHILE namen <> ""
 
END SUB | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		 |