&ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r12 GUI ADM1 &ANALYZE-RESUME /* Connected Databases anadat PROGRESS */ &Scoped-define WINDOW-NAME CURRENT-WINDOW /* Temp-Table and Buffer definitions */ DEFINE TEMP-TABLE XAufko NO-UNDO LIKE Aufko. &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS F-Frame-Win /*------------------------------------------------------------------------ File: Description: from cntnrfrm.w - ADM SmartFrame Template Input Parameters: Output Parameters: ------------------------------------------------------------------------*/ /* This .W file was created with the Progress UIB. */ /*----------------------------------------------------------------------*/ /* 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 ************************** */ &SCOPED-DEFINE INPUT-FELDER Aufko.Auf_Datum,Aufko.Kond_Datum,Aufko.Lief_Datum,~ Aufko.Fak_Datum,Aufko.MWSt,Aufko.Kond,Aufko.Preis_Grp,Aufko.Rab_Grp,~ Aufko.Ku_Grp,Aufko.Rabatt,Aufko.Zei_Rab_Art,Aufko.Zei_Rab_Wert,~ Aufko.Auf_Rab_Art,Aufko.Auf_Rab_Wert,Aufko.Abh_Rab_Art,Aufko.Abh_Rab_Wert,~ Aufko.Zuschl_Art,Aufko.Zuschl_Wert,Aufko.Ablad_Vor_Text,Aufko.Wirt_So_Text,~ Aufko.Fahrer,Aufko.BeiFahrer,Aufko.Abhol,Aufko.I_Best,Aufko.U_Ref,~ Aufko.Tour_Nr1,Aufko.Tour_Nr2,Aufko.Ablad_Vor_Text,Aufko.Wirt_So_Text,T_Passant,~ Aufko.Lief_Bed /* Parameters Definitions --- */ /* Local Variable Definitions --- */ DEF VAR QOpen AS LOG NO-UNDO. DEF VAR Vorhanden AS LOG NO-UNDO. DEF VAR VInhalt AS CHAR NO-UNDO. DEF VAR VKnr AS INT NO-UNDO. DEF VAR XKnr AS INT NO-UNDO. DEF VAR XAufnr AS INT NO-UNDO. DEF VAR AAufnr AS INT NO-UNDO. DEF VAR LHandle AS HANDLE NO-UNDO. DEF VAR XHandle AS HANDLE NO-UNDO. DEF VAR FeldName AS CHAR NO-UNDO. DEF VAR FeldInhalt AS CHAR NO-UNDO. DEF VAR Sort AS INT NO-UNDO. DEF VAR sAktiv AS LOG NO-UNDO. DEF VAR VAdresse AS CHAR NO-UNDO. DEF VAR XFak_Art AS CHAR NO-UNDO. DEF VAR VFak_Art AS INT NO-UNDO. DEF VAR VAuf_Sta AS INT NO-UNDO. DEF VAR AAuf_Sta AS INT NO-UNDO. DEF VAR XRecid AS RECID NO-UNDO. DEF VAR NRecid AS RECID NO-UNDO. DEF VAR VAuf_Text LIKE Aufko.Auf_Text NO-UNDO. DEF VAR VAbh_Text LIKE Aufko.Abh_Text NO-UNDO. DEF VAR VBar_Text LIKE Aufko.Bar_Text NO-UNDO. DEF VAR VPassant LIKE Aufko.Adresse NO-UNDO. DEF VAR VBemerk LIKE Debst.Bemerk NO-UNDO. DEF VAR XAdresse AS CHAR NO-UNDO. DEF VAR FSuchen AS LOG NO-UNDO. DEF VAR Datum AS DATE NO-UNDO. DEF VAR SperrDat AS DATE NO-UNDO. DEF VAR fAdmin AS LOG NO-UNDO. DEF VAR hQuery AS HANDLE NO-UNDO. DEF VAR VUpdate AS LOG NO-UNDO. DEF VAR VNeu AS LOG NO-UNDO. DEF VAR Aktive AS LOG NO-UNDO. DEF VAR ok AS LOG NO-UNDO. DEF VAR ZRecid AS RECID NO-UNDO. DEF VAR iLager AS INT INIT 999999 NO-UNDO. DEF VAR fOpen AS LOG INIT FALSE NO-UNDO. DEF VAR cBenutzerDaten AS CHAR NO-UNDO. DEF VAR cBenutzer AS CHAR NO-UNDO. DEF VAR fOfferte AS LOG NO-UNDO. DEF BUFFER BAdresse FOR Adresse. DEF BUFFER BAufko FOR Aufko . DEF BUFFER YAufko FOR Aufko . /* ---------- Globale Variablen ---------------------------------- */ { v8/globvar.i" " " " "SHARED" } { v8/debivar.i " " " " "SHARED" } { v8/artivar.i " " " " "SHARED" } { v8/contvar.i " " " " "SHARED" } /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK /* ******************** Preprocessor Definitions ******************** */ &Scoped-define PROCEDURE-TYPE SmartFrame &Scoped-define DB-AWARE no &Scoped-define ADM-CONTAINER FRAME /* Name of designated FRAME-NAME and/or first browse and/or first query */ &Scoped-define FRAME-NAME F-Main &Scoped-define BROWSE-NAME Br_Aufko /* Internal Tables (found by Frame, Query & Browse Queries) */ &Scoped-define INTERNAL-TABLES Aufko /* Definitions for BROWSE Br_Aufko */ &Scoped-define FIELDS-IN-QUERY-Br_Aufko AAufnr @ AAufnr Aufko.Knr ~ Aufko.Fak_Art VAdresse @ VAdresse Aufko.Lief_Datum Aufko.Auf_Tot &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Aufko Aufko.Knr &Scoped-define ENABLED-TABLES-IN-QUERY-Br_Aufko Aufko &Scoped-define FIRST-ENABLED-TABLE-IN-QUERY-Br_Aufko Aufko &Scoped-define QUERY-STRING-Br_Aufko FOR EACH Aufko ~ WHERE Aufko.Firma = GVFirma ~ NO-LOCK &Scoped-define OPEN-QUERY-Br_Aufko OPEN QUERY Br_Aufko FOR EACH Aufko ~ WHERE Aufko.Firma = GVFirma ~ NO-LOCK. &Scoped-define TABLES-IN-QUERY-Br_Aufko Aufko &Scoped-define FIRST-TABLE-IN-QUERY-Br_Aufko Aufko /* Definitions for FRAME F-Main */ /* Standard List Definitions */ &Scoped-Define ENABLED-OBJECTS Br_Aufko CB_Auf_Sta E_Adresse Btn_Aendern ~ Btn_Erfassen Btn_Loeschen Btn_Zurueck Btn_Verschieben Btn_Suchen RECT-30 ~ RECT-31 &Scoped-Define DISPLAYED-FIELDS Aufko.Auf_Datum Aufko.Kond_Datum ~ Aufko.Lief_Datum Aufko.Fak_Datum Aufko.Fahrer Aufko.BeiFahrer Aufko.LKW ~ Aufko.Abhol Aufko.I_Best Aufko.U_Ref Aufko.Tour_Nr1 Aufko.Tour_Nr2 ~ Aufko.Ablad_Vor Aufko.Ablad_Vor_Text Aufko.Wirt_So Aufko.Wirt_So_Text ~ Aufko.Rabatt Aufko.Zei_Rab_Art Aufko.Zei_Rab_Wert Aufko.Auf_Rab_Art ~ Aufko.Auf_Rab_Wert Aufko.Abh_Rab_Art Aufko.Abh_Rab_Wert Aufko.Zuschl_Art ~ Aufko.Zuschl_Wert Aufko.MWSt Aufko.Kond Aufko.Preis_Grp Aufko.Rab_Grp ~ Aufko.Ku_Grp Aufko.Frw Aufko.AlsOfferte &Scoped-define DISPLAYED-TABLES Aufko &Scoped-define FIRST-DISPLAYED-TABLE Aufko &Scoped-Define DISPLAYED-OBJECTS CB_Auf_Sta E_Adresse F_Knr F_Anzeig_Br ~ F_Aufnr F_Total T_Passant T_Auftrag T_Abhol /* Custom List Definitions */ /* List-1,List-2,List-3,List-4,List-5,List-6 */ &Scoped-define List-1 F_Knr F_Anzeig_Br F_Aufnr F_Total Aufko.Auf_Datum ~ Aufko.Kond_Datum Aufko.Lief_Datum Aufko.Fak_Datum Aufko.Fahrer ~ Aufko.BeiFahrer Aufko.LKW Aufko.Abhol Aufko.Lief_Bed Aufko.I_Best ~ Aufko.U_Ref Aufko.Tour_Nr1 Aufko.Tour_Nr2 Aufko.Ablad_Vor ~ Aufko.Ablad_Vor_Text Aufko.Wirt_So Aufko.Wirt_So_Text T_Passant T_Auftrag ~ T_Abhol Aufko.Rabatt Aufko.Zei_Rab_Art Aufko.Zei_Rab_Wert Aufko.Auf_Rab_Art ~ Aufko.Auf_Rab_Wert Aufko.Abh_Rab_Art Aufko.Abh_Rab_Wert Aufko.Zuschl_Art ~ Aufko.Zuschl_Wert Aufko.MWSt Aufko.Kond Aufko.Preis_Grp Aufko.Rab_Grp ~ Aufko.Ku_Grp Aufko.Frw Aufko.AlsOfferte &Scoped-define List-2 F_Knr &Scoped-define List-3 Aufko.Auf_Datum Aufko.Kond_Datum Aufko.Lief_Datum ~ Aufko.Fak_Datum Aufko.Fahrer Aufko.BeiFahrer Aufko.LKW Aufko.Abhol ~ Aufko.Lief_Bed Aufko.I_Best Aufko.U_Ref Aufko.Tour_Nr1 Aufko.Tour_Nr2 ~ Aufko.Ablad_Vor Aufko.Ablad_Vor_Text Aufko.Wirt_So Aufko.Wirt_So_Text ~ T_Auftrag T_Abhol Aufko.Rabatt Aufko.Zei_Rab_Art Aufko.Zei_Rab_Wert ~ Aufko.Auf_Rab_Art Aufko.Auf_Rab_Wert Aufko.Abh_Rab_Art Aufko.Abh_Rab_Wert ~ Aufko.Zuschl_Art Aufko.Zuschl_Wert Aufko.MWSt Aufko.Kond Aufko.Preis_Grp ~ Aufko.Rab_Grp Aufko.Ku_Grp Aufko.Frw Aufko.AlsOfferte &Scoped-define List-6 Aufko.Rabatt Aufko.Zei_Rab_Art Aufko.Zei_Rab_Wert ~ Aufko.Auf_Rab_Art Aufko.Auf_Rab_Wert Aufko.Abh_Rab_Art Aufko.Abh_Rab_Wert ~ Aufko.Zuschl_Art Aufko.Zuschl_Wert Aufko.MWSt Aufko.Kond Aufko.Preis_Grp ~ Aufko.Rab_Grp Aufko.Ku_Grp /* _UIB-PREPROCESSOR-BLOCK-END */ &ANALYZE-RESUME /* ************************ Function Prototypes ********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION-FORWARD getAuftraege F-Frame-Win FUNCTION getAuftraege RETURNS LOGICAL ( htAuftraege AS HANDLE ) FORWARD. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********************** Control Definitions ********************** */ /* Menu Definitions */ DEFINE MENU POPUP-MENU-E_Adresse MENU-ITEM m_Retouren LABEL "Retouren" . DEFINE MENU POPUP-MENU-F-Main MENU-ITEM m_Mehrwertsteuercode_ndern LABEL "Mehrwertsteuercode ändern" DISABLED MENU-ITEM m_Fakturaart_wechseln LABEL "Fakturaart wechseln" MENU-ITEM m_Adressetiketten LABEL "Adressetiketten". /* Definitions of the field level widgets */ DEFINE BUTTON Btn_Aendern LABEL "&Aendern" SIZE 14 BY 1. DEFINE BUTTON Btn_Erfassen LABEL "&Neu" SIZE 14 BY 1. DEFINE BUTTON Btn_Loeschen LABEL "&Löschen" SIZE 14 BY 1. DEFINE BUTTON Btn_Suchen LABEL "&X" SIZE 4 BY .95 TOOLTIP "Suchen von Aufträgen ohne Statusberücksichtigung". DEFINE BUTTON Btn_Verschieben LABEL "&Weiter" SIZE 14 BY 1. DEFINE BUTTON Btn_Zurueck LABEL "&Zurück" SIZE 14 BY 1. DEFINE VARIABLE CB_Auf_Sta AS CHARACTER FORMAT "X(256)":U VIEW-AS COMBO-BOX INNER-LINES 7 LIST-ITEM-PAIRS "item1","item 1" DROP-DOWN-LIST SIZE 44.8 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 "item1","item1" DROP-DOWN-LIST SIZE 24.4 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 "ALLE","000000" DROP-DOWN-LIST SIZE 24.4 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE E_Adresse AS CHARACTER VIEW-AS EDITOR NO-WORD-WRAP MAX-CHARS 500 SIZE 44.8 BY 4.95 BGCOLOR 15 FONT 6 NO-UNDO. DEFINE VARIABLE F_Anzeig_Br AS CHARACTER FORMAT "X(256)":U VIEW-AS FILL-IN NATIVE SIZE 50 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Aufnr AS INTEGER FORMAT "9999999":U INITIAL 0 LABEL "Aufnr" VIEW-AS FILL-IN NATIVE SIZE 11 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Knr AS CHARACTER FORMAT "x(20)":U LABEL "Kunde" VIEW-AS FILL-IN NATIVE SIZE 15 BY 1 BGCOLOR 15 NO-UNDO. DEFINE VARIABLE F_Total AS DECIMAL FORMAT "zzz,zz9.99-":U INITIAL 0 LABEL "Total" VIEW-AS FILL-IN NATIVE SIZE 18 BY 1 BGCOLOR 15 NO-UNDO. DEFINE RECTANGLE RECT-30 EDGE-PIXELS 3 GRAPHIC-EDGE NO-FILL SIZE 135 BY 7.24. DEFINE RECTANGLE RECT-31 EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL SIZE 135 BY 14.91. DEFINE VARIABLE T_Abhol AS LOGICAL INITIAL NO LABEL "Abholtext" VIEW-AS TOGGLE-BOX SIZE 24 BY 1 NO-UNDO. DEFINE VARIABLE T_Auftrag AS LOGICAL INITIAL NO LABEL "Auftragstext" VIEW-AS TOGGLE-BOX SIZE 24 BY 1 NO-UNDO. DEFINE VARIABLE T_Passant AS LOGICAL INITIAL NO LABEL "Abholeradresse" VIEW-AS TOGGLE-BOX SIZE 24 BY 1 NO-UNDO. /* Query definitions */ &ANALYZE-SUSPEND DEFINE QUERY Br_Aufko FOR Aufko SCROLLING. &ANALYZE-RESUME /* Browse definitions */ DEFINE BROWSE Br_Aufko &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Aufko F-Frame-Win _STRUCTURED QUERY Br_Aufko DISPLAY AAufnr @ AAufnr COLUMN-LABEL "DokNr" FORMAT "zzzzz9":U Aufko.Knr FORMAT "999999":U Aufko.Fak_Art COLUMN-LABEL "Art" FORMAT "99":U VAdresse @ VAdresse COLUMN-LABEL "Kunde" FORMAT "x(25)":U Aufko.Lief_Datum COLUMN-LABEL "Lief.Datum" FORMAT "99.99.9999":U Aufko.Auf_Tot COLUMN-LABEL "Auftr.Total" FORMAT "zzz,zz9.99-":U ENABLE Aufko.Knr /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME WITH NO-ASSIGN NO-ROW-MARKERS SEPARATORS SIZE 73 BY 6.38 BGCOLOR 15 FONT 1. /* ************************ Frame Definitions *********************** */ DEFINE FRAME F-Main Br_Aufko AT ROW 1.71 COL 3.6 CB_Auf_Sta AT ROW 1.71 COL 88.6 COLON-ALIGNED NO-LABEL E_Adresse AT ROW 3.05 COL 90.6 NO-LABEL F_Knr AT ROW 9.38 COL 10.8 COLON-ALIGNED F_Anzeig_Br AT ROW 9.38 COL 26.8 COLON-ALIGNED NO-LABEL F_Aufnr AT ROW 9.38 COL 88.8 COLON-ALIGNED F_Total AT ROW 9.38 COL 116 COLON-ALIGNED Aufko.Auf_Datum AT ROW 11.71 COL 2.8 COLON-ALIGNED NO-LABEL FORMAT "99.99.9999" VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 Aufko.Kond_Datum AT ROW 11.71 COL 19.8 COLON-ALIGNED NO-LABEL FORMAT "99.99.9999" VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 Aufko.Lief_Datum AT ROW 11.71 COL 36.8 COLON-ALIGNED NO-LABEL FORMAT "99.99.9999" VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 Aufko.Fak_Datum AT ROW 11.71 COL 53.8 COLON-ALIGNED NO-LABEL FORMAT "99.99.9999" VIEW-AS FILL-IN NATIVE SIZE 16 BY 1 BGCOLOR 15 Aufko.Fahrer AT ROW 11.71 COL 73 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.BeiFahrer AT ROW 11.71 COL 83 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.LKW AT ROW 11.71 COL 93 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Abhol AT ROW 11.71 COL 103 COLON-ALIGNED NO-LABEL FORMAT "J/N" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Lief_Bed AT ROW 11.71 COL 113 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5.6 BY 1 BGCOLOR 15 Aufko.I_Best AT ROW 13.14 COL 22.8 COLON-ALIGNED LABEL "Ihre Bestellung" FORMAT "x(35)" VIEW-AS FILL-IN NATIVE SIZE 30.6 BY 1 BGCOLOR 15 Aufko.U_Ref AT ROW 13.14 COL 68 COLON-ALIGNED LABEL "Unsere Ref." FORMAT "x(35)" VIEW-AS FILL-IN NATIVE SIZE 30.6 BY 1 BGCOLOR 15 CB_Vertreter AT ROW 13.14 COL 108.6 COLON-ALIGNED Aufko.Tour_Nr1 AT ROW 15.33 COL 22.8 COLON-ALIGNED LABEL "Tour" FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Tour_Nr2 AT ROW 15.29 COL 28.8 COLON-ALIGNED LABEL "" FORMAT "x(20)" VIEW-AS FILL-IN NATIVE SIZE 30.6 BY 1 BGCOLOR 15 Aufko.Ablad_Vor AT ROW 16.38 COL 22.8 COLON-ALIGNED LABEL "Abladevorschrift" FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Ablad_Vor_Text AT ROW 16.38 COL 28.8 COLON-ALIGNED NO-LABEL FORMAT "x(40)" VIEW-AS FILL-IN NATIVE SIZE 58.6 BY 1 BGCOLOR 15 Aufko.Wirt_So AT ROW 17.48 COL 22.8 COLON-ALIGNED LABEL "Wirtesonntag" FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Wirt_So_Text AT ROW 17.48 COL 28.8 COLON-ALIGNED NO-LABEL FORMAT "x(40)" VIEW-AS FILL-IN NATIVE SIZE 58.6 BY 1 BGCOLOR 15 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY SIDE-LABELS NO-UNDERLINE THREE-D AT COL 1 ROW 1 SIZE 136.8 BY 22.91. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */ DEFINE FRAME F-Main T_Passant AT ROW 16.52 COL 100.8 T_Auftrag AT ROW 17.52 COL 100.8 T_Abhol AT ROW 18.52 COL 100.8 Aufko.Rabatt AT ROW 21 COL 4.8 NO-LABEL FORMAT "99.99" VIEW-AS FILL-IN NATIVE SIZE 9 BY 1 BGCOLOR 15 Aufko.Zei_Rab_Art AT ROW 21 COL 13.8 COLON-ALIGNED NO-LABEL FORMAT "9" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 TOOLTIP "0 = Kein Rabatt, 1 = Rabatt in Prozent, 2 = Rabatt als Betrag, 3 = EP-Aufschlag" BGCOLOR 15 Aufko.Zei_Rab_Wert AT ROW 21 COL 17.8 COLON-ALIGNED NO-LABEL FORMAT "z9.9999" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 Aufko.Auf_Rab_Art AT ROW 21 COL 31.8 COLON-ALIGNED NO-LABEL FORMAT "9" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 Aufko.Auf_Rab_Wert AT ROW 21 COL 35.8 COLON-ALIGNED NO-LABEL FORMAT "z9.9999" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 Aufko.Abh_Rab_Art AT ROW 21 COL 49.8 COLON-ALIGNED NO-LABEL FORMAT "9" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 Aufko.Abh_Rab_Wert AT ROW 21 COL 53.8 COLON-ALIGNED NO-LABEL FORMAT "z9.9999" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 Aufko.Zuschl_Art AT ROW 21 COL 68.8 COLON-ALIGNED NO-LABEL FORMAT "9" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 TOOLTIP "0 = Kein Rabatt, 1 = Rabatt in Prozent, 2 = Rabatt als Betrag" BGCOLOR 15 Aufko.Zuschl_Wert AT ROW 21 COL 72.8 COLON-ALIGNED NO-LABEL FORMAT "z9.9999" VIEW-AS FILL-IN NATIVE SIZE 12 BY 1 BGCOLOR 15 Aufko.MWSt AT ROW 21 COL 89 COLON-ALIGNED NO-LABEL FORMAT "9" VIEW-AS FILL-IN NATIVE SIZE 4 BY 1 BGCOLOR 15 Aufko.Kond AT ROW 21 COL 98 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Preis_Grp AT ROW 21 COL 107 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Aufko.Rab_Grp AT ROW 21 COL 116 COLON-ALIGNED NO-LABEL FORMAT "999" VIEW-AS FILL-IN NATIVE SIZE 7 BY 1 BGCOLOR 15 Aufko.Ku_Grp AT ROW 21 COL 125 COLON-ALIGNED NO-LABEL FORMAT "99" VIEW-AS FILL-IN NATIVE SIZE 5 BY 1 BGCOLOR 15 Btn_Aendern AT ROW 22.43 COL 54.6 Btn_Erfassen AT ROW 22.43 COL 70 Btn_Loeschen AT ROW 22.43 COL 85.4 Btn_Zurueck AT ROW 22.43 COL 100.8 Btn_Verschieben AT ROW 22.43 COL 116.2 Aufko.Vertr AT ROW 13.14 COL 123.2 COLON-ALIGNED LABEL "Vertereter" FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4.8 BY 1 NO-TAB-STOP Btn_Suchen AT ROW 3.38 COL 79 CB_LAGER AT ROW 14.14 COL 108.6 COLON-ALIGNED WIDGET-ID 10 Aufko.Frw AT ROW 11.76 COL 123 COLON-ALIGNED NO-LABEL WIDGET-ID 2 VIEW-AS FILL-IN NATIVE SIZE 6 BY 1 BGCOLOR 15 NO-TAB-STOP WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY SIDE-LABELS NO-UNDERLINE THREE-D AT COL 1 ROW 1 SIZE 136.8 BY 22.91. /* DEFINE FRAME statement is approaching 4K Bytes. Breaking it up */ DEFINE FRAME F-Main Aufko.AlsOfferte AT ROW 15.52 COL 101 WIDGET-ID 12 LABEL "Als Offerte" VIEW-AS TOGGLE-BOX SIZE 24 BY 1 Aufko.Kurs AT ROW 12.33 COL 119.4 COLON-ALIGNED WIDGET-ID 4 VIEW-AS FILL-IN NATIVE SIZE 14.6 BY 1 NO-TAB-STOP Aufko.Lager AT ROW 14.14 COL 123.2 COLON-ALIGNED WIDGET-ID 8 FORMAT "999999" VIEW-AS FILL-IN NATIVE SIZE 4.8 BY 1 NO-TAB-STOP "Auftrags-Datum" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 10.86 COL 4.8 "Rabatt" VIEW-AS TEXT SIZE 9.2 BY .81 AT ROW 20.05 COL 4.6 "Kond-Datum" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 10.86 COL 21.8 "RaGrp" VIEW-AS TEXT SIZE 8 BY .81 AT ROW 20.05 COL 118 "Liefer-Datum" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 10.86 COL 38.8 "Faktura-Datum" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 10.86 COL 55.8 "Fahrer" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 75 "LKW" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 95 "Abholer" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 105 "BeiFahr" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 85 "Zeilenrabatt" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 20.05 COL 15.8 "LieferArt" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 115 "Auftragsrabatt" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 20.05 COL 33.8 "Zuschläge" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 20.05 COL 70.8 "Abholrabatt" VIEW-AS TEXT SIZE 16 BY .81 AT ROW 20.05 COL 51.8 "Frw" VIEW-AS TEXT SIZE 9 BY .81 AT ROW 10.86 COL 125 WIDGET-ID 6 "KuGrp" VIEW-AS TEXT SIZE 8 BY .81 AT ROW 20.05 COL 127 "MWSt" VIEW-AS TEXT SIZE 8 BY .81 AT ROW 20.05 COL 91 "Kond" VIEW-AS TEXT SIZE 8 BY .81 AT ROW 20.05 COL 100 "PrGrp" VIEW-AS TEXT SIZE 8 BY .81 AT ROW 20.05 COL 109 RECT-30 AT ROW 1.33 COL 1.8 RECT-31 AT ROW 8.76 COL 1.8 WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY SIDE-LABELS NO-UNDERLINE THREE-D AT COL 1 ROW 1 SIZE 136.8 BY 22.91. /* *********************** Procedure Settings ************************ */ &ANALYZE-SUSPEND _PROCEDURE-SETTINGS /* Settings for THIS-PROCEDURE Type: SmartFrame Allow: Basic,Browse,DB-Fields,Query,Smart Design Page: 3 Other Settings: PERSISTENT-ONLY COMPILE Temp-Tables and Buffers: TABLE: XAufko T "?" NO-UNDO AnaDat Aufko 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 F-Frame-Win ASSIGN HEIGHT = 22.91 WIDTH = 136.8. /* END WINDOW DEFINITION */ */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB F-Frame-Win /* ************************* Included-Libraries *********************** */ {src/adm/method/containr.i} /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* *********** Runtime Attributes and AppBuilder Settings *********** */ &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES /* SETTINGS FOR WINDOW F-Frame-Win VISIBLE,,RUN-PERSISTENT */ /* SETTINGS FOR FRAME F-Main NOT-VISIBLE FRAME-NAME Custom */ /* BROWSE-TAB Br_Aufko 1 F-Main */ ASSIGN FRAME F-Main:POPUP-MENU = MENU POPUP-MENU-F-Main:HANDLE. /* SETTINGS FOR FILL-IN Aufko.Abhol IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Abh_Rab_Art IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Abh_Rab_Wert IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Ablad_Vor IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Ablad_Vor_Text IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR TOGGLE-BOX Aufko.AlsOfferte IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL */ /* SETTINGS FOR FILL-IN Aufko.Auf_Datum IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Auf_Rab_Art IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Auf_Rab_Wert IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.BeiFahrer IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ ASSIGN Br_Aufko:NUM-LOCKED-COLUMNS IN FRAME F-Main = 5. ASSIGN Btn_Erfassen:PRIVATE-DATA IN FRAME F-Main = "Abbrechen". /* SETTINGS FOR COMBO-BOX CB_LAGER IN FRAME F-Main NO-DISPLAY NO-ENABLE */ /* SETTINGS FOR COMBO-BOX CB_Vertreter IN FRAME F-Main NO-DISPLAY NO-ENABLE */ ASSIGN E_Adresse:RETURN-INSERTED IN FRAME F-Main = TRUE E_Adresse:POPUP-MENU IN FRAME F-Main = MENU POPUP-MENU-E_Adresse:HANDLE E_Adresse:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN Aufko.Fahrer IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Fak_Datum IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Frw IN FRAME F-Main NO-ENABLE 1 3 */ ASSIGN Aufko.Frw:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN F_Anzeig_Br IN FRAME F-Main NO-ENABLE 1 */ /* SETTINGS FOR FILL-IN F_Aufnr IN FRAME F-Main NO-ENABLE 1 */ /* SETTINGS FOR FILL-IN F_Knr IN FRAME F-Main NO-ENABLE 1 2 */ /* SETTINGS FOR FILL-IN F_Total IN FRAME F-Main NO-ENABLE 1 */ /* SETTINGS FOR FILL-IN Aufko.I_Best IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Kond IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Kond_Datum IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Kurs IN FRAME F-Main NO-DISPLAY NO-ENABLE */ ASSIGN Aufko.Kurs:HIDDEN IN FRAME F-Main = TRUE Aufko.Kurs:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN Aufko.Ku_Grp IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Lager IN FRAME F-Main NO-DISPLAY NO-ENABLE EXP-FORMAT */ ASSIGN Aufko.Lager:HIDDEN IN FRAME F-Main = TRUE Aufko.Lager:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN Aufko.Lief_Bed IN FRAME F-Main NO-DISPLAY NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Lief_Datum IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.LKW IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.MWSt IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Preis_Grp IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Rabatt IN FRAME F-Main NO-ENABLE ALIGN-L 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Rab_Grp IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Tour_Nr1 IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Tour_Nr2 IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR TOGGLE-BOX T_Abhol IN FRAME F-Main NO-ENABLE 1 3 */ /* SETTINGS FOR TOGGLE-BOX T_Auftrag IN FRAME F-Main NO-ENABLE 1 3 */ /* SETTINGS FOR TOGGLE-BOX T_Passant IN FRAME F-Main NO-ENABLE 1 */ /* SETTINGS FOR FILL-IN Aufko.U_Ref IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Vertr IN FRAME F-Main NO-DISPLAY NO-ENABLE EXP-LABEL EXP-FORMAT */ ASSIGN Aufko.Vertr:HIDDEN IN FRAME F-Main = TRUE Aufko.Vertr:READ-ONLY IN FRAME F-Main = TRUE. /* SETTINGS FOR FILL-IN Aufko.Wirt_So IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Wirt_So_Text IN FRAME F-Main NO-ENABLE 1 3 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Zei_Rab_Art IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Zei_Rab_Wert IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Zuschl_Art IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* SETTINGS FOR FILL-IN Aufko.Zuschl_Wert IN FRAME F-Main NO-ENABLE 1 3 6 EXP-LABEL EXP-FORMAT */ /* _RUN-TIME-ATTRIBUTES-END */ &ANALYZE-RESUME /* Setting information for Queries and Browse Widgets fields */ &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Aufko /* Query rebuild information for BROWSE Br_Aufko _TblList = "AnaDat.Aufko" _Where[1] = "Aufko.Firma = GVFirma " _FldNameList[1] > "_" "AAufnr @ AAufnr" "DokNr" "zzzzz9" ? ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[2] > AnaDat.Aufko.Knr "Aufko.Knr" ? ? "integer" ? ? ? ? ? ? yes ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[3] > AnaDat.Aufko.Fak_Art "Aufko.Fak_Art" "Art" ? "integer" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[4] > "_" "VAdresse @ VAdresse" "Kunde" "x(25)" ? ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[5] > AnaDat.Aufko.Lief_Datum "Aufko.Lief_Datum" "Lief.Datum" ? "date" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _FldNameList[6] > AnaDat.Aufko.Auf_Tot "Aufko.Auf_Tot" "Auftr.Total" "zzz,zz9.99-" "decimal" ? ? ? ? ? ? no ? no no ? yes no no "U" "" "" "" "" "" "" 0 no 0 no no _Query is NOT OPENED */ /* BROWSE Br_Aufko */ &ANALYZE-RESUME &ANALYZE-SUSPEND _QUERY-BLOCK FRAME F-Main /* Query rebuild information for FRAME F-Main _Options = "" _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 F-Frame-Win ON LEAVE OF FRAME F-Main DO: DO WITH FRAME {&FRAME-NAME}: DO WHILE TRUE: IF NOT VUpdate THEN LEAVE. APPLY 'PAGE-DOWN' TO Aufko.Auf_Datum. RETURN NO-APPLY. END. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Ablad_Vor &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Ablad_Vor F-Frame-Win ON HELP OF Aufko.Ablad_Vor IN FRAME F-Main /* Abladevorschrift */ DO: LVFirma = GVFirma. LVRecArt = 'ABLAD'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.AlsOfferte &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.AlsOfferte F-Frame-Win ON VALUE-CHANGED OF Aufko.AlsOfferte IN FRAME F-Main /* Als Offerte */ DO: DEF VAR cRowID AS CHAR NO-UNDO. Ja = 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 ja. 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 ja. END. /* IF Ja THEN DO: Ja = (IF SELF:SCREEN-VALUE BEGINS 'n' THEN FALSE ELSE TRUE). RUN ALSOFFERTE_CHANGED ( Aufko.Aufnr, ja ). BROWSE {&BROWSE-NAME}:SCROLL-TO-SELECTED-ROW(1). END. */ END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Auf_Datum &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Auf_Datum F-Frame-Win ON LEAVE OF Aufko.Auf_Datum IN FRAME F-Main /* Auf_Datum */ DO: Datum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR Datum = ? THEN DO: SELF:SCREEN-VALUE = STRING(TODAY). APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. IF Datum <= SperrDat THEN DO: MESSAGE 'Datum ist zu alt' VIEW-AS ALERT-BOX ERROR. APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.BeiFahrer &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.BeiFahrer F-Frame-Win ON HELP OF Aufko.BeiFahrer IN FRAME F-Main /* BeiFahrer */ DO: LVFirma = GVFirma. LVRecArt = 'BEIFAHR'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define BROWSE-NAME Br_Aufko &Scoped-define SELF-NAME Br_Aufko &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON ALT-F4 OF Br_Aufko IN FRAME F-Main DO: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. /* IF NOT fAdmin THEN RETURN NO-APPLY. */ IF VUpdate THEN RETURN NO-APPLY. AAuf_Sta = Aufko.Auf_Sta. XVAufnr = Aufko.Aufnr. RUN "v8/d-aufko-admin.w". FIND BAufko USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XVAufnr NO-LOCK NO-ERROR. IF BAufko.Auf_Sta = AAuf_Sta THEN Br_Aufko:REFRESH(). ELSE DO: XRecid = RECID(BAufko). VAuf_Sta = BAufko.Auf_Sta. RUN OPEN_AUFKO. IF Vorhanden THEN DO: REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO BROWSE {&BROWSE-NAME}. END. END. APPLY 'ENTRY' TO BROWSE Br_Aufko. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON CTRL-ALT-F4 OF Br_Aufko IN FRAME F-Main DO: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. /* IF NOT fAdmin THEN RETURN NO-APPLY. */ IF VUpdate THEN RETURN NO-APPLY. AAuf_Sta = Aufko.Auf_Sta. XVAufnr = Aufko.Aufnr. RUN "v8/d-aufko-admin.w". FIND BAufko USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XVAufnr NO-LOCK NO-ERROR. IF BAufko.Auf_Sta = AAuf_Sta THEN Br_Aufko:REFRESH(). ELSE DO: XRecid = RECID(BAufko). VAuf_Sta = BAufko.Auf_Sta. RUN OPEN_AUFKO. IF Vorhanden THEN DO: REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO BROWSE {&BROWSE-NAME}. END. END. APPLY 'ENTRY' TO BROWSE Br_Aufko. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON CTRL-F4 OF Br_Aufko IN FRAME F-Main DO: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. /* IF NOT fAdmin THEN RETURN NO-APPLY. */ IF VUpdate THEN RETURN NO-APPLY. AAuf_Sta = Aufko.Auf_Sta. XVAufnr = Aufko.Aufnr. RUN "v8/d-aufko-admin.w". FIND BAufko USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XVAufnr NO-LOCK NO-ERROR. IF BAufko.Auf_Sta = AAuf_Sta THEN Br_Aufko:REFRESH(). ELSE DO: XRecid = RECID(BAufko). VAuf_Sta = BAufko.Auf_Sta. RUN OPEN_AUFKO. IF Vorhanden THEN DO: REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO BROWSE {&BROWSE-NAME}. END. END. APPLY 'ENTRY' TO BROWSE Br_Aufko. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON ENTRY OF Br_Aufko IN FRAME F-Main DO: IF VUpdate THEN DO: APPLY 'CHOOSE' TO Btn_Erfassen. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON ROW-DISPLAY OF Br_Aufko IN FRAME F-Main DO: XAufnr = Aufko.Aufnr. XKnr = Aufko.Knr. RUN ANZEIGE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON START-SEARCH OF Br_Aufko IN FRAME F-Main DO: DEFINE VARIABLE ColumnHandle AS HANDLE NO-UNDO. ASSIGN ColumnHandle = {&BROWSE-NAME}:CURRENT-COLUMN. DO WITH FRAME {&FRAME-NAME}: APPLY 'END-SEARCH' TO Br_Aufko. END. CASE ColumnHandle:NAME: WHEN 'AAufnr' THEN DO: Sort = 1. RUN OPEN_AUFKO. END. WHEN 'Knr' THEN DO: Sort = 2. RUN OPEN_AUFKO. END. WHEN 'Fak_Art' THEN DO: Sort = 4. RUN OPEN_AUFKO. END. WHEN 'Lief_Datum' THEN DO: Sort = 5. RUN OPEN_AUFKO. END. END CASE. DO WITH FRAME {&FRAME-NAME}: Br_Aufko:SELECT-ROW(1). Br_Aufko:FETCH-SELECTED-ROW(1). END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Aufko F-Frame-Win ON VALUE-CHANGED OF Br_Aufko IN FRAME F-Main DO: IF NOT AVAILABLE Aufko THEN RETURN. LVAufnr = Aufko.Aufnr. XVAufnr = Aufko.Aufnr. XVKnr = Aufko.Knr. XAufnr = Aufko.Aufnr. XKnr = Aufko.Knr. RUN ANZEIGE. RUN ANZEIGE_AUFKO. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Aendern &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Aendern F-Frame-Win ON CHOOSE OF Btn_Aendern IN FRAME F-Main /* Aendern */ DO: DEF VAR XAufnr AS INT NO-UNDO. DEF VAR rRowId AS ROWID NO-UNDO. DEF BUFFER fAufko FOR Aufko. IF Btn_Aendern:LABEL = '&Aendern' THEN DO: BROWSE {&BROWSE-NAME}:FETCH-SELECTED-ROW(1). XRecid = RECID(Aufko). RUN OPEN_AUFKO. FIND fAufko NO-LOCK WHERE RECID(fAufko) = XRecid. rRowId = ROWID(fAufko). RELEASE fAufko. hQUERY:REPOSITION-TO-ROWID(rRowId). BROWSE {&BROWSE-NAME}:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO Br_Aufko. RUN ANZEIGE. RUN ANZEIGE_AUFKO. ASSIGN NRecid = 0 VAdresse = '' XAdresse = '' XVAufnr = Aufko.Aufnr. RUN AENDERN. END. ELSE DO: RUN SPEICHERN. END. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Erfassen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Erfassen F-Frame-Win ON CHOOSE OF Btn_Erfassen IN FRAME F-Main /* Neu */ DO: IF Btn_Erfassen:LABEL = '&Neu' THEN DO: RELEASE Debst . RELEASE Adresse . RELEASE Aufko . RELEASE BAufko . ASSIGN NRecid = 0 VAdresse = '' XAdresse = ''. RUN ERFASSEN. END. ELSE DO: RUN ABBRECHEN. END. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Loeschen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Loeschen F-Frame-Win ON CHOOSE OF Btn_Loeschen IN FRAME F-Main /* Löschen */ DO: NRecid = 0. Br_Aufko:FETCH-SELECTED-ROW(1). RUN LOESCHEN. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Suchen &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Suchen F-Frame-Win ON CHOOSE OF Btn_Suchen IN FRAME F-Main /* X */ DO: DEF VAR XXXX AS INT. XXXX = LVAufnr. RUN "v8/d-auftragsuchen.w". IF LVAufnr = 0 THEN DO: LVAufnr = XXXX. RETURN. END. FIND BAufko NO-LOCK WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = LVAufnr NO-ERROR. IF NOT AVAILABLE bAufko THEN DO: LVAufnr = XXXX. RETURN. END. VAuf_Sta = BAufko.Auf_Sta. XRecid = RECID(BAufko). FSuchen = TRUE. RUN OPEN_AUFKO. IF Vorhanden THEN DO: REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO BROWSE {&BROWSE-NAME}. APPLY 'ENTRY' TO BROWSE {&BROWSE-NAME}. END. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Verschieben &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Verschieben F-Frame-Win ON CHOOSE OF Btn_Verschieben IN FRAME F-Main /* Weiter */ DO: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. IF Aufko.Auf_Sta = 1 AND Aufko.Gedruckt = FALSE THEN DO: ja = FALSE. MESSAGE 'Wollen Sie diesen Auftrag wirklich nicht drucken ?' VIEW-AS ALERT-BOX QUESTION BUTTONS YES-NO UPDATE ja. IF NOT ja THEN RETURN NO-APPLY. END. RUN WEITER ( INPUT Aufko.Aufnr ). IF RETURN-VALUE <> '' THEN RETURN NO-APPLY. GET NEXT Br_Aufko NO-LOCK. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: XRecid = 0. IF NOT AVAILABLE Aufko THEN LEAVE. XRecid = RECID(Aufko). LEAVE. END. RUN OPEN_AUFKO. IF XRecid = 0 THEN RETURN NO-APPLY. IF NOT Vorhanden THEN RETURN NO-APPLY. REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Btn_Zurueck &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Zurueck F-Frame-Win ON CHOOSE OF Btn_Zurueck IN FRAME F-Main /* Zurück */ DO: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. XVAufnr = Aufko.Aufnr. RUN ZURUECK ( INPUT XVAufnr ). IF RETURN-VALUE <> '' THEN RETURN NO-APPLY. GET NEXT Br_Aufko NO-LOCK. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: XRecid = 0. IF NOT AVAILABLE Aufko THEN LEAVE. XRecid = RECID(Aufko). LEAVE. END. RUN OPEN_AUFKO. IF XRecid = 0 THEN RETURN NO-APPLY. IF NOT Vorhanden THEN RETURN NO-APPLY. REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_Auf_Sta &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Auf_Sta F-Frame-Win ON VALUE-CHANGED OF CB_Auf_Sta IN FRAME F-Main DO: DO WITH FRAME {&FRAME-NAME}: VAuf_Sta = INTEGER(CB_Auf_Sta:SCREEN-VALUE) NO-ERROR. RUN OPEN_AUFKO. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME CB_LAGER &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_LAGER F-Frame-Win ON RETURN OF CB_LAGER IN FRAME F-Main /* Lager */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_LAGER F-Frame-Win ON VALUE-CHANGED OF CB_LAGER IN FRAME F-Main /* Lager */ DO: IF NOT VUpdate THEN SELF:SCREEN-VALUE = Aufko.Lager:SCREEN-VALUE. Aufko.Lager: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 F-Frame-Win ON RETURN OF CB_Vertreter IN FRAME F-Main /* Vertreter */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL CB_Vertreter F-Frame-Win ON VALUE-CHANGED OF CB_Vertreter IN FRAME F-Main /* Vertreter */ DO: IF NOT VUpdate THEN SELF:SCREEN-VALUE = Aufko.Vertr:SCREEN-VALUE. Aufko.Vertr:SCREEN-VALUE = SELF:SCREEN-VALUE. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Fahrer &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Fahrer F-Frame-Win ON HELP OF Aufko.Fahrer IN FRAME F-Main /* Fahrer */ DO: LVFirma = GVFirma. LVRecArt = 'FAHRER'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Fak_Datum &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Fak_Datum F-Frame-Win ON LEAVE OF Aufko.Fak_Datum IN FRAME F-Main /* Fak_Datum */ DO: IF Datum = ? THEN DO: SELF:SCREEN-VALUE = ?. RETURN NO-APPLY. END. IF Datum <= SperrDat THEN DO: MESSAGE 'Datum ist zu alt' VIEW-AS ALERT-BOX ERROR. APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME F_Knr &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr F-Frame-Win ON END-ERROR OF F_Knr IN FRAME F-Main /* Kunde */ DO: DO WITH FRAME {&FRAME-NAME}: APPLY 'ENTRY' TO Btn_Erfassen. APPLY 'CHOOSE' TO Btn_Erfassen. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr F-Frame-Win ON LEAVE OF F_Knr IN FRAME F-Main /* Kunde */ DO: DEF VAR Saldo AS DEC NO-UNDO. DEF VAR cBenutzer AS CHAR NO-UNDO. DEF VAR cAdresse AS CHAR NO-UNDO. DEF VAR iRecid AS RECID NO-UNDO. DEF VAR iKnr AS INT NO-UNDO. DEF BUFFER LAufko FOR Aufko . DEF BUFFER LDebst FOR Debst . DEF BUFFER LAdresse FOR Adresse . IF NOT VUpdate THEN RETURN NO-APPLY. IF NOT VNeu THEN RETURN NO-APPLY. DO WITH FRAME {&FRAME-NAME}: IF KEYFUNCTION(LASTKEY) = 'END-ERROR' THEN RETURN. LKY = LASTKEY. LHandle = LAST-EVENT:WIDGET-ENTER. IF VALID-HANDLE(LHandle) THEN DO: IF LHandle:TYPE = 'BUTTON' AND LHandle:PRIVATE-DATA = 'Abbrechen' THEN DO: APPLY 'ENTRY' TO Btn_Erfassen. APPLY 'CHOOSE' TO Btn_Erfassen. RETURN. END. END. XHandle = SELF:HANDLE. Feldname = XHandle:NAME. FeldInhalt = XHandle:SCREEN-VALUE. DO WHILE TRUE: iKnr = ?. iRecid = ?. IF NUM-ENTRIES(FeldInhalt, ' ') = 1 THEN iKnr = INTEGER(FeldInhalt) NO-ERROR. IF NOT ERROR-STATUS:ERROR AND iKnr > 0 THEN DO: FIND FIRST Debst NO-LOCK WHERE Debst.Firma = Firma AND Debst.Knr = iKnr NO-ERROR. IF AVAILABLE Debst THEN DO: FIND FIRST Adresse NO-LOCK WHERE Adresse.Firma = AdFirma AND Adresse.Knr = Debst.Knr NO-ERROR. iRecid = RECID(Adresse). LEAVE. END. END. ASSIGN Linktext = 'AUF;' + FeldInhalt. RUN g-suchen-adresse.w ( INPUT Linktext, OUTPUT iRecid ). LEAVE. END. IF iRecid = ? OR iRecid = 0 THEN DO: APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid. VKnr = Adresse.Knr. F_Knr = STRING(VKnr,'999999'). DISPLAY F_Knr. IF Adresse.Aktiv = FALSE THEN DO: { v8/fehler.i "0132" } APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. FIND Debst NO-LOCK USE-INDEX Debst-k1 WHERE Debst.Firma = GVFirma AND Debst.Knr = VKnr NO-ERROR. IF NOT AVAILABLE Debst THEN DO: { v8/fehler.i "0421" } APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. IF Debst.Aktiv = FALSE THEN DO: { v8/fehler.i "0422" } APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. ja = TRUE. Saldo = Debst.Saldo. DO WHILE TRUE: IF Debst.Kred_Lim = 0 THEN LEAVE. IF Saldo > Debst.Kred_Lim THEN DO: ja = DYNAMIC-FUNCTION('ANTWORT_NEIN':U, INPUT 1086) NO-ERROR. LEAVE. END. FOR EACH LAufko USE-INDEX Aufko-k2 WHERE LAufko.Firma = GVFirma AND LAufko.Knr = Debst.Knr NO-LOCK: Saldo = Saldo + LAufko.Auf_Tot. END. IF Saldo > Debst.Kred_Lim THEN DO: ja = DYNAMIC-FUNCTION('ANTWORT_NEIN':U, INPUT 1086) NO-ERROR. LEAVE. END. LEAVE. END. IF NOT Ja THEN DO: APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. XVKnr = VKnr. XKnr = VKnr. RUN ANZEIGE. F_Anzeig_Br:SCREEN-VALUE = VAdresse. Ja = TRUE. MESSAGE 'Auftrag eröffnen ?' VIEW-AS ALERT-BOX QUESTION BUTTONS YES-NO UPDATE Ja. IF NOT Ja THEN DO: APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK. VBemerk = ''. CASE Steuer.St05: WHEN 0 THEN DO: IF Debst.Bemerk <> '' THEN VBemerk = Debst.Bemerk. END. WHEN 1 THEN DO: IF Adresse.Bem <> '' THEN VBemerk = Adresse.Bem. END. WHEN 2 THEN DO: IF Debst.Auf_Text <> '' THEN VBemerk = Debst.Auf_Text. END. END CASE. IF VBemerk <> '' THEN DO: RUN "v8/d-bemerk.w" ( INPUT "Kundenbemerkung":U, INPUT-OUTPUT VBemerk, INPUT FALSE ). END. XAdresse = ''. cAdresse = ''. IF Debst.Passant THEN DO: GET-KEY-VALUE SECTION 'Passantenadresse' KEY STRING(Debst.Knr,'999999') VALUE XAdresse. IF XAdresse = ? OR XAdresse = '' THEN. ELSE XAdresse = REPLACE(XAdresse, ';', '$'). XAdresse = Adresse.Anschrift[07] + "$" + Adresse.Anschrift[08] + "$" + Adresse.Anschrift[09] + "$" + Adresse.Anschrift[10] + "$" + Adresse.Anschrift[11]. RUN "v8/d-passant.w" ( INPUT "Passanten-Adresse", INPUT-OUTPUT XAdresse, INPUT TRUE ). cAdresse = REPLACE(XAdresse, '$', ';'). GET-KEY-VALUE SECTION 'Passantenadresse' KEY STRING(Debst.Knr,'999999') VALUE cAdresse. END. REPEAT TRANSACTION: ix = 0. DO WHILE ix = 0: FIND SteuNr WHERE SteuNr.Firma = GVFirma EXCLUSIVE-LOCK NO-WAIT NO-ERROR. IF AVAILABLE SteuNr THEN DO: SteuNr.Nr1 = SteuNr.Nr1 + 1. ix = SteuNr.Nr1. RELEASE SteuNr. LEAVE. END. MESSAGE 'Datei SteuNr ist im Zugriff' VIEW-AS ALERT-BOX INFORMATION. END. CREATE Aufko. ASSIGN Aufko.Firma = GVFirma Aufko.Aufnr = ix. DO WHILE TRUE: IF Debst.KnrLie <> 0 AND Debst.KnrLie <> Debst.Knr THEN DO: ASSIGN Aufko.Knr = Debst.KnrLie Aufko.Fak_Knr = Debst.Knr. LEAVE. END. IF Debst.KnrFak <> 0 AND Debst.KnrFak <> Debst.Knr THEN DO: ASSIGN Aufko.Knr = Debst.Knr Aufko.Fak_Knr = Debst.KnrFak. LEAVE. END. ASSIGN Aufko.Knr = Debst.Knr Aufko.Fak_Knr = Debst.Knr. LEAVE. END. DO WHILE TRUE: IF Aufko.Knr = Aufko.Fak_Knr THEN LEAVE. FIND LDebst USE-INDEX Debst-k1 WHERE LDebst.Firma = GVFirma AND LDebst.Knr = Aufko.Knr NO-LOCK. IF NOT LDebst.Passant THEN LEAVE. FIND LAdresse USE-INDEX Adresse-k1 WHERE LAdresse.Firma = AdFirma AND LAdresse.Knr = Aufko.Knr NO-LOCK. XAdresse = ''. XAdresse = LAdresse.Anschrift[07] + "$" + LAdresse.Anschrift[08] + "$" + LAdresse.Anschrift[09] + "$" + LAdresse.Anschrift[10] + "$" + LAdresse.Anschrift[11]. RUN "v8/d-passant.w" ( INPUT "Passanten-Adresse", INPUT-OUTPUT XAdresse, INPUT TRUE ). LEAVE. END. cBenutzer = DYNAMIC-FUNCTION('GETBENUTZERDATEN':U) NO-ERROR. cBenutzer = ENTRY(2, cBenutzer, CHR(01)). FIND Waehrung NO-LOCK USE-INDEX Waehrung-k1 WHERE Waehrung.Firma = Debst.Firma AND Waehrung.Frw = Debst.Frw NO-ERROR. ASSIGN Aufko.Firma = GVFirma Aufko.Auf_Datum = TODAY Aufko.Lief_Datum = TODAY Aufko.Kond_Datum = TODAY Aufko.Fak_Datum = ? Aufko.I_Best = '' Aufko.U_Ref = cBenutzer Aufko.MWST = Debst.MWST Aufko.Kond = Debst.Kond Aufko.Vertr = Debst.Vertr Aufko.Fak_Art = Debst.Fak_Art Aufko.Preis_Grp = Debst.Preis_Grp Aufko.Ku_Grp = Debst.Ku_Grp Aufko.Rab_Grp = Debst.Rab_Grp Aufko.Tour_Nr1 = Debst.Tour_Nr1 Aufko.Ablad_Vor = Debst.Ablad_Vor Aufko.Wirt_So = Debst.Wirt_So Aufko.Tour_Nr2 = Debst.Tour_Nr2 Aufko.Ablad_Vor_Text = Debst.Ablad_Vor_Text Aufko.Wirt_So_Text = Debst.Wirt_So_Text Aufko.Konto = Debst.Konto Aufko.Passant = Debst.Passant Aufko.Auf_Text = Debst.Auf_Text Aufko.Abh_Text = Debst.Bar_Text Aufko.Bar_Text = Debst.Bar_Text Aufko.Zei_Rab_Art = Debst.Zei_Rab_Art Aufko.Zei_Rab_Wert = Debst.Zei_Rab_Wert Aufko.Auf_Rab_Art = Debst.Auf_Rab_Art Aufko.Auf_Rab_Wert = Debst.Auf_Rab_Wert Aufko.Abh_Rab_Art = Debst.Abh_Rab_Art Aufko.Abh_Rab_Wert = Debst.Abh_Rab_Wert Aufko.Zuschl_Art = Debst.Zuschl_Art Aufko.Zuschl_Wert = Debst.Zuschl_Wert Aufko.Avis = Debst.Avis Aufko.Wpfl = 0 Aufko.Wust = 0 Aufko.Auf_Tot = 0 Aufko.Bar_Fak = FALSE Aufko.GG_Berech = Debst.Geb_rg Aufko.Samm_Nr = 0 Aufko.Rueckst = FALSE Aufko.Gedruckt = FALSE Aufko.Verbucht = FALSE Aufko.Abhol = FALSE Aufko.Auf_Sta = 0 Aufko.Frw = Debst.Frw Aufko.Kurs = Waehrung.Kurs Aufko.Faktor = Waehrung.Faktor Aufko.Lager = Debst.Lager Aufko.AlsOfferte = FALSE Aufko.Adresse = '' fOfferte = FALSE. { v8/tabelfind.i GVFirma ""AUFFEHL"" 0 ""A"" 0 } IF AVAILABLE Tabel THEN DO: Aufko.Fahrer = INTEGER(SUBSTRING(Tabel.Bez1,01,02)). Aufko.BeiFahrer = INTEGER(SUBSTRING(Tabel.Bez1,03,02)). Aufko.LKW = INTEGER(SUBSTRING(Tabel.Bez1,05,02)). Aufko.Lief_Bed = INTEGER(SUBSTRING(Tabel.Bez1,07,02)). END. VAuf_Sta = 0. ix = 5. i1 = R-INDEX(XAdresse, '$'). DO WHILE i1 > 0 AND ix > 1: Aufko.Adresse[ix] = SUBSTRING(XAdresse,i1 + 1). XAdresse = SUBSTRING(XAdresse,01,i1 - 1). ix = ix - 1. i1 = R-INDEX(XAdresse, '$'). END. IF XAdresse <> '' THEN Aufko.Adresse[ix] = XAdresse. NRecid = RECID(Aufko). XRecid = RECID(Aufko). LEAVE. END. /* TRANSCTION */ FIND Aufko WHERE RECID(Aufko) = NRecid NO-LOCK. XVAufnr = Aufko.Aufnr. XVKnr = Aufko.Knr. RUN ANZEIGE_AUFKO. DISABLE {&List-2}. ENABLE {&List-3}. ENABLE CB_Vertreter CB_Lager. IF NOT fAdmin THEN DISABLE {&List-6}. IF T_Passant = TRUE THEN ENABLE T_Passant. APPLY 'ENTRY' TO Aufko.Auf_Datum. RETURN NO-APPLY. END. /* FRAME */ END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL F_Knr F-Frame-Win ON RETURN OF F_Knr IN FRAME F-Main /* Kunde */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.I_Best &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.I_Best F-Frame-Win ON LEAVE OF Aufko.I_Best IN FRAME F-Main /* Ihre Bestellung */ DO: IF KEYFUNCTION(LASTKEY) = 'END-ERROR' THEN RETURN. FeldInhalt = TRIM(SELF:SCREEN-VALUE). IF LENGTH(FeldInhalt) > 8 THEN RETURN. FIND Tabel USE-INDEX Tabel-k1 WHERE Tabel.Firma = GVFirma AND Tabel.RecArt = 'IBEST' AND Tabel.CodeC = FeldInhalt AND Tabel.CodeI = 0 AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR. IF AVAILABLE Tabel THEN SELF:SCREEN-VALUE = Tabel.Bez1. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Kond_Datum &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Kond_Datum F-Frame-Win ON LEAVE OF Aufko.Kond_Datum IN FRAME F-Main /* Kond_Datum */ DO: Datum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR Datum = ? THEN DO: SELF:SCREEN-VALUE = STRING(TODAY). APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. IF Datum <= SperrDat THEN DO: MESSAGE 'Datum ist zu alt' VIEW-AS ALERT-BOX ERROR. APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Lief_Bed &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Lief_Bed F-Frame-Win ON HELP OF Aufko.Lief_Bed IN FRAME F-Main /* Lief_Bed */ DO: LVFirma = GVFirma. LVRecArt = 'LIEFART'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Lief_Datum &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Lief_Datum F-Frame-Win ON LEAVE OF Aufko.Lief_Datum IN FRAME F-Main /* Lief_Datum */ DO: Datum = DATE(SELF:SCREEN-VALUE) NO-ERROR. IF ERROR-STATUS:ERROR OR Datum = ? THEN DO: SELF:SCREEN-VALUE = STRING(TODAY). APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. IF Datum <= SperrDat THEN DO: MESSAGE 'Datum ist zu alt' VIEW-AS ALERT-BOX ERROR. APPLY 'ENTRY' TO SELF. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.LKW &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.LKW F-Frame-Win ON HELP OF Aufko.LKW IN FRAME F-Main /* LKW */ DO: LVFirma = GVFirma. LVRecArt = 'LKW'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Adressetiketten &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Adressetiketten F-Frame-Win ON CHOOSE OF MENU-ITEM m_Adressetiketten /* Adressetiketten */ DO: DO WITH FRAME {&FRAME-NAME}: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. IF VUpdate THEN RETURN NO-APPLY. XVAufnr = Aufko.Aufnr. RUN "g-adressetiketten.w" ( GVFirma, XVAufnr, 0 ). RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Fakturaart_wechseln &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Fakturaart_wechseln F-Frame-Win ON CHOOSE OF MENU-ITEM m_Fakturaart_wechseln /* Fakturaart wechseln */ DO: DO WITH FRAME {&FRAME-NAME}: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. IF VUpdate THEN RETURN NO-APPLY. XVAufnr = Aufko.Aufnr. RUN "v8/d-fakartwechsel.w". Br_Aufko:REFRESH(). APPLY 'ENTRY' TO BROWSE Br_Aufko. RETURN NO-APPLY. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Mehrwertsteuercode_ndern &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Mehrwertsteuercode_ndern F-Frame-Win ON CHOOSE OF MENU-ITEM m_Mehrwertsteuercode_ndern /* Mehrwertsteuercode ändern */ DO: IF VUpdate THEN RETURN NO-APPLY. DO WITH FRAME {&FRAME-NAME}: XAufnr = INTEGER(F_Aufnr:SCREEN-VALUE). END. RUN g-mwstcd_aendern.w ( XAufnr ). RUN OPEN_AUFKO. FIND BAufko USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XAufnr NO-LOCK. REPOSITION Br_Aufko TO ROWID ROWID(BAufko). APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME m_Retouren &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL m_Retouren F-Frame-Win ON CHOOSE OF MENU-ITEM m_Retouren /* Retouren */ DO: XVDruArt = 1. APPLY 'U9'. XVDruArt = 0. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Tour_Nr1 &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Tour_Nr1 F-Frame-Win ON HELP OF Aufko.Tour_Nr1 IN FRAME F-Main /* Tour */ DO: LVFirma = GVFirma. LVRecArt = 'TOUR1'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_Abhol &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Abhol F-Frame-Win ON RETURN OF T_Abhol IN FRAME F-Main /* Abholtext */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Abhol F-Frame-Win ON VALUE-CHANGED OF T_Abhol IN FRAME F-Main /* Abholtext */ DO: RUN "v8/d-bemerk.w" ( INPUT "Abholtext":U, INPUT-OUTPUT VAbh_Text, INPUT TRUE ). IF VAbh_Text <> '' THEN T_Abhol = TRUE. ELSE T_Abhol = FALSE. DISPLAY T_Abhol WITH FRAME {&FRAME-NAME}. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_Auftrag &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Auftrag F-Frame-Win ON RETURN OF T_Auftrag IN FRAME F-Main /* Auftragstext */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Auftrag F-Frame-Win ON VALUE-CHANGED OF T_Auftrag IN FRAME F-Main /* Auftragstext */ DO: RUN "v8/d-bemerk.w" ( INPUT "Auftragstext":U, INPUT-OUTPUT VAuf_Text, INPUT TRUE ). IF VAuf_Text <> '' THEN T_Auftrag = TRUE. ELSE T_Auftrag = FALSE. DISPLAY T_Auftrag WITH FRAME {&FRAME-NAME}. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME T_Passant &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Passant F-Frame-Win ON RETURN OF T_Passant IN FRAME F-Main /* Abholeradresse */ DO: APPLY 'TAB' TO SELF. RETURN NO-APPLY. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL T_Passant F-Frame-Win ON VALUE-CHANGED OF T_Passant IN FRAME F-Main /* Abholeradresse */ DO: DO WITH FRAME {&FRAME-NAME}: T_Passant = TRUE. DISPLAY T_Passant. VBemerk = VPassant[01] + "$" + VPassant[02] + "$" + VPassant[03] + "$" + VPassant[04] + "$" + VPassant[05]. RUN "v8/d-passant.w" ( INPUT "Passanten-Adresse", INPUT-OUTPUT VBemerk, INPUT TRUE ). ix = 5. i1 = R-INDEX(VBemerk, '$'). DO WHILE i1 > 0 AND ix > 1: VPassant[ix] = SUBSTRING(VBemerk,i1 + 1). VBemerk = SUBSTRING(VBemerk,01,i1 - 1). ix = ix - 1. i1 = R-INDEX(VBemerk, '$'). END. IF VBemerk <> '' THEN VPassant[ix] = VBemerk. END. END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &Scoped-define SELF-NAME Aufko.Wirt_So &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Aufko.Wirt_So F-Frame-Win ON HELP OF Aufko.Wirt_So IN FRAME F-Main /* Wirtesonntag */ DO: LVFirma = GVFirma. LVRecArt = 'WISO'. LVSprcd = 1. LVCodeI = INTEGER(SELF:SCREEN-VALUE). ok = TRUE. RUN "v8/d-a-tabel-i.w" ( INPUT-OUTPUT ok ). IF ok THEN SELF:SCREEN-VALUE = STRING(LVCodeI). END. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &UNDEFINE SELF-NAME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK F-Frame-Win /* *************************** Main Block *************************** */ SESSION:DATA-ENTRY-RETURN = TRUE. SUBSCRIBE TO 'ENDEAUFTRAG' ANYWHERE. SUBSCRIBE TO 'OPEN_AUFKO' ANYWHERE. &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN /* Now enable the interface if in test mode - otherwise this happens when the object is explicitly initialized from its container. */ RUN dispatch IN THIS-PROCEDURE ('initialize':U). &ENDIF QOpen = FALSE. VUpdate = FALSE. VNeu = FALSE. NRecid = 0. Sort = 5. VAuf_Sta = 0. FSuchen = FALSE. SperrDat = DYNAMIC-FUNCTION('getSperrDatum':U) NO-ERROR. sAktiv = DYNAMIC-FUNCTION('getSuperAktiv':U) NO-ERROR. IF SperrDat = ? THEN SperrDat = TODAY - 90. ON INSERT-MODE, 'ALT-INS':U OF FRAME {&FRAME-NAME} ANYWHERE DO: IF VUpdate = TRUE THEN RETURN NO-APPLY. APPLY 'ENTRY' TO Btn_Erfassen IN FRAME {&FRAME-NAME}. APPLY 'CHOOSE' TO Btn_Erfassen IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. ON RETURN, 'ALT-ENTER':U OF BROWSE {&BROWSE-NAME} DO: APPLY 'ENTRY' TO Btn_Aendern IN FRAME {&FRAME-NAME}. APPLY 'CHOOSE' TO Btn_Aendern IN FRAME {&FRAME-NAME}. RETURN NO-APPLY. END. ON DELETE-CHARACTER OF BROWSE {&BROWSE-NAME} DO: IF VUpdate THEN RETURN NO-APPLY. RUN LOESCHEN. RETURN NO-APPLY. END. ON PAGE-DOWN OF {&INPUT-FELDER} IN FRAME {&FRAME-NAME} DO: IF NOT VUpdate THEN RETURN NO-APPLY. XHandle = SELF:HANDLE. Feldname = XHandle:NAME. IF NOT VALID-HANDLE(XHandle) THEN RETURN NO-APPLY. IF XHandle:TYPE <> 'FILL-IN' THEN RETURN NO-APPLY. CASE Feldname: WHEN 'F_Knr' THEN RETURN NO-APPLY. END CASE. APPLY 'ENTRY' TO Btn_Aendern. APPLY 'CHOOSE' TO Btn_Aendern. RUN new-state ( 'seite_2, MAIN':U ). RETURN NO-APPLY. END. ON END, "F9":U OF {&INPUT-FELDER} IN FRAME {&FRAME-NAME} DO: IF NOT VUpdate THEN RETURN NO-APPLY. XHandle = SELF:HANDLE. Feldname = XHandle:NAME. IF NOT VALID-HANDLE(XHandle) THEN RETURN NO-APPLY. IF XHandle:TYPE <> 'FILL-IN' THEN RETURN NO-APPLY. CASE Feldname: WHEN 'F_Knr' THEN RETURN NO-APPLY. END CASE. APPLY 'ENTRY' TO Btn_Aendern. APPLY 'CHOOSE' TO Btn_Aendern. APPLY 'ENTRY' TO Br_Aufko. RETURN NO-APPLY. END. /* ON "END-ERROR":U OF FRAME {&FRAME-NAME} ANYWHERE DO: IF VUpdate THEN DO WITH FRAME {&FRAME-NAME}: APPLY 'ENTRY' TO Btn_Erfassen. APPLY 'CHOOSE' TO Btn_Erfassen. RETURN NO-APPLY. END. RETURN NO-APPLY. END. */ /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ********************** Internal Procedures *********************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ABBRECHEN F-Frame-Win PROCEDURE ABBRECHEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DO WITH FRAME {&FRAME-NAME}: Btn_Erfassen:LABEL = '&Neu'. Btn_Aendern:LABEL = '&Aendern'. ENABLE Btn_Loeschen. ENABLE Btn_Zurueck. ENABLE Btn_Verschieben. ENABLE Btn_Suchen . ENABLE CB_Auf_Sta. DISABLE {&List-2}. DISABLE {&List-3}. DISABLE T_Passant. VUpdate = FALSE. VNeu = FALSE. RUN new-state ( INPUT 'NOTUPDATE, MAIN' ). RUN CLEAR_BILDSCHIRM. IF NRecid > 0 THEN DO: REPEAT TRANSACTION: FIND BAufko WHERE RECID(BAufko) = NRecid. DELETE BAufko. RELEASE BAufko. LEAVE. END. END. RELEASE Aufko . RELEASE Aufze . RELEASE AufGebKo. RELEASE AufGKon . RELEASE AufRabSu. RELEASE AufSpRab. APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. RETURN NO-APPLY. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-create-objects F-Frame-Win _ADM-CREATE-OBJECTS PROCEDURE adm-create-objects : /*------------------------------------------------------------------------------ Purpose: Create handles for all SmartObjects used in this procedure. After SmartObjects are initialized, then SmartLinks are added. Parameters: ------------------------------------------------------------------------------*/ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available F-Frame-Win _ADM-ROW-AVAILABLE PROCEDURE adm-row-available : /*------------------------------------------------------------------------------ Purpose: Dispatched to this procedure when the Record- Source has a new row available. This procedure tries to get the new row (or foriegn keys) from the Record-Source and process it. Parameters: ------------------------------------------------------------------------------*/ /* Define variables needed by this internal procedure. */ {src/adm/template/row-head.i} /* Process the newly available records (i.e. display fields, open queries, and/or pass records on to any RECORD-TARGETS). */ {src/adm/template/row-end.i} END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE AENDERN F-Frame-Win PROCEDURE AENDERN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DO WITH FRAME {&FRAME-NAME}: IF NOT AVAILABLE Aufko THEN RETURN NO-APPLY. VUpdate = TRUE. VNeu = FALSE. NRecid = 0. XRecid = RECID(Aufko). XVAufnr = Aufko.Aufnr. XVKnr = Aufko.Knr. fOfferte = Aufko.AlsOfferte. RUN new-state ( INPUT 'UPDATE, MAIN' ). Btn_Erfassen:LABEL = '&Abbrechen'. Btn_Aendern:LABEL = '&Speichern'. DISABLE Btn_Loeschen . DISABLE Btn_Zurueck . DISABLE Btn_Verschieben. DISABLE Btn_Suchen . ENABLE {&List-3}. IF NOT fAdmin THEN DISABLE {&List-6}. FIND FIRST Aufze NO-LOCK WHERE Aufze.Firma = GVFirma AND Aufze.Aufnr = XVAufnr AND Aufze.Artnr > 0 NO-ERROR. IF AVAILABLE Aufze THEN Aufko.MWSt:SENSITIVE = FALSE. IF T_Passant = TRUE THEN ENABLE T_Passant. APPLY 'ENTRY' TO Aufko.Auf_Datum. RETURN NO-APPLY. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ANZEIGE F-Frame-Win PROCEDURE ANZEIGE : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR FAdr AS LOG NO-UNDO. VAdresse = ''. E_Adresse = ''. AAufnr = 0. FAdr = FALSE. IF AVAILABLE Aufko THEN DO: DO ix = 1 TO 5: IF Aufko.Adresse[ix] <> '' THEN DO: FAdr = TRUE. LEAVE. END. END. END. FIND Adresse NO-LOCK USE-INDEX Adresse-k1 WHERE Adresse.Firma = AdFirma AND Adresse.Knr = XKnr NO-ERROR. IF AVAILABLE Adresse THEN VAdresse = Adresse.Anzeig_Br. ELSE VAdresse = '????????'. IF FAdr THEN DO: VAdresse = ''. DO ix = 1 TO 5: IF Aufko.Adresse[ix] = '' THEN NEXT. IF VAdresse <> '' THEN VAdresse = VAdresse + ', '. VAdresse = VAdresse + Aufko.Adresse[ix]. END. END. IF AVAILABLE Aufko THEN DO: IF Aufko.Faknr <> 0 THEN AAufnr = Aufko.Faknr. ELSE AAufnr = Aufko.Aufnr. IF Aufko.Adresse[05] <> '' THEN DO: E_Adresse = CHR(10) + ' ' + CHR(10). DO i5 = 1 TO 5: E_Adresse = E_Adresse + Aufko.Adresse[i5] + CHR(10). END. END. END. IF E_Adresse = '' THEN DO: E_Adresse = Adresse.Anschrift[05] + CHR(10) + Adresse.Anschrift[06] + CHR(10) + Adresse.Anschrift[07] + CHR(10) + Adresse.Anschrift[08] + CHR(10) + Adresse.Anschrift[09] + CHR(10) + Adresse.Anschrift[10] + CHR(10) + Adresse.Anschrift[11] + CHR(10) + Adresse.Anschrift[12]. END. DISPLAY E_Adresse WITH FRAME {&FRAME-NAME}. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ANZEIGE_AUFKO F-Frame-Win PROCEDURE ANZEIGE_AUFKO : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ FIND Adresse NO-LOCK USE-INDEX Adresse-k1 WHERE Adresse.Firma = AdFirma AND Adresse.Knr = XVKnr NO-ERROR. IF AVAILABLE Adresse THEN F_Anzeig_Br = Adresse.Anzeig_Br. ELSE F_Anzeig_Br = FILL('?', 20). F_Knr = STRING(XVKnr,'999999'). F_Aufnr = XVAufnr. F_Total = Aufko.Auf_Tot. T_Auftrag = FALSE. T_Abhol = FALSE. T_Passant = FALSE. VAuf_Text = Aufko.Auf_Text. VAbh_Text = Aufko.Abh_Text. VBar_Text = Aufko.Bar_Text. VPassant[01] = Aufko.Adresse[01]. VPassant[02] = Aufko.Adresse[02]. VPassant[03] = Aufko.Adresse[03]. VPassant[04] = Aufko.Adresse[04]. VPassant[05] = Aufko.Adresse[05]. IF VAuf_Text <> '' THEN T_Auftrag = TRUE. IF VAbh_Text <> '' THEN T_Abhol = TRUE. IF Aufko.Adresse[05] <> '' THEN T_Passant = TRUE. DO WITH FRAME {&FRAME-NAME}: DISPLAY {&List-1} {&List-3}. CB_Vertreter:SCREEN-VALUE = STRING(Aufko.Vertr,'999999') NO-ERROR. CB_Lager :SCREEN-VALUE = STRING(Aufko.Lager,'999999') NO-ERROR. END. IF VAuf_Sta <> 2 THEN RETURN. FIND Steuer NO-LOCK WHERE Steuer.Firma = GVFirma. FIND Debst NO-LOCK USE-INDEX Debst-k1 WHERE Debst.Firma = Aufko.Firma AND Debst.Knr = Aufko.Knr NO-ERROR. FIND Adresse NO-LOCK USE-INDEX Adresse-k1 WHERE Adresse.Firma = AdFirma AND Adresse.Knr = Aufko.Knr NO-ERROR. VBemerk = ''. CASE Steuer.St05: WHEN 0 THEN DO: IF Debst.Bemerk <> '' THEN VBemerk = Debst.Bemerk. END. WHEN 1 THEN DO: IF Adresse.Bem <> '' THEN VBemerk = Adresse.Bem. END. WHEN 2 THEN DO: IF Debst.Auf_Text <> '' THEN VBemerk = Debst.Auf_Text. END. END CASE. IF VBemerk <> '' THEN DO: RUN "v8/d-bemerk.w" ( INPUT "Kundenbemerkung":U, INPUT-OUTPUT VBemerk, INPUT FALSE ). END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE CLEAR_BILDSCHIRM F-Frame-Win PROCEDURE CLEAR_BILDSCHIRM : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR Fenster AS HANDLE. Fenster = FRAME {&FRAME-NAME}:CURRENT-ITERATION. ASSIGN Fenster = Fenster:FIRST-CHILD. DO WHILE VALID-HANDLE (Fenster) : DO WHILE TRUE: IF Fenster:HIDDEN = TRUE THEN LEAVE. IF Fenster:TYPE = 'COMBO-BOX' THEN DO: IF Fenster:NAME = 'CB_Lager' THEN LEAVE. IF Fenster:NAME = 'CB_Auf_Sta' THEN LEAVE. IF Fenster:NAME = 'CB_Vertreter' THEN LEAVE. Fenster:SCREEN-VALUE = ' '. LEAVE. END. IF Fenster:TYPE = 'EDITOR' THEN DO: Fenster:SCREEN-VALUE = ''. LEAVE. END. IF Fenster:TYPE = 'FILL-IN' THEN DO: IF Fenster:DATA-TYPE = 'INTEGER' THEN Fenster:SCREEN-VALUE = ''. IF Fenster:DATA-TYPE = 'DECIMAL' THEN Fenster:SCREEN-VALUE = ''. IF Fenster:DATA-TYPE = 'CHARACTER' THEN Fenster:SCREEN-VALUE = ''. IF Fenster:DATA-TYPE = 'LOGICAL' THEN Fenster:SCREEN-VALUE = 'no'. IF Fenster:DATA-TYPE = 'DATE' THEN Fenster:SCREEN-VALUE = ?. LEAVE. END. LEAVE. END. ASSIGN Fenster = Fenster:NEXT-SIBLING. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI F-Frame-Win _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 enable_UI F-Frame-Win _DEFAULT-ENABLE PROCEDURE enable_UI : /*------------------------------------------------------------------------------ Purpose: ENABLE the User Interface Parameters: Notes: Here we display/view/enable the widgets in the user-interface. In addition, OPEN all queries associated with each FRAME and BROWSE. These statements here are based on the "Other Settings" section of the widget Property Sheets. ------------------------------------------------------------------------------*/ DISPLAY CB_Auf_Sta E_Adresse F_Knr F_Anzeig_Br F_Aufnr F_Total T_Passant T_Auftrag T_Abhol WITH FRAME F-Main. IF AVAILABLE Aufko THEN DISPLAY Aufko.Auf_Datum Aufko.Kond_Datum Aufko.Lief_Datum Aufko.Fak_Datum Aufko.Fahrer Aufko.BeiFahrer Aufko.LKW Aufko.Abhol Aufko.I_Best Aufko.U_Ref Aufko.Tour_Nr1 Aufko.Tour_Nr2 Aufko.Ablad_Vor Aufko.Ablad_Vor_Text Aufko.Wirt_So Aufko.Wirt_So_Text Aufko.Rabatt Aufko.Zei_Rab_Art Aufko.Zei_Rab_Wert Aufko.Auf_Rab_Art Aufko.Auf_Rab_Wert Aufko.Abh_Rab_Art Aufko.Abh_Rab_Wert Aufko.Zuschl_Art Aufko.Zuschl_Wert Aufko.MWSt Aufko.Kond Aufko.Preis_Grp Aufko.Rab_Grp Aufko.Ku_Grp Aufko.Frw Aufko.AlsOfferte WITH FRAME F-Main. ENABLE Br_Aufko CB_Auf_Sta E_Adresse Btn_Aendern Btn_Erfassen Btn_Loeschen Btn_Zurueck Btn_Verschieben Btn_Suchen RECT-30 RECT-31 WITH FRAME F-Main. {&OPEN-BROWSERS-IN-QUERY-F-Main} END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ENDEAUFTRAG F-Frame-Win PROCEDURE ENDEAUFTRAG : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ IF VUpdate THEN DO WITH FRAME {&FRAME-NAME}: Ja = TRUE. APPLY 'ENTRY' TO Btn_Erfassen. APPLY 'CHOOSE' TO Btn_Erfassen. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE ERFASSEN F-Frame-Win PROCEDURE ERFASSEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR cBenutzer AS CHAR NO-UNDO. DO WITH FRAME {&FRAME-NAME}: IF AVAILABLE Aufko THEN XRecid = RECID(Aufko). ELSE XRecid = 0. Btn_Erfassen:LABEL = '&Abbrechen'. Btn_Aendern:LABEL = '&Speichern'. DISABLE Btn_Loeschen. DISABLE Btn_Zurueck . DISABLE Btn_Verschieben. DISABLE Btn_Suchen . DISABLE CB_Auf_Sta. RUN CLEAR_BILDSCHIRM. ENABLE {&List-2}. APPLY 'ENTRY' TO F_Knr. VUpdate = TRUE. VNeu = TRUE. RUN new-state ( INPUT 'UPDATE, MAIN' ). cBenutzer = DYNAMIC-FUNCTION('GETBENUTZERDATEN':U) NO-ERROR. cBenutzer = ENTRY(2, cBenutzer, CHR(01)). U_Ref:SCREEN-VALUE = cBenutzer. RETURN NO-APPLY. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE GEFUNDEN F-Frame-Win PROCEDURE GEFUNDEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ /* VKnr = Linknr. VInhalt = Linktext. Linktext = ''. Linknr = 0. DO WITH FRAME {&FRAME-NAME}: F_Knr:SCREEN-VALUE = STRING(VKnr). F_Knr = STRING(VKnr). APPLY 'LEAVE' TO F_Knr. RETURN NO-APPLY. END. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE KUNDENNUMMER F-Frame-Win PROCEDURE KUNDENNUMMER : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR iRecid AS RECID NO-UNDO. /* ASSIGN Linktext = 'AUF;' + FeldInhalt iRecid = ?. RUN g-suchen-adresse.w ( INPUT Linktext, OUTPUT iRecid ). RETURN iRecid. IF iRecid <> ? AND iRecid <> 0 THEN DO: FIND Adresse NO-LOCK WHERE RECID(Adresse) = iRecid. VKnr = Adresse.Knr. RUN NICHT_GEFUNDEN. END. RETURN ''. END. */ RETURN ''. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-apply-entry F-Frame-Win PROCEDURE local-apply-entry : /*------------------------------------------------------------------------------ Purpose: Override standard ADM method Notes: ------------------------------------------------------------------------------*/ RUN dispatch IN THIS-PROCEDURE ( INPUT 'apply-entry':U ) . END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-hide F-Frame-Win PROCEDURE local-hide : /*------------------------------------------------------------------------------ Purpose: Override standard ADM method Notes: ------------------------------------------------------------------------------*/ XHandle = SELF:HANDLE. IF VALID-HANDLE(XHandle) AND XHandle:TYPE <> 'PROCEDURE' THEN DO: Feldname = XHandle:NAME. CASE Feldname: WHEN 'F_Knr' THEN DO: IF VUpdate THEN DO WITH FRAME {&FRAME-NAME}: APPLY 'ENTRY' TO Btn_Erfassen. APPLY 'CHOOSE' TO Btn_Erfassen. RETURN. END. RUN dispatch IN THIS-PROCEDURE ( INPUT 'hide':U ) . RETURN. END. END CASE. END. IF VUpdate THEN DO WITH FRAME {&FRAME-NAME}: APPLY 'ENTRY' TO Btn_Aendern. APPLY 'CHOOSE' TO Btn_Aendern. END. RUN dispatch IN THIS-PROCEDURE ( INPUT 'hide':U ) . END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-initialize F-Frame-Win PROCEDURE local-initialize : /*------------------------------------------------------------------------------ Purpose: Override standard ADM method Notes: ------------------------------------------------------------------------------*/ DO WHILE sAktiv WITH FRAME {&FRAME-NAME}: DEF VAR ok AS LOG NO-UNDO. DEF VAR xString AS CHAR NO-UNDO. /* Fakturaarten */ cBenutzerdaten = DYNAMIC-FUNCTION('getBenutzerdaten':U) NO-ERROR. cBenutzer = ENTRY(1, cBenutzerDaten, CHR(01)) NO-ERROR. RUN COMBO_AUFSTATUS ( CB_Auf_Sta:HANDLE ) NO-ERROR. CB_Auf_Sta:SCREEN-VALUE = STRING(VAuf_Sta,'999999') NO-ERROR. RUN COMBO_VERTRETER ( INPUT CB_Vertreter:HANDLE ) NO-ERROR. RUN COMBO_Lager ( INPUT CB_Lager :HANDLE ) NO-ERROR. GET-KEY-VALUE SECTION 'Lagereinstellung' KEY cBenutzer VALUE xString. IF xString = '' OR xString = ? THEN xString = '000000'. IF xString = '999999' THEN xString = '000000'. CB_Lager:SCREEN-VALUE = xString NO-ERROR. E_Adresse = ''. LEAVE. END. Aufko.Knr:READ-ONLY IN BROWSE Br_Aufko = TRUE. RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) . IF NOT fOpen THEN RUN OPEN_AUFKO. fAdmin = DYNAMIC-FUNCTION('getAdmin':U) NO-ERROR. hQuery = BROWSE {&BROWSE-NAME}:QUERY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-view F-Frame-Win PROCEDURE local-view : /*------------------------------------------------------------------------------ Purpose: Override standard ADM method Notes: ------------------------------------------------------------------------------*/ DEF VAR ZRecid AS RECID NO-UNDO. RUN dispatch IN THIS-PROCEDURE ( INPUT 'view':U ) . IF VUpdate THEN RETURN. FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK NO-ERROR. DO WHILE XVAufnr <> 0: IF NOT AVAILABLE Steuer THEN LEAVE. IF Steuer.St06 = 0 THEN LEAVE. RELEASE Aufko. RELEASE BAufko. FIND BAufko NO-LOCK USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XVAufnr NO-ERROR. IF NOT AVAILABLE BAufko THEN LEAVE. VAuf_Sta = BAufko.Auf_Sta. ZRecid = RECID(BAufko). Vorhanden = TRUE. RUN OPEN_AUFKO. REPOSITION Br_Aufko TO RECID ZRecid. LEAVE. END. IF Vorhanden THEN DO WITH FRAME {&FRAME-NAME}: APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LOESCHEN F-Frame-Win PROCEDURE LOESCHEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR KRecid AS RECID. DISABLE TRIGGERS FOR LOAD OF Aufko. DISABLE TRIGGERS FOR LOAD OF Aufze. DISABLE TRIGGERS FOR LOAD OF AufLot. DISABLE TRIGGERS FOR LOAD OF RuestAuf. DO WITH FRAME {&FRAME-NAME}: IF VUpdate THEN RETURN NO-APPLY. Ja = FALSE. { v8/loeschen.i } IF NOT Ja THEN RETURN NO-APPLY. REPEAT TRANSACTION: KRecid = RECID(Aufko). FIND BAufko NO-LOCK WHERE RECID(BAufko) = KRecid. /* IF BAufko.Auf_Sta >= 03 AND */ /* BAufko.Auf_Sta <= 05 AND */ /* BAufko.Gedruckt AND */ /* NOT fAdmin THEN DO: */ /* MESSAGE 'Auftrag darf nicht mehr gelöscht werden' SKIP */ /* 'Bitte Administrator fragen! ' VIEW-AS ALERT-BOX INFORMATION. */ /* RELEASE BAufko. */ /* LEAVE. */ /* END. */ /* */ /* IF NOT fAdmin THEN DO: */ /* IF BAufko.Faknr > 0 OR */ /* BAufko.Verbucht THEN DO: */ /* MESSAGE 'Auftrag darf nicht mehr gelöscht werden' SKIP */ /* 'Bitte Administrator fragen! ' VIEW-AS ALERT-BOX INFORMATION. */ /* RELEASE BAufko. */ /* LEAVE. */ /* END. */ /* END. */ FOR EACH Aufze OF BAufko: IF Aufze.Artnr = 0 THEN DO: DELETE Aufze. NEXT. END. IF Aufze.Lag_Buch THEN DO: FIND ArtLager USE-INDEX ArtLager-k1 WHERE ArtLager.Firma = Aufze.Firma AND ArtLager.Artnr = Aufze.Artnr AND ArtLager.Inhalt = Aufze.Inhalt AND ArtLager.Jahr = Aufze.Jahr AND ArtLager.Lager = Aufze.Lager. ASSIGN ArtLager.Ausgang = ArtLager.Ausgang - Aufze.MGeli ArtLager.Bestand = ArtLager.Bestand + Aufze.MGeli. RELEASE ArtLager. END. FIND Artbw USE-INDEX Artbw-k1 WHERE Artbw.Firma = Aufze.Firma AND Artbw.Trnr = Aufze.Trnr NO-ERROR. IF AVAILABLE Artbw THEN DO: DELETE Artbw. END. DELETE Aufze. END. RUN SAMMFAKMUT ( INPUT KRecid ). FIND BAufko NO-LOCK WHERE RECID(BAufko) = KRecid. FOR EACH AufGebKo OF BAufko: DELETE AufGebKo. END. FOR EACH AufGKon OF BAufko: DELETE AufGKon. END. FOR EACH AufRabSu OF BAufko: DELETE AufRabSu. END. FOR EACH AufSpRab USE-INDEX AufSpRab-k1 WHERE AufSpRab.Firma = BAufko.Firma AND AufSpRab.Aufnr = BAufko.Aufnr: DELETE AufSpRab. END. FOR EACH RuestAuf WHERE RuestAuf.Firma = BAufko.Firma AND RuestAuf.Aufnr = BAufko.Aufnr: DELETE RuestAuf. END. FOR EACH AufLot WHERE AufLot.Firma = BAufko.Firma AND AufLot.Aufnr = BAufko.Aufnr: DELETE AufLot. END. FOR EACH Tabel WHERE Tabel.Firma = BAufko.Firma AND Tabel.RecArt BEGINS 'AUFDRUCK': IF Tabel.Int_1 <> BAufko.Aufnr THEN NEXT. DELETE Tabel. END. FOR EACH Tabel WHERE Tabel.Firma = BAufko.Firma AND Tabel.RecArt BEGINS 'ws': IF Tabel.Int_1 <> BAufko.Aufnr THEN NEXT. DELETE Tabel. END. FIND BAufko WHERE RECID(BAufko) = KRecid. DELETE BAufko. LEAVE. END. RUN OPEN_AUFKO. END. /* FRAME */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NEUER_AUFTRAG F-Frame-Win PROCEDURE NEUER_AUFTRAG : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ APPLY 'INSERT-MODE':U TO FRAME {&FRAME-NAME}. RETURN NO-APPLY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE NICHT_GEFUNDEN F-Frame-Win PROCEDURE NICHT_GEFUNDEN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ /* DO WITH FRAME {&FRAME-NAME}: APPLY 'ENTRY' TO F_Knr. RETURN NO-APPLY. END. */ END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPEN_AUFKO F-Frame-Win PROCEDURE OPEN_AUFKO : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ IF QOpen THEN CLOSE QUERY Br_Aufko. QOpen = FALSE. Vorhanden = FALSE. fOpen = TRUE. RUN CLEAR_BILDSCHIRM. DO WITH FRAME {&FRAME-NAME}: CB_Auf_Sta:SCREEN-VALUE = STRING(VAuf_Sta,'999999') NO-ERROR. END. CASE Sort: WHEN 1 THEN DO: OPEN QUERY Br_Aufko FOR EACH Aufko NO-LOCK USE-INDEX Aufko-k1 WHERE Aufko.Firma = GVFirma AND Aufko.Auf_Sta = VAuf_Sta AND ((iLager = 999999) OR (Aufko.Lager = iLager)) BY Aufko.Aufnr BY Aufko.Auf_Datum. END. WHEN 2 THEN DO: OPEN QUERY Br_Aufko FOR EACH Aufko NO-LOCK USE-INDEX Aufko-k2 WHERE Aufko.Firma = GVFirma AND Aufko.Auf_Sta = VAuf_Sta AND ((iLager = 999999) OR (Aufko.Lager = iLager)) BY Aufko.Knr BY Aufko.Aufnr BY Aufko.Auf_Datum. END. WHEN 4 THEN DO: OPEN QUERY Br_Aufko FOR EACH Aufko NO-LOCK USE-INDEX Aufko-k3 WHERE Aufko.Firma = GVFirma AND Aufko.Auf_Sta = VAuf_Sta AND ((iLager = 999999) OR (Aufko.Lager = iLager)) BY Aufko.Fak_Art BY Aufko.Auf_Datum BY Aufko.Aufnr. END. WHEN 5 THEN DO: OPEN QUERY Br_Aufko FOR EACH Aufko NO-LOCK USE-INDEX Aufko-k1 WHERE Aufko.Firma = GVFirma AND Aufko.Auf_Sta = VAuf_Sta AND ((iLager = 999999) OR (Aufko.Lager = iLager)) BY Aufko.Lief_Datum BY Aufko.Aufnr. END. END CASE. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: Br_Aufko:SET-REPOSITIONED-ROW(4, 'CONDITIONAL':U). IF NUM-RESULTS('Br_Aufko':U) = ? THEN LEAVE. IF NUM-RESULTS('Br_Aufko':U) = 0 THEN LEAVE. Vorhanden = TRUE. QOpen = TRUE. IF FSuchen THEN LEAVE. APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. LEAVE. END. FSuchen = FALSE. IF NOT Vorhanden THEN DO: LVAufnr = 0. XVAufnr = 0. XVKnr = 0. XAufnr = 0. XKnr = 0. END. RETURN. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE OPEN_AUFKO_REPO F-Frame-Win PROCEDURE OPEN_AUFKO_REPO : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ GET NEXT Br_Aufko NO-LOCK. DO WHILE TRUE WITH FRAME {&FRAME-NAME}: XRecid = 0. IF NOT AVAILABLE Aufko THEN LEAVE. XRecid = RECID(Aufko). LEAVE. END. RUN OPEN_AUFKO. IF Vorhanden THEN DO: IF XRecid = 0 THEN RETURN NO-APPLY. REPOSITION Br_Aufko TO RECID XRecid. Br_Aufko:FETCH-SELECTED-ROW(1). APPLY 'VALUE-CHANGED' TO BROWSE {&BROWSE-NAME}. END. RETURN NO-APPLY. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SAMMFAKMUT F-Frame-Win PROCEDURE SAMMFAKMUT : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER KoRecid AS RECID NO-UNDO. REPEAT TRANSACTION: FIND BAufko WHERE RECID(BAufko) = KoRecid. BAufko.Gedruckt = FALSE. DO WHILE TRUE: FIND Tabel USE-INDEX Tabel-k1 WHERE Tabel.Firma = GVFirma AND Tabel.RecArt = 'FAKART' AND Tabel.CodeC = '' AND Tabel.CodeI = BAufko.Fak_Art AND Tabel.Sprcd = 1 NO-LOCK NO-ERROR. IF Tabel.Int_3 <> 4 THEN LEAVE. /* nicht Sammelrechnung */ IF BAufko.Samm_Nr = 0 THEN LEAVE. FOR EACH YAufko USE-INDEX Aufko-k4 WHERE YAufko.Firma = BAufko.Firma AND YAufko.Knr = BAufko.Knr AND YAufko.Fak_Art = BAufko.Fak_Art AND YAufko.Samm_Nr = BAufko.Samm_Nr. YAufko.Gedruckt = FALSE. IF Tabel.Int_2 = YAufko.Auf_Sta THEN YAufko.Auf_Sta = YAufko.Auf_Sta - 1. RELEASE YAufko. END. LEAVE. END. RELEASE BAufko. LEAVE. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records F-Frame-Win _ADM-SEND-RECORDS PROCEDURE send-records : /*------------------------------------------------------------------------------ Purpose: Send record ROWID's for all tables used by this file. Parameters: see template/snd-head.i ------------------------------------------------------------------------------*/ /* Define variables needed by this internal procedure. */ {src/adm/template/snd-head.i} /* For each requested table, put it's ROWID in the output list. */ {src/adm/template/snd-list.i "Aufko"} /* Deal with any unexpected table requests before closing. */ {src/adm/template/snd-end.i} END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SET_LAGER F-Frame-Win PROCEDURE SET_LAGER : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF INPUT PARAMETER ipLager AS INT NO-UNDO. iLager = ipLager. RUN OPEN_AUFKO. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE SPEICHERN F-Frame-Win PROCEDURE SPEICHERN : /*------------------------------------------------------------------------------ Purpose: Parameters: Notes: ------------------------------------------------------------------------------*/ DEF VAR XAufnr AS INT NO-UNDO. DEF VAR cTotale AS CHAR NO-UNDO. DISABLE TRIGGERS FOR LOAD OF Aufko. DISABLE TRIGGERS FOR LOAD OF Aufze. DO WITH FRAME {&FRAME-NAME}: REPEAT TRANSACTION: FIND Aufko WHERE RECID(Aufko) = XRecid. ASSIGN {&List-3}. ASSIGN Aufko.Auf_Text = VAuf_Text Aufko.Abh_Text = VAbh_Text Aufko.Adresse[01] = VPassant[01] Aufko.Adresse[02] = VPassant[02] Aufko.Adresse[03] = VPassant[03] Aufko.Adresse[04] = VPassant[04] Aufko.Adresse[05] = VPassant[05] Aufko.Vertr = INTEGER(CB_Vertreter:SCREEN-VALUE) Aufko.Lager = INTEGER(CB_Lager :SCREEN-VALUE). DO WHILE TRUE: IF Aufko.Fak_Knr <> 0 THEN LEAVE. FIND Debst NO-LOCK WHERE Debst.Firma = Aufko.Firma AND Debst.Knr = Aufko.Knr NO-ERROR. IF Debst.KnrFak <> 0 THEN Aufko.Fak_Knr = Debst.KnrFak. ELSE Aufko.Fak_Knr = Debst.Knr. LEAVE. END. RELEASE Aufko. RUN SAMMFAKMUT ( INPUT XRecid ). FIND Aufko NO-LOCK WHERE RECID(Aufko) = XRecid. FOR EACH Aufze NO-LOCK OF Aufko: IF Aufze.Trnr = 0 THEN NEXT. FIND Artbw OF Aufze NO-ERROR. IF NOT AVAILABLE Artbw THEN NEXT. ASSIGN Artbw.Datum = Aufko.Lief_Datum Artbw.Lager = Aufko.Lager. IF Aufko.Fak_Datum <> ? THEN Artbw.Fak_Dat = Aufko.Fak_Datum. RELEASE Artbw. RELEASE Aufze. END. IF Aufko.AlsOfferte <> fOfferte THEN DO: RUN ALSOFFERTE_CHANGED ( Aufko.Aufnr, Aufko.AlsOfferte ). END. RELEASE Aufko. LEAVE. END. FIND Aufko WHERE RECID(Aufko) = XRecid NO-LOCK. LVAufnr = Aufko.Aufnr. XVAufnr = Aufko.Aufnr. XVKNr = Aufko.Knr. Btn_Erfassen:LABEL = '&Neu'. Btn_Aendern:LABEL = '&Aendern'. ENABLE Btn_Loeschen . ENABLE Btn_Zurueck . ENABLE Btn_Verschieben. ENABLE Btn_Suchen . ENABLE CB_Auf_Sta. DISABLE {&List-3}. DISABLE T_Passant. VUpdate = FALSE. VNeu = FALSE. RUN new-state ( INPUT 'NOTUPDATE, MAIN' ). RELEASE Aufko . RELEASE Aufze . RELEASE AufGebKo. RELEASE AufGKon . RELEASE AufRabSu. RELEASE AufSpRab. IF NRecid = 0 THEN DO: APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. RETURN NO-APPLY. END. FIND Aufko WHERE RECID(Aufko) = NRecid. FOR EACH GebRueck NO-LOCK USE-INDEX GebRueck-k1 WHERE GebRueck.Firma = GVFirma TRANSACTION: CREATE AufGebKo. ASSIGN AufGebKo.Firma = GVFirma AufGebKo.Aufnr = XVAufnr AufGebKo.Sort_Cd = GebRueck.Sort_Cd AufGebKo.Geb_Cd = GebRueck.Geb_Cd AufGebKo.Anz_1 = GebRueck.Anz_1 AufGebKo.Kto_Cd1 = GebRueck.Kto_Cd1 AufGebKo.Anz_2 = GebRueck.Anz_2 AufGebKo.Kto_Cd2 = GebRueck.Kto_Cd2 AufGebKo.Anz_3 = GebRueck.Anz_3 AufGebKo.Kto_Cd3 = GebRueck.Kto_Cd3. IF AufGebKo.Kto_Cd1 <> '' THEN DO: FIND GebKonto NO-LOCK USE-INDEX GebKonto-k1 WHERE GebKonto.Firma = GVFirma AND GebKonto.Geb_Cd = AufGebKo.Kto_Cd1. AufGebKo.Wert_1 = GebKonto.Depot. END. IF AufGebKo.Kto_Cd2 <> '' THEN DO: FIND GebKonto USE-INDEX GebKonto-k1 WHERE GebKonto.Firma = GVFirma AND GebKonto.Geb_Cd = AufGebKo.Kto_Cd2 NO-LOCK. AufGebKo.Wert_2 = GebKonto.Depot. END. IF AufGebKo.Kto_Cd3 <> '' THEN DO: FIND GebKonto USE-INDEX GebKonto-k1 WHERE GebKonto.Firma = GVFirma AND GebKonto.Geb_Cd = AufGebKo.Kto_Cd3 NO-LOCK. AufGebKo.Wert_3 = GebKonto.Depot. END. RELEASE AufGebKo. END. NRecid = 0. XAufnr = XVAufnr. RUN AUFTRAGSTOTAL ( XAufnr, OUTPUT cTotale ) NO-ERROR. RELEASE Aufko . RELEASE Aufze . RELEASE AufGebKo. RELEASE AufGKon . RELEASE AufRabSu. RELEASE AufSpRab. RUN OPEN_AUFKO. FIND BAufko NO-LOCK USE-INDEX Aufko-k1 WHERE BAufko.Firma = GVFirma AND BAufko.Aufnr = XAufnr. REPOSITION Br_Aufko TO ROWID ROWID(BAufko). APPLY 'VALUE-CHANGED' TO Br_Aufko. APPLY 'ENTRY' TO Br_Aufko. RETURN NO-APPLY. END. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE state-changed F-Frame-Win PROCEDURE state-changed : /* ----------------------------------------------------------- Purpose: Parameters: Notes: -------------------------------------------------------------*/ DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO. DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO. CASE p-state: WHEN 'browser_entry' THEN DO: IF NUM-RESULTS('Br_Aufko':U) > 0 THEN DO: APPLY 'ENTRY' TO BROWSE Br_Aufko. END. ELSE DO: APPLY 'ENTRY' TO Btn_Erfassen IN FRAME {&FRAME-NAME}. END. RETURN NO-APPLY. END. END CASE. END PROCEDURE. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME /* ************************ Function Implementations ***************** */ &ANALYZE-SUSPEND _UIB-CODE-BLOCK _FUNCTION getAuftraege F-Frame-Win FUNCTION getAuftraege RETURNS LOGICAL ( htAuftraege AS HANDLE ) : /*------------------------------------------------------------------------------ Purpose: Notes: ------------------------------------------------------------------------------*/ DEF VAR i1 AS INT NO-UNDO. DEF VAR i2 AS INT NO-UNDO. DO WITH FRAME {&FRAME-NAME}: i1 = {&BROWSE-NAME}:NUM-SELECTED-ROWS. DO i2 = 1 TO i1: {&BROWSE-NAME}:FETCH-SELECTED-ROW(i2) NO-ERROR. htAuftraege:BUFFER-CREATE(). ASSIGN htAuftraege::Aufnr = Aufko.Aufnr htAuftraege::Faknr = Aufko.Faknr htAuftraege::Knr = Aufko.Knr htAuftraege::lOfferte = Aufko.AlsOfferte htAuftraege::Fak_Art = Aufko.Fak_Art htAuftraege::Auf_Sta = Aufko.Auf_Sta htAuftraege::iRecid = RECID(Aufko). END. END. RETURN TRUE. END FUNCTION. /* _UIB-CODE-BLOCK-END */ &ANALYZE-RESUME