| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965 |
- &ANALYZE-SUSPEND _VERSION-NUMBER AB_v9r12 GUI ADM2
- &ANALYZE-RESUME
- &Scoped-define WINDOW-NAME CURRENT-WINDOW
- &Scoped-define FRAME-NAME gAAktionen
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS gAAktionen
- /*------------------------------------------------------------------------
- File:
- Description: from cntnrdlg.w - ADM2 SmartDialog Template
- Input Parameters:
- <none>
- Output Parameters:
- <none>
- 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 --- */
- /* Local Variable Definitions --- */
- DEF VAR MaxPage AS INT NO-UNDO.
- DEF VAR AktSeite AS INT NO-UNDO.
- DEF VAR FMutFlag AS LOG NO-UNDO.
- DEF VAR Firma AS CHAR NO-UNDO.
- DEF VAR ProgName AS CHAR NO-UNDO.
- DEF TEMP-TABLE TExcel FIELD Feld AS CHAR EXTENT 20
- FIELD Zeile AS INT.
- /* _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 first Frame and/or Browse and/or first Query */
- &Scoped-define FRAME-NAME gAAktionen
- /* Standard List Definitions */
- &Scoped-Define ENABLED-OBJECTS R_Art CB_Kundengruppe F_VonDatum F_BisDatum ~
- Btn_OK Btn_Cancel R_Preis Hersteller RECT-3
- &Scoped-Define DISPLAYED-OBJECTS R_Art CB_Kundengruppe F_VonDatum ~
- F_BisDatum R_Preis Hersteller
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- &Scoped-define List-6 R_Art F_VonDatum F_BisDatum R_Preis Hersteller
- /* _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 14 BY 1.
- DEFINE BUTTON Btn_OK AUTO-GO
- LABEL "Start"
- SIZE 14 BY 1.
- DEFINE VARIABLE CB_Kundengruppe AS CHARACTER FORMAT "X(256)":U
- LABEL "Kundengruppe"
- VIEW-AS COMBO-BOX INNER-LINES 5
- LIST-ITEM-PAIRS "Item 1","Item 1"
- DROP-DOWN-LIST
- SIZE 35 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_BisDatum AS DATE FORMAT "99.99.9999":U
- LABEL "-"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_VonDatum AS DATE FORMAT "99.99.9999":U
- LABEL "von - bis Datum"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE Hersteller AS CHARACTER FORMAT "X(256)":U
- LABEL "Hersteller"
- VIEW-AS FILL-IN NATIVE
- SIZE 46 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE R_Art AS INTEGER
- VIEW-AS RADIO-SET VERTICAL
- RADIO-BUTTONS
- "Getränke", 1,
- "Wein", 2
- SIZE 25.2 BY 1.52 NO-UNDO.
- DEFINE VARIABLE R_Preis AS INTEGER
- VIEW-AS RADIO-SET VERTICAL
- RADIO-BUTTONS
- "Rabatt", 1,
- "Aktionspreis", 2
- SIZE 25.2 BY 1.52 NO-UNDO.
- DEFINE RECTANGLE RECT-3
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 68 BY 10.48.
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME gAAktionen
- R_Art AT ROW 6 COL 19.8 NO-LABEL
- CB_Kundengruppe AT ROW 2 COL 18 COLON-ALIGNED
- F_VonDatum AT ROW 4.52 COL 18 COLON-ALIGNED
- F_BisDatum AT ROW 4.52 COL 37 COLON-ALIGNED
- Btn_OK AT ROW 10 COL 21
- Btn_Cancel AT ROW 10 COL 39.8
- R_Preis AT ROW 8 COL 19.8 NO-LABEL
- Hersteller AT ROW 3 COL 18 COLON-ALIGNED
- RECT-3 AT ROW 1.24 COL 2
- SPACE(0.99) SKIP(0.22)
- WITH VIEW-AS DIALOG-BOX KEEP-TAB-ORDER
- SIDE-LABELS NO-UNDERLINE THREE-D SCROLLABLE
- TITLE "Aktionen"
- CANCEL-BUTTON Btn_Cancel.
- /* *********************** 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
- */
- &ANALYZE-RESUME _END-PROCEDURE-SETTINGS
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB gAAktionen
- /* ************************* 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 gAAktionen
- Custom */
- ASSIGN
- FRAME gAAktionen:SCROLLABLE = FALSE
- FRAME gAAktionen:HIDDEN = TRUE.
- /* SETTINGS FOR FILL-IN F_BisDatum IN FRAME gAAktionen
- 6 */
- /* SETTINGS FOR FILL-IN F_VonDatum IN FRAME gAAktionen
- 6 */
- /* SETTINGS FOR FILL-IN Hersteller IN FRAME gAAktionen
- 6 */
- /* SETTINGS FOR RADIO-SET R_Art IN FRAME gAAktionen
- 6 */
- /* SETTINGS FOR RADIO-SET R_Preis IN FRAME gAAktionen
- 6 */
- /* _RUN-TIME-ATTRIBUTES-END */
- &ANALYZE-RESUME
- /* Setting information for Queries and Browse Widgets fields */
- &ANALYZE-SUSPEND _QUERY-BLOCK DIALOG-BOX gAAktionen
- /* Query rebuild information for DIALOG-BOX gAAktionen
- _Options = "SHARE-LOCK"
- _Query is NOT OPENED
- */ /* DIALOG-BOX gAAktionen */
- &ANALYZE-RESUME
-
- /* ************************ Control Triggers ************************ */
- &Scoped-define SELF-NAME gAAktionen
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAAktionen gAAktionen
- ON END-ERROR OF FRAME gAAktionen /* Aktionen */
- DO:
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAAktionen gAAktionen
- ON GO OF FRAME gAAktionen /* Aktionen */
- DO:
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ) NO-ERROR.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL gAAktionen gAAktionen
- ON WINDOW-CLOSE OF FRAME gAAktionen /* Aktionen */
- 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 gAAktionen
- ON CHOOSE OF Btn_Cancel IN FRAME gAAktionen /* 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 gAAktionen
- ON CHOOSE OF Btn_OK IN FRAME gAAktionen /* Start */
- DO:
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN REPORT.
- SESSION:SET-WAIT-STATE('').
- ENABLE Btn_OK
- Btn_Cancel WITH FRAME {&FRAME-NAME}.
- RUN ENDE.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME CB_Kundengruppe
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Kundengruppe gAAktionen
- ON RETURN OF CB_Kundengruppe IN FRAME gAAktionen /* Kundengruppe */
- DO:
- APPLY 'TAB' TO SELF.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Hersteller
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Hersteller gAAktionen
- ON HELP OF Hersteller IN FRAME gAAktionen /* Hersteller */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF:HANDLE, INPUT 'HERST' ).
- APPLY 'END' TO SELF.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Hersteller gAAktionen
- ON LEFT-MOUSE-DBLCLICK OF Hersteller IN FRAME gAAktionen /* Hersteller */
- DO:
- RUN g-auswahl-tabelle.w ( INPUT SELF:HANDLE, INPUT 'HERST' ).
- APPLY 'END' TO SELF.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK gAAktionen
- /* *************************** Main Block *************************** */
- MaxPage = 1.
- AktSeite = 1.
- MaxPage = 1.
- AktSeite = 1.
- Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
- ProgName = ENTRY(1, THIS-PROCEDURE:FILE-NAME, '.') NO-ERROR.
- SESSION:DATA-ENTRY-RETURN = TRUE.
- /* ------------------------------------------------------------------ */
- {src/adm2/dialogmn.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* ********************** Internal Procedures *********************** */
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects gAAktionen _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: <none>
- ------------------------------------------------------------------------------*/
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE BEREINIGEN gAAktionen
- PROCEDURE BEREINIGEN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT-OUTPUT PARAMETER ipString AS CHAR NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR ix AS INT NO-UNDO.
- DEF VAR ii AS INT NO-UNDO.
- cString = ''.
- ipString = REPLACE(ipString, ';', ',').
- ipString = REPLACE(ipString, '.', ',').
- ipString = REPLACE(ipString, ' ', ',').
- DO ix = 1 TO NUM-ENTRIES(ipString, ','):
- IF CString <> '' THEN cString = cString + ','.
- cString = cString + STRING(INTEGER(ENTRY(ix, ipString)),'999').
- END.
- ipString = cString.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE changePage gAAktionen
- PROCEDURE changePage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- RUN SUPER.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN DO:
- /* RUN addLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN addLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- /* RUN ToolbarInit ( INPUT h_d-auftr ). */
- RUN ENTRY_CURSOR.
- END.
- WHEN 2 THEN DO:
- RUN ENTRY_CURSOR.
- END.
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI gAAktionen _DEFAULT-DISABLE
- PROCEDURE disable_UI :
- /*------------------------------------------------------------------------------
- Purpose: DISABLE the User Interface
- Parameters: <none>
- 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 gAAktionen.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject gAAktionen
- PROCEDURE enableObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- /* Code placed here will execute PRIOR to standard behavior. */
- DO WITH FRAME {&FRAME-NAME}:
- RUN COMBO_KUNDENGRP ( INPUT CB_Kundengruppe:HANDLE ).
- END.
- RUN SUPER.
- RUN FENSTER_TITEL ( INPUT FRAME {&FRAME-NAME}:HANDLE ) NO-ERROR.
- RUN LESENFWAUSWERTUNGEN ( INPUT ProgName,
- INPUT FRAME {&FRAME-NAME}:CURRENT-ITERATION ) NO-ERROR.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI gAAktionen _DEFAULT-ENABLE
- PROCEDURE enable_UI :
- /*------------------------------------------------------------------------------
- Purpose: ENABLE the User Interface
- Parameters: <none>
- 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 R_Art CB_Kundengruppe F_VonDatum F_BisDatum R_Preis Hersteller
- WITH FRAME gAAktionen.
- ENABLE R_Art CB_Kundengruppe F_VonDatum F_BisDatum Btn_OK Btn_Cancel R_Preis
- Hersteller RECT-3
- WITH FRAME gAAktionen.
- VIEW FRAME gAAktionen.
- {&OPEN-BROWSERS-IN-QUERY-gAAktionen}
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDE gAAktionen
- PROCEDURE ENDE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U) NO-ERROR.
- IF AktSeite > 1 THEN DO:
- RUN selectPage ( INPUT 1 ).
- RETURN NO-APPLY.
- END.
- RUN ENDE_PROGRAMM ( INPUT THIS-PROCEDURE:FILE-NAME ).
- APPLY 'GO' TO FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_CURSOR gAAktionen
- PROCEDURE ENTRY_CURSOR :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- /* WHEN 1 THEN RUN applyEntry IN h_v-adresse ( INPUT ? ). */
- /* WHEN 2 THEN RUN applyEntry IN h_f-adrkomm ( INPUT ? ). */
- /* WHEN 3 THEN RUN applyEntry IN h_b-auftbb ( INPUT ? ). */
- /* WHEN 4 THEN RUN applyEntry IN h_b-aufdet ( INPUT ? ). */
- /* WHEN 5 THEN RUN applyEntry IN h_b-aufstreu ( INPUT ? ). */
- /* WHEN 6 THEN RUN applyEntry IN h_b-auffak ( INPUT ? ). */
- /* WHEN 7 THEN RUN applyEntry IN h_b-position ( INPUT ? ). */
- END CASE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE exitObject gAAktionen
- PROCEDURE exitObject :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- RUN ENDE.
- RETURN NO-APPLY.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE KOPF gAAktionen
- PROCEDURE KOPF :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER eh AS COM-HANDLE NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- /*
- eh:APPLICATION:RUN('FormatKopf').
- */
- FIND Steuer USE-INDEX Steuer-k1
- WHERE Steuer.Firma = Firma NO-LOCK NO-ERROR.
- Zelle = 'A1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Firma1.
- Zelle = 'D1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Aktionsliste'.
- Zelle = 'H1'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Datum : ' + STRING(TODAY,'99.99.9999').
- Zelle = 'A2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = Steuer.Ort.
- Zelle = 'D2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = ''.
- Zelle = 'H2'.
- eh:Range(Zelle):SELECT.
- eh:SELECTION:VALUE = 'Zeit : ' + STRING(TIME,'HH:MM:SS').
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE REPORT gAAktionen
- PROCEDURE REPORT :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR excelAppl AS COM-HANDLE NO-UNDO.
- DEF VAR DatenName AS CHAR NO-UNDO.
- DEF VAR DateiName AS CHAR NO-UNDO.
- DEF VAR Zelle AS CHAR NO-UNDO.
- DEF VAR xText AS CHAR NO-UNDO.
- DEF VAR Ja AS LOG NO-UNDO.
- DEF VAR KGeb AS CHAR NO-UNDO.
- DEF VAR VGeb AS CHAR NO-UNDO.
- DEF VAR sWgr AS CHAR NO-UNDO.
- DEF VAR sPgr AS CHAR NO-UNDO.
- DEF VAR sAgr AS CHAR NO-UNDO.
- DEF VAR Ku_Grp AS INT NO-UNDO.
- DEF VAR ExcelOpen AS LOG NO-UNDO.
- DEF VAR dPreis AS DEC NO-UNDO.
- DEF VAR fPreis AS LOG NO-UNDO.
- DEF VAR iPreisGrp AS INT NO-UNDO.
- DEF VAR xFarbe AS CHAR NO-UNDO.
- DEF VAR cString AS CHAR NO-UNDO.
- DEF VAR ix AS INT NO-UNDO.
- Firma = DYNAMIC-FUNCTION('GETMANDANT':U) NO-ERROR.
- DO WITH FRAME {&FRAME-NAME}:
- ASSIGN {&List-6}.
- IF F_VonDatum = ? THEN F_VonDatum = DATE(MONTH(TODAY),01,YEAR(TODAY)).
- IF F_BisDatum = ? THEN F_BisDatum = DATE(12,31,YEAR(TODAY)).
- Ku_Grp = INTEGER(CB_Kundengruppe:SCREEN-VALUE).
- FIND Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = Firma
- AND Tabel.RecArt = 'KUNDGRP'
- AND Tabel.CodeC = ''
- AND Tabel.CodeI = Ku_Grp
- AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR.
- iPreisGrp = Tabel.Int_1.
- IF iPreisGrp = 0 THEN DO:
- MESSAGE 'Diese Kundengruppe hat keine Preisgruppe' SKIP
- 'Bitte bei den Debitortabellen vervollständigen' VIEW-AS ALERT-BOX.
- RETURN.
- END.
- FIND Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = Firma
- AND Tabel.RecArt = 'PREGRP'
- AND Tabel.CodeC = ''
- AND Tabel.CodeI = iPreisGrp
- AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Tabel THEN DO:
- MESSAGE 'Diese Kundengruppe hat keine gültige Preisgruppe' SKIP
- 'Bitte bei den Debitortabellen berichtigen' VIEW-AS ALERT-BOX.
- RETURN.
- END.
- IF Tabel.Int_1 = 0 THEN fPreis = FALSE.
- ELSE fPreis = TRUE.
- RUN BEREINIGEN ( INPUT-OUTPUT Hersteller ).
- DISPLAY {&List-6}.
- DISABLE Btn_OK
- Btn_Cancel.
- RUN SCHREIBENFWAUSWERTUNGEN ( INPUT ProgName,
- INPUT FRAME {&FRAME-NAME}:CURRENT-ITERATION )
- NO-ERROR.
- DatenName = 'Aktionen_Rauch.txt'.
- IF R_Art = 1 THEN DateiName = 'Aktionen_Rauch.xls' + CHR(01) + 'Aktionen_Rauch.xls'.
- ELSE DateiName = 'Aktionen_Rauch.xls' + CHR(01) + 'Aktionen_Wein_Rauch.xls'.
- DO WHILE TRUE:
- excelAppl = DYNAMIC-FUNCTION('CREATEEXCEL':U) NO-ERROR.
- IF NOT VALID-HANDLE(excelAppl) THEN DO:
- RUN FEHLER ( INPUT 1035 ).
- RETURN NO-APPLY.
- END.
- LEAVE.
- END.
- DO WHILE TRUE:
- RUN CREATEDATEI ( INPUT DateiName ).
- IF NOT RETURN-VALUE BEGINS 'ERROR-' THEN LEAVE.
- CASE RETURN-VALUE:
- WHEN 'ERROR-PARAMETER' THEN DO:
- RUN FEHLER ( INPUT 1036 ).
- RETURN NO-APPLY.
- END.
- WHEN 'ERROR-LOESCHEN' THEN DO:
- RUN FEHLER ( INPUT 1037 ).
- RETURN NO-APPLY.
- END.
- WHEN 'ERROR-VORLAGE' THEN DO:
- RUN FEHLER ( INPUT 1038 ).
- RETURN NO-APPLY.
- END.
- OTHERWISE DO:
- MESSAGE RETURN-VALUE VIEW-AS ALERT-BOX ERROR.
- RETURN NO-APPLY.
- END.
- END CASE.
- LEAVE.
- END.
- DateiName = RETURN-VALUE.
- DO WHILE TRUE:
- RUN CREATEDATEI ( INPUT DatenName ).
- IF NOT RETURN-VALUE BEGINS 'ERROR-' THEN LEAVE.
- CASE RETURN-VALUE:
- WHEN 'ERROR-PARAMETER' THEN DO:
- RUN FEHLER ( INPUT 1036 ).
- RETURN NO-APPLY.
- END.
- WHEN 'ERROR-LOESCHEN' THEN DO:
- RUN FEHLER ( INPUT 1037 ).
- RETURN NO-APPLY.
- END.
- WHEN 'ERROR-VORLAGE' THEN DO:
- RUN FEHLER ( INPUT 1038 ).
- RETURN NO-APPLY.
- END.
- OTHERWISE DO:
- MESSAGE RETURN-VALUE VIEW-AS ALERT-BOX ERROR.
- RETURN NO-APPLY.
- END.
- END CASE.
- LEAVE.
- END.
- DatenName = RETURN-VALUE.
- OUTPUT TO VALUE(DatenName).
- ExcelOpen = FALSE.
- FOR EACH AktPreis WHERE AktPreis.Firma = Firma
- AND AktPreis.Grp = Ku_Grp
- AND ((AktPreis.Ab_Datum >= F_VonDatum AND
- AktPreis.Ab_Datum <= F_BisDatum) OR
- (AktPreis.Bis_Datum >= F_VonDatum AND
- AktPreis.Bis_Datum <= F_BisDatum)) NO-LOCK,
- FIRST Artst USE-INDEX Artst-k1
- WHERE Artst.Firma = AktPreis.Firma
- AND Artst.Artnr = AktPreis.Artnr
- AND Artst.Inhalt = AktPreis.Inhalt
- AND Artst.Jahr = AktPreis.Jahr
- AND ((Hersteller = '') OR
- (Hersteller <> '' AND
- LOOKUP(STRING(Artst.Herst,"999"), Hersteller , ',') > 0))
- AND Artst.Aktiv = TRUE
- AND Artst.Ausverk < 9 NO-LOCK,
- FIRST Artbez OF Artst NO-LOCK
- BREAK BY Artst.Wg_Grp
- BY Artst.Prod_Grp
- BY Artst.Art_Grp
- BY Artst.Suchbe
- BY Artst.KGeb_Cd :
- IF FIRST-OF ( Artst.Wg_Grp ) THEN DO:
- sWgr = '??????????'.
- RUN FIND_WARENGRP ( INPUT Artst.Wg_Grp, OUTPUT xText ).
- IF xText <> '' AND
- xText <> '?' THEN sWgr = ENTRY(2, xText, CHR(01)).
- PUT CONTROL sWgr CHR(10)
- '£' CHR(10).
- END.
- IF FIRST-OF ( Artst.Prod_Grp ) THEN DO:
- sPgr = '??????????'.
- RUN FIND_PRODGRP ( INPUT Artst.Wg_Grp ,
- INPUT Artst.Prod_Grp ,
- OUTPUT xText ).
- IF xText <> '' AND
- xText <> '?' THEN sPgr = ENTRY(2, xText, CHR(01)).
- PUT CONTROL sPgr CHR(10)
- '£' CHR(10).
- END.
- IF FIRST-OF ( Artst.Art_Grp ) THEN DO:
- sAgr = '??????????'.
- RUN FIND_ARTIKGRP ( INPUT Artst.Wg_Grp ,
- INPUT Artst.Prod_Grp ,
- INPUT Artst.Art_Grp ,
- OUTPUT xText ).
- IF xText <> '' AND
- xText <> '?' THEN sAgr = ENTRY(2, xText, CHR(01)).
- PUT CONTROL sAgr CHR(10).
- END.
- FIND KGebinde USE-INDEX KGebinde-k1
- WHERE KGebinde.Firma = Firma
- AND KGebinde.Geb_Cd = Artst.KGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE KGebinde THEN KGeb = KGebinde.KBez.
- ELSE KGeb = FILL('?', 10).
- FIND VGebinde USE-INDEX VGebinde-k1
- WHERE VGebinde.Firma = Firma
- AND VGebinde.Geb_Cd = Artst.VGeb_Cd NO-LOCK NO-ERROR.
- IF AVAILABLE VGebinde THEN VGeb = VGebinde.KBez.
- ELSE VGeb = FILL('?', 10).
- RUN FIND_FARBE ( INPUT Artst.Farbe, OUTPUT cString ).
- IF cString = '?' OR
- cString = '' THEN cString = CHR(01).
- cString = ENTRY(2, cString, CHR(01)).
- CASE cString:
- WHEN 'rot' THEN xFarbe = 'O'.
- WHEN 'weiss' THEN xFarbe = 'W'.
- WHEN 'rose' THEN xFarbe = 'R'.
- OTHERWISE xFarbe = ''.
- END CASE.
- PUT CONTROL '£'.
- PUT CONTROL STRING(Artst.Artnr ,'999999') '£'
- Artbez.Bez1 '£'.
- IF R_Art = 2 THEN PUT CONTROL TRIM(STRING(Artst.Jahr,'zzzz')) '£'
- xFarbe '£'.
- PUT CONTROL KGeb '£'
- VGeb '£'.
- IF R_Preis = 1 THEN DO:
- dPreis = AktPreis.Wert.
- IF AktPreis.Art = 0 THEN PUT CONTROL STRING(dPreis,'zz9.99 Fr').
- IF AktPreis.Art = 1 THEN PUT CONTROL STRING(dPreis,'z9.9 %').
- END.
- IF R_Preis = 2 THEN DO:
- FIND LAST ArtPreis USE-INDEX ArtPreis-k1
- WHERE ArtPreis.Firma = AktPreis.Firma
- AND ArtPreis.Artnr = AktPreis.Artnr
- AND ArtPreis.Inhalt = AktPreis.Inhalt
- AND ArtPreis.Jahr = AktPreis.Jahr
- AND ArtPreis.Preis_Grp = iPreisGrp
- AND ArtPreis.Ab_Datum <= F_VonDatum NO-LOCK NO-ERROR.
- IF NOT AVAILABLE ArtPreis THEN dPreis = 0.
- ELSE DO:
- IF fPreis THEN dPreis = ArtPreis.VK_Brutto.
- ELSE dPreis = ArtPreis.VK_Netto .
- IF AktPreis.Art = 0 THEN dPreis = dPreis - AktPreis.Wert.
- ELSE dPreis = dPreis * (100 - AktPreis.Wert) / 100.
- END.
- PUT CONTROL TRIM(STRING(dPreis,'zzzzz9.99 Fr')).
- END.
- PUT CONTROL '££'
- STRING(AktPreis.Ab_Datum ,'99.99.9999') '£'
- STRING(AktPreis.Bis_Datum,'99.99.9999') '££'
- AktPreis.Bemerkung.
- PUT CONTROL CHR(10).
- IF Artbez.Bez2 <> '' THEN DO:
- PUT CONTROL '££'
- Artbez.Bez2 CHR(10).
- END.
- ExcelOpen = TRUE.
- IF LAST-OF ( Artst.Wg_Grp ) OR
- LAST-OF ( Artst.Prod_Grp ) OR
- LAST-OF ( Artst.Art_Grp ) THEN PUT CONTROL '£' CHR(10).
- END.
- OUTPUT CLOSE.
- IF NOT ExcelOpen THEN DO:
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- RETURN.
- END.
- IF R_Art = 2 THEN DO:
- INPUT FROM VALUE(DatenName) NO-ECHO.
- EMPTY TEMP-TABLE TExcel.
- ix = 5.
- REPEAT TRANSACTION ON STOP UNDO, LEAVE
- ON ERROR UNDO, NEXT:
- ix = ix + 1.
- CREATE TExcel.
- IMPORT DELIMITER "£" TExcel.
- ASSIGN TExcel.Zeile = ix.
- END.
- INPUT CLOSE.
- END.
-
- RUN OPENEXCEL ( INPUT excelAppl,
- INPUT DateiName,
- INPUT '',
- OUTPUT Ja ).
- IF NOT Ja THEN DO:
- RUN FEHLER ( INPUT 1040 ).
- RETURN NO-APPLY.
- END.
- Zelle = 'A6'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:FormulaR1C1 = 'TEXT;' + DatenName.
- excelAppl:Application:RUN ( 'DateiEinfügen' ).
- /*
- RUN KOPF ( INPUT excelAppl ) NO-ERROR.
- */
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:ColumnWidth = 0.3.
- ix = 0.
- excelAppl:Range(Zelle):SELECT.
- FOR EACH TExcel BY TExcel.Zeile:
- IF TExcel.Feld[05] = '' THEN NEXT.
- Zelle = 'E' + TRIM(STRING(TExcel.Zeile,'zzzzz9')).
- excelAppl:Range(Zelle):SELECT.
- excelAppl:Selection:Font:Name = "Wingdings".
- excelAppl:Selection:FormulaR1C1 = "n".
- CASE TExcel.Feld[05]:
- WHEN 'O' THEN DO:
- excelAppl:Selection:Font:Colorindex = 3.
- END.
- WHEN 'W' THEN DO:
- excelAppl:Selection:Font:Colorindex = 6.
- END.
- WHEN 'R' THEN DO:
- excelAppl:Selection:Font:Colorindex = 7.
- END.
- OTHERWISE excelAppl:Selection:FormulaR1C1 = "".
- END CASE.
- END.
- Zelle = 'A1'.
- excelAppl:Range(Zelle):SELECT.
- DYNAMIC-FUNCTION('RELEASEEXCEL':U, INPUT excelAppl ) NO-ERROR.
- END.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE selectPage gAAktionen
- PROCEDURE selectPage :
- /*------------------------------------------------------------------------------
- Purpose: Super Override
- Parameters:
- Notes:
- ------------------------------------------------------------------------------*/
- DEF INPUT PARAMETER piPageNum AS INT NO-UNDO.
- DEF VAR FMutFlag AS LOG NO-UNDO.
- DEF VAR MutProg AS CHAR NO-UNDO.
- FMutFlag = DYNAMIC-FUNCTION('getMutflagAlt':U) NO-ERROR.
- DO WHILE TRUE:
- IF NOT FMutFlag THEN LEAVE.
- MutProg = DYNAMIC-FUNCTION('GETMUTPROG':U).
- IF MutProg <> THIS-PROCEDURE:FILE-NAME THEN LEAVE.
- RETURN NO-APPLY.
- END.
- CASE piPageNum:
- END CASE.
- AktSeite = DYNAMIC-FUNCTION('getCurrentPage':U).
- CASE AktSeite:
- WHEN 1 THEN DO:
- /* RUN removeLink ( h_dyntoolbar , 'TableIO':U , h_v-auftr ). */
- /* RUN removeLink ( h_dyntoolbar , 'Navigation':U , h_d-auftr ). */
- END.
- END CASE.
- RUN SUPER( INPUT piPageNum).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|