hi,
per Array wäre es wohl kein Problem, aber bei einer DBF ...
Ein Browse zeigt einen Record als Row an wobei die Colume einem Feld zugeordnet ist.
per AddColumne könnte ich ein weitere Feld hinzufügen.
neue Records werden an die Row angehängt
Wenn man nun z.b. einen Lieferschein von einen Kunden sehen möchte sind in einem "normalen" Browse alle Positionen untereinander.
Ich habe mir nun zuerst einen "1 Columne Browser" gebaut den ich mit weiteren "1 Columne Browser" pro Lieferschein füttere
... also 10x bis 20x "1 Columne Browser"
Nun bekommen nicht alle Kunden das selbe, also müsste ich die "anderen" Artikel mit Menge 0 noch anlegen/sortieren damit ich pro Row immer den selben Artikel habe wegen Synchronisation ( oBrowse:Down() ).
wie gehe ich nun am "geschicktesten" vor ... Array wäre ja kein Problem, aber DBF ...
ich möchte auch unbedingt per :datalink auf die DBF arbeiten
... und die 0 Menge "Dummys" nicht per APPEND BLANK an einen Lieferschein hängen ...
oder wenn doch Array, dann müsste der :datalink den Inhalt der betreffenden Cell (editierbar) auch sofort in die DBF zurück schreiben.
oder hat jemand eine Idee wie man das "anderes" angehen könnte ? (activeX mit Excel,das hab ich mit dem DSOframer versucht ...)
DBF wie Excel Row/Col
Moderator: Moderatoren
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF wie Excel Row/Col
Hallo Jimmy,
ich nutze dafür 2 Browse (mit Express++).
Wiese möchtest Du überhaupt die Kundendaten in den Browse darstellen.
Wäre es nicht besser im Browse nur die Positionen und ganz normal oben drüber die Kundendaten,
oder Du macht ein mehrzeiligen Header in dem die Kundendaten stehen.
ich nutze dafür 2 Browse (mit Express++).
Wiese möchtest Du überhaupt die Kundendaten in den Browse darstellen.
Wäre es nicht besser im Browse nur die Positionen und ganz normal oben drüber die Kundendaten,
oder Du macht ein mehrzeiligen Header in dem die Kundendaten stehen.
Gruß
Klaus
Klaus
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: DBF wie Excel Row/Col
wie ?Koverhage hat geschrieben:ich nutze dafür 2 Browse (mit Express++).
Das Bild soll nur die Columne / Rows zeigen wie ich die in einem (optischen) Browse habe möchte.Koverhage hat geschrieben:Wiese möchtest Du überhaupt die Kundendaten in den Browse darstellen.
Wäre es nicht besser im Browse nur die Positionen und ganz normal oben drüber die Kundendaten,
oder Du macht ein mehrzeiligen Header in dem die Kundendaten stehen.
die Columne (AddColumne() ), je Kunde, können dabei > 1 bis ... sein und die Rows (Append Blank) pro Artikel.
Tja und wie baue ich die DBF auf ? ... Array kein Problem.
gruss by OHR
Jimmy
Jimmy
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF wie Excel Row/Col
Jimmy,
da ist ein Beispiel in den Samples von Express++
Aber hier ein Auszug von meinem Code, in meinem Fall sind die nebeneinander.
da ist ein Beispiel in den Samples von Express++
Aber hier ein Auszug von meinem Code, in meinem Fall sind die nebeneinander.
Code: Alles auswählen
bPosit := {|| ("rp")->(DbClearScope()), ;
("rp")->(DbSetScope( SCOPE_TOP, str( ("rk")->renr, 9 ) ) ), ;
("rp")->(DbSetScope( SCOPE_BOTTOM, str( ("rk")->renr, 9 ) ) ), ;
("rp")->(dbGoTop()), ;
oBrowRp:refreshAll() }
@ 3, 0 DCBROWSE oBrowse ALIAS cAlias SIZE lastcol-70, lastrow-3 ;
MKCOLOR { || !dummy() }, { || sayrfarbe() } ;
NOSOFTTRACK SCOPE DESCENDING ;
ITEMMARKED {|| Eval(bPosit), ;
DC_GetRefresh(GetList,, ;
DCGETREFRESH_TYPE_EXCLUDE,{GETLIST_BROWSE}) } ;
EVAL {|| oBrowse:goTop() }
DCSETPARENT oBrowse
DCBROWSECOL DATA { || x_reart(("rk")->rekn) } HEADER mess209 WIDTH 6 PICTURE "XXXXXXXX"
DCBROWSECOL field ("rk")->renr HEADER mess210 WIDTH 6 PICTURE "999999999"
DCBROWSECOL field ("rk")->rdat HEADER mess211 WIDTH 6
DCBROWSECOL field ("rk")->gnet HEADER mess212 WIDTH 6 PICTURE "@E 99,999.99"
DCBROWSECOL field ("rk")->mwdm HEADER mess213 WIDTH 6 PICTURE "@E 99,999.99"
DCBROWSECOL field ("rk")->gbru HEADER mess214 WIDTH 6 PICTURE "@E 99,999.99"
DCBROWSECOL DATA { || if( ("rk")->druk, JA, NEIN ) } HEADER mess215 ;
WIDTH 4 PICTURE "XXXX"
DCBROWSECOL DATA { || if( ("rk")->fibu, JA, NEIN ) } HEADER mess216 ;
WIDTH 4 PICTURE "XXXX"
DCBROWSECOL FIELD ("rk")->txt WIDTH 12;
HEADER "Komm" DATATOOLTIP {|| lDataToolTips }
DCSETPARENT TO
@ 3, nFpos DCBROWSE oBrowRp ALIAS 'rp' SIZE lastcol-(nFpos+1),lastrow-3 ;
PRESENTATION DC_BrowPres() ;
NOSOFTTRACK SCOPE
DCSETPARENT oBrowRp
DCBROWSECOL field ("rp")->pos HEADER mess217 WIDTH 4 picture "9999"
DCBROWSECOL field ("rp")->artnr HEADER mess218 picture "!!!!!!!!!!!!"
DCBROWSECOL field ("rp")->bez1 HEADER mess219 ;
picture "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
Gruß
Klaus
Klaus
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: DBF wie Excel Row/Col
Danke !Koverhage hat geschrieben:da ist ein Beispiel in den Samples von Express++
sehe ich das richtig das du den SCOPE von "rp" auf "rk" setzt wobei das 2 Browse sind ? hm ... das wäre doch dann "komprimiert" ?Koverhage hat geschrieben:Code: Alles auswählen
bPosit := {|| ("rp")->(DbClearScope()), ; ("rp")->(DbSetScope( SCOPE_TOP, str( ("rk")->renr, 9 ) ) ), ; ("rp")->(DbSetScope( SCOPE_BOTTOM, str( ("rk")->renr, 9 ) ) ), ; ("rp")->(dbGoTop()), ; oBrowRp:refreshAll() }
stehe auf x-Artikel 1318 -> y-Anzeige Kunden 24314 sowie 23938 also "nur" 2 Kunden ... ich will "alle"
gruss by OHR
Jimmy
Jimmy
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF wie Excel Row/Col
Hallo Jimmy,
rp = Rechnungspositionen
rk = Rechnungskopfdaten
entsprechend dem Kunden (oder Rechnungskopf) wird ein Scope auf die Position gesetzt.
Sollte auch nur als Anhaltspunkt dienen, wie das gemacht wird.
rp = Rechnungspositionen
rk = Rechnungskopfdaten
entsprechend dem Kunden (oder Rechnungskopf) wird ein Scope auf die Position gesetzt.
Sollte auch nur als Anhaltspunkt dienen, wie das gemacht wird.
Gruß
Klaus
Klaus