-
Anzahl gefüllte Elemente in Feldgruppe
Hallöchen,
gibt es eine kurze Möglichkeit die Anzahl der gefüllen Werte einer Feldgruppe zu ermitteln. Sowas wie %XFoot( Feldgruppe ) gibt mir ja die Summe zurück. Wenn ich jetzt den Durchschnitt haben möchte, will ich aber die Elemente mit dem Wert 0 weg lassen.
Oder bleibt mir nur die Möglichkeit die Feldgruppe vom ersten bis zum letzten Wert zulesen und die Wert > 0 zu zählen.
Gruß Ronald
-
Wenn du sicher bist, dass keine 0-Werte als Lücken vorhanden sind, kannst du doch nach dem 1. Element = 0 mit "Count = %lookup(*zero:MyTable) - 1;" prüfen.
-
Nee, das ist ja das Problem. Die Gruppe hat zB: 150 Elemente. Und an Pos 15, 20, 75, ... kann ne 0 stehen.
-
Kann mich daran erinnern das man Feldgruppen auch sortieren kann.
Somit müsste das von Fuerchau auch funktionieren.
Gruß
-
Sortieren scheidet aus. Ich habe mehrere Feldgruppen. Element Nr.17 aus Feldgruppe 1 gehöhrt auch zu Element 17 aus Feldgrupp2.
Wenn ich jetzt eine Fledgrp. sortiere, dann stimmt der Rest net mehr
-
Naja, kannst ja die benötigte Feldgruppe in ein duplikat kopieren bzw. in eine temporäre und mit der dann die Rechenoperation durchführen (Definition mit *LIKE) dann würde die originale die zu einer zweiten gehöhrt nicht berührt werden.
Gruß
-
Oder wie wärs mit "%ELEM"
Beschreibung IBM:
%ELEM returns the number of elements in the specified array, table, or
multiple-occurrence data structure. The value returned is in unsigned integer
format (type U). It may be specified anywhere a numeric constant is allowed in the
definition specification or in an expression in the extended factor 2 field.
The parameter must be the name of an array, table, or multiple occurrence data
structure.
-
Soweit wie ich %ELEM verstanden habe, gibt diese Funktion die MaxAnzahl der Elemente der Feldgruppe/Tabelle zurück
Ronald
-
Ja richtig, mein Fehler - Sorry
-
Tja, dann gibt es halt nur die lange Variante, mit einer Schleife vom letzten zum 1. Element den 1. Wert <> 0 zu suchen.
Allerdings, wenn auch 0-Werte zwischendurch vorkommen können, wer sagt dir denn, dass die letzten 0-Werte nicht gültige Werte sind ?
Wie füllst du denn die Tabelle ?
Kannst du dir beim Füllen die Anzahl nicht merken ?
Wenn du eine oder mehrere Parallel-Tabellen hast, ist da ggf. das 1. freie Element = *blank ?
%elem hat nur den Vorteil, dass ich damit die definierte Anzahl nicht zusätzlich als Konstante/Variable speichern muss.
-
Naja, so mit der Schleife habe ich das jetzt aich gemacht. Es ging bei der Geschichte um Durchschnittswerte. Es gibt da na Tabelle für das Jahr nach Wochen(53 Elemente). Es werden da Lieferungen und so'n Kram ausgewertet. Es gibt aber halt Wochen (Urlaub, etc.) die halt wirklich 0 sind. Die sollten dann auch keine Berücksichtigung finden. Der ganze Durchschnittskram kommt (wie eigentlich immer) mal wieder als extra Idee nach vielen, vielen Tagen (Wochen, Monate, ...) der Benutzung des Programms.
Die Werte werden aus verschiedenen Dateien zusammen gesucht.
Gruß Ronald
-
Da bietet sich ja SQL eigentlich eher an:
AVG(case wert when 0 then null else wert end)
NULL-Werte fließen in die Berechnung nicht mit ein.
Similar Threads
-
By homue in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 18-07-07, 16:47
-
By rr2001 in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 13-12-06, 14:04
-
By steven_r in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 07-11-06, 11:01
-
By Der_Unwissende in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 20-10-06, 08:32
-
By Bratmaxxe in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 29-06-06, 10:29
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks