&ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI ADM2 &ANALYZE-RESUME /* Connected Databases anadat PROGRESS */ &Scoped-define WINDOW-NAME CURRENT-WINDOW {adecomm/appserv.i} /* Temp-Table and Buffer definitions */ DEFINE TEMP-TABLE RowObject NO-UNDO {"d-aufko.i"}. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS vTableWin /*------------------------------------------------------------------------ File: Description: from viewer.w - Template for SmartDataViewer objects Input Parameters: Output Parameters: ------------------------------------------------------------------------*/ /* 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 ************************** */ /* Komma-Trennzeichen */ /* Keyfelder werden beim Mutieren nicht "Enabled" */ &Scoped-define ERSTES_FELD Auf_Datum &Scoped-define LETZTES_FELD Zuschl_Wert &Scoped-define KEY_FELDER F_Knr,Aufnr,Faknr,Samm_Nr &Scoped-define NUR_LESEN F_Knr,Aufnr,Faknr,Kunde,Auf_Tot,Samm_Nr,Gewicht { incl/viwdefinition.i } DEFINE VARIABLE lLeave AS LOG NO-UNDO. DEFINE VARIABLE lNew AS LOG NO-UNDO. DEFINE VARIABLE cAktRowId AS CHARACTER NO-UNDO. DEFINE VARIABLE dSperrDat AS DATE NO-UNDO. DEFINE VARIABLE dDatum AS DATE NO-UNDO. DEFINE VARIABLE htAufko AS HANDLE NO-UNDO. DEFINE BUFFER bSteuer FOR Steuer. DEFINE TEMP-TABLE tAufko NO-UNDO LIKE Aufko. DEFINE TEMP-TABLE sAufko NO-UNDO LIKE Aufko. DEFINE TEMP-TABLE eAufko NO-UNDO LIKE Aufko. {src/adm2/widgetprto.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartDataViewer &Scoped-define DB-AWARE no &Scoped-define ADM-CONTAINER FRAME &Scoped-define ADM-SUPPORTED-LINKS Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target /* Include file with RowObject temp-table definition */ &Scoped-define DATA-FIELD-DEFS "d-aufko.i" /* Name of designated FRAME-NAME and/or first browse and/or first query */ &Scoped-define FRAME-NAME F-Main /* Standard List Definitions */ &Scoped-Define ENABLED-FIELDS RowObject.Auf_Datum RowObject.Kond_Datum ~ RowObject.Lief_Datum RowObject.Fak_Datum RowObject.AlsOfferte ~ RowObject.Abhol RowObject.Kunde RowObject.U_Ref RowObject.Tour_Nr2 ~ RowObject.Ablad_Vor_Text RowObject.Aufnr RowObject.Wirt_So_Text ~ RowObject.Faknr RowObject.Auf_Tot RowObject.Rabatt RowObject.Zei_Rab_Wert ~ RowObject.Auf_Rab_Wert RowObject.Abh_Rab_Wert RowObject.Zuschl_Wert ~ RowObject.FakturaAdresse RowObject.cFak_Knr RowObject.Samm_Nr ~ RowObject.Gewicht &Scoped-define ENABLED-TABLES RowObject &Scoped-define FIRST-ENABLED-TABLE RowObject &Scoped-Define ENABLED-OBJECTS CB_IBestellung CB_Tour CB_Ablad CB_WirteSo ~ CB_Vertreter CB_Lager CB_MwstKunde CB_Kond CB_Liefart CB_Preisgrp ~ CB_Rabattgrp CB_Kundengrp CB_FRw CB_Fahrer CB_BeiFahrer CB_LKW T_Passant ~ T_AufText T_AbholText RECT-1 &Scoped-Define DISPLAYED-FIELDS RowObject.Auf_Datum RowObject.Kond_Datum ~ RowObject.Lief_Datum RowObject.Fak_Datum RowObject.AlsOfferte ~ RowObject.Abhol RowObject.Kunde RowObject.U_Ref RowObject.Tour_Nr2 ~ RowObject.I_Best RowObject.Ablad_Vor_Text RowObject.Aufnr ~ RowObject.Wirt_So_Text RowObject.Faknr RowObject.Auf_Tot RowObject.Passant ~ RowObject.Rabatt RowObject.Zei_Rab_Art RowObject.Zei_Rab_Wert ~ RowObject.Tour_Nr1 RowObject.Auf_Rab_Art RowObject.Auf_Rab_Wert ~ RowObject.Abh_Rab_Art RowObject.Abh_Rab_Wert RowObject.Zuschl_Art ~ RowObject.Zuschl_Wert RowObject.Vertr RowObject.Knr RowObject.Frw ~ RowObject.LKW RowObject.Lief_Bed RowObject.Fahrer RowObject.Abh_Text ~ RowObject.Auf_Text RowObject.Ku_Grp RowObject.Rab_Grp RowObject.BeiFahrer ~ RowObject.Preis_Grp RowObject.Kond RowObject.MWSt RowObject.Lager ~ RowObject.Wirt_So RowObject.Ablad_Vor RowObject.Firma RowObject.Gedruckt ~ RowObject.Fak_Knr RowObject.FakturaAdresse RowObject.cFak_Knr ~ RowObject.Samm_Nr RowObject.Gewicht &Scoped-define DISPLAYED-TABLES RowObject &Scoped-define FIRST-DISPLAYED-TABLE RowObject &Scoped-Define DISPLAYED-OBJECTS F_Knr cBemerk CB_IBestellung CB_Tour ~ CB_Ablad CB_WirteSo CB_Vertreter CB_Lager CB_MwstKunde CB_Kond CB_Liefart ~ CB_Preisgrp CB_Rabattgrp CB_Kundengrp CB_FRw CB_Fahrer CB_BeiFahrer CB_LKW ~ T_Passant T_AufText T_AbholText /* Custom List Definitions */ /* ADM-ASSIGN-FIELDS,List-2,List-3,List-4,List-5,List-6 */ /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Definitions of the field level widgets */ DEFINE VARIABLE CB_Ablad AS CHARACTER FORMAT "X(256)":U LABEL "Abladevorschrift" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_BeiFahrer AS CHARACTER FORMAT "X(256)":U LABEL "Beifahrer" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Fahrer AS CHARACTER FORMAT "X(256)":U LABEL "Fahrer" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_FRw AS CHARACTER FORMAT "X(256)":U LABEL "Währung" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_IBestellung AS CHARACTER LABEL "Ihre Bestellung" VIEW-AS COMBO-BOX SORT INNER-LINES 5 LIST-ITEMS "Item 1" SIMPLE AUTO-COMPLETION SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Kond AS CHARACTER FORMAT "X(256)":U LABEL "Kondition" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Kundengrp 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 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Lager AS CHARACTER FORMAT "X(256)":U LABEL "Lager" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Liefart AS CHARACTER FORMAT "X(256)":U LABEL "Lieferbedingung" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_LKW AS CHARACTER FORMAT "X(256)":U LABEL "LKW" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_MwstKunde AS CHARACTER FORMAT "X(256)":U LABEL "Mwst Kunde" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Preisgrp AS CHARACTER FORMAT "X(256)":U LABEL "Preisgruppe" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Rabattgrp AS CHARACTER FORMAT "X(256)":U LABEL "Rabattgruppe" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Tour AS CHARACTER FORMAT "X(256)":U LABEL "Tour" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_Vertreter AS CHARACTER FORMAT "X(256)":U LABEL "Vertreter" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE CB_WirteSo AS CHARACTER FORMAT "X(256)":U LABEL "Wirtesonntag" VIEW-AS COMBO-BOX INNER-LINES 5 LIST-ITEM-PAIRS "Item 1","Item 1" DROP-DOWN-LIST SIZE 30 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE cBemerk AS CHARACTER VIEW-AS EDITOR SIZE 4 BY 1 NO-UNDO. DEFINE VARIABLE F_Knr AS CHARACTER FORMAT "X(256)":U LABEL "Knr" VIEW-AS FILL-IN NATIVE SIZE 18 BY 1 BGCOLOR 15 NO-UNDO. DEFINE RECTANGLE RECT-1 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 182 BY 20.48. DEFINE VARIABLE T_AbholText AS LOGICAL INITIAL NO LABEL "Abholtext" VIEW-AS TOGGLE-BOX SIZE 25 BY 1 NO-UNDO. DEFINE VARIABLE T_AufText AS LOGICAL INITIAL NO LABEL "Auftragstext" VIEW-AS TOGGLE-BOX SIZE 25 BY 1 NO-UNDO. DEFINE VARIABLE T_Passant AS LOGICAL INITIAL NO LABEL "Abholadresse" VIEW-AS TOGGLE-BOX SIZE 25 BY 1 NO-UNDO. /* ************************ Frame Definitions *********************** */ DEFINE FRAME F-Main F_Knr AT ROW 1.52 COL 6 COLON-ALIGNED WIDGET-ID 8 RowObject.Auf_Datum AT ROW 4 COL 18 COLON-ALIGNED WIDGET-ID 38 VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 RowObject.Kond_Datum AT ROW 4 COL 49 COLON-ALIGNED WIDGET-ID 42 VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 cBemerk AT ROW 2 COL 100 NO-LABELS WIDGET-ID 134 NO-TAB-STOP RowObject.Lief_Datum AT ROW 4 COL 79 COLON-ALIGNED WIDGET-ID 44 VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 RowObject.Fak_Datum AT ROW 4 COL 109 COLON-ALIGNED WIDGET-ID 40 VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 RowObject.AlsOfferte AT ROW 4 COL 131 WIDGET-ID 52 LABEL "Als Offerte" VIEW-AS TOGGLE-BOX SIZE 15 BY 1 RowObject.Abhol AT ROW 4 COL 149 WIDGET-ID 50 LABEL "Abholer" VIEW-AS TOGGLE-BOX SIZE 14 BY 1 CB_IBestellung AT ROW 5.52 COL 18 COLON-ALIGNED WIDGET-ID 148 RowObject.Kunde AT ROW 1.52 COL 27 COLON-ALIGNED WIDGET-ID 6 LABEL "/" FORMAT "x(80)" VIEW-AS FILL-IN NATIVE SIZE 80 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.U_Ref AT ROW 6.52 COL 18 COLON-ALIGNED WIDGET-ID 48 VIEW-AS FILL-IN NATIVE SIZE 30 BY 1 BGCOLOR 15 CB_Tour AT ROW 5.52 COL 73 COLON-ALIGNED WIDGET-ID 64 RowObject.Tour_Nr2 AT ROW 5.52 COL 106 COLON-ALIGNED WIDGET-ID 86 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 40 BY 1 BGCOLOR 15 CB_Ablad AT ROW 6.52 COL 73 COLON-ALIGNED WIDGET-ID 66 RowObject.I_Best AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 46 VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Ablad_Vor_Text AT ROW 6.52 COL 106 COLON-ALIGNED WIDGET-ID 84 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 40 BY 1 BGCOLOR 15 CB_WirteSo AT ROW 7.52 COL 73 COLON-ALIGNED WIDGET-ID 68 RowObject.Aufnr AT ROW 1.52 COL 123 COLON-ALIGNED WIDGET-ID 10 LABEL "Aufnr / Faknr" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Wirt_So_Text AT ROW 7.52 COL 106 COLON-ALIGNED WIDGET-ID 88 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 40 BY 1 BGCOLOR 15 CB_Vertreter AT ROW 10 COL 18 COLON-ALIGNED WIDGET-ID 54 CB_Lager AT ROW 11.05 COL 18 COLON-ALIGNED WIDGET-ID 58 CB_MwstKunde AT ROW 12 COL 18 COLON-ALIGNED WIDGET-ID 60 CB_Kond AT ROW 13 COL 18 COLON-ALIGNED WIDGET-ID 62 CB_Liefart AT ROW 14 COL 18 COLON-ALIGNED WIDGET-ID 118 RowObject.Faknr AT ROW 1.52 COL 138 COLON-ALIGNED WIDGET-ID 16 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 11.8 BY 1 BGCOLOR 15 NO-TAB-STOP CB_Preisgrp AT ROW 10 COL 68 COLON-ALIGNED WIDGET-ID 104 CB_Rabattgrp AT ROW 11 COL 68 COLON-ALIGNED WIDGET-ID 106 CB_Kundengrp AT ROW 12 COL 68 COLON-ALIGNED WIDGET-ID 108 CB_FRw AT ROW 13 COL 68 COLON-ALIGNED WIDGET-ID 116 CB_Fahrer AT ROW 10 COL 117 COLON-ALIGNED WIDGET-ID 110 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */ DEFINE FRAME F-Main RowObject.Auf_Tot AT ROW 1.52 COL 157 COLON-ALIGNED WIDGET-ID 12 LABEL "Total" VIEW-AS FILL-IN NATIVE SIZE 23 BY 1 BGCOLOR 15 NO-TAB-STOP CB_BeiFahrer AT ROW 11 COL 117 COLON-ALIGNED WIDGET-ID 112 CB_LKW AT ROW 12 COL 117 COLON-ALIGNED WIDGET-ID 114 T_Passant AT ROW 10 COL 155.4 WIDGET-ID 122 RowObject.Passant AT ROW 2 COL 100 WIDGET-ID 128 LABEL "Passant" VIEW-AS TOGGLE-BOX SIZE 4 BY 1 NO-TAB-STOP T_AufText AT ROW 11 COL 155.4 WIDGET-ID 124 T_AbholText AT ROW 12 COL 155.4 WIDGET-ID 126 RowObject.Rabatt AT ROW 16.52 COL 18 COLON-ALIGNED WIDGET-ID 26 VIEW-AS FILL-IN NATIVE SIZE 9 BY 1 BGCOLOR 15 RowObject.Zei_Rab_Art AT ROW 16.52 COL 46 COLON-ALIGNED WIDGET-ID 18 LABEL "Zeilen-Rabatt" VIEW-AS COMBO-BOX LIST-ITEM-PAIRS "Kein Rabatt",0, "Prozent",1, "Betrag",2, "EP Plus",3 DROP-DOWN-LIST SIZE 20 BY 1 BGCOLOR 15 RowObject.Zei_Rab_Wert AT ROW 16.52 COL 70 COLON-ALIGNED WIDGET-ID 20 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 14 BY 1 BGCOLOR 15 RowObject.Tour_Nr1 AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 72 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Auf_Rab_Art AT ROW 17.52 COL 46 COLON-ALIGNED WIDGET-ID 34 LABEL "Auftrags-Rabatt" VIEW-AS COMBO-BOX LIST-ITEM-PAIRS "Kein Rabatt",0, "Prozent",1, "Betrag",2, "EP Plus",3 DROP-DOWN-LIST SIZE 20 BY 1 BGCOLOR 15 RowObject.Auf_Rab_Wert AT ROW 17.52 COL 70 COLON-ALIGNED WIDGET-ID 36 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 14 BY 1 BGCOLOR 15 RowObject.Abh_Rab_Art AT ROW 16.52 COL 103 COLON-ALIGNED WIDGET-ID 30 LABEL "Abhol-Rabatt" VIEW-AS COMBO-BOX LIST-ITEM-PAIRS "Kein Rabatt",0, "Prozent",1, "Betrag",2, "EP Plus",3 DROP-DOWN-LIST SIZE 20 BY 1 BGCOLOR 15 RowObject.Abh_Rab_Wert AT ROW 16.52 COL 127 COLON-ALIGNED WIDGET-ID 32 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 14 BY 1 BGCOLOR 15 RowObject.Zuschl_Art AT ROW 17.52 COL 103 COLON-ALIGNED WIDGET-ID 28 LABEL "Zuschlag" VIEW-AS COMBO-BOX LIST-ITEM-PAIRS "Kein Zuschlag",0, "Prozent",1, "Betrag",2, "EP Plus",3 DROP-DOWN-LIST SIZE 20 BY 1 BGCOLOR 15 RowObject.Zuschl_Wert AT ROW 17.52 COL 127 COLON-ALIGNED WIDGET-ID 24 LABEL "/" VIEW-AS FILL-IN NATIVE SIZE 14 BY 1 BGCOLOR 15 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */ DEFINE FRAME F-Main RowObject.Vertr AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 82 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Knr AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 4 VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 NO-TAB-STOP RowObject.Frw AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 94 VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.LKW AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 98 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Lief_Bed AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 120 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Fahrer AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 92 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Abh_Text AT ROW 2 COL 100 NO-LABELS WIDGET-ID 130 VIEW-AS EDITOR SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Auf_Text AT ROW 2 COL 100 NO-LABELS WIDGET-ID 132 VIEW-AS EDITOR SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Ku_Grp AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 96 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Rab_Grp AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 102 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.BeiFahrer AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 90 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Preis_Grp AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 100 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Kond AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 76 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.MWSt AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 80 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Lager AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 78 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Wirt_So AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 74 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Ablad_Vor AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 70 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP RowObject.Firma AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 2 VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 NO-TAB-STOP WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */ DEFINE FRAME F-Main RowObject.Gedruckt AT ROW 4 COL 166 WIDGET-ID 136 LABEL "Gedruckt" VIEW-AS TOGGLE-BOX SIZE 13.8 BY 1 NO-TAB-STOP RowObject.Fak_Knr AT ROW 2 COL 98 COLON-ALIGNED WIDGET-ID 140 LABEL "Fak-Knr" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 8 NO-TAB-STOP RowObject.FakturaAdresse AT ROW 2.62 COL 27 COLON-ALIGNED WIDGET-ID 138 LABEL "/" FORMAT "x(80)" VIEW-AS FILL-IN NATIVE SIZE 80 BY 1 BGCOLOR 8 NO-TAB-STOP RowObject.cFak_Knr AT ROW 2.62 COL 12 COLON-ALIGNED WIDGET-ID 142 LABEL "Fakt.-Knr" VIEW-AS FILL-IN NATIVE SIZE 11 BY 1 BGCOLOR 8 NO-TAB-STOP RowObject.Samm_Nr AT ROW 2.52 COL 138 COLON-ALIGNED WIDGET-ID 144 LABEL "SammNr" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 NO-TAB-STOP RowObject.Gewicht AT ROW 2.52 COL 161 COLON-ALIGNED WIDGET-ID 146 VIEW-AS FILL-IN NATIVE SIZE 19 BY 1 BGCOLOR 8 NO-TAB-STOP RECT-1 AT ROW 1 COL 1.8 WIDGET-ID 14 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY USE-DICT-EXPS SIDE-LABELS NO-UNDERLINE THREE-D NO-AUTO-VALIDATE AT COL 1 ROW 1 SCROLLABLE WIDGET-ID 100. /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartDataViewer Data Source: "d-aufko.w" Allow: Basic,DB-Fields,Smart Container Links: Data-Target,Update-Source,TableIO-Target,GroupAssign-Source,GroupAssign-Target Frames: 1 Add Fields to: Neither Other Settings: PERSISTENT-ONLY COMPILE APPSERVER Temp-Tables and Buffers: TABLE: RowObject D "?" NO-UNDO ADDITIONAL-FIELDS: {d-aufko.i} END-FIELDS. END-TABLES. */ /* This procedure should always be RUN PERSISTENT. Report the error, */ /* then cleanup and return. */ IF NOT THIS-PROCEDURE:PERSISTENT THEN DO: MESSAGE "{&FILE-NAME} should only be RUN PERSISTENT.":U VIEW-AS ALERT-BOX ERROR BUTTONS OK. RETURN. END. &ANALYZE-RESUME _END-PROCEDURE-SETTINGS /* ************************* Create Window ************************** */ &ANALYZE-SUSPEND _CREATE-WINDOW /* DESIGN Window definition (used by the UIB) CREATE WINDOW vTableWin ASSIGN HEIGHT = 20.95 WIDTH = 184. /* END WINDOW DEFINITION */ */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB vTableWin /* ************************* Included-Libraries *********************** */ {src/adm2/viewer.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR WINDOW vTableWin VISIBLE,,RUN-PERSISTENT */ /* SETTINGS FOR FRAME F-Main NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */ ASSIGN FRAME F-Main:SCROLLABLE = FALSE FRAME F-Main:HIDDEN = TRUE. /* SETTINGS FOR TOGGLE-BOX RowObject.Abhol IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR COMBO-BOX RowObject.Abh_Rab_Art IN FRAME F-Main NO-ENABLE EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Abh_Rab_Wert IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR EDITOR RowObject.Abh_Text IN FRAME F-Main NO-ENABLE EXP-LABEL */ ASSIGN RowObject.Abh_Text:HIDDEN IN FRAME F-Main = TRUE RowObject.Abh_Text:RETURN-INSERTED IN FRAME F-Main = TRUE RowObject.Abh_Text:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Ablad_Vor IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Ablad_Vor:HIDDEN IN FRAME F-Main = TRUE RowObject.Ablad_Vor:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Ablad_Vor_Text IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR TOGGLE-BOX RowObject.AlsOfferte IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Aufnr IN FRAME F-Main EXP-LABEL */ ASSIGN RowObject.Aufnr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR COMBO-BOX RowObject.Auf_Rab_Art IN FRAME F-Main NO-ENABLE EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Auf_Rab_Wert IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR EDITOR RowObject.Auf_Text IN FRAME F-Main NO-ENABLE EXP-LABEL */ ASSIGN RowObject.Auf_Text:HIDDEN IN FRAME F-Main = TRUE RowObject.Auf_Text:RETURN-INSERTED IN FRAME F-Main = TRUE RowObject.Auf_Text:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Auf_Tot IN FRAME F-Main EXP-LABEL */ ASSIGN RowObject.Auf_Tot:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.BeiFahrer IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.BeiFahrer:HIDDEN IN FRAME F-Main = TRUE RowObject.BeiFahrer:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR EDITOR cBemerk IN FRAME F-Main NO-ENABLE */ ASSIGN cBemerk:HIDDEN IN FRAME F-Main = TRUE cBemerk:RETURN-INSERTED IN FRAME F-Main = TRUE cBemerk:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.cFak_Knr IN FRAME F-Main EXP-LABEL */ ASSIGN RowObject.cFak_Knr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Fahrer IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Fahrer:HIDDEN IN FRAME F-Main = TRUE RowObject.Fahrer:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Faknr IN FRAME F-Main EXP-LABEL */ ASSIGN RowObject.Faknr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.FakturaAdresse IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.FakturaAdresse:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Fak_Knr IN FRAME F-Main NO-ENABLE EXP-LABEL */ ASSIGN RowObject.Fak_Knr:HIDDEN IN FRAME F-Main = TRUE RowObject.Fak_Knr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Firma IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Firma:HIDDEN IN FRAME F-Main = TRUE RowObject.Firma:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Frw IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Frw:HIDDEN IN FRAME F-Main = TRUE RowObject.Frw:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN F_Knr IN FRAME F-Main NO-ENABLE */ /* SETTINGS FOR TOGGLE-BOX RowObject.Gedruckt IN FRAME F-Main NO-ENABLE EXP-LABEL */ ASSIGN RowObject.Gewicht:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.I_Best IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.I_Best:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Knr IN FRAME F-Main NO-ENABLE */ ASSIGN RowObject.Knr:HIDDEN IN FRAME F-Main = TRUE RowObject.Knr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Kond IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Kond:HIDDEN IN FRAME F-Main = TRUE RowObject.Kond:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Kunde IN FRAME F-Main EXP-LABEL EXP-FORMAT */ ASSIGN RowObject.Kunde:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Ku_Grp IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Ku_Grp:HIDDEN IN FRAME F-Main = TRUE RowObject.Ku_Grp:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Lager IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Lager:HIDDEN IN FRAME F-Main = TRUE RowObject.Lager:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Lief_Bed IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Lief_Bed:HIDDEN IN FRAME F-Main = TRUE RowObject.Lief_Bed:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.LKW IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.LKW:HIDDEN IN FRAME F-Main = TRUE RowObject.LKW:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.MWSt IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.MWSt:HIDDEN IN FRAME F-Main = TRUE RowObject.MWSt:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR TOGGLE-BOX RowObject.Passant IN FRAME F-Main NO-ENABLE EXP-LABEL */ ASSIGN RowObject.Passant:HIDDEN IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Preis_Grp IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Preis_Grp:HIDDEN IN FRAME F-Main = TRUE RowObject.Preis_Grp:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Rab_Grp IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Rab_Grp:HIDDEN IN FRAME F-Main = TRUE RowObject.Rab_Grp:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Samm_Nr IN FRAME F-Main EXP-LABEL */ ASSIGN RowObject.Samm_Nr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tour_Nr1 IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Tour_Nr1:HIDDEN IN FRAME F-Main = TRUE RowObject.Tour_Nr1:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Tour_Nr2 IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Vertr IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Vertr:HIDDEN IN FRAME F-Main = TRUE RowObject.Vertr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Wirt_So IN FRAME F-Main NO-ENABLE EXP-FORMAT */ ASSIGN RowObject.Wirt_So:HIDDEN IN FRAME F-Main = TRUE RowObject.Wirt_So:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN RowObject.Wirt_So_Text IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR COMBO-BOX RowObject.Zei_Rab_Art IN FRAME F-Main NO-ENABLE EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Zei_Rab_Wert IN FRAME F-Main EXP-LABEL */ /* SETTINGS FOR COMBO-BOX RowObject.Zuschl_Art IN FRAME F-Main NO-ENABLE EXP-LABEL */ /* SETTINGS FOR FILL-IN RowObject.Zuschl_Wert IN FRAME F-Main EXP-LABEL */ /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main /* Query rebuild information for FRAME F-Main _Options = "NO-LOCK" _Query is NOT OPENED */ /* FRAME F-Main */ &ANALYZE-RESUME /* ************************ Control Triggers ************************ */ &Scoped-define SELF-NAME F-Main &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F-Main vTableWin ON ENTRY OF FRAME F-Main DO: IF FMut THEN RUN applyEntry ( FOCUS ). APPLY 'U1'. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.Abhol &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.Abhol vTableWin ON VALUE-CHANGED OF RowObject.Abhol IN FRAME F-Main /* Abholer */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN STRING(TRUE) ELSE STRING(FALSE)). IF FMut THEN DO: FIND FIRST tAufko. ASSIGN tAufko.Abhol = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN FALSE ELSE TRUE). END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME RowObject.AlsOfferte &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL RowObject.AlsOfferte vTableWin ON VALUE-CHANGED OF RowObject.AlsOfferte IN FRAME F-Main /* Als Offerte */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN DO: SELF:SCREEN-VALUE = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN STRING(TRUE) ELSE STRING(FALSE)). RETURN NO-APPLY. END. DEFINE VARIABLE cRowID AS CHARACTER NO-UNDO. DEFINE VARIABLE lJa AS LOG NO-UNDO. lJa = FALSE. IF SELF:SCREEN-VALUE BEGINS 'n' THEN DO: MESSAGE 'Möchten Sie wirklich diesem Auftrag den Offertstatus entfernen?' SKIP 'Alle Artikel werden als "Lager AKTIV" markiert" ! ' VIEW-AS ALERT-BOX INFORMATION BUTTONS YES-NO UPDATE lJa. IF NOT lJa THEN SELF:SCREEN-VALUE = STRING(TRUE). END. ELSE DO: MESSAGE 'Möchten Sie wirklich diesen Auftrag als Offerte definieren?' SKIP 'Alle Artikel werden als "Lager inaktiv" markiert" ! ' VIEW-AS ALERT-BOX INFORMATION BUTTONS YES-NO UPDATE lJa. IF NOT lJa THEN SELF:SCREEN-VALUE = STRING(FALSE). END. IF lJa THEN DO: lJa = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN FALSE ELSE TRUE). FIND FIRST tAufko. RUN ALSOFFERTE_CHANGED ( tAufko.Aufnr, lJa ). END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Ablad &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Ablad vTableWin ON VALUE-CHANGED OF CB_Ablad IN FRAME F-Main /* Abladevorschrift */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Ablad_Vor:SCREEN-VALUE. rowObject.Ablad_Vor:SCREEN-VALUE = SELF:SCREEN-VALUE. FIND FIRST tAufko. tAufko.Ablad_Vor = INTEGER(SELF:SCREEN-VALUE). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_BeiFahrer &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_BeiFahrer vTableWin ON VALUE-CHANGED OF CB_BeiFahrer IN FRAME F-Main /* Beifahrer */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.BeiFahrer:SCREEN-VALUE. rowObject.BeiFahrer:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Fahrer &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Fahrer vTableWin ON VALUE-CHANGED OF CB_Fahrer IN FRAME F-Main /* Fahrer */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Fahrer:SCREEN-VALUE. rowObject.Fahrer:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_FRw &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_FRw vTableWin ON VALUE-CHANGED OF CB_FRw IN FRAME F-Main /* Währung */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Frw:SCREEN-VALUE. rowObject.Frw:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_IBestellung &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_IBestellung vTableWin ON BACKSPACE OF CB_IBestellung IN FRAME F-Main /* Ihre Bestellung */ DO: IF FMut THEN SELF:SCREEN-VALUE = ''. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_IBestellung vTableWin ON DELETE-CHARACTER OF CB_IBestellung IN FRAME F-Main /* Ihre Bestellung */ DO: IF FMut THEN SELF:SCREEN-VALUE = ''. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_IBestellung vTableWin ON VALUE-CHANGED OF CB_IBestellung IN FRAME F-Main /* Ihre Bestellung */ DO: IF NOT FMut THEN DO: SELF:SCREEN-VALUE = rowObject.I_Best:SCREEN-VALUE. RETURN NO-APPLY. END. rowObject.I_Best:SCREEN-VALUE = SELF:SCREEN-VALUE NO-ERROR. IF ERROR-STATUS:ERROR THEN ASSIGN SELF:SCREEN-VALUE = '' rowObject.I_Best:SCREEN-VALUE = ''. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Kond &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Kond vTableWin ON VALUE-CHANGED OF CB_Kond IN FRAME F-Main /* Kondition */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Kond:SCREEN-VALUE. rowObject.Kond:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Kundengrp &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Kundengrp vTableWin ON VALUE-CHANGED OF CB_Kundengrp IN FRAME F-Main /* Kundengruppe */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Ku_Grp:SCREEN-VALUE. rowObject.Ku_Grp:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Lager &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Lager vTableWin ON VALUE-CHANGED OF CB_Lager IN FRAME F-Main /* Lager */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Lager:SCREEN-VALUE. rowObject.Lager:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Liefart &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Liefart vTableWin ON VALUE-CHANGED OF CB_Liefart IN FRAME F-Main /* Lieferbedingung */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Lief_Bed:SCREEN-VALUE. rowObject.Lief_Bed:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_LKW &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_LKW vTableWin ON VALUE-CHANGED OF CB_LKW IN FRAME F-Main /* LKW */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.LKW:SCREEN-VALUE. rowObject.LKW:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_MwstKunde &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_MwstKunde vTableWin ON VALUE-CHANGED OF CB_MwstKunde IN FRAME F-Main /* Mwst Kunde */ DO: DEFINE BUFFER bAufze FOR Aufze. FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. FIND FIRST tAufko. FIND FIRST bAufze NO-LOCK WHERE bAufze.Firma = tAufko.Firma AND bAufze.Aufnr = tAufko.Aufnr AND bAufze.Artnr > 0 NO-ERROR. IF NOT FMut OR AVAILABLE bAufze THEN SELF:SCREEN-VALUE = rowObject.Mwst:SCREEN-VALUE. rowObject.Mwst:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Preisgrp &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Preisgrp vTableWin ON VALUE-CHANGED OF CB_Preisgrp IN FRAME F-Main /* Preisgruppe */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Preis_Grp:SCREEN-VALUE. rowObject.Preis_Grp:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Rabattgrp &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Rabattgrp vTableWin ON VALUE-CHANGED OF CB_Rabattgrp IN FRAME F-Main /* Rabattgruppe */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Rab_Grp:SCREEN-VALUE. rowObject.Rab_Grp:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Tour &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Tour vTableWin ON VALUE-CHANGED OF CB_Tour IN FRAME F-Main /* Tour */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Tour_Nr1:SCREEN-VALUE. rowObject.Tour_Nr1:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Vertreter &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Vertreter vTableWin ON VALUE-CHANGED OF CB_Vertreter IN FRAME F-Main /* Vertreter */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Vertr:SCREEN-VALUE. rowObject.Vertr:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_WirteSo &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_WirteSo vTableWin ON VALUE-CHANGED OF CB_WirteSo IN FRAME F-Main /* Wirtesonntag */ DO: FMut = DYNAMIC-FUNCTION ('getMutflag':U, INPUT Progname) NO-ERROR. IF NOT FMut THEN SELF:SCREEN-VALUE = rowObject.Wirt_So:SCREEN-VALUE. rowObject.Wirt_So:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Knr &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr vTableWin ON ENTRY OF F_Knr IN FRAME F-Main /* Knr */ DO: IF NOT FMut THEN APPLY 'TAB' TO SELF. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_AbholText &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_AbholText vTableWin ON VALUE-CHANGED OF T_AbholText IN FRAME F-Main /* Abholtext */ DO: SELF:SCREEN-VALUE = (IF rowObject.Abh_Text:SCREEN-VALUE <> '' THEN STRING(TRUE) ELSE STRING(FALSE)). IF NOT FMut THEN DO: APPLY 'U1':U. RETURN NO-APPLY. END. cBemerk:SCREEN-VALUE = rowObject.Abh_Text:SCREEN-VALUE. RUN 'g-bemerkung.w' ( cBemerk:HANDLE, FMut ). IF cBemerk:SCREEN-VALUE = '' THEN SELF:SCREEN-VALUE = STRING(FALSE). ELSE SELF:SCREEN-VALUE = STRING(TRUE). FIND FIRST tAufko. rowObject.Abh_Text:SCREEN-VALUE = cBemerk:SCREEN-VALUE. tAufko.Abh_Text = cBemerk:SCREEN-VALUE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_AufText &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_AufText vTableWin ON VALUE-CHANGED OF T_AufText IN FRAME F-Main /* Auftragstext */ DO: SELF:SCREEN-VALUE = (IF rowObject.Auf_Text:SCREEN-VALUE <> '' THEN STRING(TRUE) ELSE STRING(FALSE)). IF NOT FMut THEN DO: APPLY 'U1':U. RETURN NO-APPLY. END. cBemerk:SCREEN-VALUE = rowObject.Auf_Text:SCREEN-VALUE. RUN 'g-bemerkung.w' ( cBemerk:HANDLE, FMut ). IF cBemerk:SCREEN-VALUE = '' THEN SELF:SCREEN-VALUE = STRING(FALSE). ELSE SELF:SCREEN-VALUE = STRING(TRUE). FIND FIRST tAufko. rowObject.Auf_Text:SCREEN-VALUE = cBemerk:SCREEN-VALUE. tAufko.Auf_Text = cBemerk:SCREEN-VALUE. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_Passant &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Passant vTableWin ON VALUE-CHANGED OF T_Passant IN FRAME F-Main /* Abholadresse */ DO: IF rowObject.Passant:SCREEN-VALUE BEGINS '0' OR rowObject.Passant:SCREEN-VALUE BEGINS 'n' THEN DO: SELF:SCREEN-VALUE = STRING(FALSE). RETURN NO-APPLY. END. SELF:SCREEN-VALUE = STRING(TRUE). IF NOT FMut THEN DO: APPLY 'U1':U. RETURN NO-APPLY. END. DEFINE VARIABLE ii AS INTEGER NO-UNDO. DEFINE VARIABLE i1 AS INTEGER NO-UNDO. FIND FIRST tAufko. cBemerk:SCREEN-VALUE = ''. DO ii = 1 TO 5: cBemerk:SCREEN-VALUE = cBemerk:SCREEN-VALUE + (IF ii = 1 THEN '' ELSE CHR(10)) + tAufko.Adresse[ii]. END. RUN 'g-bemerkung.w' ( cBemerk:HANDLE, FMut ). IF cBemerk:SCREEN-VALUE = '' THEN DO: DO ii = 1 TO 5: cBemerk:SCREEN-VALUE = cBemerk:SCREEN-VALUE + (IF ii = 1 THEN '' ELSE CHR(10)) + tAufko.Adresse[ii]. END. END. tAufko.Adresse = ''. i1 = 5. DO ii = NUM-ENTRIES(cBemerk:SCREEN-VALUE, CHR(10)) TO 1 BY -1: IF ENTRY(ii, cBemerk:SCREEN-VALUE, CHR(10)) = '' THEN NEXT. tAufko.Adresse[i1] = ENTRY(ii, cBemerk:SCREEN-VALUE, CHR(10)). i1 = i1 - 1. IF i1 = 0 THEN LEAVE. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK vTableWin /* *************************** Main Block *************************** */ { incl/viwmainblock.i } dSperrDat = DYNAMIC-FUNCTION('getSperrDatum':U) NO-ERROR. IF dSperrDat = ? THEN dSperrDat = TODAY - 90. FIND bSteuer NO-LOCK WHERE bSteuer.Firma = Firma NO-ERROR. ON 'RETURN':U OF rowObject.Zei_Rab_Art, rowObject.Auf_Rab_Art, rowObject.Abh_Rab_Art, rowObject.Zuschl_Art IN FRAME {&FRAME-NAME} DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. ON 'PAGE-DOWN':U OF FRAME {&FRAME-NAME} ANYWHERE DO: FMut = DYNAMIC-FUNCTION('getMutFlag':U, Progname ). IF NOT FMut THEN RETURN NO-APPLY. RUN 'TOOLBAR' IN hKontainer ('SAVE') NO-ERROR. RUN selectPage IN hKontainer ( 2 ). RETURN NO-APPLY. END. CREATE tAufko. CREATE sAufko. CREATE eAufko. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN RUN initializeObject. &ENDIF /************************ INTERNAL PROCEDURES ********************/ /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ********************** Internal Procedures *********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE addRecord vTableWin PROCEDURE addRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE cRowId AS CHARACTER NO-UNDO. DEFINE VARIABLE iAufnr AS INTEGER NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. lNew = FALSE. DO WITH FRAME {&FRAME-NAME}: ASSIGN FMut = TRUE F_Knr:SENSITIVE = TRUE F_Knr:READ-ONLY = FALSE F_Knr:SCREEN-VALUE = '' rowObject.Kunde:SCREEN-VALUE = ''. APPLY 'ENTRY' TO F_Knr. RUN EINGABE_KUNDENNUMMER. IF RETURN-VALUE = 'ENDE' THEN DO: RUN TOOLBAR IN hKontainer ( INPUT 'ABBRUCH':U ) NO-ERROR. RUN refreshRow IN hDaten NO-ERROR. APPLY 'U1'. END. END. iAufnr = (IF lNew THEN INTEGER(RETURN-VALUE) ELSE 0). RUN TOOLBAR IN hKontainer ( INPUT 'ABBRUCH':U ) NO-ERROR. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR. ASSIGN FMut = FALSE F_Knr:SENSITIVE = FALSE F_Knr:READ-ONLY = TRUE . IF NOT lNew THEN RETURN. FIND bAufko NO-LOCK WHERE bAufko.Firma = Firma AND bAufko.Aufnr = iAufnr. DYNAMIC-FUNCTION('createAufGebKo':U, iAufnr ) NO-ERROR. DYNAMIC-FUNCTION('setAufSta':U IN hKontainer, bAufko.Auf_Sta ) NO-ERROR. DYNAMIC-FUNCTION('fetchRowIdent':U IN hDaten, STRING(ROWID(bAufko)), ?) NO-ERROR. RUN TOOLBAR IN hKontainer ( INPUT 'UPDATE':U ) NO-ERROR. /* FNeu = TRUE. FMut = TRUE. FDisp = TRUE. RUN SUPER. */ /* Code placed here will execute AFTER standard behavior. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE cancelRecord vTableWin PROCEDURE cancelRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ FCancel = TRUE. RUN SUPER. /* Code placed here will execute AFTER standard behavior. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE copyRecord vTableWin PROCEDURE copyRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ RUN TOOLBAR IN hKontainer ('ABBRUCH') NO-ERROR. /* FNeu = TRUE. */ /* FMut = TRUE. */ /* FCopy = TRUE. */ /* FDisp = TRUE. */ /* */ /* RUN SUPER. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE deleteRecord vTableWin PROCEDURE deleteRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE Ja AS LOG NO-UNDO. DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE VARIABLE lSpez AS LOG NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE VARIABLE cMessage AS CHARACTER NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten) NO-ERROR. FIND bAufko NO-LOCK WHERE RECID(bAufko) = iRecid. FIND FIRST RuestAuf NO-LOCK WHERE RuestAuf.Firma = bAufko.Firma AND RuestAuf.Aufnr = bAufko.Aufnr AND RuestAuf.lGeruestet AND RuestAuf.MGeli <> 0 NO-ERROR. IF AVAILABLE RuestAuf THEN DO: MESSAGE 'Auftrag hat bereits gerüstete Positionen, kann nicht mehr gelöscht werden!' VIEW-AS ALERT-BOX. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR. RETURN NO-APPLY. END. Ja = DYNAMIC-FUNCTION( 'ANTWORT_NEIN':U, INPUT 1000 ). IF NOT Ja THEN DO: RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR. RETURN NO-APPLY. END. IF bAufko.Faknr > 0 OR bAufko.Samm_Nr > 0 THEN DO: lSpez = DYNAMIC-FUNCTION('getSpez':U) NO-ERROR. IF NOT lSpez THEN DO: MESSAGE 'Auftrag hat bereits Rechnungsnummer' SKIP ' er darf nur noch von authorisierten Personen gelöscht werden' VIEW-AS ALERT-BOX INFORMATION. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR. RELEASE bAufko. RETURN NO-APPLY. END. END. IF bAufko.Verbucht THEN DO: MESSAGE 'Rechnung ist bereits verbucht und kann nicht mehr gelöscht werden' VIEW-AS ALERT-BOX INFORMATION. RUN TOOLBAR IN hKontainer ( INPUT 'CANCEL':U ) NO-ERROR. RELEASE bAufko. RETURN NO-APPLY. END. DISABLE TRIGGERS FOR LOAD OF Aufko . ja = DYNAMIC-FUNCTION('deleteAuftrag':U, iRecid ) NO-ERROR. IF NOT Ja THEN DO: cString = DYNAMIC-FUNCTION ('getErrorMessage':U) NO-ERROR. IF cString = ? THEN cString = ''. CASE ENTRY(1, cString, ':'): WHEN 'CHARACTER' THEN cMessage = ENTRY(2, cString, ':'). END CASE. MESSAGE cMessage VIEW-AS ALERT-BOX. RUN TOOLBAR IN hKontainer ( 'CANCEL' ). RETURN NO-APPLY. END. DYNAMIC-FUNCTION('openQuery':U IN hDaten ) NO-ERROR. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disableFields vTableWin PROCEDURE disableFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcFieldType AS CHARACTER NO-UNDO. DO WITH FRAME {&FRAME-NAME}: END. RUN SUPER( INPUT pcFieldType). IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT TRUE ). IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO: RUN FARBE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT 15 ). END. DO WITH FRAME {&FRAME-NAME}: ASSIGN rowObject.Zei_Rab_Art:SENSITIVE = FALSE rowObject.Auf_Rab_Art:SENSITIVE = FALSE rowObject.Abh_Rab_Art:SENSITIVE = FALSE rowObject.Zuschl_Art :SENSITIVE = FALSE CB_MwstKunde :SENSITIVE = TRUE CB_Frw :SENSITIVE = TRUE. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI vTableWin _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 F-Main. IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE displayFields vTableWin PROCEDURE displayFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcColValues AS CHARACTER NO-UNDO. DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. IF NOT FDisp THEN DO: FDisp = TRUE. RETURN. END. cAktRowId = ENTRY(1, pcColValues, CHR(01)). IF FCancel THEN pcColValues = OldColValues. IF NOT FNeu THEN OldColValues = pcColValues. OldColList = DYNAMIC-FUNCTION('getDisplayedFields':U) NO-ERROR. IF FNeu THEN RUN FEHLWERTE ( INPUT-OUTPUT pcColValues ). DO WITH FRAME {&FRAME-NAME}: END. RUN SUPER( INPUT pcColValues). FCancel = FALSE. DO WITH FRAME {&FRAME-NAME}: CB_Tour :SCREEN-VALUE = rowObject.Tour_Nr1 :SCREEN-VALUE NO-ERROR. CB_Ablad :SCREEN-VALUE = rowObject.Ablad_Vor :SCREEN-VALUE NO-ERROR. CB_WirteSo :SCREEN-VALUE = rowObject.Wirt_So :SCREEN-VALUE NO-ERROR. CB_Vertreter :SCREEN-VALUE = rowObject.Vertr :SCREEN-VALUE NO-ERROR. CB_Lager :SCREEN-VALUE = rowObject.Lager :SCREEN-VALUE NO-ERROR. CB_MwstKunde :SCREEN-VALUE = rowObject.Mwst :SCREEN-VALUE NO-ERROR. CB_Kond :SCREEN-VALUE = rowObject.Kond :SCREEN-VALUE NO-ERROR. CB_Liefart :SCREEN-VALUE = rowObject.Lief_Bed :SCREEN-VALUE NO-ERROR. CB_Preisgrp :SCREEN-VALUE = rowObject.Preis_Grp :SCREEN-VALUE NO-ERROR. CB_Rabattgrp :SCREEN-VALUE = rowObject.Rab_Grp :SCREEN-VALUE NO-ERROR. CB_Kundengrp :SCREEN-VALUE = rowObject.Ku_Grp :SCREEN-VALUE NO-ERROR. CB_Frw :SCREEN-VALUE = rowObject.Frw :SCREEN-VALUE NO-ERROR. CB_Fahrer :SCREEN-VALUE = rowObject.Fahrer :SCREEN-VALUE NO-ERROR. CB_BeiFahrer :SCREEN-VALUE = rowObject.BeiFahrer :SCREEN-VALUE NO-ERROR. CB_LKW :SCREEN-VALUE = rowObject.LKW :SCREEN-VALUE NO-ERROR. CB_IBESTELLUNG:SCREEN-VALUE = rowObject.I_Best :SCREEN-VALUE NO-ERROR. F_Knr:SCREEN-VALUE = rowObject.Knr:SCREEN-VALUE NO-ERROR. T_Passant = (IF rowObject.Passant :SCREEN-VALUE BEGINS '0' THEN FALSE ELSE TRUE ). T_AufText = (IF rowObject.Auf_Text:SCREEN-VALUE <> '' THEN TRUE ELSE FALSE). T_Abholtext = (IF rowObject.Abh_Text:SCREEN-VALUE <> '' THEN TRUE ELSE FALSE). DISPLAY T_Passant T_AufText T_AbholText. CB_IBESTELLUNG :BGCOLOR = (IF CB_IBESTELLUNG :SCREEN-VALUE BEGINS 'YBM' THEN 14 ELSE 15). rowObject.U_Ref:BGCOLOR = (IF rowObject.U_Ref:SCREEN-VALUE BEGINS 'YBM' THEN 14 ELSE 15). END. IF NOT FMut THEN DO: iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten) NO-ERROR. IF iRecid = ? OR iRecid = 0 THEN RETURN. FIND bAufko NO-LOCK WHERE RECID(bAufko) = iRecid. FIND FIRST tAufko. BUFFER-COPY bAufko TO tAufko. RELEASE bAufko. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE EINGABE_KUNDENNUMMER vTableWin PROCEDURE EINGABE_KUNDENNUMMER : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE VARIABLE lJa AS LOG NO-UNDO. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO. DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE VARIABLE nKredTot AS DECIMAL NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. DEFINE BUFFER bDebst FOR Debst. LABEL00: REPEAT WITH FRAME {&FRAME-NAME} ON ERROR UNDO, LEAVE: DO WHILE TRUE: READKEY. IF KEYFUNCTION(LASTKEY) = 'END-ERROR' THEN RETURN 'ENDE'. IF LASTKEY = 10 OR LASTKEY = 13 OR LASTKEY = 09 THEN LEAVE. APPLY LASTKEY. END. RUN START_KUNDENNUMMER ( F_Knr:SCREEN-VALUE, OUTPUT iKnr, OUTPUT iRecid ). IF ERROR-STATUS:ERROR OR RETURN-VALUE = 'ERROR' OR iKnr = 0 THEN DO: APPLY 'ENTRY' TO F_Knr. NEXT LABEL00. END. EMPTY TEMP-TABLE tAufko. CREATE tAufko. ASSIGN tAufko.Firma = Firma tAufko.Aufnr = -1 tAufko.Knr = iKnr tAufko.Abhol = FALSE tAufko.Lager = DYNAMIC-FUNCTION('getLager':U IN hKontainer). htAufko = TEMP-TABLE tAufko:DEFAULT-BUFFER-HANDLE. DYNAMIC-FUNCTION('fillAufko':U, 0, INPUT-OUTPUT htAufko ). FIND FIRST tAufko. FIND FIRST bAufko NO-LOCK WHERE bAufko.Firma = tAufko.Firma AND bAufko.Fak_Knr = tAufko.Fak_Knr AND bAufko.Fak_Art = bSteuer.Fwi22 NO-ERROR. /* Rücknahmeschein */ tAufko.Aufnr = 0. RUN TEMP_TABLE_TO_SCREEN ( htAufko ). FIND bDebst NO-LOCK WHERE bDebst.Firma = Firma AND bDebst.Knr = tAufko.Fak_Knr NO-ERROR. IF bDebst.Kred_Lim > 0 THEN DO: nKredTot = bDebst.Saldo. FOR EACH bAufko NO-LOCK WHERE bAufko.Firma = Firma AND bAufko.Fak_Knr = bDebst.Knr: nKredTot = nKredTot + bAufko.Auf_Tot. END. IF nKredTot >= bDebst.Kred_Lim THEN DO: lJa = DYNAMIC-FUNCTION('Antwort_Nein':U, 1086 ) NO-ERROR. IF NOT lJa THEN RETURN 'ENDE'. END. END. lJa = TRUE. MESSAGE 'Wollen Sie den Auftrag eröffnen?' VIEW-AS ALERT-BOX QUESTION BUTTONS YES-NO UPDATE lJa. IF NOT lJa THEN RETURN 'ENDE'. RUN NUMMER_LOESEN ( 1, OUTPUT tAufko.Aufnr ) NO-ERROR. REPEAT TRANSACTION ON ERROR UNDO, RETRY: CREATE bAufko. BUFFER-COPY tAufko TO bAufko. RELEASE bAufko. LEAVE. END. lNew = TRUE. LEAVE. END. FIND FIRST tAufko. RETURN (IF lNew THEN STRING(tAufko.Aufnr) ELSE ''). END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableFields vTableWin PROCEDURE enableFields : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE BUFFER bAufze FOR Aufze. /* Code placed here will execute PRIOR to standard behavior. */ /* RUN SUPER. */ IF NOT VALID-HANDLE(Fenster) THEN Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&ENABLED-FIELDS}', INPUT FALSE ). IF NUM-ENTRIES('{&NUR_LESEN}', ',') > 0 THEN DO: RUN READONLY_FELDER ( INPUT Fenster, INPUT '{&NUR_LESEN}', INPUT TRUE ). END. DO WITH FRAME {&FRAME-NAME}: ASSIGN rowObject.Zei_Rab_Art:SENSITIVE = TRUE rowObject.Auf_Rab_Art:SENSITIVE = TRUE rowObject.Abh_Rab_Art:SENSITIVE = TRUE rowObject.Zuschl_Art :SENSITIVE = TRUE. /* oswald spezial */ IF cInstallation = 'oswald' THEN DO: rowObject.U_Ref:SENSITIVE = FALSE. END. END. IF FNeu THEN RETURN. IF NUM-ENTRIES('{&KEY_FELDER}', ',') > 0 THEN DO: RUN SCHUETZE_FELDER ( INPUT Fenster, INPUT '{&KEY_FELDER}', INPUT TRUE ). END. FIND FIRST tAufko. FIND FIRST bAufze NO-LOCK WHERE bAufze.Firma = tAufko.Firma AND bAufze.Aufnr = tAufko.Aufnr AND bAufze.Artnr > 0 NO-ERROR. IF NOT AVAILABLE bAufze THEN RETURN. DO WITH FRAME {&FRAME-NAME}: CB_MwstKunde:SENSITIVE = FALSE. CB_Frw :SENSITIVE = FALSE. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enableObject vTableWin PROCEDURE enableObject : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DO WITH FRAME {&FRAME-NAME}: RUN COMBO_VERTRETER ( CB_Vertreter :HANDLE ) NO-ERROR. RUN COMBO_LAGER ( CB_Lager :HANDLE ) NO-ERROR. RUN COMBO_MWSTKUND ( CB_MwstKunde :HANDLE ) NO-ERROR. RUN COMBO_KONDITION ( CB_Kond :HANDLE ) NO-ERROR. RUN COMBO_LIEFERBED ( CB_Liefart :HANDLE ) NO-ERROR. RUN COMBO_TOUREN ( CB_Tour :HANDLE ) NO-ERROR. RUN COMBO_ABLADEVOR ( CB_Ablad :HANDLE ) NO-ERROR. RUN COMBO_WIRTESO ( CB_WirteSo :HANDLE ) NO-ERROR. RUN COMBO_LIEFERBED ( CB_Liefart :HANDLE ) NO-ERROR. RUN COMBO_PREISGRP ( CB_Preisgrp :HANDLE ) NO-ERROR. RUN COMBO_RABATTGRP ( CB_Rabattgrp :HANDLE ) NO-ERROR. RUN COMBO_KUNDENGRP ( CB_Kundengrp :HANDLE ) NO-ERROR. RUN COMBO_FRW ( CB_FRW :HANDLE ) NO-ERROR. RUN COMBO_FAHRER ( CB_Fahrer :HANDLE ) NO-ERROR. RUN COMBO_BEIFAHRER ( CB_BeiFahrer :HANDLE ) NO-ERROR. RUN COMBO_LKW ( CB_LKW :HANDLE ) NO-ERROR. RUN COMBO_IBESTELLUNG( CB_IBESTELLUNG:HANDLE ) NO-ERROR. END. cInstallation = DYNAMIC-FUNCTION ('getInstallation':U) NO-ERROR. RUN SUPER. { incl/viwenableobject.i } END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENTRY_FELD_TEST vTableWin PROCEDURE ENTRY_FELD_TEST : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER ipHandle AS HANDLE NO-UNDO. DEFINE VARIABLE FeldName AS CHARACTER NO-UNDO. DEFINE VARIABLE FeldInhalt AS CHARACTER NO-UNDO. FeldName = ''. FeldInhalt = ''. IF NOT VALID-HANDLE(ipHandle) THEN RETURN ''. IF ipHandle:TYPE = 'FRAME' THEN RETURN ''. IF ipHandle:TYPE = 'WINDOW' THEN RETURN ''. FeldName = ipHandle:NAME. IF NOT FeldName BEGINS 'T_' AND NOT FMut THEN RETURN ''. DO WHILE FeldName BEGINS 'T_' WITH FRAME {&FRAME-NAME}: cBemerk:SCREEN-VALUE = ''. IF FMut THEN LEAVE. CASE FeldName: WHEN 'T_AbholText' THEN DO: cBemerk:SCREEN-VALUE = rowObject.Abh_Text:SCREEN-VALUE. END. WHEN 'T_AufText' THEN DO: cBemerk:SCREEN-VALUE = rowObject.Auf_Text:SCREEN-VALUE. END. WHEN 'T_Passant' THEN DO: FIND FIRST tAufko. IF tAufko.Passant THEN DO: cBemerk:SCREEN-VALUE = tAufko.Adresse[01] + CHR(10) + tAufko.Adresse[02] + CHR(10) + tAufko.Adresse[03] + CHR(10) + tAufko.Adresse[04] + CHR(10) + tAufko.Adresse[05]. END. END. END. IF FeldName BEGINS 'T_' THEN DO: IF cBemerk:SCREEN-VALUE <> '' THEN ipHandle:SCREEN-VALUE = STRING(TRUE). ELSE ipHandle:SCREEN-VALUE = STRING(FALSE). END. IF cBemerk:SCREEN-VALUE <> '' THEN DO: RUN 'g-bemerkung.w' ( cBemerk:HANDLE, FMut ). END. APPLY 'U1':U. RETURN 'APPLY'. END. IF ipHandle:TYPE = 'FILL-IN' OR ipHandle:TYPE = 'COMBO-BOX' OR ipHandle:TYPE = 'TOGGLE-BOX' THEN FeldInhalt = ipHandle:SCREEN-VALUE. IF NOT FMut THEN RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE FEHLWERTE vTableWin PROCEDURE FEHLWERTE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT-OUTPUT PARAMETER pcColValues AS CHARACTER NO-UNDO. DEFINE VARIABLE i1 AS INTEGER NO-UNDO. IF FCancel THEN RETURN. IF NOT FCopy THEN DO WITH FRAME {&FRAME-NAME}: /* i1 = LOOKUP('Feld', oldColList, ',') + 1. */ /* ENTRY(i1, pcColValues, CHR(1)) = 'Fehlwert' NO-ERROR. */ END. IF FCopy THEN DO: END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEAVE_FELD_TEST vTableWin PROCEDURE LEAVE_FELD_TEST : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE lJa AS LOGICAL NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. { incl/viwleavefeldtest.i } DO WHILE FNeu WITH FRAME {&FRAME-NAME}: CASE FeldName: END CASE. LEAVE. END. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: CASE FeldName: WHEN 'Auf_Datum' THEN DO: dDatum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum = ? THEN DO: dDatum = TODAY. SELF:SCREEN-VALUE = STRING(dDatum). END. IF dDatum <= dSperrDat THEN DO: MESSAGE 'Datum ist ungültig / zu alt' VIEW-AS ALERT-BOX. RETURN 'ERROR'. END. ERROR-STATUS:ERROR = FALSE. IF lNew THEN DO: dDatum = DATE(rowObject.Kond_Datum:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum = ? THEN rowObject.Kond_Datum:SCREEN-VALUE = rowObject.Auf_Datum:SCREEN-VALUE. dDatum = DATE(rowObject.Lief_Datum:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum = ? THEN rowObject.Lief_Datum:SCREEN-VALUE = rowObject.Auf_Datum:SCREEN-VALUE. END. END. WHEN 'Kond_Datum' THEN DO: dDatum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum = ? THEN DO: dDatum = TODAY. SELF:SCREEN-VALUE = STRING(dDatum). END. IF dDatum <= dSperrDat THEN DO: MESSAGE 'Datum ist ungültig / zu alt' VIEW-AS ALERT-BOX. RETURN 'ERROR'. END. END. WHEN 'Lief_Datum' THEN DO: dDatum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum = ? THEN DO: dDatum = TODAY. SELF:SCREEN-VALUE = STRING(dDatum). END. IF dDatum <= dSperrDat THEN DO: MESSAGE 'Datum ist ungültig / zu alt' VIEW-AS ALERT-BOX. RETURN 'ERROR'. END. IF SELF:MODIFIED THEN DO: IF dDatum > (TODAY + 30) THEN DO: lJa = DYNAMIC-FUNCTION('ANTWORT_NEIN':U, 8017 ) NO-ERROR. IF NOT lJa THEN RETURN 'ERROR'. END. END. END. WHEN 'Fak_Datum' THEN DO: dDatum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR dDatum <= dSperrDat THEN DO: MESSAGE 'Datum ist ungültig / zu alt' VIEW-AS ALERT-BOX. RETURN 'ERROR'. END. END. WHEN 'CB_IBestellung' THEN DO: IF LENGTH(SELF:SCREEN-VALUE) <= 3 THEN DO: cString = SELF:SCREEN-VALUE. RUN FIND_IHREBESTELLUNG ( INPUT-OUTPUT cString ). CB_IBestellung:SCREEN-VALUE = cString. rowObject.I_Best:SCREEN-VALUE = cString. END. END. END CASE. LEAVE. END. IF LOOKUP(FeldName, '{&LETZTES_FELD}', ',') > 0 THEN DO: DO WHILE TRUE: IF KEYFUNCTION(LKY) = 'TAB' THEN LEAVE. IF KEYFUNCTION(LKY) = 'RETURN' THEN LEAVE. IF KEYFUNCTION(LKY) = 'F9' THEN LEAVE. RETURN ''. END. APPLY 'ALT-S'. RETURN 'APPLY'. END. RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE RETURN_FELD vTableWin PROCEDURE RETURN_FELD : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ { incl/viwreturnfeld.i } END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE START_KUNDENNUMMER vTableWin PROCEDURE START_KUNDENNUMMER : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER ipKnr AS CHARACTER NO-UNDO. DEFINE OUTPUT PARAMETER opKnr AS INTEGER NO-UNDO. DEFINE OUTPUT PARAMETER opRecid AS RECID NO-UNDO. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO. DEFINE VARIABLE iDebRecid AS RECID NO-UNDO. DEFINE VARIABLE iAdrRecid AS RECID NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE BUFFER bDebst FOR Debst . DEFINE BUFFER bAdresse FOR Adresse. DO WITH FRAME {&FRAME-NAME}: ASSIGN iAdrRecid = 0 iDebRecid = 0. DO WHILE TRUE: IF NUM-ENTRIES(ipKnr, ' ') = 0 THEN RETURN. IF NUM-ENTRIES(ipKnr, ' ') = 1 THEN DO: iKnr = INTEGER(ipKnr) NO-ERROR. IF ERROR-STATUS:ERROR THEN LEAVE. IF iKnr = 0 THEN LEAVE. FIND bDebst NO-LOCK WHERE bDebst.Firma = Firma AND bDebst.Knr = iKnr NO-ERROR. IF NOT AVAILABLE bDebst THEN LEAVE. FIND bAdresse NO-LOCK WHERE bAdresse.Firma = AdFirma AND bAdresse.Knr = iKnr NO-ERROR. IF NOT AVAILABLE bAdresse THEN LEAVE. IF bAdresse.Aktiv = FALSE OR bDebst.Aktiv = FALSE THEN DO: iKnr = 0. RUN MELDUNG ( 0132 ). RETURN 'ERROR'. END. IF NOT bAdresse.lFreigabe THEN DO: iKnr = 0. RUN MELDUNG ( 1100 ). RETURN 'ERROR'. END. iDebRecid = RECID(bDebst). iAdrRecid = RECID(bAdresse). LEAVE. END. LEAVE. END. IF iKnr = ? THEN iKnr = 0. DO WHILE iAdrRecid = 0: ASSIGN cString = 'AUF;' + ipKnr. RUN g-suchen-adresse.w ( INPUT cString, OUTPUT iAdrRecid ). LEAVE. END. IF iAdrRecid = 0 OR iAdrRecid = ? THEN RETURN 'ERROR'. FIND bAdresse NO-LOCK WHERE RECID(bAdresse) = iAdrRecid. IF NOT bAdresse.lFreigabe THEN DO: iKnr = 0. RUN MELDUNG ( 1100 ). RETURN 'ERROR'. END. iKnr = bAdresse.Knr. F_Knr:SCREEN-VALUE = STRING(iKnr). IF bAdresse.Aktiv = FALSE THEN DO: RUN FEHLER ( 0132 ). RETURN ERROR. END. END. FIND bDebst NO-LOCK WHERE bDebst.Firma = Firma AND bDebst.Knr = iKnr NO-ERROR. IF bDebst.Aktiv = FALSE THEN DO: iKnr = 0. RUN MELDUNG ( 0132 ). RETURN 'ERROR'. END. opKnr = iKnr. opRecid = iAdrRecid. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEMP_TABLE_TO_SCREEN vTableWin PROCEDURE TEMP_TABLE_TO_SCREEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER ipHandle AS HANDLE NO-UNDO. DEFINE VARIABLE ii AS INTEGER NO-UNDO. DEFINE VARIABLE i1 AS INTEGER NO-UNDO. DEFINE VARIABLE cColList AS CHARACTER NO-UNDO. DEFINE VARIABLE cColValues AS CHARACTER NO-UNDO. DEFINE VARIABLE cFeld AS CHARACTER NO-UNDO. DEFINE VARIABLE hFeld AS HANDLE NO-UNDO. DEFINE VARIABLE cKunde AS CHARACTER NO-UNDO. DEFINE VARIABLE iKnr AS INTEGER NO-UNDO. cColList = DYNAMIC-FUNCTION('getDisplayedFields':U). ii = NUM-ENTRIES(cColList, ',') + 1. cColValues = FILL(CHR(01), ii). DO ii = 1 TO ipHandle:NUM-FIELDS: cFeld = ipHandle:BUFFER-FIELD(ii):NAME. i1 = LOOKUP(cFeld, cColList, ',') + 1 NO-ERROR. IF i1 < 2 THEN NEXT. hFeld = ipHandle:BUFFER-FIELD(ii) NO-ERROR. IF NOT VALID-HANDLE ( hFeld ) THEN NEXT. IF hFeld:EXTENT > 1 THEN NEXT. IF hFeld:BUFFER-VALUE = ? THEN NEXT. ENTRY(i1, cColValues, CHR(1)) = ipHandle:BUFFER-FIELD(ii):BUFFER-VALUE NO-ERROR. END. iKnr = ipHandle::Knr. FIND FIRST Adresse NO-LOCK WHERE Adresse.Firma = Firma AND Adresse.Knr = iKnr NO-ERROR. cKunde = (IF AVAILABLE Adresse THEN Adresse.Anzeig_Br ELSE ''). i1 = LOOKUP('Kunde', cColList, ',') + 1 NO-ERROR. IF i1 > 1 THEN ENTRY(i1, cColValues, CHR(1)) = cKunde NO-ERROR. i1 = LOOKUP('DokNr', cColList, ',') + 1 NO-ERROR. IF i1 > 1 THEN ENTRY(i1, cColValues, CHR(1)) = ipHandle::Aufnr NO-ERROR. IF cAktRowId <> ? THEN ENTRY(1, cColValues, CHR(01)) = cAktRowId. RUN displayFields ( cColValues ). DO WITH FRAME {&FRAME-NAME}: F_Knr:SCREEN-VALUE = rowObject.Knr:SCREEN-VALUE NO-ERROR. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE TEST_EINGABEN vTableWin PROCEDURE TEST_EINGABEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE OUTPUT PARAMETER opJa AS LOG NO-UNDO. DEFINE VARIABLE eHandle AS HANDLE NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE VARIABLE iNummer AS INTEGER NO-UNDO. DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE VARIABLE dDatum AS DATE NO-UNDO. DEFINE VARIABLE lJa AS LOG NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. opJa = FALSE. eHandle = ?. IF NOT FMut THEN RETURN. AAA000: DO WHILE TRUE WITH FRAME {&FRAME-NAME}: dDatum = DATE(rowObject.Auf_Datum:SCREEN-VALUE) NO-ERROR. IF dDatum = ? THEN rowObject.Auf_Datum:SCREEN-VALUE = STRING(TODAY). IF ERROR-STATUS:ERROR THEN DO: RUN FEHLER ( 9002 ). eHandle = rowObject.Auf_Datum:HANDLE. LEAVE. END. dDatum = DATE(rowObject.Kond_Datum:SCREEN-VALUE) NO-ERROR. IF dDatum = ? THEN rowObject.Kond_Datum:SCREEN-VALUE = STRING(DATE(rowObject.Auf_Datum:SCREEN-VALUE)). IF ERROR-STATUS:ERROR THEN DO: RUN FEHLER ( 9002 ). eHandle = rowObject.Kond_Datum:HANDLE. LEAVE. END. dDatum = DATE(rowObject.Lief_Datum:SCREEN-VALUE) NO-ERROR. IF dDatum = ? THEN rowObject.Lief_Datum:SCREEN-VALUE = STRING(DATE(rowObject.Auf_Datum:SCREEN-VALUE)). IF ERROR-STATUS:ERROR THEN DO: RUN FEHLER ( 9002 ). eHandle = rowObject.Lief_Datum:HANDLE. LEAVE. END. IF dDatum > (TODAY + 30) THEN DO: lJa = DYNAMIC-FUNCTION('ANTWORT_NEIN':U, 8017) NO-ERROR. IF NOT lJa THEN DO: eHandle = rowObject.Lief_Datum:HANDLE. LEAVE. END. END. dDatum = DATE(rowObject.Fak_Datum:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR THEN DO: RUN FEHLER ( 9002 ). eHandle = rowObject.Fak_Datum:HANDLE. LEAVE. END. IF dDatum <> ? AND dDatum < dSperrdat THEN DO: RUN FEHLER ( 9002 ). eHandle = rowObject.Fak_Datum:HANDLE. LEAVE. END. IF CB_IBESTELLUNG:SCREEN-VALUE = '' OR CB_IBESTELLUNG:SCREEN-VALUE = ? THEN rowObject.I_Best:SCREEN-VALUE = ''. ELSE rowObject.I_Best:SCREEN-VALUE = CB_IBESTELLUNG:SCREEN-VALUE. LEAVE. END. IF VALID-HANDLE(eHandle) THEN DO: APPLY 'ENTRY' TO eHandle. RETURN NO-APPLY. END. FIND FIRST eAufko. iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten) NO-ERROR. FIND bAufko EXCLUSIVE-LOCK WHERE RECID(bAufko) = iRecid. BUFFER-COPY bAufko TO eAufko. RELEASE bAufko. FIND FIRST sAufko. BUFFER-COMPARE sAufko EXCEPT Auf_Tot TO eAufko SAVE RESULT IN cString. IF cString <> '' THEN DO: MESSAGE 'Dieser Datensatz wurde inzwischen von einem anderen Benutzer verändert' SKIP 'Ihre Änderungen werden rückgängig gemacht, bitte nochmals eingeben' VIEW-AS ALERT-BOX. RELEASE bAufko. RUN TOOLBAR IN hKontainer ('ABBRUCH') NO-ERROR. RUN TOOLBAR IN hKontainer ('CANCEL') NO-ERROR. RUN refreshRow IN hDaten. RETURN NO-APPLY. END. RELEASE bAufko. opJa = TRUE. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateMode vTableWin PROCEDURE updateMode : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE INPUT PARAMETER pcMode AS CHARACTER NO-UNDO. DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE VARIABLE lJa AS LOG NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. DEFINE BUFFER bDebst FOR Debst. DEFINE BUFFER bAdresse FOR Adresse. DEFINE BUFFER bSteuer FOR Steuer. CASE pcMode: WHEN 'updateBegin' THEN DO: RUN 'refreshRow' IN hDaten. iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten) NO-ERROR. FIND bAufko NO-LOCK WHERE RECID(bAufko) = iRecid. FIND FIRST tAufko. BUFFER-COPY bAufko EXCEPT Adresse Abh_Text Auf_Text TO tAufko. FIND FIRST sAufko. BUFFER-COPY bAufko TO sAufko. RELEASE bAufko. PUBLISH 'ANZEIGEN_ADRESSE' ( 1 ). FIND FIRST tAufko. FIND bAdresse NO-LOCK WHERE bAdresse.Firma = AdFirma AND bAdresse.Knr = tAufko.Knr. FIND bDebst NO-LOCK WHERE bDebst.Firma = Firma AND bDebst.Knr = tAufko.Knr. FIND bSteuer NO-LOCK WHERE bSteuer.Firma = Firma NO-ERROR. cString = ''. IF AVAILABLE bSteuer THEN DO: CASE bSteuer.St05: WHEN 0 THEN cString = bDebst.Bemerk . WHEN 1 THEN cString = bAdresse.Bem . WHEN 2 THEN cString = bDebst.Auf_Text . END CASE. END. IF cString <> '' THEN DO: MESSAGE cString VIEW-AS ALERT-BOX INFORMATION. END. RELEASE bAdresse. RELEASE bDebst. RELEASE bSteuer. RUN applyEntry ( 'rowObject.Auf_Datum' ). END. WHEN 'updateEnd' THEN DO: END. END. RUN SUPER( INPUT pcMode). CASE pcMode: WHEN 'updateBegin' THEN DO: FMut = TRUE. END. WHEN 'updateEnd' THEN DO: FNeu = FALSE. FMut = FALSE. FCopy = FALSE. lNew = FALSE. END. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE updateRecord vTableWin PROCEDURE updateRecord : /*------------------------------------------------------------------------------ Purpose: Super Override Parameters: Notes: ------------------------------------------------------------------------------*/ DEFINE VARIABLE iRecid AS RECID NO-UNDO. DEFINE VARIABLE cString AS CHARACTER NO-UNDO. DEFINE VARIABLE iSamm_Nr AS INTEGER NO-UNDO. DEFINE VARIABLE iAufnr AS INTEGER NO-UNDO. DEFINE VARIABLE dLief_Datum AS DATE NO-UNDO. DEFINE VARIABLE nTotale AS DECIMAL EXTENT 15 NO-UNDO. DEFINE VARIABLE lNeu AS LOG NO-UNDO. DEFINE BUFFER bAufko FOR Aufko. DO WITH FRAME {&FRAME-NAME}: lNeu = FNeu. IF FNeu THEN DO: DYNAMIC-FUNCTION('SETMODIFIEDFLAG':U, INPUT Fenster, INPUT TRUE). END. END. FNeu = FALSE. FCopy = FALSE. RUN SUPER. REPEAT TRANSACTION: iRecid = DYNAMIC-FUNCTION('getCurrentRecid':U IN hDaten) NO-ERROR. FIND bAufko NO-LOCK WHERE RECID(bAufko) = iRecid. FIND FIRST tAufko. BUFFER-COMPARE bAufko USING Adresse TO tAufko SAVE RESULT IN cString. IF cString = '' THEN LEAVE. FIND bAufko WHERE RECID(bAufko) = iRecid. ASSIGN bAufko.Adresse[01] = tAufko.Adresse[01] bAufko.Adresse[02] = tAufko.Adresse[02] bAufko.Adresse[03] = tAufko.Adresse[03] bAufko.Adresse[04] = tAufko.Adresse[04] bAufko.Adresse[05] = tAufko.Adresse[05]. RELEASE bAufko. LEAVE. END. DO WHILE NOT lNeu : FIND bAufko NO-LOCK WHERE RECID(bAufko) = iRecid. IF bAufko.Fak_Art <> bSteuer.Fwi21 THEN LEAVE. REPEAT TRANSACTION: FIND FIRST Aufko NO-LOCK WHERE Aufko.Firma = bAufko.Firma AND Aufko.Knr = bAufko.Knr AND Aufko.Fak_Art = bSteuer.Fwi22 NO-ERROR. IF AVAILABLE Aufko THEN DO: IF bAufko.Samm_Nr = Aufko.Samm_Nr THEN LEAVE. FIND bAufko WHERE RECID(bAufko) = iRecid. bAufko.Samm_Nr = Aufko.Samm_Nr. RELEASE bAufko. LEAVE. END. RUN 'g-einlesen-datum.w' ( 'Eingabe Rücknahmedatum Rücknahmeschein', 'Rücknahmedatum', INPUT-OUTPUT dLief_Datum ) NO-ERROR. IF dLief_Datum = ? THEN LEAVE. iSamm_Nr = DYNAMIC-FUNCTION('createSammNr':U, Firma) NO-ERROR. iAufnr = DYNAMIC-FUNCTION('createAufnr':U, Firma) NO-ERROR. FIND FIRST tAufko. BUFFER-COPY bAufko TO tAufko. ASSIGN tAufko.Aufnr = iAufnr tAufko.Lief_Datum = dLief_Datum tAufko.Fak_Art = bSteuer.Fwi22 tAufko.Auf_Sta = bSteuer.Fwi23 tAufko.Samm_Nr = iSamm_Nr. CREATE Aufko. BUFFER-COPY tAufko TO Aufko. RELEASE Aufko. FIND bAufko WHERE RECID(bAufko) = iRecid. bAufko.Samm_Nr = iSamm_Nr. DYNAMIC-FUNCTION('calculateAuftragsTotal':U, Firma, iAufnr, OUTPUT nTotale ) NO-ERROR. LEAVE. END. RELEASE bAufko. RELEASE Aufko. LEAVE. END. FIND FIRST sAufko NO-LOCK NO-ERROR. FIND FIRST tAufko. IF AVAILABLE sAufko AND sAufko.Abhol <> tAufko.Abhol THEN DO: DYNAMIC-FUNCTION('calculateAuftragsTotal':U, tAufko.Firma, tAufko.Aufnr, OUTPUT nTotale ) NO-ERROR. RUN refreshRow IN hDaten. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME