[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2007
    Beiträge
    9

    "ab Datum" anzeigen

    Hallo, um es vorweg zu sagen, bin ich ein Newbie in Sachen RPG...ich habe auf dem Layout 3 Suchfelder, Artikelnummer, ab Datum und einen Status...funktioniert soweit alles wunderbar mit dem Suchergebnissen, ausser mit dem ab Datum. Ich tippe zB 20.07.2006 also ergebniss erhalte ich alle Datensätze die unter dem 20.07.2006 u gleich dem 20.07.2006 sind, aber ich brauche es genau umgekehrt.

    Das sind meine 3 Schlüssel zu der Tabelle:

    Schl.Feld Sort Uniq Feldbeschreibung Länge
    BVFIRM Auf Nein Firmennummer 3 S
    BVDAT1 Abst Nein Datumsfeld 01 8 S
    BVARTN Auf Nein Artikelnummer 8 A


    Hat jemand einen Tip für mich? danke im voraus.

  2. #2
    Registriert seit
    Oct 2006
    Beiträge
    44

    Aufsteigend

    Spontan würde ich sagen, die Sortierung des Datumsfeldes sollte aufsteigend sein.

  3. #3
    Registriert seit
    Jul 2007
    Beiträge
    9
    Das würde ich auch sagen, aber wie realisiere ich das...habe bereits mit *Hival u *Loval getestet, geht aber trotzdem nicht....

  4. #4
    Registriert seit
    Oct 2006
    Beiträge
    44
    Entweder mit SETGT und READP oder eine andere logische Sicht erstellen und diese verwenden.

  5. #5
    Registriert seit
    Jul 2007
    Beiträge
    9
    wie könnte denn der code ungefähr aussehen, habe leider nichts hilfreiches gefunden....

  6. #6
    Registriert seit
    Oct 2006
    Beiträge
    44
    zum Bleistift:

    Code:
    C           $KL01     SETGTFILE01                     
    C                     REDPEFILE01                   89
    C           *IN89     DOWEQ'0'                        
    C* Verarbeitung
    C                     REDPEFILE01                   89
    C                     ENDDO
    Eventuell wärs angebracht, wenn du deinen Code postest. Weiß ja nicht, welche RPG-Version du verwendest.

  7. #7
    Registriert seit
    Jul 2007
    Beiträge
    9
    PGU/400 Dialogprogramm Entwicklungsystem; Entwicklung mit RPG/400
    Code:
    Datenbankdatei positionieren
     
                *COMMENT    IN50 Farben werden zurückgesetzt        
                MOVE        *OFF        *IN50                       
                                                                    
                *COMMENT    Belegung der Schlüsselfelder            
                                       
                Z-ADD       LAFIRM      BVFIRM                      
                MOVEL       *HIVAL      BVDAT1                      
                MOVE        *BLANKS     BVARTN                      
                                                                    
                *COMMENT    Datum wird ins DB Format gedreht und    
    LADATS      IFEQ        *ZEROS                                  
                Z-ADD       *ZEROS      VADATU                      
                ELSE                                                
                Z-ADD       LADATS      DAT,1                       
                MOVE        'DB'        DATKZ                       
                EXSR        DATAUS                                  
                Z-ADD       DAT,1       VADATU     8 0              
                Z-ADD       VADATU      BVDAT1                      
                ENDIF
    Code:
    Datenbanksätze lesen 
     
                *COMMENT    Kriterium für die Suchmaske          
    VADATU      IFNE        *ZEROS                               
    BVDAT1      IFGT        VADATU                               
                MOVE        *ON         *IN99                    
                                                                 
                ENDIF                                            
                ENDIF                                            
     
    *IN99       IFEQ        *OFF                                 
    LAARTN      IFNE        *BLANKS                              
    LAARTN      ANDNE       BVARTN                               
                GOTO        #IC012                               
                ENDIF                                            
                                                                 
    BVMGRH      IFNE        BVMGWK                               
                MOVE        *ON         *IN50                    
                ELSE                                             
                MOVE        *OFF        *IN50                    
                ENDIF                                            
                                                                 
    LAFEHL      IFEQ        *BLANKS                              
                MOVE        'N'         LAFEHL                   
                ENDIF                                            
                                                                 
    LAFEHL      IFEQ        'J'                                  
    *IN50       IFEQ        *OFF                                 
                GOTO        #IC012                               
                ENDIF                                            
                ENDIF                                            
                                                                 
    BVDAT1      IFGE        VADATU                               
                 MOVEL       'J'         FLDDAT                   
                 ELSE                                             
                 MOVEL       'N'         FLDDAT                   
                 ENDIF                                            
                                                                  
    endif

  8. #8
    Registriert seit
    Jan 2007
    Beiträge
    1.002
    Hi
    Wenn Du schon ein DSC-Datum verwendetst, warum versuchst Du es nicht mal mit einem normalen SETLL *loval/READ.

    Stellt sich die Frage:
    Art der Suche,
    - nach Artikel/Datum
    - nach Datum/Artikel

    ggfls würde ich zwei logische Sichten generieren.

    Kleiner Tipp zu den GOTO

    LAFEHL IFEQ 'J'
    *IN50 IFEQ *OFF
    GOTO #IC012
    ENDIF
    ENDIF

    Würde auch so gehen
    LAFEHL IFEQ 'J'
    *IN50 CABEQ *OFF #IC012
    ENDIF

    Edit: Tippfehler

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Die Befehle sind ja nur die halbe Wahrheit.
    In welcher Form gibst du das Datum ein und in welcher steht es in der DB ?

    Normalerweise ist die Eingabe in deutsch in TTMMJJJJ in der DB aber JJJJMMTT.

    Oder verwendest du ein Feldtyp "Datum" ?

    Schau dir per Debugger den Inhalt deiner Felder und mit Query/SQL den deiner Datei an.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. Subfile - Feld anzeigen
    By christian_lettner in forum NEWSboard Programmierung
    Antworten: 10
    Letzter Beitrag: 01-09-10, 15:21
  2. Teildatei mit SQL anzeigen
    By Rico in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 06-07-06, 16:25
  3. Spooldatei sofort anzeigen
    By dino in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 30-05-06, 13:38
  4. Eingabefelder im Command reverse anzeigen
    By becama in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 12-05-06, 19:46
  5. AS/400 tschechisch anzeigen lassen
    By holgerschurig in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 27-04-06, 15:47

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •