Announcement

Collapse
No announcement yet.

Berechnungen von Spalte A in Spalte A zurückschreiben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Berechnungen von Spalte A in Spalte A zurückschreiben

    Hallo,

    ich bin neu hier und habe ein Fragestellung zu FoxPro. Ich muss zugeben, ich bin kein großer Programmier und hoffe ihr helft mir bei meinem Problem. Kleinere Skripte um Operationen auf zwei oder mehr DBFs auszuführen, kann ich mir schreiben, aber jetzt bin ich an meine Grenze gestoßen.

    Ich hab eine Tabelle die ungefähr so aussieht

    TYP.......... GRAD.......... ELEMENT-NO.......... ID
    A............. 10.................... 1.................... 1
    A............. 20.................... 2.................... 1
    A............. 30.................... 3.................... 1
    A............. 40.................... 4.................... 1
    A............. 50.................... 5.................... 1
    A............. 60.................... 6.................... 1
    B............. 70.................... 7.................... 1
    C............. 80.................... 8.................... 1

    A............. 101.................... 1.................... 2
    A............. 201.................... 2.................... 2
    A............. 301.................... 3.................... 2
    A............. 401.................... 4 .................... 2
    A............. 501.................... 5.................... 2
    A............. 601.................... 6.................... 2
    B............. 701.................... 7.................... 2
    C............. 801.................... 8.................... 2

    Dies ist nur ein beispielhafter Ausschnitt.

    Jetzt will ich die rot markierten Werte in Spalte GRAD will ich neu berechnen. Der neue Wert soll er Mittelwert aus der Spalte GRAD mit der Element Nummer 3 und 4 (blau) berechnet werden.
    Also bei ID Nr. 1 wäre es für B und C der Wert 35.

    Ich hab keine Ahnung wie ich vorgehen muss

    Von der Idee her würde ich einen Array auf die ID bilden und dann auf die Element Nummer scannen. Ich weiss allerdings nicht wie ich das in einen Code packe und mit Arrays kenn ich mich auch nicht aus. Ich hab keine Ahnung wie ich diesen Aufrufe und auch nicht wie ich in den nächsten springen kann.

    Bitte helft mir.

    Jan

    PS: Entschuldigung für den blöden Titel.

  • #2
    Kann mir denn keiner helfen

    Wenn ich das mit dem Array richtig verstanden habe, müsste der Anfang so aussehen:


    Code:
    Dimension aArray(i,2)
    STORE chan.id                to aArray(i,1)
    STORE chan.element_no to aArray(i,2)
    Chan ist in dem Fall der Name der DBF.

    Also definiere ich einen zweidimensionalen Array, der i Zeilen hat und zwei Spalten. Da schreibe ich einmal die IDs rein und einmal die Element_No.

    Dann habe ich mir gedacht, dass ich mit Scan nach den Elementen 3 und 4 suche und mit Locate möchte ich den Pointer auf Elemente 7 setzen (wenn man das überhaupt so machen kann):

    Code:
    Scan for element_no=3 or element_no=4
        Locate element_no=7
    EndScan
    Wie muss ich jetzt die Arrays reinbringen? Ich muss dem Programm ja sagen, wenn du bei ID 1 bist und die Elemente 3 und 4 gefunden hast, dann bilde den Mittelwert aus den entsprechenden GRAD Werten und füge sie in die GRAD Zelle von Element 7 ein.

    Wie zum Teufel mach ich das?

    Ich kann den Code jetzt selber leider nicht ausprobieren, weil ich auf meinem Notebook kein FoxPro habe. Das kann ich erst morgen wieder machen, aber das lässt mir jetzt keine Ruhe.

    Comment

    Working...
    X