| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832 |
- &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 XSchrift NO-UNDO LIKE Schrift.
- DEFINE NEW SHARED TEMP-TABLE XTermOut NO-UNDO LIKE TermOut.
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS B-table-Win
- /*------------------------------------------------------------------------
- File:
- Description: from BROWSER.W - Basic SmartBrowser Object Template
- Input Parameters:
- <none>
- Output Parameters:
- <none>
- ------------------------------------------------------------------------*/
- /* 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 ************************** */
- /* Parameters Definitions --- */
- /* Local Variable Definitions --- */
- DEF VAR AltSchname LIKE Schrift.Schname NO-UNDO.
- DEF VAR QOpen AS LOG NO-UNDO.
- DEF VAR FOpen AS LOG NO-UNDO.
- DEF VAR OBreite AS INT.
- DEF VAR PosSeite AS INT.
- DEF VAR ZeiSeite AS INT.
- DEF VAR DatBeg AS INT.
- DEF VAR DatEnd AS INT.
- DEF VAR DatSta AS INT.
- DEF VAR AllEnd AS INT.
- DEF VAR DatLer AS INT.
- DEF VAR VStern AS CHAR FORMAT "x(04)".
- DEF VAR VZins AS DEC.
- DEF VAR VZins% AS DEC.
- DEF VAR VMinBetr AS INT.
- DEF VAR cDateiname AS CHAR NO-UNDO.
- DEF VAR VProgname AS CHAR NO-UNDO.
- DEF VAR ARecid AS RECID INIT -1 NO-UNDO.
- DEF VAR BRecid AS RECID INIT -1 NO-UNDO.
- DEF VAR SRecid AS RECID INIT -1 NO-UNDO.
- DEF VAR FInit AS LOG NO-UNDO.
- DEF VAR xDichte AS CHAR NO-UNDO.
- DEF VAR cDichte AS CHAR NO-UNDO.
- /* ------------------------------------------------------------------------- */
- DEF VAR VKnr LIKE Adresse.Knr.
- DEF VAR BKnr LIKE Adresse.Knr.
- DEF VAR VStu AS INT FORMAT "9".
- DEF VAR BStu AS INT FORMAT "9".
- DEF VAR VBerueck AS DATE FORMAT "99.99.9999".
- DEF VAR VDatum AS DATE.
- DEF VAR VZeile AS CHAR FORMAT "x(180)".
- DEF VAR XSeite AS CHAR FORMAT "x(180)" EXTENT 72.
- DEF VAR VTexte AS CHAR FORMAT "x(120)" EXTENT 25.
- DEF VAR RRand AS INT INIT 0.
- DEF VAR VPage AS INT INIT 0.
- DEF VAR VTotal AS DEC EXTENT 10.
- DEF STREAM Inp_Stream.
- DEF STREAM Out_Stream.
- /* ---------- Globale Variablen ---------------------------------- */
- { v8/globvar.i" " " " "SHARED" }
- { v8/debivar.i " " " " "SHARED" }
- { v8/artivar.i " " " " "SHARED" }
- { v8/contvar.i " " " " "SHARED" }
- { v8/listtitv.i "NEW" "SHARED" }
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
- /* ******************** Preprocessor Definitions ******************** */
- &Scoped-define PROCEDURE-TYPE SmartBrowser
- &Scoped-define DB-AWARE no
- &Scoped-define ADM-SUPPORTED-LINKS Record-Source,Record-Target,TableIO-Target
- /* Name of designated FRAME-NAME and/or first browse and/or first query */
- &Scoped-define FRAME-NAME F-Main
- &Scoped-define BROWSE-NAME Br_Druckername
- /* Internal Tables (found by Frame, Query & Browse Queries) */
- &Scoped-define INTERNAL-TABLES XSchrift Schrift
- /* Define KEY-PHRASE in case it is used by any query. */
- &Scoped-define KEY-PHRASE TRUE
- /* Definitions for BROWSE Br_Druckername */
- &Scoped-define FIELDS-IN-QUERY-Br_Druckername XSchrift.Schname
- &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Druckername
- &Scoped-define QUERY-STRING-Br_Druckername FOR EACH XSchrift WHERE ~{&KEY-PHRASE} NO-LOCK ~
- ~{&SORTBY-PHRASE}
- &Scoped-define OPEN-QUERY-Br_Druckername OPEN QUERY Br_Druckername FOR EACH XSchrift WHERE ~{&KEY-PHRASE} NO-LOCK ~
- ~{&SORTBY-PHRASE}.
- &Scoped-define TABLES-IN-QUERY-Br_Druckername XSchrift
- &Scoped-define FIRST-TABLE-IN-QUERY-Br_Druckername XSchrift
- /* Definitions for BROWSE Br_Schriftbild */
- &Scoped-define FIELDS-IN-QUERY-Br_Schriftbild Schrift.Schbild
- &Scoped-define ENABLED-FIELDS-IN-QUERY-Br_Schriftbild
- &Scoped-define QUERY-STRING-Br_Schriftbild FOR EACH Schrift NO-LOCK ~
- BY Schrift.Schbild
- &Scoped-define OPEN-QUERY-Br_Schriftbild OPEN QUERY Br_Schriftbild FOR EACH Schrift NO-LOCK ~
- BY Schrift.Schbild.
- &Scoped-define TABLES-IN-QUERY-Br_Schriftbild Schrift
- &Scoped-define FIRST-TABLE-IN-QUERY-Br_Schriftbild Schrift
- /* Definitions for FRAME F-Main */
- /* Standard List Definitions */
- &Scoped-Define ENABLED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
- Listen.BNr[2] Listen.EDa[1]
- &Scoped-define ENABLED-TABLES Listen
- &Scoped-define FIRST-ENABLED-TABLE Listen
- &Scoped-Define ENABLED-OBJECTS T_GleicheStufe Br_Druckername Br_Schriftbild ~
- F_Sort F_TZZ F_KZZ F_FZZ F_LQ F_KOPIE F_SCHACHT F_USER F_Programm F_Zeichen ~
- Btn_Start Btn_Ende Btn_PDF RECT-10 RECT-11 RECT-12 RECT-13 RECT-17
- &Scoped-Define DISPLAYED-FIELDS Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
- Listen.BNr[2] Listen.EDa[1]
- &Scoped-define DISPLAYED-TABLES Listen
- &Scoped-define FIRST-DISPLAYED-TABLE Listen
- &Scoped-Define DISPLAYED-OBJECTS T_GleicheStufe F_Sort F_TZZ F_KZZ F_FZZ ~
- F_LQ F_KOPIE F_SCHACHT F_USER F_Programm F_Zeichen
- /* Custom List Definitions */
- /* List-1,List-2,List-3,List-4,List-5,List-6 */
- &Scoped-define List-1 T_GleicheStufe F_Sort F_TZZ F_KZZ F_FZZ
- &Scoped-define List-2 Listen.VNr[1] Listen.BNr[1] Listen.VNr[2] ~
- Listen.BNr[2] Listen.EDa[1]
- /* _UIB-PREPROCESSOR-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Foreign Keys" B-table-Win _INLINE
- /* Actions: ? adm/support/keyedit.w ? ? ? */
- /* STRUCTURED-DATA
- <KEY-OBJECT>
- &BROWSE-NAME
- </KEY-OBJECT>
- <FOREIGN-KEYS>
- </FOREIGN-KEYS
- ><EXECUTING-CODE>
- **************************
- * Set attributes related to FOREIGN KEYS
- */
- RUN set-attribute-list (
- 'Keys-Accepted = "",
- Keys-Supplied = ""':U).
- /**************************
- </EXECUTING-CODE> */
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR "Advanced Query Options" B-table-Win _INLINE
- /* Actions: ? adm/support/advqedit.w ? ? ? */
- /* STRUCTURED-DATA
- <KEY-OBJECT>
- &BROWSE-NAME
- </KEY-OBJECT>
- <SORTBY-OPTIONS>
- </SORTBY-OPTIONS>
- <SORTBY-RUN-CODE>
- ************************
- * Set attributes related to SORTBY-OPTIONS */
- RUN set-attribute-list (
- 'SortBy-Options = ""':U).
- /************************
- </SORTBY-RUN-CODE>
- <FILTER-ATTRIBUTES>
- </FILTER-ATTRIBUTES> */
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********************** Control Definitions ********************** */
- /* Definitions of the field level widgets */
- DEFINE BUTTON Btn_Ende
- LABEL "&Ende"
- SIZE 14 BY 1.
- DEFINE BUTTON Btn_PDF
- LABEL "&PDF"
- SIZE 14 BY 1.
- DEFINE BUTTON Btn_Start
- LABEL "&Starten"
- SIZE 14 BY 1.
- DEFINE VARIABLE F_FZZ AS INTEGER FORMAT "999":U INITIAL 0
- LABEL "Fusszeilen"
- VIEW-AS FILL-IN NATIVE
- SIZE 6 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_KOPIE AS INTEGER FORMAT "9":U INITIAL 0
- LABEL "Anz. Kopien"
- VIEW-AS FILL-IN NATIVE
- SIZE 4 BY 1.05 TOOLTIP "Anzahl Listenkopien"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_KZZ AS INTEGER FORMAT "999":U INITIAL 0
- LABEL "Kopfzeilen"
- VIEW-AS FILL-IN NATIVE
- SIZE 6 BY 1.05 TOOLTIP "Wieviele leere Kopfzeilen müssen gedruckt werden"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_LQ AS LOGICAL FORMAT "j/n":U INITIAL NO
- LABEL "Schönschrift"
- VIEW-AS FILL-IN NATIVE
- SIZE 4 BY 1.05 TOOLTIP "Wieviele Zeilen müssen am Ende der Seite leer bleiben"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Programm AS CHARACTER FORMAT "X(20)":U INITIAL "MAHNUNG"
- LABEL "Programm"
- VIEW-AS FILL-IN NATIVE
- SIZE 18 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_SCHACHT AS INTEGER FORMAT "9":U INITIAL 0
- LABEL "Schacht"
- VIEW-AS FILL-IN NATIVE
- SIZE 4 BY 1.05 TOOLTIP "Welcher Schacht muss angesteuer werden"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_TZZ AS INTEGER FORMAT "999":U INITIAL 0
- LABEL "Zeilen"
- VIEW-AS FILL-IN NATIVE
- SIZE 6 BY 1.05 TOOLTIP "Wieviele Zeilen hat die ganze Seite"
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_USER AS CHARACTER FORMAT "X(20)":U
- LABEL "Benutzer"
- VIEW-AS FILL-IN NATIVE
- SIZE 18 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Zeichen AS INTEGER FORMAT "zzz,zzz,zz9":U INITIAL 0
- LABEL "Anz. Zeichen"
- VIEW-AS FILL-IN NATIVE
- SIZE 18 BY 1
- BGCOLOR 15 NO-UNDO.
- DEFINE VARIABLE F_Sort AS INTEGER
- VIEW-AS RADIO-SET VERTICAL
- RADIO-BUTTONS
- "Kundennummer", 1,
- "Suchbegriff", 2
- SIZE 25.8 BY 1.67 NO-UNDO.
- DEFINE RECTANGLE RECT-10
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 47.6 BY 4.14.
- DEFINE RECTANGLE RECT-11
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 90 BY 9.52.
- DEFINE RECTANGLE RECT-12
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 47.6 BY 4.52.
- DEFINE RECTANGLE RECT-13
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 138.8 BY 1.91.
- DEFINE RECTANGLE RECT-17
- EDGE-PIXELS 2 GRAPHIC-EDGE NO-FILL
- SIZE 144 BY 16.19.
- DEFINE VARIABLE T_GleicheStufe AS LOGICAL INITIAL no
- LABEL "alle OP's auf Stufe Kontoauszug"
- VIEW-AS TOGGLE-BOX
- SIZE 44.2 BY 1 NO-UNDO.
- /* Query definitions */
- &ANALYZE-SUSPEND
- DEFINE QUERY Br_Druckername FOR
- XSchrift SCROLLING.
- DEFINE QUERY Br_Schriftbild FOR
- Schrift SCROLLING.
- &ANALYZE-RESUME
- /* Browse definitions */
- DEFINE BROWSE Br_Druckername
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Druckername B-table-Win _STRUCTURED
- QUERY Br_Druckername NO-LOCK DISPLAY
- XSchrift.Schname COLUMN-LABEL "Drucker" FORMAT "x(50)":U
- WIDTH 55.8
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- WITH NO-ASSIGN NO-ROW-MARKERS SEPARATORS SIZE 61.8 BY 9
- BGCOLOR 15 ROW-HEIGHT-CHARS .62.
- DEFINE BROWSE Br_Schriftbild
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _DISPLAY-FIELDS Br_Schriftbild B-table-Win _STRUCTURED
- QUERY Br_Schriftbild DISPLAY
- Schrift.Schbild FORMAT "x(30)":U
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- WITH NO-ROW-MARKERS SEPARATORS SIZE 23.6 BY 9
- BGCOLOR 15 .
- /* ************************ Frame Definitions *********************** */
- DEFINE FRAME F-Main
- T_GleicheStufe AT ROW 9.52 COL 98 WIDGET-ID 4
- Br_Druckername AT ROW 1.95 COL 5.4
- Br_Schriftbild AT ROW 1.95 COL 69.2
- F_Sort AT ROW 6.81 COL 97.8 NO-LABEL
- F_TZZ AT ROW 11.95 COL 11.6 COLON-ALIGNED
- F_KZZ AT ROW 11.95 COL 31.6 COLON-ALIGNED
- F_FZZ AT ROW 11.95 COL 50.4 COLON-ALIGNED
- F_LQ AT ROW 11.95 COL 72.4 COLON-ALIGNED
- F_KOPIE AT ROW 11.95 COL 93.6 COLON-ALIGNED
- F_SCHACHT AT ROW 11.95 COL 112.8 COLON-ALIGNED
- Listen.VNr[1] AT ROW 13.86 COL 39.8 COLON-ALIGNED HELP
- ""
- LABEL "von - bis Kundennummer" FORMAT "999999"
- VIEW-AS FILL-IN NATIVE
- SIZE 11.2 BY 1
- BGCOLOR 15
- F_USER AT ROW 2.33 COL 109.6 COLON-ALIGNED NO-TAB-STOP
- F_Programm AT ROW 3.43 COL 109.6 COLON-ALIGNED NO-TAB-STOP
- Listen.BNr[1] AT ROW 13.86 COL 62.2 COLON-ALIGNED HELP
- "" NO-LABEL FORMAT "999999"
- VIEW-AS FILL-IN NATIVE
- SIZE 11.2 BY 1
- BGCOLOR 15
- F_Zeichen AT ROW 4.57 COL 109.6 COLON-ALIGNED NO-TAB-STOP
- Listen.VNr[2] AT ROW 14.86 COL 39.8 COLON-ALIGNED
- LABEL "von - bis Mahnstufe" FORMAT "99"
- VIEW-AS FILL-IN NATIVE
- SIZE 5.6 BY 1.05
- BGCOLOR 15
- Listen.BNr[2] AT ROW 14.86 COL 62.2 COLON-ALIGNED NO-LABEL FORMAT "99"
- VIEW-AS FILL-IN NATIVE
- SIZE 5.6 BY 1.05
- BGCOLOR 15
- Listen.EDa[1] AT ROW 15.91 COL 39.8 COLON-ALIGNED HELP
- ""
- LABEL "Zahlungen berücksichtigt bis" FORMAT "99.99.9999"
- VIEW-AS FILL-IN NATIVE
- SIZE 16 BY 1.05
- BGCOLOR 15
- Btn_Start AT ROW 14.14 COL 103.4
- Btn_Ende AT ROW 15.67 COL 103.4
- Btn_PDF AT ROW 14.14 COL 120.2 WIDGET-ID 2
- "--" VIEW-AS TEXT
- SIZE 1.4 BY 1 AT ROW 13.86 COL 61.4
- "--" VIEW-AS TEXT
- SIZE 1.4 BY 1 AT ROW 14.86 COL 61.4
- RECT-10 AT ROW 1.71 COL 96
- RECT-11 AT ROW 1.71 COL 4
- RECT-12 AT ROW 6.38 COL 96
- RECT-13 AT ROW 11.48 COL 4
- RECT-17 AT ROW 1.24 COL 2
- WITH 1 DOWN KEEP-TAB-ORDER OVERLAY
- SIDE-LABELS NO-UNDERLINE THREE-D
- AT COL 1 ROW 1 SCROLLABLE .
- /* *********************** Procedure Settings ************************ */
- &ANALYZE-SUSPEND _PROCEDURE-SETTINGS
- /* Settings for THIS-PROCEDURE
- Type: SmartBrowser
- Allow: Basic,Browse
- Frames: 1
- Add Fields to: EXTERNAL-TABLES
- Other Settings: PERSISTENT-ONLY COMPILE
- Temp-Tables and Buffers:
- TABLE: XSchrift T "?" NO-UNDO AnaDat Schrift
- TABLE: XTermOut T "NEW SHARED" NO-UNDO AnaDat TermOut
- 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 B-table-Win ASSIGN
- HEIGHT = 16.81
- WIDTH = 146.2.
- /* END WINDOW DEFINITION */
- */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _INCLUDED-LIB B-table-Win
- /* ************************* Included-Libraries *********************** */
- {src/adm/method/browser.i}
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* *********** Runtime Attributes and AppBuilder Settings *********** */
- &ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
- /* SETTINGS FOR WINDOW B-table-Win
- NOT-VISIBLE,,RUN-PERSISTENT */
- /* SETTINGS FOR FRAME F-Main
- NOT-VISIBLE FRAME-NAME Size-to-Fit Custom */
- /* BROWSE-TAB Br_Druckername 1 F-Main */
- /* BROWSE-TAB Br_Schriftbild Br_Druckername F-Main */
- ASSIGN
- FRAME F-Main:SCROLLABLE = FALSE
- FRAME F-Main:HIDDEN = TRUE.
- /* SETTINGS FOR FILL-IN Listen.BNr[1] IN FRAME F-Main
- 2 EXP-LABEL EXP-FORMAT EXP-HELP */
- /* SETTINGS FOR FILL-IN Listen.BNr[2] IN FRAME F-Main
- 2 EXP-LABEL EXP-FORMAT */
- /* SETTINGS FOR FILL-IN Listen.EDa[1] IN FRAME F-Main
- 2 EXP-LABEL EXP-FORMAT EXP-HELP */
- /* SETTINGS FOR FILL-IN F_FZZ IN FRAME F-Main
- 1 */
- /* SETTINGS FOR FILL-IN F_KZZ IN FRAME F-Main
- 1 */
- ASSIGN
- F_Programm:READ-ONLY IN FRAME F-Main = TRUE.
- /* SETTINGS FOR RADIO-SET F_Sort IN FRAME F-Main
- 1 */
- /* SETTINGS FOR FILL-IN F_TZZ IN FRAME F-Main
- 1 */
- ASSIGN
- F_USER:READ-ONLY IN FRAME F-Main = TRUE.
- ASSIGN
- F_Zeichen:READ-ONLY IN FRAME F-Main = TRUE.
- /* SETTINGS FOR TOGGLE-BOX T_GleicheStufe IN FRAME F-Main
- 1 */
- /* SETTINGS FOR FILL-IN Listen.VNr[1] IN FRAME F-Main
- 2 EXP-LABEL EXP-FORMAT EXP-HELP */
- /* SETTINGS FOR FILL-IN Listen.VNr[2] IN FRAME F-Main
- 2 EXP-LABEL EXP-FORMAT */
- /* _RUN-TIME-ATTRIBUTES-END */
- &ANALYZE-RESUME
- /* Setting information for Queries and Browse Widgets fields */
- &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Druckername
- /* Query rebuild information for BROWSE Br_Druckername
- _TblList = "Temp-Tables.XSchrift"
- _Options = "NO-LOCK KEY-PHRASE SORTBY-PHRASE"
- _FldNameList[1] > Temp-Tables.XSchrift.Schname
- "XSchrift.Schname" "Drucker" "x(50)" "character" ? ? ? ? ? ? no ? no no "55.8" yes no no "U" "" "" "" "" "" "" 0 no 0 no no
- _Query is NOT OPENED
- */ /* BROWSE Br_Druckername */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _QUERY-BLOCK BROWSE Br_Schriftbild
- /* Query rebuild information for BROWSE Br_Schriftbild
- _TblList = "AnaDat.Schrift"
- _OrdList = "AnaDat.Schrift.Schbild|yes"
- _FldNameList[1] = AnaDat.Schrift.Schbild
- _Query is NOT OPENED
- */ /* BROWSE Br_Schriftbild */
- &ANALYZE-RESUME
- &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 B-table-Win
- ON GO OF FRAME F-Main
- DO:
- DO TRANSACTION:
- FIND Listen WHERE RECID(Listen) = ARecid.
- Listen.Listfl = ''.
- END.
- RUN new-state ('drucken_ende':U).
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define BROWSE-NAME Br_Druckername
- &Scoped-define SELF-NAME Br_Druckername
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
- ON ROW-ENTRY OF Br_Druckername IN FRAME F-Main
- DO:
- /* This code displays initial values for newly added or copied rows. */
- {src/adm/template/brsentry.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
- ON ROW-LEAVE OF Br_Druckername IN FRAME F-Main
- DO:
- /* Do not disable this code or no updates will take place except
- by pressing the Save button on an Update SmartPanel. */
- {src/adm/template/brsleave.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Druckername B-table-Win
- ON VALUE-CHANGED OF Br_Druckername IN FRAME F-Main
- DO:
- {src/adm/template/brschnge.i}
-
- ASchname = XSchrift.Schname.
-
- OPEN QUERY Br_Schriftbild
- FOR EACH Schrift WHERE Schrift.Schname = ASchname NO-LOCK.
- FIND BSchrift WHERE BSchrift.Schname = ASchname
- AND BSchrift.Schbild = ASchbild NO-LOCK NO-ERROR.
- IF AVAILABLE BSchrift THEN DO:
- REPOSITION Br_Schriftbild TO RECID RECID(BSchrift) NO-ERROR.
- Br_Schriftbild:SELECT-FOCUSED-ROW() IN FRAME {&FRAME-NAME}.
- Br_Schriftbild:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
- END.
- ELSE DO:
- APPLY 'VALUE-CHANGED' TO BROWSE Br_Schriftbild.
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define BROWSE-NAME Br_Schriftbild
- &Scoped-define SELF-NAME Br_Schriftbild
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
- ON ROW-ENTRY OF Br_Schriftbild IN FRAME F-Main
- DO:
- /* This code displays initial values for newly added or copied rows. */
- {src/adm/template/brsentry.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
- ON ROW-LEAVE OF Br_Schriftbild IN FRAME F-Main
- DO:
- /* Do not disable this code or no updates will take place except
- by pressing the Save button on an Update SmartPanel. */
- {src/adm/template/brsleave.i}
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Br_Schriftbild B-table-Win
- ON VALUE-CHANGED OF Br_Schriftbild IN FRAME F-Main
- DO:
- {src/adm/template/brschnge.i}
- IF NOT AVAILABLE Schrift THEN RETURN.
-
- ASSIGN F_TZZ = Schrift.Schzztot
- F_KZZ = Schrift.Schzzbeg
- F_FZZ = Schrift.Schzzend.
- DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
- ASchbild = Schrift.Schbild.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_Ende
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Ende B-table-Win
- ON CHOOSE OF Btn_Ende IN FRAME F-Main /* Ende */
- DO:
- DO TRANSACTION:
- FIND Listen WHERE RECID(Listen) = ARecid.
- Listen.Listfl = ''.
- END.
-
- { v8/druck_ende.i }
-
- RUN new-state ('Seite_1':U).
- APPLY 'GO' TO FRAME {&FRAME-NAME}.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_PDF
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_PDF B-table-Win
- ON CHOOSE OF Btn_PDF IN FRAME F-Main /* PDF */
- DO:
- DEF VAR cParam AS CHAR NO-UNDO.
-
- DO TRANSACTION WITH FRAME {&FRAME-NAME}:
- ASSIGN {&List-1}.
- FIND Listen WHERE RECID(Listen) = ARecid.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid.
- ASSIGN Breite = F_Zeichen
- Listen.Sort = F_Sort
- Listen.ProgWahl = F_Sort
-
- LiDruck.Listtzz = F_TZZ
- LiDruck.Listkzz = F_KZZ
- LiDruck.Listfzz = F_FZZ
- LiDruck.Listlq = F_LQ
- LiDruck.ListCopy = F_KOPIE
- LiDruck.Schacht = F_SCHACHT
- LiDruck.Listdru = XSchrift.Schname
- LiDruck.Listbild = Schrift.Schbild.
-
- IF LiDruck.ListCopy = 0 THEN LiDruck.ListCopy = 1.
-
- ASSIGN {&List-2}.
-
- IF VNr[01] = 0 AND BNr[01] = 0 THEN Bnr[01] = 999999.
- IF VNr[01] > BNr[01] THEN BNr[01] = VNr[01].
- IF VNr[02] > 04 THEN VNr[02] = 04.
- IF BNr[02] > 04 THEN BNr[02] = 04.
- IF VNr[02] > BNr[02] THEN BNr[02] = VNr[02].
- IF EDa[01] = ? THEN EDa[01] = TODAY.
-
- DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
- ASSIGN LiDruck.ProgWahl = Listen.ProgWahl
- LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99').
-
- RELEASE Listen .
- RELEASE LiDruck.
- END.
- FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
- DISABLE Btn_Start WITH FRAME {&FRAME-NAME}.
- DISABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
- DISABLE Btn_PDF WITH FRAME {&FRAME-NAME}.
- cParam = GVFirma + CHR(01)
- + STRING(VNr[01]) + CHR(01)
- + STRING(BNr[01]) + CHR(01)
- + STRING(VNr[02]) + CHR(01)
- + STRING(BNr[02]) + CHR(01)
- + STRING(EDa[01],'99.99.9999') + CHR(01)
- + STRING(T_GleicheStufe,'Yes/No') + CHR(01).
- SESSION:SET-WAIT-STATE('GENERAL').
- RUN drucken-mahnung-pdf.p ( cParam ).
- SESSION:SET-WAIT-STATE('').
- DO TRANSACTION WITH FRAME {&FRAME-NAME}:
- FIND Listen WHERE RECID(Listen) = ARecid.
- ASSIGN Listen.Listfl = ''.
- RELEASE Listen .
- END.
- FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
- ENABLE Btn_Start WITH FRAME {&FRAME-NAME}.
- ENABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
- ENABLE Btn_PDF WITH FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define SELF-NAME Btn_Start
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL Btn_Start B-table-Win
- ON CHOOSE OF Btn_Start IN FRAME F-Main /* Starten */
- DO:
- DO TRANSACTION WITH FRAME {&FRAME-NAME}:
- ASSIGN {&List-1}.
- FIND Listen WHERE RECID(Listen) = ARecid.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid.
- ASSIGN Breite = F_Zeichen
- Listen.Sort = F_Sort
- Listen.ProgWahl = F_Sort
-
- LiDruck.Listtzz = F_TZZ
- LiDruck.Listkzz = F_KZZ
- LiDruck.Listfzz = F_FZZ
- LiDruck.Listlq = F_LQ
- LiDruck.ListCopy = F_KOPIE
- LiDruck.Schacht = F_SCHACHT
- LiDruck.Listdru = XSchrift.Schname
- LiDruck.Listbild = Schrift.Schbild.
-
- IF LiDruck.ListCopy = 0 THEN LiDruck.ListCopy = 1.
-
- ASSIGN {&List-2}.
-
- IF VNr[01] = 0 AND BNr[01] = 0 THEN Bnr[01] = 999999.
- IF VNr[01] > BNr[01] THEN BNr[01] = VNr[01].
- IF VNr[02] > 04 THEN VNr[02] = 04.
- IF BNr[02] > 04 THEN BNr[02] = 04.
- IF VNr[02] > BNr[02] THEN BNr[02] = VNr[02].
- IF EDa[01] = ? THEN EDa[01] = TODAY.
-
- DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
- ASSIGN LiDruck.ProgWahl = Listen.ProgWahl
- LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99').
-
- RELEASE Listen .
- RELEASE LiDruck.
- END.
- FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
- DISABLE Btn_Start WITH FRAME {&FRAME-NAME}.
- DISABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
- RUN LIBILD.
- RUN DRUCKEN.
- DO TRANSACTION WITH FRAME {&FRAME-NAME}:
- FIND Listen WHERE RECID(Listen) = ARecid.
- ASSIGN Listen.Listfl = ''.
- RELEASE Listen .
- END.
- FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK.
- ENABLE Btn_Start WITH FRAME {&FRAME-NAME}.
- ENABLE Btn_Ende WITH FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &Scoped-define BROWSE-NAME Br_Druckername
- &UNDEFINE SELF-NAME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK B-table-Win
- /* *************************** Main Block *************************** */
- &IF DEFINED(UIB_IS_RUNNING) <> 0 &THEN
- RUN dispatch IN THIS-PROCEDURE ('initialize':U).
- &ENDIF
- ON END-ERROR ANYWHERE
- DO:
- DO TRANSACTION:
- FIND Listen WHERE RECID(Listen) = ARecid.
- Listen.Listfl = ''.
- RELEASE Listen.
- END.
- END.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- /* ********************** Internal Procedures *********************** */
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE adm-row-available B-table-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: <none>
- ------------------------------------------------------------------------------*/
- /* 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 ALLG_TEXTE B-table-Win
- PROCEDURE ALLG_TEXTE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR XCodeC AS CHAR.
- VTexte = "".
- XCodeC = STRING(Mahnung.MahStu + 1,"99") + "03".
- ix = 0.
- AllEnd = 0.
- FOR EACH Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = GVFirma
- AND Tabel.RecArt = 'MATEXT'
- AND Tabel.Sprcd = Adresse.Sprcd
- AND Tabel.CodeC = XCodeC NO-LOCK:
- ix = ix + 1.
- VTexte[ix] = Tabel.BezL.
- IF Tabel.BezL <> '' THEN AllEnd = ix.
- IF ix = 25 THEN LEAVE.
- END.
- IF AllEnd < 25 THEN AllEnd = AllEnd + 1.
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI B-table-Win _DEFAULT-DISABLE
- PROCEDURE disable_UI :
- /*------------------------------------------------------------------------------
- Purpose: DISABLE the User Interface
- Parameters: <none>
- Notes: Here we clean-up the user-interface by deleting
- dynamic widgets we have created and/or hide
- frames. This procedure is usually called when
- we are ready to "clean-up" after running.
- ------------------------------------------------------------------------------*/
- /* Hide all frames. */
- HIDE FRAME 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 DRUCKAUSGABE B-table-Win
- PROCEDURE DRUCKAUSGABE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR VZeile AS CHAR FORMAT "x(250)" NO-UNDO.
- DEF VAR iSize AS INT NO-UNDO.
- DEF VAR iBlockSize AS INT INIT 240 NO-UNDO.
- FIND LiDruck NO-LOCK WHERE RECID(LiDruck) = BRecid.
- FIND Schrift NO-LOCK WHERE RECID(Schrift) = SRecid.
- iSize = DYNAMIC-FUNCTION('putDateiToPrinter':U, cDateiname ,
- SRecid ,
- 0 ,
- iBlockSize , /* Blockgrösse */
- 'ibm850' ,
- 1 ). /* Anzahl Kopien */
- /*
- OUTPUT STREAM Out_Stream TO VALUE(Schrift.Schname)
- CONVERT TARGET 'ibm850'.
- INPUT STREAM Inp_Stream FROM VALUE(cDateiname) NO-ECHO NO-MAP.
- PUT STREAM Out_Stream CONTROL Schrift.Schseqbeg.
- IF LiDruck.Listlq THEN PUT STREAM Out_Stream CONTROL BDrucker.Drulqb.
- IF LiDruck.Schacht > 0 THEN PUT STREAM Out_Stream CONTROL BDrucker.DruSchacht[Schacht].
- REPEAT ON STOP UNDO, LEAVE WITH FRAME f_Print:
- IMPORT STREAM Inp_Stream UNFORMATTED VZeile.
- DISPLAY STREAM Out_Stream VZeile
- WITH FRAME f_Print NO-LABELS STREAM-IO
- NO-BOX USE-TEXT WIDTH 255.
- END.
- /* PUT STREAM Out_Stream CONTROL CHR(12). */
- OUTPUT STREAM Out_Stream CLOSE.
- INPUT STREAM Inp_Stream CLOSE.
- */
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE DRUCKEN B-table-Win
- PROCEDURE DRUCKEN :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- DEF VAR cHori AS CHAR NO-UNDO.
- DEF VAR ii AS INT NO-UNDO.
- FIND Steuer WHERE Steuer.Firma = GVFirma NO-LOCK NO-ERROR.
- VSort = Listen.Sort.
- VKnr = Listen.VNr[01].
- BKnr = Listen.BNr[01].
- VStu = Listen.VNr[02].
- BStu = Listen.BNr[02].
- VBerueck = Listen.EDa[01].
- cDateiName = SESSION:TEMP-DIR + 'Mahnungen'.
-
- VZins% = Steuer.Fwi07.
- VMinBetr = Steuer.Fwi08.
- FIND Listen WHERE RECID(Listen ) = ARecid NO-LOCK NO-ERROR.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK NO-ERROR.
- FIND Schrift USE-INDEX Schrift-k1
- WHERE Schrift.Schname = LiDruck.ListDru
- AND Schrift.Schbild = LiDruck.ListBild NO-LOCK NO-ERROR.
- SRecid = RECID(Schrift).
-
- RUN LISTTIT1.
- /* ---------------------------------------------------------------------- */
- /* Mahnungen nach Kundennummer */
- /* ---------------------------------------------------------------------- */
-
- IF VSort = 1 THEN DO:
- DO PRESELECT
- EACH Mahnung USE-INDEX Mahnung-k1
- WHERE Mahnung.Firma = GVFirma
- AND Mahnung.Knr >= VKnr
- AND Mahnung.Knr <= BKnr
- AND Mahnung.MahStu >= VStu
- AND Mahnung.MahStu <= BStu NO-LOCK,
- FIRST Adresse USE-INDEX Adresse-k1
- WHERE Adresse.Firma = AdFirma
- AND Adresse.Knr = Mahnung.Knr NO-LOCK
-
- BREAK BY Adresse.Knr
- BY Mahnung.MahStu
- BY Mahnung.Faknr :
-
- DO VCopy = 1 TO LiDruck.ListCopy:
- LNeu = TRUE.
- /* -------------------------------------------------------------------------- */
- IF BDrucker.Emul <> "TERMINAL" THEN DO:
- OUTPUT STREAM Out_Stream TO VALUE(cDateiname) PAGED PAGE-SIZE 500.
- DOpen = TRUE.
- END.
- ELSE DO:
- FOR EACH XTermOut:
- DELETE XTermOut.
- END.
- DOpen = FALSE.
- VZNr = 0.
- VLine = 0.
- VSeite = 0.
- END.
- /* -------------------------------------------------------------------------- */
- VZeile = "".
- XSeite = "".
- VLine = 0.
- VTotal = 0.
- VPage = 0.
- REPEAT:
- IF LNeu THEN FIND FIRST Adresse NO-ERROR.
- ELSE FIND NEXT Adresse NO-ERROR.
- IF NOT AVAILABLE Adresse THEN LEAVE.
- LNeu = FALSE.
-
- IF FIRST-OF ( Mahnung.MahStu ) OR
- Mahnung.Passant THEN DO:
- VPage = 0.
- VTotal = 0.
- VZins = 0.
- RUN LEERE_SEITE.
- RUN ALLG_TEXTE.
- END.
- DO WHILE TRUE:
- i1 = INDEX(XSeite[DatSta], '%FNR%').
- IF i1 > 0 THEN DO:
- IF i1 > 1 THEN i1 = i1 - 1.
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.Faknr,"zzzzz9").
- END.
- i1 = INDEX(XSeite[DatSta], '%FDA%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.FakDat,"99.99.9999").
- END.
- i1 = INDEX(XSeite[DatSta], '%FFA%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.Faellig,"99.99.9999").
- END.
- i1 = INDEX(XSeite[DatSta], '%ZDA%').
- IF i1 > 0 THEN DO:
- IF Mahnung.ZahDat <> ? THEN
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.ZahDat,"99.99.9999").
- ELSE SUBSTRING(XSeite[DatSta],i1) = ' '.
- END.
- i1 = INDEX(XSeite[DatSta], '%FBE%').
- IF i1 > 0 THEN DO:
- IF i1 > 6 THEN i1 = i1 - 6.
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.FakBetr,"zzz,zz9.99-").
- END.
- i1 = INDEX(XSeite[DatSta], '%FSA%').
- IF i1 > 0 THEN DO:
- IF i1 > 6 THEN i1 = i1 - 6.
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.Saldo ,"zzz,zz9.99-").
- END.
- i1 = INDEX(XSeite[DatSta], '%ZBE%').
- IF i1 > 0 THEN DO:
- IF i1 > 6 THEN i1 = i1 - 6.
- IF Mahnung.ZahBetr <> 0 THEN
- SUBSTRING(XSeite[DatSta],i1) = STRING(Mahnung.ZahBetr,"zzz,zz9.99-").
- ELSE SUBSTRING(XSeite[DatSta],i1) = ' '.
- END.
- i2 = TODAY - Mahnung.Faellig.
- i3 = 1.
- VStern = ''.
- IF i2 > 0 THEN i3 = i3 + 1.
- IF i2 > 30 THEN i3 = i3 + 1.
- IF i2 > 60 THEN i3 = i3 + 1.
- IF i2 > 90 THEN i3 = i3 + 1.
- VStern = FILL('*', i3 - 1).
- VTotal[i3] = VTotal[i3] + Mahnung.Saldo.
- VTotal[06] = VTotal[06] + Mahnung.Saldo.
- VTotal[10] = VTotal[10] + Mahnung.Saldo.
-
- i2 = TODAY - Mahnung.FakDat.
- IF i2 > 60 THEN DO:
- Rundbetr = Mahnung.Saldo * VZins% / 100 * (i2 - 60) / 360.
- Rundcode = 1.
- RUN "v8/runden.p".
- VZins = VZins + Rundbetr.
- VTotal[10] = VTotal[10] + Rundbetr.
- END.
-
- i1 = INDEX(XSeite[DatSta], '%*%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[DatSta],i1) = STRING(VStern,"x(04)").
- END.
- DatSta = DatSta + 1.
- LEAVE.
- END.
-
- IF NOT LAST-OF ( Mahnung.MahStu ) AND
- DatSta > DatEnd THEN DO:
- VZeile = ''.
- VLine = 0.
- PUT STREAM Out_Stream CONTROL Schrift.Schseqbeg.
- IF LiDruck.Listlq THEN PUT STREAM Out_Stream CONTROL BDrucker.Drulqb.
- IF LiDruck.Schacht > 0 THEN PUT STREAM Out_Stream CONTROL BDrucker.DruSchacht[Schacht].
- { v8/putstream.i LiDruck.Listkzz }
- DO ix = 1 TO DatEnd:
- VZeile = XSeite[ix].
- VZeile = REPLACE(VZeile, '%u%' , Druunterb).
- VZeile = REPLACE(VZeile, '%uu%', Druuntere).
- DO WHILE TRUE:
- ii = INDEX(VZeile, "%s").
- IF ii = 0 THEN LEAVE.
- cHori = ''.
- DO i1 = ii + 2 TO ii + 5:
- IF SUBSTRING(VZeile,i1,01) = '%' THEN LEAVE.
- cHori = cHori + SUBSTRING(VZeile,i1,01).
- END.
- cDichte = REPLACE(xDichte, 'xx', cHori).
- VZeile = SUBSTRING(VZeile,01,ii - 1)
- + cDichte
- + SUBSTRING(VZeile,i1 + 1).
- END.
- i1 = INDEX(VZeile, "!").
- IF i1 > 0 THEN DO:
- IF i1 > 1 THEN DO:
- VZeile = SUBSTRING(VZeile,01,i1 - 1)
- + TRIM(Drufettb)
- + SUBSTRING(VZeile,i1 + 1)
- + TRIM(Drufette).
- END.
- ELSE DO:
- VZeile = TRIM(Drufettb)
- + SUBSTRING(VZeile,02)
- + TRIM(Drufette).
- END.
- END.
- { v8/putstream.i "1" }
- END.
- PAGE.
- RUN LEERE_SEITE.
- END.
-
- IF NOT LAST-OF ( Mahnung.MahStu ) AND
- NOT Mahnung.Passant THEN NEXT.
- DatLer = 0.
- DO WHILE DatSta <= DatEnd:
- XSeite[DatSta] = ''.
- DatSta = DatSta + 1.
- DatLer = DatLer + 1.
- END.
- IF DatLer > 0 THEN DatLer = DatLer - 1.
- IF VZins < VMinBetr THEN DO:
- VTotal[10] = VTotal[10] - VZins.
- VZins = 0.
- END.
- DO WHILE AllEnd > 0:
- DO ix = DatEnd + 1 TO 72:
- IF XSeite[ix] = '' THEN NEXT.
- i1 = INDEX(XSeite[ix], '%T1%').
- IF i1 > 0 THEN DO:
- XSeite[ix] = ''.
- i2 = ix - DatLer.
- LEAVE.
- END.
- END.
- IF i1 = 0 THEN LEAVE.
- DO ix = 1 TO AllEnd:
- SUBSTRING(XSeite[i2],i1,Breite - i1) = VTexte[ix].
- i3 = INDEX(XSeite[i2], '%B1%').
- IF i3 > 0 THEN DO:
- IF VTotal[01] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[01],"zzz,zz9.99-").
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%B2%').
- IF i3 > 0 THEN DO:
- IF VTotal[02] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[02],"zzz,zz9.99-").
- i4 = INDEX(XSeite[i2], '%*%').
- IF i4 > 0 THEN SUBSTRING(XSeite[i2],i4) = '* '.
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%B3%').
- IF i3 > 0 THEN DO:
- IF VTotal[03] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[03],"zzz,zz9.99-").
- i4 = INDEX(XSeite[i2], '%*%').
- IF i4 > 0 THEN SUBSTRING(XSeite[i2],i4) = '** '.
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%B4%').
- IF i3 > 0 THEN DO:
- IF VTotal[04] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[04],"zzz,zz9.99-").
- i4 = INDEX(XSeite[i2], '%*%').
- IF i4 > 0 THEN SUBSTRING(XSeite[i2],i4) = '*** '.
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%B5%').
- IF i3 > 0 THEN DO:
- IF VTotal[05] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[05],"zzz,zz9.99-").
- i4 = INDEX(XSeite[i2], '%*%').
- IF i4 > 0 THEN SUBSTRING(XSeite[i2],i4) = '****'.
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%TOT%').
- IF i3 > 0 THEN DO:
- IF VTotal[06] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[06],"zzz,zz9.99-").
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%VZBE%').
- IF i3 > 0 THEN DO:
- IF VZins = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VZins,"zzz,zz9.99-").
- i4 = INDEX(XSeite[i2], '%VZ%').
- IF i4 > 0 THEN SUBSTRING(XSeite[i2],i4) = STRING(VZins%,"zz9%").
- i2 = i2 + 1.
- NEXT.
- END.
- i3 = INDEX(XSeite[i2], '%GTOT%').
- IF i3 > 0 THEN DO:
- IF VZins = 0 THEN NEXT.
- IF VTotal[10] = 0 THEN NEXT.
- SUBSTRING(XSeite[i2],i3) = STRING(VTotal[10],"zzz,zz9.99-").
- i2 = i2 + 1.
- NEXT.
- END.
- i2 = i2 + 1.
- END.
- LEAVE.
- END.
- VZeile = ''.
- VLine = 0.
- PUT STREAM Out_Stream CONTROL Schrift.Schseqbeg.
- IF LiDruck.Listlq THEN PUT STREAM Out_Stream CONTROL BDrucker.Drulqb.
- IF LiDruck.Schacht > 0 THEN PUT STREAM Out_Stream CONTROL BDrucker.DruSchacht[Schacht].
- { v8/putstream.i LiDruck.Listkzz }
- DO ix = 1 TO i2:
- VZeile = XSeite[ix].
- VZeile = REPLACE(VZeile, '%u%' , Druunterb).
- VZeile = REPLACE(VZeile, '%uu%', Druuntere).
- DO WHILE TRUE:
- ii = INDEX(VZeile, "%s").
- IF ii = 0 THEN LEAVE.
- cHori = ''.
- DO i1 = ii + 2 TO ii + 5:
- IF SUBSTRING(VZeile,i1,01) = '%' THEN LEAVE.
- cHori = cHori + SUBSTRING(VZeile,i1,01).
- END.
- cDichte = REPLACE(xDichte, 'xx', cHori).
- VZeile = SUBSTRING(VZeile,01,ii - 1)
- + cDichte
- + SUBSTRING(VZeile,i1 + 1).
- END.
- i1 = INDEX(VZeile, "!").
- IF i1 > 0 THEN DO:
- IF i1 > 1 THEN DO:
- VZeile = SUBSTRING(VZeile,01,i1 - 1)
- + TRIM(Drufettb)
- + SUBSTRING(VZeile,i1 + 1)
- + TRIM(Drufette).
- END.
- ELSE DO:
- VZeile = TRIM(Drufettb)
- + SUBSTRING(VZeile,02)
- + TRIM(Drufette).
- END.
- END.
- { v8/putstream.i "1" }
- /* IF VLine >= (LiDruck.Listtzz - LiDruck.Listfzz) THEN LEAVE. */
- END.
- IF DOpen = TRUE THEN DO:
- IF NOT LAST ( Adresse.Knr ) THEN PUT STREAM Out_Stream CONTROL CHR(12).
- END.
-
- END. /* FIND NEXT */
-
- TiDruck = TRUE.
- IF DOpen = TRUE THEN DO:
- OUTPUT STREAM Out_Stream CLOSE.
- END.
- ELSE DO:
- RUN "v8/d-liste.w" ( INPUT Helptext[02] ).
- END.
- END. /* Kopien */
- END. /* PRESELECT */
- END. /* Sortierung Kundennummer */
- FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK NO-ERROR.
- IF DOpen THEN RUN DRUCKAUSGABE.
- APPLY 'CHOOSE' TO Btn_Ende IN FRAME {&FRAME-NAME}.
- RETURN NO-APPLY.
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LEERE_SEITE B-table-Win
- PROCEDURE LEERE_SEITE :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
-
- DEF VAR XCodeC AS CHAR NO-UNDO.
- DEF VAR XMax AS INT NO-UNDO.
- DEF VAR VAdresse AS CHAR EXTENT 12 NO-UNDO.
- XSeite = "".
- XCodeC = STRING(Mahnung.MahStu + 1,"99") + "01".
- PosSeite = 0.
- ZeiSeite = 0.
- DatBeg = 0.
- DatEnd = 0.
- DatSta = 0.
- VPage = VPage + 1.
- ix = 0.
- XMax = 0.
- FOR EACH Tabel USE-INDEX Tabel-k1
- WHERE Tabel.Firma = GVFirma
- AND Tabel.RecArt = 'MATEXT'
- AND Tabel.Sprcd = Adresse.Sprcd
- AND Tabel.CodeC = XCodeC NO-LOCK:
- ix = ix + 1.
- XSeite[ix] = Tabel.BezL.
- IF ix = 72 THEN LEAVE.
- END.
- XMax = ix.
- ASSIGN VAdresse[01] = Adresse.Anschrift[01]
- VAdresse[02] = Adresse.Anschrift[02]
- VAdresse[03] = Adresse.Anschrift[03]
- VAdresse[04] = Adresse.Anschrift[04]
- VAdresse[05] = Adresse.Anschrift[05]
- VAdresse[06] = Adresse.Anschrift[06]
- VAdresse[07] = Adresse.Anschrift[07]
- VAdresse[08] = Adresse.Anschrift[08]
- VAdresse[09] = Adresse.Anschrift[09]
- VAdresse[10] = Adresse.Anschrift[10]
- VAdresse[11] = Adresse.Anschrift[11]
- VAdresse[12] = Adresse.Anschrift[12].
- DO WHILE TRUE:
- IF NOT Mahnung.Passant THEN LEAVE.
- FIND Passant USE-INDEX Passant-k1
- WHERE Passant.Firma = Mahnung.Firma
- AND Passant.Knr = Mahnung.Knr
- AND Passant.Faknr = Mahnung.Faknr NO-LOCK NO-ERROR.
- IF NOT AVAILABLE Passant THEN LEAVE.
- ASSIGN VAdresse[01] = ''
- VAdresse[02] = ''
- VAdresse[03] = ''
- VAdresse[04] = ''
- VAdresse[05] = ''
- VAdresse[06] = ''
- VAdresse[07] = Passant.Adr[01]
- VAdresse[08] = Passant.Adr[02]
- VAdresse[09] = Passant.Adr[03]
- VAdresse[10] = Passant.Adr[04]
- VAdresse[11] = Passant.Adr[05]
- VAdresse[12] = ''.
- LEAVE.
- END.
-
- DO ix = 1 TO XMax:
- IF XSeite[ix] = '' THEN NEXT.
-
- IF SUBSTRING(XSeite[ix],01,01) = '?' THEN DO:
- IF VPage > 1 THEN DO:
- XSeite[ix] = ''.
- NEXT.
- END.
- ELSE DO:
- XSeite[ix] = SUBSTRING(XSeite[ix],02).
- END.
- END.
- i1 = INDEX(XSeite[ix], '%TDatum%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(TODAY,"99.99.9999").
- END.
- i1 = INDEX(XSeite[ix], '%BDatum%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VBerueck,"99.99.9999").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse1%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[01],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse2%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[02],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse3%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[03],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse4%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[04],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse5%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[05],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse6%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[06],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse7%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[07],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse8%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[08],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse9%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[09],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse10%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[10],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse11%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[11],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Adresse12%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(VAdresse[12],"x(30)").
- END.
- i1 = INDEX(XSeite[ix], '%Knr%').
- IF i1 > 0 THEN DO:
- SUBSTRING(XSeite[ix],i1) = STRING(Adresse.Knr,"999999").
- END.
- i1 = INDEX(XSeite[ix], '%FNR%').
- IF i1 > 0 THEN DO:
- DatEnd = ix.
- IF DatBeg = 0 THEN DO:
- DatBeg = ix.
- DatSta = DatBeg.
- END.
- END.
-
- IF ZeiSeite = 0 THEN DO:
- PosSeite = INDEX(XSeite[ix], '%S%').
- IF PosSeite > 0 THEN DO:
- ZeiSeite = ix.
- SUBSTRING(XSeite[ix],PosSeite) = STRING(VPage,"zz9").
- END.
- END.
- END.
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LIBILD B-table-Win
- PROCEDURE LIBILD :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- { v8/libild.i }
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT1 B-table-Win
- PROCEDURE LISTTIT1 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- { v8/listtit1.i }
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE LISTTIT2 B-table-Win
- PROCEDURE LISTTIT2 :
- /*------------------------------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- ------------------------------------------------------------------------------*/
- { v8/listtit2.i }
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-display-fields B-table-Win
- PROCEDURE local-display-fields :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- RUN dispatch IN THIS-PROCEDURE ( INPUT 'display-fields':U ) .
- DISPLAY {&List-1} WITH FRAME {&FRAME-NAME}.
-
- IF ARecid > -1 THEN DO:
- FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
- DISPLAY {&List-2} WITH FRAME {&FRAME-NAME}.
- END.
- ENABLE {&List-2} WITH FRAME {&FRAME-NAME}.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-hide B-table-Win
- PROCEDURE local-hide :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- DO TRANSACTION:
- FIND Listen WHERE RECID(Listen) = ARecid.
- Listen.Listfl = ''.
- 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 B-table-Win
- PROCEDURE local-initialize :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- DEF BUFFER BListen FOR Listen.
-
- DEF VAR VListnr LIKE Listen.Listnr.
- F_USER = DYNAMIC-FUNCTION('getDBUser':U) NO-ERROR.
- QOpen = FALSE.
- FInit = TRUE.
- RUN dispatch IN THIS-PROCEDURE ( INPUT 'initialize':U ) .
- VProgname = TRIM(F_USER) + '!' + TRIM(F_Programm).
- FIND FIRST Listen USE-INDEX Listen-k1
- WHERE Listen.Firma = GVFirma
- AND Listen.Progname = VProgname
- AND Listen.Listfl = '' NO-LOCK NO-ERROR.
-
- DO TRANSACTION:
- IF NOT AVAILABLE Listen THEN DO:
- FIND LAST BListen USE-INDEX Listen-k1
- WHERE BListen.Firma = GVFirma NO-LOCK NO-ERROR.
- IF AVAILABLE BListen THEN VListnr = BListen.Listnr + 1.
- ELSE VListnr = 1.
- CREATE Listen.
- ASSIGN Listen.Firma = GVFirma
- Listen.Listnr = VListnr
- Listen.Progname = VProgname
- Listen.Listfl = ''
- Listen.Jahr = GVJahr
- Listen.Sprcd = GVSprcd
- Listen.Sort = 1
- Listen.ProgWahl = 1.
- END.
- ARecid = RECID(Listen).
- FIND LiDruck USE-INDEX LiDruck-k1
- WHERE LiDruck.Firma = GVFirma
- AND LiDruck.Listnr = Listen.Listnr
- AND LiDruck.ProgWahl = Listen.ProgWahl NO-LOCK NO-ERROR.
- IF NOT AVAILABLE LiDruck THEN DO:
- CREATE LiDruck.
- ASSIGN LiDruck.Firma = GVFirma
- LiDruck.Listnr = Listen.Listnr
- LiDruck.ProgWahl = Listen.ProgWahl
- LiDruck.Listprog = TRIM(F_Programm) + STRING(Listen.ProgWahl,'99')
- LiDruck.ListCopy = 1
- LiDruck.Schacht = 0
- LiDruck.Listlq = FALSE.
- END.
- BRecid = RECID(LiDruck).
- FIND Listen WHERE RECID(Listen) = ARecid.
- Listen.Listfl = 'A'.
-
- RELEASE Listen.
- RELEASE LiDruck.
-
- END. /* TRANSACTION */
-
- FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
- FIND LiDruck WHERE RECID(LiDruck) = BRecid NO-LOCK.
-
- FOpen = TRUE.
- ASchname = LiDruck.ListDru.
- ASchbild = LiDruck.ListBild.
- RUN dispatch IN THIS-PROCEDURE ('open-query':U).
- FIND FIRST XSchrift WHERE XSchrift.Schname = ASchname NO-LOCK NO-ERROR.
- IF AVAILABLE XSchrift THEN DO:
- REPOSITION Br_Druckername TO RECID RECID(XSchrift) NO-ERROR.
- Br_Druckername:SELECT-FOCUSED-ROW() IN FRAME {&FRAME-NAME}.
- Br_Druckername:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
- END.
- ELSE DO:
- Br_Druckername:FETCH-SELECTED-ROW(1) IN FRAME {&FRAME-NAME}.
- END.
- APPLY 'VALUE-CHANGED' TO BROWSE Br_Druckername.
-
- RUN LIBILD.
- F_Zeichen = Breite.
- F_Sort = Listen.Sort.
- F_TZZ = LiDruck.Listtzz.
- F_KZZ = LiDruck.Listkzz.
- F_FZZ = LiDruck.Listfzz.
- F_LQ = LiDruck.Listlq.
- F_KOPIE = LiDruck.ListCopy.
- F_SCHACHT = LiDruck.Schacht.
- OBreite = Breite.
-
- RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
-
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-open-query B-table-Win
- PROCEDURE local-open-query :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- IF FOpen = FALSE THEN RETURN NO-APPLY.
-
- IF QOpen = TRUE THEN DO:
- CLOSE QUERY Br_Druckername.
- CLOSE QUERY Br_Schriftbild.
- END.
- QOpen = FALSE.
- FOR EACH XSchrift:
- DELETE XSchrift.
- END.
-
- AltSchname = ''.
- FOR EACH Schrift NO-LOCK:
- IF Schrift.Schname = AltSchname THEN NEXT.
- CREATE XSchrift.
- BUFFER-COPY Schrift TO XSchrift.
- AltSchname = Schrift.Schname.
- END.
-
- OPEN QUERY Br_Druckername
- FOR EACH XSchrift NO-LOCK.
- QOpen = TRUE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-row-changed B-table-Win
- PROCEDURE local-row-changed :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- RUN dispatch IN THIS-PROCEDURE ( INPUT 'row-changed':U ) .
-
- OPEN QUERY Br_Schriftbild
- FOR EACH Schrift WHERE Schrift.Schname = XSchrift.Schname NO-LOCK.
- IF AVAILABLE LiDruck THEN DO:
- FIND BSchrift WHERE BSchrift.Schname = LiDruck.ListDru
- AND BSchrift.Schbild = LiDruck.ListBild NO-LOCK NO-ERROR.
- IF AVAILABLE BSchrift THEN DO:
- REPOSITION Br_Schriftbild TO RECID RECID(BSchrift) NO-ERROR.
- END.
- END.
- APPLY 'VALUE-CHANGED' TO BROWSE Br_Schriftbild.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE local-view B-table-Win
- PROCEDURE local-view :
- /*------------------------------------------------------------------------------
- Purpose: Override standard ADM method
- Notes:
- ------------------------------------------------------------------------------*/
- RUN dispatch IN THIS-PROCEDURE ( INPUT 'view':U ) .
- xDichte = CHR(27) + '(sxxH'.
- IF ARecid < 0 THEN RETURN.
-
- DO TRANSACTION:
- FIND Listen WHERE RECID(Listen) = ARecid.
- ASSIGN Listen.VNr[01] = XVAufnr
- Listen.BNr[01] = XVAufnr.
- RELEASE Listen.
- END.
- FIND Listen WHERE RECID(Listen) = ARecid NO-LOCK.
- RUN dispatch IN THIS-PROCEDURE ('display-fields':U).
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
- &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE send-records B-table-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 "Schrift"}
- {src/adm/template/snd-list.i "XSchrift"}
- /* 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 state-changed B-table-Win
- PROCEDURE state-changed :
- /* -----------------------------------------------------------
- Purpose:
- Parameters: <none>
- Notes:
- -------------------------------------------------------------*/
- DEFINE INPUT PARAMETER p-issuer-hdl AS HANDLE NO-UNDO.
- DEFINE INPUT PARAMETER p-state AS CHARACTER NO-UNDO.
- CASE p-state:
- /* Object instance CASEs can go here to replace standard behavior
- or add new cases. */
- {src/adm/template/bstates.i}
- END CASE.
- END PROCEDURE.
- /* _UIB-CODE-BLOCK-END */
- &ANALYZE-RESUME
|