&ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2 &ANALYZE-RESUME &Scoped-define WINDOW-NAME CURRENT-WINDOW &Scoped-define FRAME-NAME gFakturaArtChange {adecomm/appserv.i} &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gFakturaArtChange /*------------------------------------------------------------------------ File: Description: from cntnrdlg.w - ADM2 SmartDialog Template Input Parameters: Output Parameters: Author: Created: ------------------------------------------------------------------------*/ /* This .W file was created with the Progress AppBuilder. */ /*----------------------------------------------------------------------*/ /* Create an unnamed pool to store all the widgets created by this procedure. This is a good default which assures that this procedure's triggers and internal procedures will execute in this procedure's storage, and that proper cleanup will occur on deletion of the procedure. */ CREATE WIDGET-POOL. /* *************************** Definitions ************************** */ /* Parameters Definitions --- */ DEFINE INPUT PARAMETER iphAufko AS HANDLE NO-UNDO. DEFINE OUTPUT PARAMETER oplRetVal AS LOG NO-UNDO. /* Local Variable Definitions --- */ { incl/dlgdefinition.i } { src/adm2/widgetprto.i } /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartDialog &Scoped-define DB-AWARE no &Scoped-define ADM-CONTAINER DIALOG-BOX &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Data-Source,Page-Target,Update-Source,Update-Target /* Name of designated FRAME-NAME and/or first browse and/or first query */ &Scoped-define FRAME-NAME gFakturaArtChange /* Standard List Definitions */ &Scoped-Define ENABLED-OBJECTS RECT-2 F_Knr F_Kunde F_Aufnr F_Faknr ~ F_Sammnr CB_Fakart Btn_OK Btn_Cancel &Scoped-Define DISPLAYED-OBJECTS F_Knr F_Kunde F_Aufnr F_Faknr F_Sammnr ~ CB_Fakart /* Custom List Definitions */ /* List-1,List-2,List-3,List-4,List-5,List-6 */ &Scoped-define List-6 F_Knr F_Aufnr F_Faknr F_Sammnr /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Define a dialog box */ /* Definitions of the field level widgets */ DEFINE BUTTON Btn_Cancel AUTO-END-KEY LABEL "abbrechen" SIZE 15 BY 1. DEFINE BUTTON Btn_OK AUTO-GO LABEL "OK" SIZE 15 BY 1. DEFINE VARIABLE CB_Fakart AS CHARACTER FORMAT "X(256)":U LABEL "Fakturaart" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 51.6 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Aufnr AS INTEGER FORMAT "9999999":U INITIAL 0 LABEL "Aufnr" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Faknr AS INTEGER FORMAT "9999999":U INITIAL 0 LABEL "Faknr" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Knr AS INTEGER FORMAT "999999":U INITIAL 0 LABEL "Kunde" VIEW-AS FILL-IN NATIVE SIZE 11 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Kunde AS CHARACTER FORMAT "X(256)":U LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 80 BY 1 NO-UNDO. DEFINE VARIABLE F_Sammnr AS INTEGER FORMAT "9999999":U INITIAL 0 LABEL "SammelNr" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 NO-UNDO. DEFINE RECTANGLE RECT-2 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 113.2 BY 7.14. /* ************************ Frame Definitions *********************** */ DEFINE FRAME gFakturaArtChange F_Knr AT ROW 2 COL 13 COLON-ALIGNED WIDGET-ID 4 NO-TAB-STOP F_Kunde AT ROW 2 COL 27 COLON-ALIGNED WIDGET-ID 6 NO-TAB-STOP F_Aufnr AT ROW 3 COL 13 COLON-ALIGNED WIDGET-ID 8 NO-TAB-STOP F_Faknr AT ROW 4 COL 13 COLON-ALIGNED WIDGET-ID 10 NO-TAB-STOP F_Sammnr AT ROW 4 COL 41.6 COLON-ALIGNED WIDGET-ID 14 NO-TAB-STOP CB_Fakart AT ROW 5.57 COL 13 COLON-ALIGNED WIDGET-ID 12 Btn_OK AT ROW 10 COL 12.2 Btn_Cancel AT ROW 10 COL 33.4 RECT-2 AT ROW 1.48 COL 3 WIDGET-ID 2 SPACE(3.79) SKIP(2.94) WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE TITLE "Fakturaart wechseln" CANCEL-BUTTON Btn_Cancel WIDGET-ID 100. /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartDialog Allow: Basic,Browse,DB-Fields,Query,Smart Container Links: Data-Target,Data-Source,Page-Target,Update-Source,Update-Target Design Page: 1 Other Settings: COMPILE APPSERVER */ &ANALYZE-RESUME _END-PROCEDURE-SETTINGS &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gFakturaArtChange /* ************************* Included-Libraries *********************** */ {src/adm2/containr.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR DIALOG-BOX gFakturaArtChange FRAME-NAME */ ASSIGN FRAME gFakturaArtChange:SCROLLABLE = FALSE FRAME gFakturaArtChange:HIDDEN = TRUE. /* SETTINGS FOR FILL-IN F_Aufnr IN FRAME gFakturaArtChange 6 */ ASSIGN F_Aufnr:READ-ONLY IN FRAME gFakturaArtChange = TRUE. /* SETTINGS FOR FILL-IN F_Faknr IN FRAME gFakturaArtChange 6 */ ASSIGN F_Faknr:READ-ONLY IN FRAME gFakturaArtChange = TRUE. /* SETTINGS FOR FILL-IN F_Knr IN FRAME gFakturaArtChange 6 */ ASSIGN F_Knr:READ-ONLY IN FRAME gFakturaArtChange = TRUE. ASSIGN F_Kunde:READ-ONLY IN FRAME gFakturaArtChange = TRUE. /* SETTINGS FOR FILL-IN F_Sammnr IN FRAME gFakturaArtChange 6 */ ASSIGN F_Sammnr:READ-ONLY IN FRAME gFakturaArtChange = TRUE. /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gFakturaArtChange /* Query rebuild information for DIALOG-BOX gFakturaArtChange _Options = "SHARE-LOCK" _Query is NOT OPENED */ /* DIALOG-BOX gFakturaArtChange */ &ANALYZE-RESUME /* ************************ Control Triggers ************************ */ &Scoped-define SELF-NAME gFakturaArtChange &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gFakturaArtChange gFakturaArtChange ON END-ERROR OF FRAME gFakturaArtChange /* Fakturaart wechseln */ DO: RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gFakturaArtChange gFakturaArtChange ON WINDOW-CLOSE OF FRAME gFakturaArtChange /* Fakturaart wechseln */ DO: RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Cancel &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Cancel gFakturaArtChange ON CHOOSE OF Btn_Cancel IN FRAME gFakturaArtChange /* abbrechen */ DO: RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_OK &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_OK gFakturaArtChange ON CHOOSE OF Btn_OK IN FRAME gFakturaArtChange /* OK */ DO: DEFINE VARIABLE iFak_Art AS INTEGER NO-UNDO. DEFINE VARIABLE iOld AS INTEGER NO-UNDO. DEFINE VARIABLE lOldFest AS LOG NO-UNDO. DEFINE VARIABLE cCodeC AS CHARACTER NO-UNDO. DEFINE VARIABLE iAufnr AS INTEGER NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. DEFINE BUFFER sAufko FOR Aufko. DEFINE BUFFER bTabel FOR Tabel. btnOK = TRUE. DO WITH FRAME {&FRAME-NAME}: ASSIGN {&List-6}. iFak_Art = INTEGER(CB_Fakart:SCREEN-VALUE) NO-ERROR. iAufnr = F_Aufnr. REPEAT TRANSACTION: FIND bAufko WHERE bAufko.Firma = Firma AND bAufko.Aufnr = iAufnr. IF bAufko.Fak_Art = iFak_Art THEN DO: RELEASE bAufko. LEAVE. END. FIND bTabel NO-LOCK WHERE bTabel.Firma = Firma AND bTabel.RecArt = "FAKART" AND bTabel.CodeC = "" AND bTabel.CodeI = bAufko.Fak_Art AND bTabel.Sprcd = 1 NO-ERROR. iOld = bTabel.Int_3. lOldFest = bTabel.Flag_1. IF bAufko.Fak_Art = 99 AND iFak_Art <> 99 THEN ASSIGN bAufko.Faknr = 0 bAufko.Samm_Nr = 0. IF bAufko.Fak_Art <> 99 AND iFak_Art = 99 THEN ASSIGN bAufko.Faknr = Aufko.Aufnr bAufko.Samm_Nr = 0. bAufko.Fak_Art = iFak_Art. FIND bTabel NO-LOCK WHERE bTabel.Firma = Firma AND bTabel.RecArt = "FAKART" AND bTabel.CodeC = "" AND bTabel.CodeI = iFak_Art AND bTabel.Sprcd = 1 NO-ERROR. IF lOldFest OR bTabel.Flag_1 THEN DO: RELEASE bAufko. RELEASE sAufko. RELEASE bTabel. LEAVE. END. IF bTabel.Int_3 = 4 THEN DO: FIND FIRST sAufko NO-LOCK USE-INDEX Aufko-k4 WHERE sAufko.Firma = bAufko.Firma AND sAufko.Knr = bAufko.Knr AND sAufko.Fak_Art = iFak_Art AND sAufko.Faknr = 0 AND sAufko.Samm_Nr <> 0 NO-ERROR. IF AVAILABLE sAufko THEN DO: ASSIGN bAufko.Samm_Nr = sAufko.Samm_Nr bAufko.Faknr = sAufko.Faknr bAufko.Auf_Sta = sAufko.Auf_Sta bAufko.Gedruckt = FALSE. FOR EACH sAufko WHERE sAufko.Firma = bAufko.Firma AND sAufko.Knr = bAufko.Knr AND sAufko.Samm_Nr = bAufko.Samm_Nr AND sAufko.Aufnr <> bAufko.Aufnr: ASSIGN sAufko.Gedruckt = FALSE. END. RELEASE sAufko. RELEASE bAufko. END. ELSE DO: bAufko.Samm_Nr = DYNAMIC-FUNCTION('createSammnr':U, bAufko.Firma) NO-ERROR. bAufko.Faknr = 0. bAufko.Fak_Dat = ?. bAufko.Gedruckt = FALSE. END. END. ELSE DO: ASSIGN bAufko.Samm_Nr = 0 bAufko.Gedruckt = FALSE. IF iOld = 4 THEN DO: ASSIGN bAufko.Faknr = 0 bAufko.Fak_Dat = ?. END. END. RELEASE bAufko. RELEASE sAufko. RELEASE bTabel. LEAVE. END. END. RUN ENDE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Fakart &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Fakart gFakturaArtChange ON RETURN OF CB_Fakart IN FRAME gFakturaArtChange /* Fakturaart */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gFakturaArtChange /* *************************** Main Block *************************** */ { incl/dlgmainblock.i } {src/adm2/dialogmn.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ********************** Internal Procedures *********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gFakturaArtChange _ADM-CREATE-OBJECTS PROCEDURE adm-create-objects : /*------------------------------------------------------------------------------ Purpose: Create handles for all SmartObjects used in this procedure. After SmartObjects are initialized, then SmartLinks are added. Parameters: ------------------------------------------------------------------------------*/ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gFakturaArtChange _DEFAULT-DISABLE PROCEDURE disable_UI : /*------------------------------------------------------------------------------ Purpose: DISABLE the User Interface Parameters: Notes: Here we clean-up the user-interface by deleting dynamic widgets we have created and/or hide frames. This procedure is usually called when we are ready to "clean-up" after running. ------------------------------------------------------------------------------*/ /* Hide all frames. */ HIDE FRAME gFakturaArtChange. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gFakturaArtChange PROCEDURE enableObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE iFak_Art AS INTEGER NO-UNDO. DEFINE BUFFER bAufko FOR Aufko . DEFINE BUFFER bAdresse FOR Adresse. DO WITH FRAME {&FRAME-NAME}: ASSIGN F_Knr = iphAufko::Knr F_Aufnr = iphAufko::Aufnr F_Faknr = iphAufko::Faknr F_Sammnr = iphAufko::Samm_Nr iFak_Art = iphAufko::Fak_Art oplRetVal = FALSE. FIND bAdresse NO-LOCK WHERE bAdresse.Firma = AdFirma AND bAdresse.Knr = F_Knr NO-ERROR. RUN COMBO_FAKART ( CB_Fakart:HANDLE ) NO-ERROR. CB_Fakart:SCREEN-VALUE = STRING(iFak_Art,'999999'). F_Kunde = bAdresse.Anzeig_Br. RELEASE bAdresse. END. { incl/dlgenableobject.i } END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gFakturaArtChange _DEFAULT-ENABLE PROCEDURE enable_UI : /*------------------------------------------------------------------------------ Purpose: ENABLE the User Interface Parameters: Notes: Here we display/view/enable the widgets in the user-interface. In addition, OPEN all queries associated with each FRAME and BROWSE. These statements here are based on the "Other Settings" section of the widget Property Sheets. ------------------------------------------------------------------------------*/ DISPLAY F_Knr F_Kunde F_Aufnr F_Faknr F_Sammnr CB_Fakart WITH FRAME gFakturaArtChange. ENABLE RECT-2 F_Knr F_Kunde F_Aufnr F_Faknr F_Sammnr CB_Fakart Btn_OK Btn_Cancel WITH FRAME gFakturaArtChange. VIEW FRAME gFakturaArtChange. {&OPEN-BROWSERS-IN-QUERY-gFakturaArtChange} END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gFakturaArtChange PROCEDURE ENDE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ IF btnOK THEN DO: oplRetVal = TRUE. END. { incl/dlgende.i } END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME